Separate Compilation for Scheme
M. Blume · 2006
This paper presents the outline of a module system for the Scheme programming language in order to solve several problems commonly encountered with contemporary implementations. These problems include the lack of support for separate compilation and crossmodule type checking as well as the necessity for non-standard language extensions to aid certain compiler optimizations like open compilation and procedure in-lining. Even though Scheme needs to be augmented with concepts like modules, types, and signatures, this will not change the spirit of the language in a major way. Instead it turns out that other recent additions to the language interact smoothly with the proposed module system. It will be emphasized that it is necessary to make a clean distinction between syntactic definitions and value definition --- reflected by a textual separation of modules and their sig- natures. 1 Introduction The performance of compiled Scheme code suffers from several limitations imposed by the lan...