@string{p:popl83 = {Conference Record of the Tenth Annual {ACM} Symposium
                    on Principles of Programming Languages}}
@string{p:popl87 = {Conference Record of the Fourteenth Annual {ACM} Symposium
                    on Principles of Programming Languages}}
@string{p:popl88 = {Conference Record of the Fifteenth Annual {ACM} Symposium
                    on Principles of Programming Languages}}
@string{p:popl90 = {Conference Record of the Seventeenth Annual {ACM} Symposium
                    on Principles of Programming Languages}}
@string{p:popl91 = {Conference Record of the Eighteenth Annual {ACM} Symposium
                    on Principles of Programming Languages}}
@string{p:popl99 = {Conference Record of the 26th Annual {ACM} Symposium
                    on Principles of Programming Languages}}

@string{p:ppopp90 = {Proceedings of the Second {ACM} {SIGPLAN} Symposium
                     on Principles and Practice of Parallel Programming}}

@string{p:sigplan86 = {Proceedings of the {SIGPLAN} '86 Symposium
                       on Compiler Construction}}
@string{p:sigplan87 = {Proceedings of the {SIGPLAN} '87 Symposium
                       on Interpreters and Interpretive Techniques}}
@string{p:pldi88 = {Proceedings of the {SIGPLAN} '88 Conference
                    on Programming Language Design and Implementation}}
@string{p:pldi90 = {Proceedings of the {SIGPLAN} '90 Conference
                    on Programming Language Design and Implementation}}
@string{p:pldi93 = {Proceedings of the {SIGPLAN} '93 Conference
                    on Programming Language Design and Implementation}}
