Over the past two decades, Scheme macros have evolved into a pow-erful API for the compiler front-end. Like Lisp macros, their predecessors, Scheme macros expand source programs into a small core language; unlike Lisp systems, Scheme macro expanders preserve lexical scoping, and advanced Scheme macro systems handle other important properties such as source location. Using such macros, Scheme programmers now routinely develop the ultimate abstraction: embedded domain-specific programming languages. Unfortunately, a typical Scheme programming environment provides little support for macro development. The tools for understanding macro expansion are poor, which makes it difficult for experienced programmers to debug their macros and for novices...
PLT Scheme provides an expressive programming language implementation framework in order to enable e...
By providing a macro facility, languages such as Scheme and Common Lisp allow users to define new sp...
ZL is a C++-compatible language in which high-level constructs, such as classes, are de-fined using ...
AbstractOver the past two decades, Scheme macros have evolved into a powerful API for the compiler f...
Even in the days of Lisp’s simple defmacro systems, macro developers did not have adequate debugging...
Scheme includes a simple yet powerful macro mechanism. Using macros, programmers can easily extend t...
Abstract. Macro expansion in current Lisp systems is naive with respect o block structure. Every mac...
Lisp and Scheme have demonstrated the power of macros to enable programmers to evolve and craft lang...
Naive program transformations can have surprising effects due to the interaction between introduced ...
9 pagesThis paper describes a modified form of Kohlbecker's algorithm for reliably hygienic (captur...
Starting from B M Leavenworth's proposal for syntactic macros, we describe an extension language LE ...
This article dedicated to learning how to create effective software systems using all the capabiliti...
In this paper we describe {\\it syntactic closures}. Syntactic closures address the scoping proble...
High-level programming languages have been developed to simplify the communication problem between t...
A syntax macroprocessor permits parameterized text substitutions with greater syntactic flexibility ...
PLT Scheme provides an expressive programming language implementation framework in order to enable e...
By providing a macro facility, languages such as Scheme and Common Lisp allow users to define new sp...
ZL is a C++-compatible language in which high-level constructs, such as classes, are de-fined using ...
AbstractOver the past two decades, Scheme macros have evolved into a powerful API for the compiler f...
Even in the days of Lisp’s simple defmacro systems, macro developers did not have adequate debugging...
Scheme includes a simple yet powerful macro mechanism. Using macros, programmers can easily extend t...
Abstract. Macro expansion in current Lisp systems is naive with respect o block structure. Every mac...
Lisp and Scheme have demonstrated the power of macros to enable programmers to evolve and craft lang...
Naive program transformations can have surprising effects due to the interaction between introduced ...
9 pagesThis paper describes a modified form of Kohlbecker's algorithm for reliably hygienic (captur...
Starting from B M Leavenworth's proposal for syntactic macros, we describe an extension language LE ...
This article dedicated to learning how to create effective software systems using all the capabiliti...
In this paper we describe {\\it syntactic closures}. Syntactic closures address the scoping proble...
High-level programming languages have been developed to simplify the communication problem between t...
A syntax macroprocessor permits parameterized text substitutions with greater syntactic flexibility ...
PLT Scheme provides an expressive programming language implementation framework in order to enable e...
By providing a macro facility, languages such as Scheme and Common Lisp allow users to define new sp...
ZL is a C++-compatible language in which high-level constructs, such as classes, are de-fined using ...