Extending the scope of syntactic abstraction

The benefits of module systems and lexically scoped syntactic abstraction (macro) facilities are well-established in the literature. This paper presents a system that seamlessly integrates modules and lexically scoped macros. The system is fully static, permits mutually recursive modules, and supports separate compilation. We show that more dynamic module facilities are easily implemented at the source level in the extended language supported by the system.

[1]  Julian Padget,et al.  Modules, macros and Lisp , 1991 .

[2]  R. Kent Dybvig,et al.  Expansion-passing style: A general macro mechanism , 1988, LISP Symb. Comput..

[3]  Jonathan Rees,et al.  Macros that work , 1991, POPL '91.

[4]  E E Kohlbecker,et al.  Syntactic extensions in the programming language LISP , 1986 .

[5]  Harold Abelson,et al.  Revised5 report on the algorithmic language scheme , 1998, SIGP.

[6]  R. Kent Dybvig,et al.  Revised5 Report on the Algorithmic Language Scheme , 1986, SIGP.

[7]  David B. MacQueen Modules for standard ML , 1984, LFP '84.

[8]  Robert Hieb,et al.  Syntactic abstraction in scheme , 1992, LISP Symb. Comput..

[9]  Jonathan A. Rees Another Module System for Scheme , 1993 .

[10]  R. Kent Dybvig,et al.  The Scheme Programming Language , 1995 .

[11]  Matthias Felleisen,et al.  Hygienic macro expansion , 1986, LFP '86.

[12]  Matthias Felleisen,et al.  Units: cool modules for HOT languages , 1998, PLDI.

[13]  R. Kent Dybvig,et al.  Reliable interactive programming with modules , 1996, LISP Symb. Comput..

[14]  Jonathan Rees,et al.  Revised3 report on the algorithmic language scheme , 1986, SIGP.

[15]  Robert Hieb,et al.  Revised 5 Report on the Algorithmic Language , 1999 .

[16]  R. Kent Dybvig The Scheme Programming Language, ANSI Scheme , 1996 .

[17]  Pavel Curtis,et al.  A module system for scheme , 1990, LISP and Functional Programming.

[18]  Robert Bruce Findler,et al.  Modular object-oriented programming with units and mixins , 1998, ICFP '98.

[19]  Harley Davis,et al.  Talking about modules and delivery , 1994, LFP '94.

[20]  Andrew Shalit,et al.  The Dylan Reference Manual , 1996 .