@string{p:pldi95   = "Proceedings of the ACM SIGPLAN '95 Conference on
                    Programming Language Design and Implementation"}
@string{p:pldi96 = {Proceedings of the {SIGPLAN} '96 Conference
                    on Programming Language Design and Implementation}}

@string{p:iccl98 = {Proceedings of the {IEEE Computer Society}
1998 International Conference on Computer Languages}}

@string{p:sehld83 = {Proceedings of the {ACM} Software Engineering Symposium
                    on High-Level Debugging}}

@string{p:lisp80 = {Conference Record of the 1980 {Lisp} Conference}}
@string{p:lfp84 = {Proceedings of the 1984 {ACM} Conference on {Lisp}
                   and Functional Programming}}
@string{p:lfp86 = {Proceedings of the 1986 {ACM} Conference on {Lisp}
                   and Functional Programming}}
@string{p:lfp88 = {Proceedings of the 1988 {ACM} Conference on {Lisp}
                   and Functional Programming}}
@string{p:lfp90 = {Proceedings of the 1990 {ACM} Conference on {Lisp}
                   and Functional Programming}}
@string{p:lfp94 = {Proceedings of the 1994 {ACM} Conference on {Lisp}
                   and Functional Programming}}

@string{p:lics86 = {Proceedings of the Symposium on Logic in Computer Science}}
@string{p:lics88 = {Proceedings of the Third Symposium on Logic
                    in Computer Science}}

@string{j:cacm = {Communications of the {ACM}}}
@string{j:acm = {Journal of the {ACM}}}
@string{j:ipl = {Information Processing Letters}}
@string{j:cl = {Computer Languages}}
@string{j:lasc = {{Lisp} and Symbolic Computation}}
@string{j:hasc = {{Higher Order} and Symbolic Computation}}
@string{j:sn = {{SIGPLAN} Notices}}
@string{j:lp = {{LISP} Pointers}}
@string{j:tcs = {Theoretical Computer Science}}
@string{j:toplas = {{ACM} Transactions on Programming Languages and Systems}}

@string{elsevier = {Elsevier Science Publishers}}
@string{iucs = {Indiana Computer Science Department}}

@string{LNCS = {Springer-Verlag Lecture Notes in Computer Science}}

@techreport{Sussman:scheme,
author = {Gerald J. Sussman and Guy L. {Steele Jr.}},
title = {{Scheme}: An Interpreter for Extended Lambda Calculus},
year = 1975,
month = may,
number = 349,
type = {MIT AI Memo},
institution = {Massachusetts Institute of Technology}}

@techreport{Steele:scheme,
  author =      {Guy L. {Steele Jr.} and Gerald J. Sussman},
  title =       {The Revised Report on {Scheme}, a Dialect of {Lisp}},
  year =        1978,
  month =       jan,
  number =      452,
  type =        {MIT AI Memo},
  institution = {Massachusetts Institute of Technology}}

@book{Manis:schematics,
author = {Vincent S. Manis and James J. Little},
title = {The Schematics of Computation},
year = 1995,
publisher = {Prentice Hall}}

@book{Springer:sap,
author = {George Springer and Daniel P. Friedman},
title = {Scheme and the Art of Programming},
year = 1989,
publisher = {MIT Press and McGraw-Hill}}

@book{Friedman:lisper,
author = {Daniel P. Friedman and Matthias Felleisen},
title = {The Little Schemer},
year = 1996,
edition = {fourth},
publisher = {MIT Press}}

@book{Abelson:sicp1ed,
author = {Harold Abelson and Gerald J. Sussman with Julie Sussman},
title = {Structure and Interpretation of Computer Programs},
edition = {first},
year = 1985,
publisher = {MIT Press and McGraw-Hill}}

@book{Abelson:sicp,
author = {Harold Abelson and Gerald J. Sussman with Julie Sussman},
title = {Structure and Interpretation of Computer Programs},
year = 1996,
edition = {second},
publisher = {MIT Press and McGraw-Hill}}

@book{Steele:common,
author = {Guy L. {Steele Jr.}},
title = {{Common} {Lisp}, the Language},
publisher = {Digital Press},
edition = {second},
year = 1990}

@article{Clinger:revised,
author = {William Clinger and
          Jonathan Rees and
          others},
title = {The Revised$^4$ Report on the Algorithmic Language {Scheme}},
journal = j:lp,
volume = 4,
number = 3,
year = 1991}

@article{Kelsey:r5rs,
author = {Richard Kelsey and William Clinger and
          Jonathan Rees and
          others},
title = {The Revised$^5$ Report on the Algorithmic Language {Scheme}},
journal = j:hasc,
volume = 11,
number = 1,
year = 1999}

@article{Dybvig:engines,
author = {R. Kent Dybvig and Robert Hieb},
title = {Engines from Continuations},
journal = j:cl,
volume = 14,
number = 2,
pages = {109--123},
year = 1989}

@article{Haynes:obtaining,
author = {Christopher T. Haynes and Daniel P. Friedman and Mitchell Wand},
title = {Obtaining Coroutines with Continuations},
journal = j:cl,
volume = 11,
number = {3/4},
pages = {143--153},
year = 1986}

@article{Haynes:abstracting,
author = {Christopher T. Haynes and Daniel P. Friedman},
title = {Abstracting Timed Preemption with Engines},
journal = j:cl,
volume = 12,
number = 2,
pages = {109--121},
year = 1987}

@inproceedings{Hieb:representing,
author = {Robert Hieb and
          R. Kent Dybvig and
          Carl Bruggeman},
title = {Representing Control in the Presence of First-class Continuations},
booktitle = p:pldi90,
pages = {66--77},
month = jun,
year = 1990}

@inproceedings{Bruggeman:oneshots,
author = {Carl Bruggeman and Oscar Waddell and R. Kent Dybvig},
title = {Representing Control in the Presence of One-Shot Continuations},
booktitle = p:pldi96,
pages = {99--107},
month = may,
year = 1996
}

@manual{IEEE:1178,
title = {{IEEE} Standard for the {Scheme} Programming Language},
note = {IEEE Std 1178-1990},
organization = {{IEEE} Computer Society},
month = may,
year = 1991}

@book{Kernighan:c,
author = {Brian W. Kernighan and Dennis M. Ritchie},
title = {The {C} Programming Language},
edition = {second},
publisher = {Prentice Hall},
year = 1988}

@article{Naur:revised,
author = {Peter Naur and others},
title = {Revised Report on the Algorithmic Language {ALGOL} 60},
journal = j:cacm,
volume = 6,
number = 1,
pages = {1--17},
month = jan,
year = 1963}

@inproceedings{Daniel:prolog-fft,
author = {Sam M. Daniel},
title = {Efficient recursive {FFT} implementation in {Prolog}},
booktitle = {Proceedings of the Second  
International Conference on the Practical Application of Prolog},
pages = {175--185},
year =  1994}

@inproceedings{Wand:continuation-based,
author = {Mitchell Wand},
title = {Continuation-Based Multiprocessing},
booktitle = p:lisp80,
month = aug,
pages = {19--28},
year =  1980}

@article{Robinson:unification,
author = {J. A. Robinson},
title = {A Machine-Oriented Logic based on the Resolution Principle},
journal = j:acm,
volume = 12,
number = 1,
pages = {23--41},
year = 1965}

@techreport{Plaisted:sets,
author = {David A. Plaisted},
title = {Constructs for Sets, Quantifiers, and Rewrite Rules in {Lisp}},
year = 1984,
month = jun,
number = {UIUCDCS-R-84-1176},
institution = {University of Illinois at Urbana-Champaign Department
of Computer Science}}

@book{Clocksin:prolog,
author = {William F. Clocksin and Christopher S. Mellish},
title = {Programming in {Prolog}},
publisher = {Springer-Verlag},
edition = {second},
year = 1984}

@incollection(Friedman:devils,
author = {Daniel P. Friedman and Christopher T. Haynes
                and Eugene E. Kohlbecker},
title = {Programming with Continuations},
year = 1984,
booktitle = {Program Transformation and Programming Environments},
editor = {P. Pepper},
publisher = {Springer-Verlag},
pages = {263--274})

@article{Naur:algol,
author = {Peter Naur and others},
title = {Revised Report on the Algorithmic Language {ALGOL} 60},
journal = j:cacm,
volume = 6,
number = 1,
pages = {1--17},
month = jan,
year = 1963}

@inproceedings{Dybvig:guardians,
author = {R. Kent Dybvig and Carl Bruggeman and David Eby},
title = {Guardians in a generation-based garbage collector},
booktitle = p:pldi93,
pages = "207-216",
month = jun,
year = 1993}

@article{Dybvig:lambdastar,
author = {R. Kent Dybvig and Robert Hieb},
title = {A New Approach to Procedures with Variable Arity},
journal = j:lasc,
volume = 3,
number = 3,
pages = {229--244},
month = sep,
year = 1990}

@article{Dybvig:syntactic,
author = {R. Kent Dybvig and Robert Hieb and Carl Bruggeman},
title = {Syntactic Abstraction in {Scheme}},
journal = j:lasc,
volume = 5,
number = 4,
pages = {295--326},
year = 1993}

@inproceedings{Ashley:mvalues,
author = {J. Michael Ashley and R. Kent Dybvig},
title = {An efficient implementation of multiple return values in {Scheme}},
booktitle = p:lfp94,
pages = {140-149},
month = jun,
year = 1994}

@manual{Dybvig:cssm,
author = {R. Kent Dybvig},
title = {{Chez Scheme} System Manual, Rev. 3.0},
organization = {Cadence Research Systems},
address = {Bloomington, Indiana},
month = "December",
year = 1995}

@Book{Briggs:dft,
 author = "William Briggs and Van Emden Henson",
 title = "The {DFT}: {An} Owner's Manual for the Discrete Fourier Transform",
 publisher = "Society for Industrial and Applied Mathematics",
 year = "1995",
 address = "Philadelphia"}

@book{Dybvig:tspl4,
author = {R. Kent Dybvig},
title = {The Scheme Programming Language},
year = 2009,
edition = {4th},
publisher = {MIT Press}}

@phdthesis{Kohlbecker:phd,
author = {Eugene Kohlbecker},
title = {Syntactic Extensions in the Programming Language {Lisp}},
school = {Indiana University},
address = {Bloomington},
month = aug,
year = 1986}

@article{Dybvig:expansion:jour,
author = {R. Kent Dybvig and Daniel P. Friedman and Christopher T. Haynes},
title = {Expansion-Passing Style: A General Macro Mechanism},
journal = j:lasc,
volume = 1,
number = 1,
pages = {53--75},
year = 1988}

@techreport{Dybvig:destination,
author = {R. Kent Dybvig and Robert Hieb and Tom Butler},
title = {Destination-driven code generation},
institution = iucs,
number = 302,
month = feb,
year = 1990}

@techreport{Dybvig:syntax-case,
author = {R. Kent Dybvig},
title = {Writing hygienic macros in Scheme with syntax-case},
institution = iucs,
number = 356,
month = jun,
year = 1992}

@techreport{Dybvig:sm,
author = {R. Kent Dybvig and David Eby and Carl Bruggeman},
title = {Don't stop the {BiBOP}:  Flexible and efficient storage
management for dynamically-typed languages},
institution = iucs,
number = 400,
month = "March",
year = 1994}

@phdthesis{Dybvig:phd,
author = {R. Kent Dybvig},
title = {Three Implementation Models for Scheme},
school = {University of North Carolina},
address = {Chapel Hill},
month = apr,
year = 1987}

@inproceedings{Burger:regalloc,
author = {Robert G. Burger and
          Oscar Waddell and
          R. Kent Dybvig},
title = {Register Allocation Using Lazy Saves, Eager Restores,
         and Greedy Shuffling},
booktitle = p:pldi95,
pages = {130--138},
month = jun,
year = 1995}

@InProceedings{Burger:floatprinting,
  author       = "Robert G. Burger and R. Kent Dybvig",
  title        = "Printing Floating-Point Numbers Quickly and Accurately",
  booktitle    = p:pldi96,
  pages        = "108--116",
  month        = may,
  year         = 1996,
}

@InProceedings{burger:pdrtc,
  author       = "Robert G. Burger and R. Kent Dybvig",
  title        = "An Infrastructure for Profile-Driven Dynamic Recompilation",
  booktitle    = p:iccl98,
  pages        = "240--251",
  month        = may,
  year         = 1998
}

@inproceedings{waddell:modules,
  author = {Oscar Waddell and R. Kent Dybvig},
  title = {Extending the scope of syntactic abstraction},
  booktitle = p:popl99,
  pages = "203--213",
  month = jan,
  year = 1999,
}

@InProceedings{waddell:sas97,
  author        = "Oscar Waddell and R. Kent Dybvig",
  title         = "Fast and Effective Procedure Inlining",
  booktitle     = "Fourth International Symposium on Static Analysis",
  year          = "1997",
  series        = lncs,
  volume        = "1302",
  pages         = "35--52",
  publisher     = "Springer-Verlag"
}

@InProceedings{bawden:pepm99,
  author = {Alan Bawden},
  title = {Quasiquotation in LISP},
  booktitle = {O. Danvy, Ed., University of Aarhus, Dept. of Computer Science},
  year = {1999},
  pages = {88--99}
}

@article{Waddell:fixing-letrec,
author = {Oscar Waddell and Dipanwita Sarkar and R. Kent Dybvig},
title = {Fixing Letrec: A Faithful Yet Efficient Implementation of {Scheme}'s
Recursive Binding Construct},
journal = {Higher-order and symbolic computation},
volume = 18,
number = "3/4",
pages = {299--326},
year = 2005,
texturl = "http://www.cs.indiana.edu/~dyb/pubs/fixing-letrec.pdf",
abstracturl = "http://www.cs.indiana.edu/~dyb/pubs/fixing-letrec-abstract.html",
biburl = "http://www.cs.indiana.edu/~dyb/pubs/fixing-letrec.bib",
annote = {Describes how Chez Scheme handles {\tt letrec} expressions
          efficiently and with full enforcement of the revised
          report's restriction preventing evaluation of left-hand-side
          variable references and assignments before the righ-hand
          sides have been evaluated.}}

@inproceedings{Dybvig:hocs,
  author = {R. Kent Dybvig},
  title = {The Development of {Chez Scheme}},
  booktitle = {Proceedings of the Eleventh {ACM SIGPLAN} International
   Conference on Functional Programming},
  pages = {1--12},
  month = sep,
  year = 2006,
  texturl = "http://www.cs.indiana.edu/~dyb/pubs/hocs.pdf",
  biburl = "http://www.cs.indiana.edu/~dyb/pubs/hocs.bib",
  annote = {A brief history of Chez Scheme's development}
}

@Misc{r6rs,
  author       = {Michael Sperber and R. Kent
                  Dybvig and Matthew Flatt and Anton van Straaten (eds.)},
  title        = {Revised${}^6$ Report on the Algorithmic Language {Scheme}},
  month        = "September",
  year         = 2007,
  url = "http://www.r6rs.org/"
}

@Misc{r6rslibs,
  author       = {Michael Sperber and R. Kent
                  Dybvig and Matthew Flatt and Anton van Straaten (eds.)},
  title        = {Revised${}^6$ Report on the Algorithmic Language {Scheme}---Standard Libraries},
  month        = "September",
  year         = 2007,
  url = "http://www.r6rs.org/"
}

@Misc{r6rsapps,
  author       = {Michael Sperber and R. Kent
                  Dybvig and Matthew Flatt and Anton van Straaten (eds.)},
  title        = {Revised${}^6$ Report on the Algorithmic Language {Scheme}---Non-normative Appendices},
  month        = "September",
  year         = 2007,
  url = "http://www.r6rs.org/"
}

@inproceedings{adams:equal,
author = {Michael Adams and R. Kent Dybvig},
title = {Efficient Nondestructive Equality Checking for Trees and Graphs},
booktitle = {Proceedings of the 13th {ACM SIGPLAN} International
   Conference on Functional Programming},
pages = {179--188},
month = sep,
year = 2008}

@inproceedings{ghuloum:eq-hash-tables,
  title={Generation-friendly eq hash tables},
  author = {Abdulaziz Ghuloum and R. Kent Dybvig},
  booktitle={2007 Workshop on Scheme and Functional Programming},
  year = 2007,
  url = "http://sfp2007.ift.ulaval.ca/programme.html",
  pages={27--35}
}

@inproceedings{Dybvig:mitchfest-threads,
  title={A {Scheme} for native threads},
  author = {R. Kent Dybvig},
  booktitle={Symposium in Honor of Mitchell Wand},
  url = "http://www.ccs.neu.edu/events/wand-symposium/",
  month = aug,
  year = 2009
}

@inproceedings{Ghuloum:fixing-letrec,
  title={Fixing letrec (reloaded)},
  author = {Abdulaziz Ghuloum and R. Kent Dybvig},
  booktitle={2009 Workshop on Scheme and Functional Programming},
  url = "http://www.schemeworkshop.org/2009/",
  month = aug,
  year = 2009,
}

@inproceedings{Ghuloum:libraries,
  title = {Implicit phasing for {R6RS} libraries},
  author = {Abdulaziz Ghuloum and R. Kent Dybvig},
  booktitle = {\it Proceedings of the 12th ACM SIGPLAN International
       Conference on Functional Programming},
  pages = {303--314},
  url = {http://doi.acm.org/10.1145/1291220.1291197},
  year = {2007}
}

@phdthesis{ghuloum:phd,      
  author = {Ghuloum, Abdulaziz},
  note = {Adviser-Dybvig, R. Kent},
  title = {Implicit phasing for library dependencies},
  year = {2008},
  isbn = {978-1-109-02767-9},
  order_no = {AAI3344623},
  publisher = {Indiana University},
  address = {Indianapolis, IN, USA},
  school = {Indiana University}
}

@inproceedings{Hayes:ephemerons,
   author = {Barry Hayes},
   title = {Ephemerons: a New Finalization Mechanism},
   booktitle = {\it Proceedings of the 12th ACM SIGPLAN
        Conference on Object-Oriented Languages, Programming, Systems,
        and Applications},
   pages = {176--183},
   url = {https://doi.org/10.1145/263700.263733},
   year = {1997}
}
