Modular Integration of Memory Management in Programming Language System

This paper proposes an implementation scheme for programming language interpreters that addresses both modular design of memory management system and execution efficiency. Modularity let the language designer and the application programmer incorporate the most effective algorithm in their systems. Modular implementations of memory management systems can be used as a base for empirical analysis of various memory management systems. The proposed system offers an abstract interface that can be used to implement various memory management algorithms. Our specialization technique takes the implementation of the interpreter and the application bytecode and generates their specialized versions whose memory management interface calls to the given memory management system. Benchmark results show that specialization technique eliminates the 5-10% overhead and our system works as efficiently as hand-tuned programming language system.