LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Common LISP: the language (2nd ed.)
Common LISP: the language (2nd ed.)
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Syntactic abstraction in Scheme
Lisp and Symbolic Computation
Extending the scope of syntactic abstraction
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Revised Report on the Algorithmic Language Scheme
Higher-Order and Symbolic Computation
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
LFP '80 Proceedings of the 1980 ACM conference on LISP and functional programming
Template meta-programming for Haskell
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
Template meta-programming for Haskell
ACM SIGPLAN Notices
Ginger: implementing a new Lisp family syntax
Proceedings of the 47th Annual Southeast Regional Conference
Syntactic abstraction in component interfaces
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Hi-index | 0.00 |
In modern Scheme, a macro captures the lexical environment where it is defined. This creates an opportunity for extending Scheme so that macros are first-class values. The key to achieving this goal, while preserving the ability to compile programs into reasonable code, is the addition of a type system. Many interesting things can be done with first-class macros, including the construction of a useful module system in which modules are also first-class. Clams got legs! — B.C.