Note that there are some explanatory texts on larger screens.

plurals
  1. POCollection of Great Applications and Programs using Macros
    primarykey
    data
    text
    <p>I am very very interested in Macros and just beginning to understand its true power. Please help me collect some great usage of macro systems. </p> <p>So far I have these constructs: </p> <p><strong>Pattern Matching:</strong></p> <blockquote> <p>Andrew Wright and Bruce Duba. Pattern matching for Scheme, 1995</p> </blockquote> <p><strong>Relations in the spirit of Prolog:</strong></p> <blockquote> <p>Dorai Sitaram. Programming in schelog. <a href="http://www.ccs.neu.edu/home/dorai/schelog/schelog.html" rel="noreferrer">http://www.ccs.neu.edu/home/dorai/schelog/schelog.html</a></p> <p>Daniel P. Friedman, William E. Byrd, and Oleg Kiselyov. The Reasoned Schemer. The MIT Press, July 2005</p> <p>Matthias Felleisen. Transliterating Prolog into Scheme. Technical Report 182, Indiana University, 1985.</p> </blockquote> <p><strong>Extensible Looping Constructs:</strong></p> <blockquote> <p>Sebastian Egner. Eager comprehensions in Scheme: The design of SRFI-42. In Workshop on Scheme and Functional Programming, pages13–26, September 2005.</p> <p>Olin Shivers. The anatomy of a loop: a story of scope and control. In International Conference on Functional Programming, pages 2–14, 2005.</p> </blockquote> <p><strong>Class Systems:</strong></p> <blockquote> <p>PLT. PLT MzLib: Libraries manual. Technical Report PLT-TR2006-4-v352, PLT Scheme Inc., 2006. <a href="http://www.plt-scheme.org/techreports/" rel="noreferrer">http://www.plt-scheme.org/techreports/</a></p> <p>Eli Barzilay. Swindle. <a href="http://www.barzilay.org/Swindle" rel="noreferrer">http://www.barzilay.org/Swindle</a>.</p> </blockquote> <p><strong>Component Systems:</strong></p> <blockquote> <p>Ryan Culpepper, Scott Owens, and Matthew Flatt. Syntactic abstraction in component interfaces. In International Conference on Generative Programming and Component Engineering, pages 373–388, 2005</p> </blockquote> <p><strong>Software Contract Checking</strong></p> <blockquote> <p>Matthew Flatt and Matthias Felleisen. Units: Cool modules for HOT languages In ACM SIGPLAN Conference on Programming Language Design and Implementation, pages 236–248, 1998</p> <p>Oscar Waddell and R. Kent Dybvig. Extending the scope of syntactic abstraction.In Symposium on Principles of Programming Languages, pages 203–215, 199</p> </blockquote> <p><strong>Parser Generators</strong></p> <blockquote> <p>Scott Owens, Matthew Flatt, Olin Shivers, and Benjamin McMullan. Lexer and parser generators in Scheme. In Workshop on Scheme and Functional Programming, pages 41–52, September 2004.</p> </blockquote> <p><strong>Tools for Engineering Semantics:</strong></p> <blockquote> <p>Matthias Felleisen, Robert Bruce Findler, and Matthew Flatt. Semantics Engineering with PLT Redex. MIT Press, August 2009.</p> </blockquote> <p><strong>Specifications of Compiler Transformations:</strong></p> <blockquote> <p>Dipanwita Sarkar, Oscar Waddell, and R. Kent Dybvig. A nanopass framework for compiler education. Journal of Functional Programming,15(5):653–667, September 2005. Educational Pearl.</p> </blockquote> <p><strong>Novel Forms of Execution</strong></p> <blockquote> <p>Servlets with serializable continuations Greg Pettyjohn, John Clements, Joe Marshall, Shriram Krishnamurthi, and Matthias Felleisen. Continuations from generalized stack inspection. In International Conference on Functional Programming, pages216–227, 2005.</p> </blockquote> <p><strong>Theorem-Proving System</strong></p> <blockquote> <p>Sebastian Egner. Eager comprehensions in Scheme: The design of SRFI-42. In Workshop on Scheme and Functional Programming, pages 13–26, September 2005.</p> </blockquote> <p><strong>Extensions of the Base Language with Types</strong></p> <blockquote> <p>Sam Tobin-Hochstadt and Matthias Felleisen.The design and implementation of typed scheme. In Symposium on Principles of Programming Languages, pages 395–406, 2008.</p> </blockquote> <p><strong>Laziness</strong></p> <blockquote> <p>Eli Barzilay and John Clements. Laziness without all the hard work:combining lazy and strict languages for teaching. In Functional and declarative programming in education, pages 9–13, 2005.</p> </blockquote> <p><strong>Functional Reactivity</strong></p> <blockquote> <p>Gregory H. Cooper and Shriram Krishnamurthi. Embedding dynamic dataflow in a call-by-value language. In European Symposium on Programming, 2006</p> </blockquote> <hr> <p><strong>Reference:</strong> </p> <p>Collected from <a href="http://www.ccs.neu.edu/scheme/pubs/dissertation-culpepper.pdf" rel="noreferrer">Ryan Culpepper's Dissertation</a></p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload