readscheme-website/www/page3.html

446 lines
20 KiB
HTML
Raw Normal View History

2024-06-16 09:58:08 -04:00
<!DOCTYPE html>
<html>
<head>
<title>
Macros
</title>
<meta name="generator" content="SchemeBib and Site-ML" charset=
"utf-8">
<meta name="description" content=
"Online bibliography of Scheme research">
<meta name="keywords" content=
"Scheme, bibliography, research, macros">
<meta name="robots" content="index,follow">
<link rel="stylesheet" href="basic.css" type="text/css">
</head>
<body>
<table width="100%">
<tr valign="top">
<td width="124">
<table width="124">
<tr width="124" height="45">
<td width="124" height="45">
<img width="124" height="45" border="0" alt=
"Readscheme.org" src="./imgs/nav-logo.gif">
2024-06-16 09:58:08 -04:00
</td>
</tr>
<tr width="124" height="124">
<td width="124" height="124">
<a href="./index.html" target="_top"><img width=
"124" height="124" border="0" alt=
"Scheme Bibliography Home" src=
"./imgs/nav_mainlogo.gif"></a>
</td>
</tr>
<tr width="124" height="30">
<td width="124" height="30">
<a href="./page1.html" target="_top"><img width=
"124" height="30" border="0" alt="Classics" src=
"./imgs/nav_classics.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page2.html" target="_top"><img width=
"124" height="18" border="0" alt="Semantics" src=
"./imgs/nav_sem.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page3.html" target="_top"><img width=
"124" height="18" border="0" alt="Macros" src=
"./imgs/focus_nav_macros.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page4.html" target="_top"><img width=
"124" height="18" border="0" alt="Objects" src=
"./imgs/nav_objects.gif"></a>
</td>
</tr>
<tr width="124" height="30">
<td width="124" height="30">
<a href="./page5.html" target="_top"><img width=
"124" height="30" border="0" alt="Modules" src=
"./imgs/nav_modules.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page6.html" target="_top"><img width=
"124" height="18" border="0" alt="Continuations"
src="./imgs/nav_cps.gif"></a>
</td>
</tr>
<tr width="124" height="30">
<td width="124" height="30">
<a href="./pagexml.html" target="_top"><img width=
"124" height="30" border="0" alt="Web Programming"
src="./imgs/nav_xml.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page7.html" target="_top"><img width=
"124" height="18" border="0" alt="Applications"
src="./imgs/nav_appl.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page8.html" target="_top"><img width=
"124" height="18" border="0" alt="Implementation"
src="./imgs/nav_impl.gif"></a>
</td>
</tr>
<tr width="124" height="30">
<td width="124" height="30">
<a href="./page9.html" target="_top"><img width=
"124" height="30" border="0" alt=
"Concurrent Programming" src=
"./imgs/nav_conc.gif"></a>
</td>
</tr>
<tr width="124" height="30">
<td width="124" height="30">
<a href="./page10.html" target="_top"><img width=
"124" height="30" border="0" alt=
"Partial Evaluation" src="./imgs/nav_pe.gif"></a>
</td>
</tr>
<tr width="124" height="18">
<td width="124" height="18">
<a href="./page11.html" target="_top"><img width=
"124" height="18" border="0" alt="Reflection" src=
"./imgs/nav_reflect.gif"></a>
</td>
</tr>
<tr width="124" height="30">
<td width="124" height="30">
<a href="./whats_new.html" target=
"_top"><img width="124" height="30" border="0" alt=
"Recent Additions" src="./imgs/nav_recent.gif"></a>
</td>
</tr>
</table>
</td>
<td width="20">
<img width="20" height="1" border="0" src=
"./imgs/dot_clear.gif">
</td>
<td>
<a name="macros" id="macros"></a>
<h2>
Macros
</h2>
<ul>
<li>David Herman and David Van Horn. "A few principles
of macro design". <em>2008 Workshop on Scheme and
Functional Programming</em>. September 2008. Available
online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2008/09-herman.pdf">
pdf</a>.
</li>
<li>Ryan Culpepper and Matthias Felleisen. "A Stepper
for Scheme Macros". <em>2006 Workshop on Scheme and
Functional Programming</em>. September 2006. Available
online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2006/10-culpepper.pdf">
pdf</a>.
</li>
<li>Ryan Culpepper and Matthias Felleisen. " Taming
Macros". <em>Generative Programming and Component
Engineering (GPCE 2004)</em>. October 2004. Available
online: <a href=
"http://www.ccs.neu.edu/scheme/pubs/gpce2004-cf.ps">ps</a>
<a href=
"http://www.ccs.neu.edu/scheme/pubs/gpce2004-cf.pdf">pdf</a>.
</li>
<li>Ryan Culpepper and Matthias Felleisen. "Well-Shaped
Macros". <em>Scheme Workshop 2003</em>. November 2003.
Available online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2003/macros.ps.gz">
ps</a> <a href=
"http://repository.readscheme.org/ftp/papers/sw2003/macros.pdf">
pdf</a>.
</li>
<li>R. Kent Dybvig, Daniel P. Friedman and Christopher
T. Haynes. "Expansion-Passing Style: A General Macro
Mechanism". <em>LISP and Symbolic Computation</em>.
1(1). June 1988. Available online: <a href=
"http://www.brics.dk/~hosc/local/LaSC-1-1-pp53-75.pdf">
pdf</a>.
</li>
<li>Matthew Flatt. "Composable and Compilable Macros:
You Want it When?". <em>International Conference on
Functional Programming (ICFP'2002)</em>. 2002.
Available online: <a href=
"http://www.cs.utah.edu/plt/publications/macromod.pdf">
pdf</a>.
</li>
<li>Oleg Kiselyov. "How to write seemingly unhygienic
and referentially opaque macros with syntax-rules".
<em>Workshop on Scheme and Functional Programming
(2002)</em>. October 2002. Available online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2002/kiselyov.ps.gz">
ps</a> <a href=
"http://repository.readscheme.org/ftp/papers/sw2002/kiselyov.pdf">
pdf</a> <a href=
"http://repository.readscheme.org/ftp/papers/sw2002/kiselyov-talk.pdf">
talk (pdf)</a>.
</li>
<li>Oleg Kiselyov. "Macros that Compose: Systematic
Macro Programming". <em>Generative Programming and
Component Engineering (GPCE'02)</em>. October 2002.
Available online: <a href=
"http://okmij.org/ftp/papers/CPS-Macros.ps.gz">ps</a>
<a href="http://okmij.org/ftp/papers/Macros-talk.pdf">
talk (pdf)</a>.
</li>
<li>Donovan Kolbly. "Extensible Language
Implementation". PhD. Thesis. University of Texas.
September 2002. Available online: <a href=
"http://www.cs.utexas.edu/ftp/pub/techreports/tr02-71.ps.gz">
ps</a>.
</li>
<li>Eugene E. Kohlbecker. "Syntactic Extensions in the
Programming Language Lisp". PhD. Thesis. Indiana
University. 1986. Available online: <a href=
"http://repository.readscheme.org/ftp/papers/kohlbecker_phdthesis.pdf">
pdf</a>.
</li>
<li>Eugene E. Kohlbecker, Daniel P. Friedman, Matthias
Felleisen and Bruce F. Duba. "Hygienic macro
expansion". <em>Proceedings of the 1986 ACM Conference
on LISP and Functional Programming</em>. 1986.
Available online: <a href=
"http://portal.acm.org/citation.cfm?id=319859">ACM
Digital Library</a>.
</li>
<li>Eugene E. Kohlbecker and Mitchell Wand.
"Macro-by-example: Deriving syntactic transformations
from their specifications". <em>Fourteenth Annual ACM
SIGACT-SIGPLAN Symposium on Principles of programming
languages</em>. January 1987. Available online:
<a href="http://www.acm.org/pubs/citations/proceedings/plan/41625/p77-kohlbecker/">
ACM Digital Library</a>.
</li>
<li>Ana Bove and Laura Arbilla. "A confluent calculus
of Macro expansion and evaluation". <em>1992 ACM
conference on LISP and functional programming</em>.
1992. Available online: <a href=
"http://doi.acm.org/10.1145/141471.141562">ACM Digital
Library</a>.
</li>
<li>Alan Bawden and Jonathan A. Rees. "Syntactic
Closures". MIT AI Lab. AI Lab Memo AIM-1049. June 1988.
Available online: <a href=
"ftp://publications.ai.mit.edu/ai-publications/1000-1499/AIM-1049.ps">
ps</a> <a href=
"ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-1049.pdf">
pdf</a>.
</li>
<li>Alan Bawden and Jonathan A. Rees. "Syntactic
closures". <em>Proceedings of the 1988 ACM Conference
on Lisp and Functional Programming</em>. July 1988.
Available online: <a href=
"http://www.acm.org/pubs/citations/proceedings/lfp/62678/p86-bawden/">
ACM Digital Library</a>.
</li>
<li>William D. Clinger. "Macros in Scheme". <em>Lisp
Pointers</em>. IV(4). December 1991. Available online:
<a href=
"ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/prop/macinsch.ps.gz">
ps</a>.
</li>
<li>William D. Clinger. "Hygienic macros through
explicit renaming". <em>Lisp Pointers</em>. IV(4).
December 1991. Available online: <a href=
"ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/prop/exrename.ps.gz">
ps</a>.
</li>
<li>William D. Clinger and Jonathan A. Rees. "Macros
that work". <em>Conference Record of the Eighteenth
Annual ACM Symposium on Principles of Programming
Languages</em>. January 1991. Available online:
<a href="http://www.acm.org/pubs/citations/proceedings/plan/99583/p155-clinger/">
ACM Digital Library</a>.
</li>
<li>Jonathan A. Rees. "Implementing lexically scoped
macros". <em>Lisp Pointers</em>. 'The Scheme of Things'
(column). 1993. Available online: <a href=
"http://mumble.net/~jar/pubs/scheme-of-things/easy-macros.ps">
ps</a>.
</li>
<li>R. Kent Dybvig. "Writing Hygenic Macros in Scheme
with Syntax-Case". Computer Science Department, Indiana
University. TR-356. June 1992. Available online:
<a href=
"ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/pubs/iucstr356.ps.gz">
ps</a>.
</li>
<li>Robert Hieb, R. Kent Dybvig and Carl Bruggeman.
"Syntactic Abstraction in Scheme". Computer Science
Department, Indiana University. TR-355. June 1992.
Available online: <a href=
"ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/pubs/iucstr355.ps.gz">
ps</a>.
</li>
<li>Oscar Waddell and R. Kent Dybvig. "Extending the
Scope of Syntactic Abstraction". <em>Conference Record
of POPL'99: The 26th ACM SIGPLAN-SIGACT Symposium on
Principles of Programming Languages</em>. January 1999.
Available online: <a href=
"http://www.cs.indiana.edu/~dyb/papers/popl99.ps.gz">ps</a>.
</li>
<li>Oscar Waddell. "Extending the Scope of Syntactic
Abstraction". PhD. Thesis. Indiana University Computer
Science Department. August 1999. Available online:
<a href=
"http://www.cs.indiana.edu/~owaddell/papers/thesis.ps.gz">
ps</a>.
</li>
<li>R. Kent Dybvig, Robert Hieb and Carl Bruggeman.
"Syntactic abstraction in Scheme". <em>Lisp and
Symbolic Computation</em>. 5, 4. December 1993.
Available online: <a href=
"http://www.cs.indiana.edu/~dyb/papers/syntactic.ps.gz">
ps</a>.
</li>
<li>R. Kent Dybvig, Daniel P. Friedman and Christopher
T. Haynes. "Expansion-Passing Style: A General Macro
Mechanism". <em>Lisp and Symbolic Computation</em>. 1,
1. June 1988. Available online: <a href=
"http://www.cs.indiana.edu/~dyb/papers/eps.ps">ps</a>.
</li>
<li>R. Kent Dybvig, Daniel P. Friedman and Christopher
T. Haynes. "Expansion-Passing style: Beyond
Conventional Macros". <em>Conference Record of the 1986
ACM Conference on Lisp and Functional Programming</em>.
1986. Available online: <a href=
"http://portal.acm.org/citation.cfm?id=319858&amp;coll=portal">
ACM Digital Library</a>.
</li>
<li>Erik Hilsdale and Daniel P. Friedman. "Writing
macros in continuation-passing style". <em>Scheme and
Functional Programming 2000</em>. September 2000.
Available online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2000/hilsdale.ps.gz">
ps</a> <a href=
"http://repository.readscheme.org/ftp/papers/sw2000/hilsdale.pdf">
pdf</a>.
</li>
<li>Oleg Kiselyov. "Re-writing abstractions, or Lambda:
the ultimate pattern macro". December 2001. Available
online: <a href=
"http://pobox.com/~oleg/ftp/Computation/rewriting-rule-lambda.txt">
html</a>.
</li>
<li>Stephen Paul Carl. "Syntactic Exposures - A
Lexically-Scoped Macro Facility for Extensible
Compilers". Masters Thesis. December 1996. Available
online: <a href=
"ftp://ftp.cs.utexas.edu/pub/garbage/carl-msthesis.ps">
ps</a>.
</li>
<li>Shriram Krishnamurthi, Matthias Felleisen and Bruce
F. Duba. "From Macros to Reusable Generative
Programming". Rice University. TR 00-364. 2000.
Available online: <a href=
"http://www.ccs.neu.edu/scheme/pubs/tr00-364.ps.gz">ps</a>.
</li>
<li>Shriram Krishnamurthi. "Linguistic Reuse". PhD.
Thesis. Rice University. Available online: <a href=
"http://www.ccs.neu.edu/scheme/pubs/thesis-shriram.ps.gz">
ps</a>.
</li>
<li>Jonathan A. Rees. "Modular Macros". Masters Thesis.
MIT. 1989.
</li>
<li>Matthias Blume. "Refining Hygienic Macros for
Modules and Separate Compilation". ATR Human
Information Processing Research Laboratories, Kyoto.
ATR Technical Report TR-H-171. 1995. Available online:
<a href=
"http://ttic.uchicago.edu/~blume/papers/hygmac.pdf">pdf</a>.
</li>
<li>Alan Bawden. "First-class macros have types". <em>
POPL '00: 27th ACM Symp. Princ. of Prog. Langs.</em>.
2000. Available online: <a href=
"http://people.csail.mit.edu/alan/mtt/popl00.ps.gz">ps</a>
<a href=
"http://people.csail.mit.edu/alan/mtt/popl00.pdf">pdf</a>.
</li>
<li>Christian Queinnec and Julian Padget. "Modules,
macros and Lisp". <em>Eleventh International Conference
of the Chilean Computer Science Society</em>. October
1991. Available online: <a href=
"http://pagesperso-systeme.lip6.fr/Christian.Queinnec/Papers/chili.ps.gz">
ps</a>.
</li>
<li>Christian Queinnec and Julian Padget. "A proposal
for a modular Lisp with macros and dynamic evaluation".
<em>Journées de Travail sur l'Analyse Statique en
Programmation Équationnelle, Fonctionnelle et
Logique</em>. October 1991. Available online: .
</li>
<li>Christian Queinnec and Julian Padget. "A
deterministic model for modules and macros". University
of Bath. Bath Computing Group Technical Report 90-36.
1990. Available online: <a href=
"http://pagesperso-systeme.lip6.fr/Christian.Queinnec/Papers/modmac2.ps.gz">
ps</a>.
</li>
<li>Chris Hanson. "A Syntactic Closures Macro
Facility". <em>Lisp Pointers</em>. IV. 4.
October-December 1991. Available online: <a href=
"http://www.swiss.ai.mit.edu/ftpdir/users/cph/macros/prop.ps.gz">
ps</a>.
</li>
<li>Jean-Pierre Briot, Pierre Cointe and Emmanuel
Saint-James. "Reécriture et récursion dans une
fermeture - Etude dans un Lisp à liaison superficielle
- Application aux objets". <em>Actes des Journées
AFCET-Informatique Langages Orientés Objet,
BIGRE+Globule</em>. 48. January 1986.
</li>
<li>Shriram Krishnamurthi. "Automata as Macros".
<em>Journal of Functional Programming</em>. 2005.
Available online: <a href=
"http://www.cs.brown.edu/~sk/Publications/Papers/Published/sk-automata-macros/">
downloadable paper</a>.
</li>
<li>Ryan Culpepper, Sam Tobin-Hochstadt and Matthew
Flatt. "Advanced Macrology and the Implementation of
Typed Scheme". <em>2007 Workshop on Scheme and
Functional Programming</em>. September 2007. Available
online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2007/01-culpepper.pdf">
pdf</a>.
</li>
<li>Keeping it Clean with syntax-parameterize. "Eli
Barzilay, Ryan Culpepper, Matthew Flatt". <em>2011
Workshop on Scheme and Functional Programming</em>.
October 2011. Available online: <a href=
"http://repository.readscheme.org/ftp/papers/sw2011/07-barzilay.pdf">
pdf</a>.
</li>
</ul>
<p>
<img width="1" height="40" border="0" src=
"./imgs/dot_clear.gif">
</p>
<div class="collophon" align="right">
Last modified: Saturday, August 11th, 2012
4:55:45pm<br>
2024-06-16 09:58:08 -04:00
HTML generated using <a href=
"http://celtic.benderweb.net/webit/">WebIt!</a>.
</div>
</td>
</tr>
</table>
</body>
</html>