packages feed

AlgorithmW-0.1.0.1: bibliography.bib

% bibliography.bib -- Martin's personal bibliography
%

@string{ActInf = "Acta Informatica"}
@string{CACM = "Communications of the {ACM}"}
@string{CompJ = "Computer Journal"}
@string{Dobbs = "Dr. Dobb's Journal"}
@string{IPL = "Information Processing Letters"}
@string{IEEETransComp = "IEEE Transactions on Computers"}
@string{IEEETransSWE = "IEEE Transactions on Software Engineering"}
@string{ISJ = "{IBM} Systems Journal"}
@string{JACM = "Journal of the ACM"}
@string{JFP = "Journal of Functional Programming"}
@string{JSS = "Journal of Systems and Software"}
@string{LNCS = "Lecture Notes in Computer Science"}
@string{LSC = "Lisp and Symbolic Computation"}
@string{MK = "Morgan Kaufman"}
@string{SPE = "Software Practice and Experience"}
@string{SIGPLAN = "ACM SIGPLAN Notices"}
@string{TECS = "ACM Transactions on Embedded Computer Systems"}
@string{TOPLAS = "ACM Transactions on Programming Languages and Systems"}
@string{TransCompSys = "ACM Transactions on Computer Systems"}
@string{TransSWE = "ACM Transactions on Software Engineering"}

@string{ACM = "ACM Press"}
@string{AP = "Academic Press"}
@string{AW = "Addison-Wesley"}
@string{BCS = "British Computer Society"}
@string{CUP = "Cambridge University Press"}
@string{ENH = "Elsevier-North Holland"}
@string{ES = "Elsevier Science Publishers"}
@string{IBM = "IBM Corp."}
@string{IEEE = "IEEE Press"}
@string{PH = "Prentice-Hall"}
@string{MGH = "McGraw-Hill"}
@string{NH = "North Holland"}
@string{MIT = "MIT Press"}
@string{SV = "Springer-Verlag"}
@string{UA = "USENIX Association"}
@string{Wiley = "Wiley"}


@string{CMU = "Carnegie Mellon University"}
@string{CORNELL = "Cornell University"}
@string{DECSRC = "DEC Systems Research Center, Palo Alto, CA"}
@string{DECWRL = "DEC Western Research Laboratory, Palo Alto, CA"}
@string{DIKU = "Department of Computer Science (DIKU), University of Copenhagen"}
@string{INRIA = "Institut National de la Recherche en Informatique et Automatique"}
@string{Lund = "Lund University, Sweden"}
@string{MITAI = "MIT AI Laboratory"}
@string{MITLCS = "MIT Laboratory for Computer Science"}
@string{PARC = "Xerox PARC, Palo Alto, CA"}
@string{PRINCETON = "Department of Computer Science, Princeton University"}
@string{RICE = "Rice University"}
@string{UCB = "University of California, Berkeley"}
@string{UKC = "Computing Laboratory, The University of Kent at Canterbury"}
@string{UCSC = "University of California, Santa Cruz"}

@Misc{ACM1972Lectures,
  author =	 {{ACM German Chapter}},
  title =	 {Lectures {II} -- 1972},
  year =	 1972
}

@article{Abadi1991Dynamic,
  author =	 {Mart{\'i}n Abadi and Luca Cardelli and Benjamin
                  Pierce and Gordon Plotkin},
  title =	 {Dynamic typing in a statically typed language},
  journal =	 TOPLAS,
  volume =	 13,
  number =	 2,
  year =	 1991,
  issn =	 {0164-0925},
  pages =	 {237--268},
  doi =		 {http://doi.acm.org/10.1145/103135.103138},
  publisher =	 ACM,
}

@Book{Abadi1997TheoryOfObjects,
  author =	 {Mart{\'i}n Abadi and Luca Cardelli},
  title =	 {A Theory of Objects},
  publisher =	 SV,
  year =	 1997
}

@Book{Abelson1996SICP,
  author =	 {Harold Abelson and Gerald Jay Sussman and Julie
                  Sussman},
  title =	 {Structure and Interpretation of Computer Programs},
  publisher =	 MIT,
  year =	 1996,
  edition =	 {2nd}
}

@Misc{Adams-FirstClassSchemeXerox,
  author =	 {Norman Adams and Pavel Curtis and Mike Spreitzer},
  title =	 {First-Class Data-type Representation in
                  {SchemeXerox}},
  url =		 {citeseer.nj.nec.com/4990.html}
}

@InProceedings{Agat1997TypesRegister,
  author =	 {Johan Agat},
  title =	 {Types for Register Allocation},
  booktitle =	 {Proceedings of IFL'97},
  year =	 1997,
  volume =	 1467,
  series =	 LNCS
}

@Book{Aho1982DataAlgorithms,
  author =	 {Alfred V. Aho and John E. Hopcroft and Jeffrey
                  D. Ullman},
  title =	 {Data Structures and Algorithms},
  publisher =	 AW,
  year =	 1982,
  series =	 {Computer Science and Information Processing}
}

@InProceedings{Aiken1994SetConstraints,
  author =	 {A. Aiken},
  title =	 {Set Constraints: Results, Applications and Future
                  Directions},
  booktitle =	 {Principles and Practice of Computer Programming},
  year =	 1994,
  editor =	 {A. Borning},
  volume =	 874,
  series =	 LNCS,
  publisher =	 SV
}

@Article{AitKaci1993MeaningOfLife,
  author =	 {Hassan A{\"\i}t-Kaci and Andreas Podelski},
  title =	 {Towards a Meaning of {LIFE}},
  journal =	 {Journal of Logic Programming},
  year =	 1993,
  volume =	 16,
  number =	 {3 \& 4},
  pages =	 {195--234}
}

@INPROCEEDINGS{AlbertHanusHuchOliverVidal02WFLP,
  author =	 {Elvira Albert and Michael Hanus and Frank Huch and
                  Javier Oliver and Germ{\'a}n Vidal},
  title =	 {An Operational Semantics for Declarative
                  Multi-Paradigm Languages},
  year =	 2002,
  address =	 {Grado (Italy)},
  booktitle =	 {Proc.\ of the 11th International Workshop on
                  Functional and (Constraint) Logic Programming (WFLP
                  2002)},
  publisher =	 {Research Report UDMI/18/2002/RR, Universit{\`a}
                  degli Studi di Udine},
  pages =	 {7--20},
  abstract =	 { In this paper we define an operational semantics
                  for functional logic languages covering notions like
                  laziness, sharing, concurrency, non-determinism,
                  etc. Such a semantics is not only important to
                  provide appropriate language definitions to reason
                  about programs and check the correctness of
                  implementations but it is also a basis to develop
                  language-specific tools, like program tracers,
                  profilers, optimizers, etc. First, we define a
                  "big-step" semantics in natural style to relate
                  expressions and their evaluated results. Since this
                  semantics is not sufficient to cover concurrency,
                  search strategies, or to reason about costs
                  associated to particular computations, we also
                  define a "small-step" operational semantics covering
                  the features of modern functional logic languages. }
}

@InProceedings{Andreoli1993Interaction,
  author =	 {Jean-Marc Andreoli and Paolo Ciancarini and Remo
                  Pareschi},
  title =	 {Interaction Abstract Machines},
  booktitle =	 {Research Directions in Concurrent Object Oriented
                  Programming},
  pages =	 {257--280},
  year =	 1993,
  editor =	 {Agha and Wegner and Yonezawa}
}

@article{ Appel1987GCFaster,
  author =	 "Andrew W. Appel",
  title =	 "Garbage Collection can be Faster than Stack
                  Allocation",
  journal =	 "Information Processing Letters",
  volume =	 25,
  number =	 4,
  publisher =	 "North Holland",
  address =	 "Princeton University, Dept. Computer Science,
                  Princeton, NJ, 08544",
  pages =	 "275--279",
  year =	 1987,
  url =		 "citeseer.nj.nec.com/appel87garbage.html"
}

@inproceedings{Appel1987StandardMLCompiler,
  author =	 "Andrew W. Appel and David B. MacQueen",
  title =	 "{A Standard {ML} Compiler}",
  booktitle =	 "{Proceedings of the Conference on Functional
                  Programming Languages and Computer Architecture}",
  volume =	 274,
  publisher =	 "Springer, Berlin",
  address =	 "Portland, Oregon, USA, September 14--16",
  pages =	 "301--324",
  year =	 1987,
  url =		 "citeseer.nj.nec.com/appel87standard.html"
}

@inproceedings{Appel1988RealTimeCC,
  author =	 {A. W. Appel and J. R. Ellis and K. Li},
  title =	 {Real-time concurrent collection on stock
                  multiprocessors},
  booktitle =	 {Proceedings of the ACM SIGPLAN 1988 conference on
                  Programming Language design and Implementation},
  year =	 1988,
  isbn =	 {0-89791-269-1},
  pages =	 {11--20},
  location =	 {Atlanta, Georgia, United States},
  doi =		 {http://doi.acm.org/10.1145/53990.53992},
  publisher =	 ACM,
}

@TechReport{Appel1989RuntimeSystem,
  author =	 {Andrew W. Appel},
  title =	 {A Runtime System},
  institution =	 {Princeton University},
  year =	 1989,
  number =	 {CS-TR-220-89},
  month =	 may
}

@article{ Appel1989Simple,
  author =	 "Andrew W. Appel",
  title =	 "Simple Generational Garbage Collection and Fast
                  Allocation",
  journal =	 "Software Practice and Experience",
  volume =	 19,
  number =	 2,
  publisher =	 "Wiley",
  pages =	 "171--183",
  year =	 1989,
  url =		 "citeseer.nj.nec.com/appel88simple.html"
}

@Book{Appel1992CompilingWithContinuations,
  author =	 {Andrew W. Appel},
  title =	 {Compiling with Continuations},
  publisher =	 CUP,
  year =	 1992
}

@article{Appel1993Critique,
  author =	 "Andrew W. Appel",
  title =	 "A Critique of Standard {ML}",
  journal =	 "Journal of Functional Programming",
  volume =	 3,
  number =	 4,
  pages =	 "391-429",
  year =	 1993,
  url =		 "citeseer.nj.nec.com/appel92critique.html"
}

@Book{Appel1998MmodernCompiler,
  author =	 {Andrew W. Appel},
  title =	 {Modern Compiler Implementation in C},
  publisher =	 CUP,
  year =	 1998
}

@inproceedings{ Apt1997Search,
  author =	 "Krzysztof R. Apt and Andrea Schaerf",
  title =	 "Search and Imperative Programming",
  booktitle =	 "Conference Record of {POPL} 97: The 24TH {ACM}
                  {SIGPLAN}-{SIGACT} Symposium on Principles of
                  Programming Languages, Paris, France",
  address =	 "New York, NY",
  pages =	 "67--79",
  year =	 1997,
  url =		 "citeseer.nj.nec.com/apt97search.html"
}

@Article{Apt1998Alma,
  author =	 {Krzysztof R. Apt and Jacob Brunekreef and Vincent
                  Partington and Andrea Schaerf},
  title =	 {Alma-0: An Imperative Language that Supports
                  Declarative Programming},
  journal =	 {ACM Toplas},
  year =	 1998,
  volume =	 20,
  number =	 5,
  pages =	 {1014--1066}
}

@misc{ Apt1998Integrating,
  author =	 "K. Apt and A. Schaerf",
  title =	 "Integrating constraints into an imperative
                  programming language",
  text =	 "K. R. Apt and A. Schaerf. Integrating constraints
                  into an imperative programming language,
                  1998. Submitted. Available from
                  \url{http://www.cwi.nl/~apt}.",
  year =	 1998,
  url =		 "citeseer.nj.nec.com/apt98integrating.html"
}

@InProceedings{Apt1999AlmaProject,
  author =	 {Krzysztof R. Apt and Andrea Schaerf},
  title =	 {The {Alma} Project, or How First Order Logic Can
                  Help Us in Imperative Programming},
  booktitle =	 {Correct System Design},
  pages =	 {89--113},
  year =	 1999,
  editor =	 {E.-R. Olderog and B. Steffen},
  number =	 1710,
  series =	 LNCS,
  publisher =	 SV
}

@InProceedings{Ariola1998MonadicState,
  author =	 {Zena M. Ariola and Amr Sabry},
  title =	 {Correctness of Monadic State: An Imperative
                  Call-by-Need Calculus},
  booktitle =	 {Proceedings of 25th ACM SIGPLAN-SIGACT Symposium on
                  Principles of Programming Languages},
  year =	 1998,
  pages =	 "62--73",
  url =		 "citeseer.nj.nec.com/ariola98correctness.html"
}

@Article{Ariola2002LambdaLetrec,
  author =	 {Zena M. Ariola and Stefan Blom},
  title =	 {Skew confluence and the lambda calculus with letrec},
  journal =	 {Annals of pure and applied logic},
  year =	 2002,
  volume =	 117,
  number =	 {1--3},
  pages =	 {97-170}
}

@PhdThesis{Armstrong2003Thesis,
  author =	 {Joe Armstrong},
  title =	 {Making reliable distributed systems in the presence
                  of software errors},
  school =	 {Royal Institute of Technology},
  year =	 2002,
  address =	 {Stockholm, Sweden},
  month =	 dec
}

@inproceedings{Ashley1094EfficientMultiple,
  author =	 "J. Michael Ashley and R. Kent Dybvig",
  title =	 "An Efficient Implementation of Multiple Return
                  Values in Scheme",
  booktitle =	 "{LISP} and Functional Programming",
  pages =	 "140-149",
  year =	 1994,
  url =		 "citeseer.nj.nec.com/article/ashley94efficient.html"
}

@Misc{AspectC,
  title =        {{AspectC}},
  key =          {AspectC},
  note =         {Available from:
                  \url{http://www.cs.ubc.ca/labs/spl/projects/aspectc.html},
                  last visited on 2003-11-26},
}

@Misc{AspectJ,
  title =        {{AspectJ}},
  key =          {AspectJ},
  note =         {Availabl from: \url{http://eclipse.org/aspectj/},
                  last visited on 2003-11-26}
}

@inproceedings{Augustsson1998Cayenne,
  author =	 "Lennart Augustsson",
  title =	 "Cayenne - a Language with Dependent Types",
  booktitle =	 "International Conference on Functional Programming",
  pages =	 "239--250",
  year =	 1998,
  url =		 "citeseer.nj.nec.com/augustsson98cayenne.html"
}

@Article{Avesani1990COOL,
  author =	 {P. Avesani and A. Perini and F. Ricci},
  title =	 {{COOL}: An Object System with Constraints},
  journal =	 {TOOLS 2},
  year =	 1990,
  month =	 jun
}

@Article{Axford1996Aladin,
  author =	 {Tom Axford and Mike Joy},
  title =	 {Aladin: An abstract machine for integrating
                  functional and procedural programming},
  journal =	 {Journal of Programming Languages},
  year =	 1996,
  volume =	 4,
  pages =	 {63--76}
}

@inproceedings{BT95a:ILPS,
  author =	 {Bekkers, Yves and Tarau, Paul},
  title =	 {Monadic {C}onstructs for {L}ogic {P}rogramming},
  booktitle =	 {Proceedings of ILPS'95},
  editor =	 "Lloyd, John",
  year =	 1995,
  month =	 dec,
  address =	 "Portland, Oregon",
  pages =	 "51--65",
  publisher =	 MIT
}

@inproceedings{Backhouse1998GenericProgramming,
  AUTHOR =	 "Backhouse, R. and Jansson, P. and Jeuring, J. and
                  Meertens, L.",
  TITLE =	 "Generic Programming --- An Introduction",
  booktitle =	 LNCS,
  PAGES =	 "28--115",
  VOLUME =	 1608,
  PUBLISHER =	 SV,
  NOTE =	 "Revised version of lecture notes for AFP'98.",
  YEAR =	 1999
}

@Article{Backus1978Liberated,
  author =	 {John Backus},
  title =	 {Can Programming be Liberated from the von {Neumann}
                  Style? {A} Functional Style and its Algebra of
                  Programs},
  journal =	 CACM,
  year =	 1978,
  volume =	 21,
  number =	 8,
  pages =	 {613--641},
  month =	 aug
}

@Article{Badros2002Cassowary,
  author =	 {Greg Badros and Alan Borning and Peter J. Stuckey},
  title =	 {The {Cassowary} Linear Arithmetic Constraint Solving
                  Algorithm},
  journal =	 {ACM Transactions on Computer-Human Interaction},
  year =	 2001,
  volume =	 8,
  number =	 4,
  pages =	 {267--306},
  month =	 dec
}

@inproceedings{Baker1982AdaFrontend,
  author =	 {T. P. Baker},
  title =	 {A single-pass syntax-directed front end for Ada},
  booktitle =	 {Proceedings of the 1982 SIGPLAN symposium on
                  Compiler construction},
  year =	 1982,
  isbn =	 {0-89791-074-5},
  pages =	 {318--326},
  location =	 {Boston, Massachusetts, United States},
}

@article{Baker1982OverloadResolution,
  author =	 {T. P. Baker},
  title =	 {A One-Pass Algorithm for Overload Resolution in Ada},
  journal =	 TOPLAS,
  volume =	 4,
  number =	 4,
  year =	 1982,
  issn =	 {0164-0925},
  pages =	 {601--614},
  doi =		 {http://doi.acm.org/10.1145/69622.69623},
  publisher =	 ACM,
}

@Book{Barthe2002AppliedSemantics,
  ALTauthor =	 {},
  editor =	 {Gilles Barthe and Peter Dybvier and Lu{\'\i}s Pinto
                  and Jo{\~a}o Saraiva},
  title =	 {Applied Semantics},
  publisher =	 SV,
  year =	 {2002},
  number =	 {2395},
  series =	 LNCS
}

@TechReport{Bartlett1989SchemeToC,
  author =	 {Joel F. Bartlett},
  title =	 {{SCHEME-$>$C: A Portable Scheme-to-C Compiler}},
  institution =	 {Western Research Laboratory},
  year =	 1989,
  type =	 {Research report},
  number =	 {89/1},
  address =	 {100 Hamilton Avenue, Palo Alto, California 94301
                  USA}
}

@inproceedings{ Bartlett1990Generational,
  author =	 "Joel F. Bartlett",
  title =	 "{A} generational compacting garbage collector for
                  {C}++",
  booktitle =	 "{ECOOP}/{OOPSLA} Workshop on Garbage Collection in
                  Object-Oriented Systems",
  address =	 "Ottawa, Canada",
  year =	 1990,
  url =		 "citeseer.nj.nec.com/230349.html"
}

@article{Bauer1978WideSpectrum,
  author =	 {F. L. Bauer and M. Broy and R. Gnatz and W. Hesse
                  and B. Krieg-Br{\"u}ckner and H. Partsch and
                  P. Pepper and H. W{\"o}ssner},
  title =	 {Towards a wide spectrum language to support program
                  specification and program development},
  journal =	 {SIGPLAN Notices},
  volume =	 13,
  number =	 12,
  year =	 1978,
  issn =	 {0362-1340},
  pages =	 {15--24},
  doi =		 {http://doi.acm.org/10.1145/954587.954588},
  publisher =	 ACM,
}

@Book{Bauer1985CIP,
  author =	 {Friedrich L. Bauer},
  title =	 {{The Munich Project CIP. Volume I: The Wide Spectrum
                  Language CIP-L}},
  publisher =	 SV,
  year =	 1985,
  volume =	 183,
  series =	 LNCS
}

@InProceedings{Baumgartner2001FPinBrew,
  author =	 {Gerald Baumgartner and Martin Jansche and
                  Christopher D. Peisert},
  title =	 {Support for Functional Programming in Brew},
  crossref =	 {Striegnitz2001MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {111--125},
  year =	 2001
}

@TechReport{Bawden1988SyntacticClosures,
  author =	 {Alan Bawden and Jonathan Rees},
  title =	 {Syntactic Closures},
  institution =	 MITAI,
  year =	 1988,
  number =	 {AIM-1049},
  month =	 jun
}

@InProceedings{Bawden2000FirstClassMacros,
  author =	 {Alan Bawden},
  title =	 {First-class macros have types},
  booktitle =	 {POPL '00: 27th ACM Symp. Princ. of Prog. Langs.},
  year =	 2000
}

@InProceedings{Benson1994libscheme,
  author =	 {Brent W. Benson},
  title =	 {libscheme: {Scheme} as a {C} library},
  booktitle =	 {Usenix Very High-level Languages Symposium},
  year =	 1994
}

@Book{Bentley1988Pearls,
  author =	 {Jon Bentley},
  title =	 {More Programming Pearls},
  publisher =	 AW,
  year =	 1988
}

@InBook{Benton2002MonadsEffects,
  author =	 {Nick Benton and John Hughes and Eugenio Moggi},
  ALTeditor =	 {},
  title =	 {Applied Semantics},
  chapter =	 {Monads and Effects},
  publisher =	 SV,
  year =	 {2002},
  OPTcrossref =	 {Barthe2002AppliedSemantics},
  number =	 {2395},
  series =	 LNCS
}

@article{Biagioni1998SafeForSpace,
  author =	 "Edoardo Biagioni and Ken Cline and Peter Lee and
                  Chris Okasaki and Chris Stone",
  title =	 "Safe-for-Space Threads in Standard {ML}",
  journal =	 "Higher-Order and Symbolic Computation",
  volume =	 11,
  number =	 2,
  pages =	 "209-225",
  year =	 1998,
  url =		 "citeseer.nj.nec.com/33216.html"
}

@article{ Bigot1999ReturnValue,
  author =	 "Peter A. Bigot and Saumya K. Debray",
  title =	 "Return Value Placement and Tail Call Optimization in
                  High Level Languages",
  journal =	 "Journal of Logic Programming",
  volume =	 38,
  number =	 1,
  pages =	 "1-29",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/bigot99return.html"
}

@Book{Bird1988IntroFP,
  author =	 {Richard Bird and Philip Wadler},
  title =	 {{Introduction to Functional Programming}},
  publisher =	 PH,
  year =	 1988
}

@Article{Bird1997HasteSpeed,
  author =	 {Richard Bird and Geraint Jones and Oege de Moor},
  title =	 {More Haste, Less Speed: Lazy Versus Eager
                  Evaluation},
  journal =	 {Journal of Functional Programming},
  year =	 1997,
  volume =	 7,
  number =	 5,
  pages =	 {541--547},
  month =	 sep
}

@inproceedings{Bird2003TroubleShared,
  author =	 {Richard Bird and Ralf Hinze},
  title =	 {Functional Pearl trouble shared is trouble halved},
  booktitle =	 {Proceedings of the ACM SIGPLAN workshop on Haskell},
  year =	 2003,
  isbn =	 {1-58113-758-3},
  pages =	 {1--6},
  location =	 {Uppsala, Sweden},
  doi =		 {http://doi.acm.org/10.1145/871895.871896},
  publisher =	 ACM,
}

@inproceedings{Blackburn2002Beltway,
  author =	 {Stephen M. Blackburn and Richard Jones and Kathryn
                  S. McKinley and J. Eliot B. Moss},
  title =	 {Beltway: getting around garbage collection gridlock},
  booktitle =	 {Proceedings of the ACM SIGPLAN 2002 Conference on
                  Programming language design and implementation},
  year =	 2002,
  isbn =	 {1-58113-463-0},
  pages =	 {153--164},
  location =	 {Berlin, Germany},
  doi =		 {http://doi.acm.org/10.1145/512529.512548},
  publisher =	 ACM,
}

@InProceedings{Blazevic2001Environment,
  author =	 {Mario Bla{\v z}evi{\'c} and Zoran Budimac},
  title =	 {Implementing Extensible Compilers},
  crossref =	 {Striegnitz2001MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {97--110},
  year =	 {2001}
}

@Misc{Blume1997SeparateCompilationScheme,
  author =	 {Matthias Blume},
  title =	 {Separate Compilation for {Scheme}},
  howpublished = {Draft Paper},
  year =	 1997
}

@inproceedings{Boehm1982LogicExpressionsSideEffects,
  author =	 {Hans-J. Boehm},
  title =	 {A Logic for Expressions With Side-Effects},
  booktitle =	 {Proceedings of the 9th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1982,
  isbn =	 {0-89791-065-6},
  pages =	 {268--280},
  location =	 {Albuquerque, Mexico},
  doi =		 {http://doi.acm.org/10.1145/582153.582182},
  publisher =	 ACM,
}

@inproceedings{Boehm1986ImplementingRussel,
  author =	 {Hans-Juergen Boehm and Alan Demers},
  title =	 {Implementing {Russell}},
  booktitle =	 {Proceedings of the 1986 SIGPLAN Symposium on
                  Compiler Construction},
  year =	 1986,
  isbn =	 {0-89791-197-0},
  pages =	 {186--195},
  location =	 {Palo Alto, California, United States},
  doi =		 {http://doi.acm.org/10.1145/12276.13330},
  publisher =	 ACM,
},
@Misc{Bonniot2000StructuralInterfaces,
  author =	 {Daniel Bonniot},
  title =	 {Structural interfaces for {ML${}_{\leq}$}},
  month =	 apr,
  year =	 2000
}

@inproceedings{Borning1997ConstraintsWeb,
  author =	 {Alan Borning and Richard Lin and Kim Marriott},
  title =	 {Constraints for the web},
  booktitle =	 {Proceedings of the fifth ACM international
                  conference on Multimedia},
  year =	 1997,
  isbn =	 {0-89791-991-2},
  pages =	 {173--182},
  location =	 {Seattle, Washington, United States},
  doi =		 {http://doi.acm.org/10.1145/266180.266361},
  publisher =	 ACM,
}

@InProceedings{Bother1998CompilingSchemeJava,
  author =	 {Per Bothner},
  title =	 {Kawa: Compiling {Scheme} to {Java}},
  booktitle =	 {Usenix},
  year =	 1998,
  address =	 {New Orleans},
  month =	 jun
}

@InProceedings{Bothner1998Kawa,
  author =	 {Per Bothner},
  title =	 {Kawa - Compiling Dynamic Languages to the Java VM},
  booktitle =	 {Usenix Conference},
  year =	 1998,
  address =	 {New Orleans}
}

@Proceedings{Bramer2003AI2003,
  title =	 {Proceedings of AI-2003, the Twentythird SGAI
                  International Conference on Innovative Techniques
                  and Applications of Artificial Intelligence},
  year =	 2003,
  editor =	 {Max Bramer and Richard Ellis and Ann L. Macintosh},
  volume =	 {XX},
  series =	 {Applications and Innovations in Intelligent Systems},
  address =	 {Cambridge, UK},
  month =	 dec,
  organization = BCS,
  publisher =	 SV
}

@InProceedings{Brand2003ModalSatisfiability,
  author =	 {Sebastian Brand and Rosella Gennari and Maarten de
                  Rijke},
  title =	 {Constraint Programming for Modelling and Solving
                  Modal Satisfiability},
  booktitle =	 {Ninth International Conference on Principles and
                  Practice of Constraint Programming},
  pages =	 {795--800},
  year =	 2003,
  editor =	 {Francesca Rossi},
  month =	 sep,
  publisher =	 SV
}

@InProceedings{Breitinger1996EdenCoordinationModel,
  author =	 {Silvia Breitinger and Rita Loogen and Yolanda
                  Ortega-Mall{\'e}n and Ricardo Pe{\~n}a},
  title =	 {The {Eden} Coordination Model for Distributed Memory
                  Systems},
  crossref =	 {Chakravarty1996MPLP},
  booktitle =	 {Multi-paradigm Logic Programming},
  pages =	 {25--34},
  year =	 1996
}

@article{Broy1982SchorrWaite,
  author =	 {Manfred Broy and Peter Pepper},
  title =	 {Combining Algebraic and Algorithmic Reasoning: An
                  Approach to the Schorr-Waite Algorithm},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 4,
  number =	 3,
  year =	 1982,
  issn =	 {0164-0925},
  pages =	 {362--381},
  doi =		 {http://doi.acm.org/10.1145/357172.357175},
  publisher =	 ACM,
}

@Proceedings{Broy1991MoP,
  title =	 {Methods of Programming -- Selected Papers on the CIP
                  Project},
  year =	 1991,
  editor =	 {Manfred Broy and Martin Wirsing},
  volume =	 544,
  series =	 LNCS,
  publisher =	 SV
}

@InProceedings{Brus1987Clean,
  author =	 {T. Brus and M. C. J. D. van Eekelen and M. van Leer
                  and M. J. Plasmeijer and H.P. Barendregt},
  title =	 {CLEAN - A Language for Functional Graph Rewriting},
  booktitle =	 {Proc. of Conference on Functional Programming
                  Languages and Computer Architecture (FPCA '87),
                  Portland, Oregon, USA},
  pages =	 {364--384},
  year =	 1987,
  editor =	 {Kahn},
  number =	 274,
  series =	 LNCS,
  publisher =	 SV
}

@InProceedings{Bryant2001ExplicitProgramming,
  author =	 {Avi Bryant and Andrew Catton and Kris De Volder and
                  Gail C. Murphy.},
  title =	 {Explicit Programming },
  booktitle =	 {Proceedings of 1st International Conference on
                  Aspect-Oriented Software Development},
  pages =	 {10--18},
  year =	 2001,
  month =	 apr
}

@article{Budd1998FunctionalProgramming,
  author =	 {Timothy A. Budd},
  title =	 {Functional programming and the fragile base class
                  problem},
  journal =	 SIGPLAN,
  volume =	 33,
  number =	 12,
  year =	 1998,
  issn =	 {0362-1340},
  pages =	 {66--71},
  doi =		 {http://doi.acm.org/10.1145/307824.307881},
  publisher =	 ACM,
}

@InProceedings{Budd2002JensensDevice,
  author =	 {Timothy A. Budd},
  title =	 {The Return of {Jensen's} Device},
  crossref =	 {Striegnitz2002MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {45--63},
  year =	 2002
}

@INPROCEEDINGS{BuessowGrieskamp:99,
  AUTHOR =	 {R. B{\"u}ssow and W. Grieskamp},
  TITLE =	 {{A Modular Framework for the Integration of
                  Heterogenous Notations and Tools}},
  BOOKTITLE =	 {Proc. of the 1st International Conference on
                  Integrated Formal Methods -- IFM'99},
  YEAR =	 1999,
  EDITOR =	 {K. Araki and A. Galloway and K. Taguchi}
}

@TechReport{Burger1994SchemeMachine,
  author =	 {Robert G. Burger},
  title =	 {The Scheme Machine},
  institution =	 {Indiana University, Computer Science Department},
  year =	 1994,
  number =	 413,
  month =	 aug
}

@InProceedings{Burger1995RegisterAllocation,
  author =	 {Robert G. Burger and Oscar Waddell and R. Kent
                  Dybvig},
  title =	 {{Register Allocation Using Lazy Saves, Eager
                  Restores, and Greedy Shuffling}},
  booktitle =	 {Conference on Programming Language Design and
                  Implementation},
  pages =	 {130--138},
  year =	 1995,
  volume =	 30,
  month =	 jun
}

@article{Burstall1977TransformationSystem,
  author =	 {R. M. Burstall and John Darlington},
  title =	 {A Transformation System for Developing Recursive
                  Programs},
  journal =	 {J. ACM},
  volume =	 24,
  number =	 1,
  year =	 1977,
  issn =	 {0004-5411},
  pages =	 {44--67},
  doi =		 {http://doi.acm.org/10.1145/321992.321996},
  publisher =	 ACM,
}

@inproceedings{Burstall1980Hope,
  author =	 "R. M. Burstall and D. B. MacQueen and
                  D. T. Sannella",
  title =	 "{Hope: An Experimental Applicative Language}",
  booktitle =	 "{Conference Record of the 1980 {LISP} Conference}",
  publisher =	 ACM,
  address =	 "Stanford University, Stanford, California",
  pages =	 "136--143",
  year =	 1980,
  month =        aug,
  url =		 "citeseer.nj.nec.com/burstall80hope.html"
}

@MISC{CIP1,
  key =          {CIP1},
  TITLE =        {{Constraint Imperative Programming}},
  howpublished = {World Wide Web},
  NOTE =
                  {Available from:\url{http://www.ncst.ernet.in/kbcs/vivek/issues/10.4/ravi/node10.html}, last visited: 2003-02-24},
  YEAR =         1999
}

@MISC{CIP2,
  key =          {CIP2},
  TITLE =        {{Papers -- Constraint Imperative Programming}},
  howpublished = {World Wide Web},
  NOTE =         {Available from:
                  \url{http://www.cs.washington.edu/research/constraints/cip/},
                  last visited: 2003-02-24},
  YEAR =         2003
}

@InProceedings{Calcagno2003Implementing,
  author =	 {Cristiano Calcagno and Walid Taha and Liwen Huang
                  and Xavier Leroy},
  title =	 {{Implementing Multi-stage Languages Using ASTs,
                  Gensym, and Reflection}},
  booktitle =	 {GPCE'2003},
  year =	 2003
},
@inproceedings{Cannarozzi2000ContaminatedGC,
  author =	 {Dante J. Cannarozzi and Michael P. Plezbert and Ron
                  K. Cytron},
  title =	 {Contaminated garbage collection},
  booktitle =	 {Proceedings of the ACM SIGPLAN 2000 conference on
                  Programming language design and implementation},
  year =	 2000,
  isbn =	 {1-58113-199-2},
  pages =	 {264--273},
  location =	 {Vancouver, British Columbia, Canada},
  doi =		 {http://doi.acm.org/10.1145/349299.349334},
  publisher =	 ACM,
}

@PhdThesis{CantwellSmith1982Reflection,
  author =	 {Brian {Cantwell Smith}},
  title =	 {Reflection and Semantics in a Procedural Language},
  school =	 {Massachusetts Institute of Technology},
  year =	 1982,
  month =	 jan,
  note =	 {Also available as Technical Report
                  No.~MIT-LCS-TR-272}
}

@article{ Cardelli1987BasicPolymorphicTypeChecking,
  author =	 "Luca Cardelli",
  title =	 "Basic Polymorphic Typechecking",
  journal =	 "Science of Computer Programming",
  volume =	 8,
  number =	 2,
  pages =	 "147-172",
  year =	 1987,
  url =		 "citeseer.nj.nec.com/cardelli88basic.html"
}

@InProceedings{Carlsson2002MonadsIncrementalComputing,
  author =	 {Magnus Carlsson},
  title =	 {Monads for Incremental Computing"},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming, ICFP'2002},
  year =	 2002,
  month =	 oct
}

@InProceedings{Ceijtin2000FlowDirected,
  author =	 {Henry Cejtin and Suresh Jagannathan and Stephen
                  Weeks},
  title =	 {Flow-Directed Closure Conversion for Typed
                  Languages},
  booktitle =	 {European Symposium on Programming},
  pages =	 {56--71},
  year =	 2000,
  month =	 mar
}

@Proceedings{Chakravarty1996MPLP,
  title =	 {Multi-paradigm Logic Programming},
  year =	 1996,
  editor =	 {Manuel M. T. Chakravarty and Yike Guo and Tetsuo
                  Ida},
  number =	 {96--28},
  series =	 {Forschungsberichte des Fachbereichs Informatik},
  month =	 aug,
  organization = {Technische Universit{\"a}t Berlin},
  note =	 {Proceedings of the JICSLP'96 Post-Conference
                  Workshop}
}

@inproceedings{Chen1997MutableADT,
  author =	 {Chih-Ping Chen and Paul Hudak},
  title =	 {Rolling your own mutable ADT--a connection between
                  linear types and monads},
  booktitle =	 {Proceedings of the 24th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1997,
  isbn =	 {0-89791-853-3},
  pages =	 {54--66},
  location =	 {Paris, France},
  doi =		 {http://doi.acm.org/10.1145/263699.263708},
  publisher =	 ACM,
}

@inproceedings{Chitil1999TypeInference,
  author =	 {Olaf Chitil},
  title =	 {Type inference builds a short cut to deforestation},
  booktitle =	 {Proceedings of the fourth ACM SIGPLAN international
                  Conference on Functional Programming},
  year =	 1999,
  isbn =	 {1-58113-111-9},
  pages =	 {249--260},
  location =	 {Paris, France},
  doi =		 {http://doi.acm.org/10.1145/317636.317907},
  publisher =	 ACM,
}

@Article{Claessen1999ConcurrencyMonad,
  author =	 {Koen Claessen},
  title =	 {A Poor Man's Concurrency Monad},
  journal =	 {Journal of Functional Programming},
  year =	 1999,
}

@inproceedings{Clinger1988ImplementingContinuations,
  author =	 {Will Clinger and Anne Hartheimer and Eric Ost},
  title =	 {Implementation strategies for continuations},
  booktitle =	 {Proceedings of the 1988 ACM Conference on LISP and
                  Functional Programming},
  year =	 1988,
  isbn =	 {0-89791-273-X},
  pages =	 {124--131},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/62678.62692},
  publisher =	 ACM,
}

@Article{Clinger1991ExplicitRenaming,
  author =	 {William D. Clinger},
  title =	 {Hygienic macros through explicit renaming},
  journal =	 {Lisp Pointers},
  year =	 1991,
  volume =	 {IV},
  number =	 4,
  month =	 dec,
}

@InProceedings{Clinger1991MacrosThatWork,
  author =	 {William Clinger and Jonathan Rees},
  title =	 {Macros that work},
  booktitle =	 {POPL '91: Conference Record of the Eighteenth Annual
                  ACM Symposium on Principles of Programming
                  Languages},
  pages =	 {155-162},
  year =	 1991,
  publisher =	 ACM
}

@inproceedings{Coady2001ModularityOS,
  author =	 {Yvonne Coady and Gregor Kiczales and Mike Feeley and
                  Greg Smolyn},
  title =	 {Using aspectC to improve the modularity of
                  path-specific customization in operating system
                  code},
  booktitle =	 {Proceedings of the 8th European software engineering
                  conference held jointly with 9th ACM SIGSOFT
                  international symposium on Foundations of software
                  engineering},
  year =	 2001,
  isbn =	 {1-58113-390-1},
  pages =	 {88--98},
  location =	 {Vienna, Austria},
  doi =		 {http://doi.acm.org/10.1145/503209.503223},
  publisher =	 ACM
}

@inproceedings{Coady2003AspectEvolutionOS,
  author =	 {Yvonne Coady and Gregor Kiczales},
  title =	 {Back to the future: a retroactive study of aspect
                  evolution in operating system code},
  booktitle =	 {Proceedings of the 2nd international conference on
                  Aspect-oriented software development},
  year =	 2003,
  isbn =	 {1-58113-660-9},
  pages =	 {50--59},
  location =	 {Boston, Massachusetts},
  doi =		 {http://doi.acm.org/10.1145/643603.643609},
  publisher =	 ACM,
}

@Proceedings{Coenen2003AI2003,
  title =	 {Proceedings of AI-2003, the Twentythird SGAI
                  International Conference on Innovative Techniques
                  and Applications of Artificial Intelligence},
  year =	 2003,
  editor =	 {Frans Coenen and Alun Preece and Ann L. Macintosh},
  volume =	 {XX},
  series =	 {Research and Development in Intelligent Systems},
  address =	 {Cambridge, UK},
  month =	 dec,
  organization = BCS,
  publisher =	 SV
}

@article{Cohen1990CLPL,
  author =	 {Jacques Cohen},
  title =	 {Constraint logic programming languages},
  journal =	 CACM,
  volume =	 33,
  number =	 7,
  year =	 1990,
  issn =	 {0001-0782},
  pages =	 {52--68},
  doi =		 {http://doi.acm.org/10.1145/79204.79209},
  publisher =	 ACM,
}

@InProceedings{Colnet1998CustomizeMarkSweep,
  author =	 {Dominique Colnet and Philippe Coucaud and Olivier
                  Zendra},
  title =	 {Compiler Support to Customize the Mark and Sweep
                  Algorithm},
  booktitle =	 {ACM SIGPLAN International Symposium on Memory
                  Management (ISMM'98)},
  pages =	 {154-165},
  year =	 1998,
  address =	 {Vancouver, BC, Canada},
  month =	 oct
},
@Article{Constanza2003EssenceAOP,
  author =	 {Pascal Costanza},
  title =	 {Dynamically Scoped Functions as the Essence of AOP},
  journal =	 {ACM SIGPLAN Notices},
  year =	 2003,
  volume =	 38,
  number =	 8,
  pages =	 {29--36},
  month =	 aug
}

@Book{Cooper2004EngineeringCompiler,
  author =	 {Keith D. Cooper and Linda Torczon},
  title =	 {Engineering a Compiler},
  publisher =	 MK,
  year =	 2004
}

@InProceedings{Courtney2001GUI,
  author =	 {Antony Courtney and Conal Elliott},
  title =	 {Genuinely Functional User Interfaces},
  booktitle =	 {Haskell Workshop 01},
  year =	 2001
}

@InProceedings{Crary2003TypedAssembly,
  author =	 {Karl Crary},
  title =	 {Toward a Foundational Typed Assembly Language},
  booktitle =	 {POPL'03},
  pages =	 {198--212},
  year =	 2002
}

@misc{CurryReport,
  AUTHOR =	 {M. Hanus and S. Antoy and H. Kuchen and
                  F.J. L\a'opez-Fraguas and W. Lux and
                  J.J. Moreno-Navarro and F. Steiner},
  TITLE =	 {{Curry -- An Integrated Functional Logic Language}},
  howpublished = {Language Report},
  YEAR =	 {Version 0.7.2, 2002}
}

@InProceedings{Curtis1990ModuleSystemScheme,
  author =	 {Pavel Curtis and James Rauen},
  title =	 {A Module System for Scheme},
  booktitle =	 {Proceedings of the 1990 ACM Conference on Lisp and
                  Functional Programming},
  year =	 1990,
  month =	 jun
}

@Book{Czarnecki2000GenerativeProgramming,
  author =	 {Krzysztof Czarnecki and Ulrich W. Eisenecker},
  title =	 {Generative Programming -- Methods, Tools, and
                  Applications},
  publisher =	 AW,
  year =	 2000,
}

@Article{Dahl1966Simula,
  author =	 {Ole-Johan Dahl and Kristen Nygaard},
  title =	 {{SIMULA} -- an {Algol}-Based Simulation Language},
  journal =	 CACM,
  year =	 1966,
  volume =	 9,
  number =	 9,
  pages =	 {671--678},
  month =	 sep
}

@InProceedings{Damas1982PrincipalTypeSchemes,
  author =	 {Luis Damas and Robin Milner},
  title =	 {Principal type schemes for functional programs},
  booktitle =	 {Proceedings 9'th ACM Symposium on Principles of
                  Programming Languages},
  pages =	 {207--212},
  year =	 1982,
  address =	 {Albuquerque, N.M},
  month =	 jan,
  publisher =	 ACM
}

@InProceedings{Danvy1988FAC,
  author =	 {Olivier Danvy},
  title =	 {On some Functional Aspects of Control},
  booktitle =	 {Workshop on the Implementation of Lazy Functional
                  Languages},
  year =	 1988,
  month =	 oct
}

@TechReport{Danvy1991ThreeSteps,
  author =	 {Olivier Danvy},
  title =	 {Three Steps for the CPS Transformation},
  institution =	 {Kansas State University},
  year =	 1991,
  number =	 {CIS-92-02},
  month =	 dec
}

@InProceedings{Danvy1992Back,
  author =	 {Olivier Danvy},
  title =	 {Back to Direct Style},
  booktitle =	 {European Symposium on Programming (ESOP 1992},
  year =	 1992,
  volume =	 582,
  series =	 LNCS,
  month =	 feb
}

@InProceedings{Davies2000IntersectionTypes,
  author =	 {Rowan Davies and Frank Pfenning},
  title =	 {Intersection types and computational effects},
  booktitle =	 {Proceedings of the Fifth International Conference on
                  Functional Programming (ICFP'00),},
  pages =	 {198-208},
  year =	 2000,
  editor =	 {P. Wadler},
  address =	 {Montreal, Canada},
  month =	 sep,
  publisher =	 ACM
}

@inproceedings{DeRemer1979EfficientLALR,
  author =	 {Frank DeRemer and Thomas J. Pennello},
  title =	 {Efficient computation of LALR(1) look-ahead sets},
  booktitle =	 {Proceedings of the 1979 SIGPLAN symposium on
                  Compiler construction},
  year =	 1979,
  isbn =	 {0-89791-002-8},
  pages =	 {176--187},
  location =	 {Denver, Colorado, United States},
}

@article{DeRemer1982LALR,
  author =	 {Frank DeRemer and Thomas Pennello},
  title =	 {Efficient Computation of LALR(1) Look-Ahead Sets},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 4,
  number =	 4,
  year =	 1982,
  issn =	 {0164-0925},
  pages =	 {615--649},
  doi =		 {http://doi.acm.org/10.1145/69622.357187},
  publisher =	 ACM,
}

@Misc{Dewar1979SETL,
  author =       {Robert B. K. Dewar},
  title =        {{The SETL Programming Language}},
  howpublished = {Available from,
                  \url{http://galt.mrl.nyu.edu/~bacon/setlprog.ps}},
  year =         1979
}

@INPROCEEDINGS{DidrichEtAl:94,
  AUTHOR =	 {K. Didrich and A. Fett and C. Gerke and W. Grieskamp
                  and P. Pepper},
  TITLE =	 {{Design and Implementation of an Algebraic
                  Programming Language}},
  BOOKTITLE =	 {Programming Languages and System Architectures},
  EDITOR =	 {J. Gutknecht},
  YEAR =	 1994,
  SERIES =	 LNCS,
  VOLUME =	 782,
  PUBLISHER =	 SV
}

@Misc{Dijkstra1978ReviewBackus,
  author =	 {Edsger W. Dijkstra},
  title =	 {{A review of the 1977 Turing Award Lecture by John
                  Backus}},
  howpublished = {circulated privately (EWD~692)},
  year =	 1978
}

@InProceedings{Dijkstra2001LazyJava,
  author =	 {Atze Dijkstra and Doaitse S. Swierstra},
  title =	 {Lazy Functional Parser Combinators in Java},
  crossref =	 {Striegnitz2001MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {11--42},
  year =	 2001
}

@Book{Diller1988Compiling,
  author =	 {Antoni Diller},
  ALTeditor =	 {},
  title =	 {Compiling Functional Languages},
  publisher =	 Wiley,
  year =	 {1988}
}

@InProceedings{Dunfield2004Tridirectional,
  author =	 {Joshua Dunfield and Frank Pfenning},
  title =	 {Tridirectional typechecking},
  booktitle =	 {Conference Record of the 31st Annual Symposium on
                  Principles of Programming Languages (POPL'04)},
  pages =	 {281--292},
  year =	 2004,
  editor =	 {X. Leroy},
  address =	 {Venice, Italy},
  month =	 jan,
  publisher =	 ACM
}

@TechReport{Dybvig1990DestinationDriven,
  author =	 {R. Kent Dybvig and Robert Hieb and Tom Butler},
  title =	 {Destination-Driven Code Generation},
  institution =	 {Indiana University Computer Science Department},
  year =	 1990,
  number =	 302,
  month =	 feb
}

@techreport{ Dybvig1994DontStopBibop,
  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",
  number =	 400,
  address =	 "\{dyb,deby,bruggema\}@cs.indiana.edu",
  year =	 1994,
  url =		 "citeseer.nj.nec.com/dybvig94dont.html"
}

@Book{Ehrig2001Grundlagen,
  author =	 {Hartmut Ehrig and Bernd Mahr and Martin Grosze-Rohde
                  and Felix Cornelius and Philip Zeitz},
  title =	 {Mathematisch-strukturelle Grundlagen der Informatik},
  publisher =	 SV,
  year =	 2001
}

@article{Elrad2001AOPIntro,
  author =	 {Tzilla Elrad and Robert E. Filman and Atef Bader},
  title =	 {Aspect-oriented programming: Introduction},
  journal =	 {Communications of the ACM},
  volume =	 44,
  number =	 10,
  year =	 2001,
  issn =	 {0001-0782},
  pages =	 {29--32},
  doi =		 {http://doi.acm.org/10.1145/383845.383853},
  publisher =	 ACM,
}

@InProceedings{Erkoek2000RecursiveMonadicBindings,
  author =	 {Levent Erk{\"o}k and John Launchbury},
  title =	 {Recursive Monadic Bindings},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming ICFP'00},
  year =	 2000
}
}

@InProceedings{Erkoek2002RecursiveDo,
  author =	 {Levent Erk{\"o}k and John Launchbury},
  title =	 {A Recursive do for {Haskell}},
  booktitle =	 {Haskell'02},
  year =	 2002,
  month =	 oct
}

@Article{Erwig1998Diets,
  author =	 {Martin Erwig},
  title =	 {Diets for Fat Sets},
  journal =	 {Journal of Functional Programming},
  year =	 1998,
  volume =	 8,
  number =	 6,
  pages =	 {627--632}
}

@InProceedings{Feeley1990ParallelVirtualMachine,
  author =	 "M. Feeley and J. S. Miller",
  title =	 "A Parallel Virtual Machine for Efficient Scheme
                  Compilation",
  booktitle =	 "Proceedings of the 1990 {ACM} Conference on {LISP}
                  and Functional Programming, Nice",
  publisher =	 ACM,
  address =	 "New York, NY",
  pages =	 "119--130",
  year =	 1990,
  url =		 "citeseer.nj.nec.com/feeley90parallel.html"
}

@InProceedings{Feeley2000PortableContinuations,
  author =	 {Marc Feeley},
  title =	 {{A portable implementation of first-class
                  continuations for unrestricted interoperability with
                  C in a multithreaded Scheme}},
  booktitle =	 {Scheme and Functional Programming 2000},
  year =	 2000,
  month =	 {September}
}

@TechReport{Fegaras1996Fusion,
  author =	 {Leonidas Fegaras},
  title =	 {Fusion for Free!},
  institution =	 {Department of Computer Science \& Engineering,
                  Oregon Graduate Institute School of Science \&
                  Engineering},
  year =	 1996,
  number =	 {CSE-96-001},
  month =	 jan
}

@inproceedings{Feldman1988Dependency,
  author =	 {Roy Feldman},
  title =	 {Design of a dependency-directed compiler for
                  constraint propagation},
  booktitle =	 {Proceedings of the first international conference on
                  Industrial and engineering applications of
                  artificial intelligence and expert systems},
  year =	 1988,
  isbn =	 {0-89791-271-3},
  pages =	 {141--146},
  location =	 {Tullahoma, Tennessee, United States},
  doi =		 {http://doi.acm.org/10.1145/51909.51926},
  publisher =	 ACM,
}

@inproceedings{Felleisen1988LambdaVCS,
  author =	 {Matthias Felleisen},
  title =	 {$\lambda$-v-{CS}: an extended $\lambda$-calculus for
                  {Scheme}},
  booktitle =	 {Proceedings of the 1988 ACM Conference on LISP and
                  Functional Programming},
  year =	 1988,
  isbn =	 {0-89791-273-X},
  pages =	 {72--85},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/62678.62686},
  publisher =	 ACM,
}

@PhdThesis{Filinkski1996ControllingEffects,
  author =	 {Andrzej Filinski},
  title =	 {Controlling Effects},
  school =	 {School of Computer Science, Carnegie Mellon
                  University},
  year =	 1996,
  month =	 may,
  note =	 {Also available as Technical Report
                  No. CMU-CS-96-119}
}

@incollection{ Filinski1999RLM,
  author =	 "Andrzej Filinski",
  title =	 "Representing Layered Monads",
  booktitle =	 "Conf.\ Record 26th {ACM} {SIGPLAN}-{SIGACT}
                  Symposium on Principles of Programming Languages,
                  {POPL}'99, San Antonio, Texas, {USA}",
  publisher =	 ACM,
  address =	 "New York",
  pages =	 "175--188",
  year =	 1999,
  month =	 jan,
  url =		 "citeseer.nj.nec.com/filinski94representing.html"
}

@InProceedings{Filman2001AOPRevisited,
  author =	 {Robert E. Filman},
  title =	 {What is Aspect-Oriented Programming, Revisited},
  booktitle =	 {Workshop on Advanced Separation of Concerns, ECOOP
                  2001},
  year =	 2001,
  address =	 {Budapest, Hungary}
}

@InProceedings{Filman2003,
  author =	 {Robert E. Filman},
  title =	 {{Understanding AOP through the Study of
                  Interpreters}},
  crossref =	 {Leavens2003FOAL},
  pages =	 {61--64}
}

@InProceedings{Fiore1999AbstractSyntax,
  author =	 {Marcelo Fiore and Gordon Plotkin and Daniele Turi},
  title =	 {Abstract syntax and variable binding},
  booktitle =	 {14th Symposium on Logic in Computer Science},
  pages =	 {193--202},
  year =	 1999,
  address =	 {Trento, Italy},
  month =	 jul,
  organization = IEEE
}

@InProceedings{Fisher1999ClassMechanism,
  author =	 {Kathleen Fisher and John Reppy},
  title =	 {The design of a class mechanism for {Moby}},
  booktitle =	 {Proceedings of the 1999 ACM SIGPLAN Conference of
                  Programming Language Design and Implementation,
                  Atlanta, Georgia, USA},
  year =	 1999,
  month =	 may,
}

@TechReport{Fitzgerald1999Marmot,
  author =	 {Robert Fitzgerald and Todd B. Knoblock and Erik Ruf
                  and Bjarne Steensgard and David Tarditi},
  title =	 {Marmot: An Optimizing Compiler for Java},
  institution =	 {Microsoft Research},
  year =	 1999,
  number =	 {MSR-TR-99-33},
  address =	 {Microdoft Research, 1 Microsoft Way, Redmond, WA,
                  98052},
  month =	 jun
}

@TechReport{Flanagan1995SetBasedAnalysis,
  author =	 {Cormac Flanagan and Matthias Felleisen},
  title =	 {Set-Based Analysis for Full Scheme and Its Use in
                  Soft-Typing},
  institution =	 {Rice University},
  year =	 1995,
  number =	 {Rice COMP TR95-254},
  address =	 {Department of Computer Science, Rice University,
                  P.O. Box 1892, Houston, TX 77251-1892},
  month =	 oct
}

@Proceedings{Flatt2003Scheme,
  title =	 {Scheme 2003 -- Proceedings of the Fourth Workshop on
                  Scheme and Functional Programming},
  year =	 2003,
  editor =	 {Matthew Flatt},
  number =	 {UUCS-03-023},
  address =	 {Boston, Massachusetts},
  month =	 nov,
  organization = {School of Computing, University of Utah, Salt Lake
                  City, UT 84112, USA},
}

@InProceedings{Fluet2001Contification,
  author =	 {Matthew Fluet and Stephen Weeks},
  title =	 {Contification Using Dominators},
  booktitle =	 {International Conference on Functional Programming},
  year =	 2001,
  month =	 sep
}

@Misc{Frank2002DiplomaThesis,
  author =	 {Stephan Frank and Pierre Mai},
  title =	 {{Strategien f{\"u}r kooperierende Constraint
                  L{\"o}ser. Diploma Thesis, Technische
                  Universit{\"a}t Berlin}},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 2002
}

@InProceedings{Frank2003CPFT,
  author =	 {Stephan Frank and Martin Grabm{\"u}ller and Petra
                  Hofstedt and Andr{\'e} Metzner},
  title =	 {{Constraints, Predicates, Functions and a Turtle}},
  booktitle =	 {20. Workshop der GI-Fachgruppe 2.1.4
                  Programmiersprachen und Rechenkonzepte},
  year =	 2003,
  editor =	 {Wolfgang Goerigk},
  address =	 {Bad Honnef, Germany},
  month =	 may,
  abstract =	 {This paper briefly introduces the current work on
                  multiparadigm programming languages at Berlin
                  University of Technology. Starting from a general
                  approach for the cooperation and coordination of
                  constraint solvers and its implementation Meta-S, we
                  briefly discuss how to integrate different host
                  languages into the framework building at this
                  multiparadigm constraint languages. Further current
                  research directions concern the functional logic
                  language Brooks which allows the program compilation
                  according to different narrowing strategies and the
                  constraint imperative language Turtle.}
}

@INPROCEEDINGS{Frank2003MetaS,
  AUTHOR =	 {Stephan Frank and Petra Hofstedt and Pierre R. Mai},
  TITLE =	 {{Meta-S: A strategy-oriented Meta-Solver Framework}},
  BOOKTITLE =	 {16th Int'l FLAIRS Conference},
  YEAR =	 2003,
  PUBLISHER =	 {AAAI},
  EDITOR =	 {I. Russel and S. Haller}
}

@inproceedings{FrankHofstedtMai:2003b,
  author =	 {Stephan Frank and Petra Hofstedt and Pierre R. Mai},
  title =	 {{A flexible Meta-Solver Framework for Constraint
                  Solver Collaboration}},
  booktitle =	 {Proceedings of the 26th German Conference on
                  Artificial Intelligence (KI~2003)},
  year =	 2003,
  series =	 LNCS,
  volume =	 2821,
}

@InProceedings{FreemanBenson1993ConvertingUI,
  author =	 {Bjorn N. Freeman-Benson},
  title =	 {Converting an existing user interface to use
                  constraints},
  booktitle =	 {Proceedings of the UIST'93 (ACM SIGGRAPH Symp. on
                  User Interface Software and Technology)},
  pages =	 {207--215},
  year =	 1993,
  address =	 {Atlanta, GA},
  month =	 nov
}

@InProceedings{Fritzson2002Modelica,
  author =	 {Peter Fritzson and Peter Bunus},
  title =	 {Modelica -- A Declarative Object Oriented
                  Multi-Paradigm Language},
  crossref =	 {Striegnitz2002MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {27--44},
  year =	 2002
}

@Misc{GHC2005UsersGuide,
  author =       {The {GHC Team}},
  title =        {{The Glorious Glasgow Haskell Compilation System
                  User's Guide, Version 6.4}},
  howpublished = {World Wide Web},
  year =         2005,
  note =         {Available from:
                  \url{http://www.haskell.org/ghc/docs/html/users_guide/users-guide.html},
                  last visited: 2005-04-11}
}

@Article{Gabriel1988Cells,
  author =	 {Richard P. Gabriel and Kent M. Pitman},
  title =	 {Technical Issues of Separation in Function Cells and
                  Value Cells},
  journal =	 {Lisp and Symbolic Computation,},
  year =	 1988,
  volume =	 1,
  number =	 1,
  pages =	 {81--101},
  month =	 jun,
  url =		 {http://www.nhplace.com/kent/Papers/Technical-Issues.html}
}

@Manual{Galassi2002Guile,
  title =	 {Guile Reference Manual},
  author =	 {Mark Galassi and Jim Blandy and Gary Houston and Tim
                  Pierce and Neil Jerram and Martin Grabm{\"u}ller},
  organization = {FSF},
  edition =	 {1.0},
  month =	 {September},
  year =	 2002,
  abstract =	 {This manual documents the installation and usage of
                  the Guile system, an implementation of the
                  programming language Scheme.}
}

@InProceedings{Ganz2001MacroML,
  author =	 {Steven E. Ganz and Amr Sabry and Walid Taha},
  title =	 {{Macros as Multi-Stage Computations: Type-Safe,
                  Generative, Binding Macros in MacroML}},
  booktitle =	 {ICFP'01},
  year =	 2001
}

@inproceedings{Gasbichler2002FinalShift,
  author =	 {Martin Gasbichler and Michael Sperber},
  title =	 {Final shift for call/cc:: direct implementation of
                  shift and reset},
  booktitle =	 {Proceedings of the Seventh ACM SIGPLAN International
                  Conference on Functional Programming},
  year =	 2002,
  isbn =	 {1-58113-487-8},
  pages =	 {271--282},
  location =	 {Pittsburgh, PA, USA},
  doi =		 {http://doi.acm.org/10.1145/581478.581504},
  publisher =	 ACM,
}

@article{Gelernter1992CoordinationLanguages,
  author =	 {David Gelernter and Nicholas Carriero},
  title =	 {Coordination languages and their significance},
  journal =	 CACM,
  volume =	 35,
  number =	 2,
  year =	 1992,
  issn =	 {0001-0782},
  pages =	 {96--107},
  doi =		 {http://doi.acm.org/10.1145/129630.376083},
  publisher =	 ACM,
}

@InProceedings{Gifford1986Integrating,
  author =	 {David K. Gifford and John M. Lucassen},
  title =	 {Integrating Functional and Imperative Programming},
  booktitle =	 {Proceedings of the 1986 ACM Conference on Lisp and
                  Functional Programming},
  pages =	 {28--38},
  year =	 1986,
  month =	 aug,
}

@Book{Gosling2000JavaLangSpec,
  author =	 {James Gosling and Bill Joy and Guy Steele and Gilad
                  Bracha},
  title =	 {Java\texttrademark{} Language Specification},
  publisher =	 AW,
  year =	 2000,
  edition =	 {2nd},
  month =	 jun
}

@Manual{Grabmueller2000SizzleEmbedding,
  title =	 {Sizzle Embedding Manual},
  author =	 {Martin Grabm{\"u}ller},
  edition =	 {0.0.30},
  month =	 {September},
  year =	 2000,
  abstract =	 {This manual documents how to embed the Sizzle
                  library into programs written in the C programming
                  language. Programs which embed Sizzle can make use
                  of Scheme as an extension language.}
}

@Manual{Grabmueller2000SizzleReference,
  title =	 {Sizzle Reference Manual},
  author =	 {Martin Grabm{\"u}ller},
  edition =	 {0.0.30},
  month =	 {December},
  year =	 2000,
  abstract =	 {This manual documents the installation and usage of
                  the Sizzle system, an implementation of the
                  programming language Scheme.}
}

@MastersThesis{Grabmueller2003CIP ,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Constraint Imperative Programming}},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 2003,
  type =	 {Diploma Thesis},
  month =	 feb,
  abstract =	 {Constraint-based programming languages are
                  declarative programming languages. In constraint
                  programs, the solutions of a problem are obtained by
                  specifying their desired properties, whereas in
                  imperative programs, the steps which lead to a
                  solution must be defined explicitly, rather than
                  being derived automatically from the
                  specification. This work deals with the design and
                  implementation of a programming language which
                  integrates declarative constraints and imperative
                  constructs in order to form a powerful programming
                  paradigm suitable for solving a wide range of
                  problems.}
}

@InProceedings{Grabmueller2003CIPLTurtle,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{The Constraint Imperative Programming Language
                  Turtle}},
  booktitle =	 {20. Workshop der GI-Fachgruppe 2.1.4
                  Programmiersprachen und Rechenkonzepte},
  year =	 2003,
  editor =	 {Wolfgang Goerigk},
  address =	 {Bad Honnef, Germany},
  month =	 may,
  abstract =	 {The goal of declarative programming is to provide
                  languages and implementations which let the
                  programmer write programs by specifying what the
                  properties of the desired solutions should be. In
                  imperative languages, the calculation steps leading
                  to the solutions must be programmed explicitly. The
                  programming language Turtle combines traditional
                  imperative language constructs and declarative
                  constraints. This blending of paradigms is called
                  ``constraint imperative programming'' in literature,
                  and Turtle is one instance of this multiparadigm
                  approach.}
}

@Unpublished{Grabmueller2003CIPwithHOF,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Constraint Imperative Programming with Higher-order
                  Functions}},
  note =	 {Draft paper},
  month =	 jul,
  year =	 2003,
  abstract =	 {In constraint programming, programs are written by
                  mainly specifying the properties which must hold for
                  a solution of a given problem. In contrast,
                  imperative programming languages require that the
                  programmer explicitly specifies each state
                  transition a program must perform in order to
                  calculate the solution. This paper describes a
                  programming style which consists of these both views
                  as well as on higher-order functional programming.}
}

@TechReport{Grabmueller2003MPP,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Mul\-ti\-pa\-ra\-dig\-men-Pro\-gram\-mier\-spra\-chen}},
  institution =	 {Technische Universit{\"a}t Berlin},
  year =	 2003,
  type =	 {Research report},
  number =	 {2003-15 in {\em Forschungsberichte Fakult{\"a}t IV
                  -- Elektrotechnik und Informatik}},
  month =	 oct,
  abstract =	 {Dieser Bericht untersucht Programmiersprachen, die
                  verschiedene Programmierparadigmen in sich
                  vereinen. Dabei wird ein breiter "Uberblick "uber
                  die existierenden Ans"atze und Techniken bei Entwurf
                  und Implementierung multiparadigmatischer Sprachen
                  herausgearbeitet. Die Unterschiede der einzelnen
                  etablierten Programmierparadigmen werden beschrieben
                  und die M"oglichkeiten zur Kombination dieser
                  Paradigmen anhand der Untersuchung existierender
                  Programmiersprachen erl"autert. Nach einer genaueren
                  Betrachtung syntaktischer und semantischer
                  Eigenschaften unterschiedlicher Programmiersprachen
                  werden Vorschl"age zum Entwurf von
                  Programmiersprachen, welche die Programmierung in
                  unterschiedlichen Paradigmen erlauben, entwickelt.}
}

@InProceedings{Grabmueller2003TurtleImpl,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Implementing Constraint Imperative Languages with
                  Higher-order Functions}},
  booktitle =	 {Second International Workshop on Multiparadigm
                  Constraint Programming Languages, MultiCPL'03},
  pages =	 {43--54},
  year =	 2003,
  editor =	 {Michael Hanus and Petra Hofstedt and Armin Wolf},
  address =	 {Kinsale, Cork, Ireland},
  month =	 sep,
  abstract =	 {Constraint imperative programming languages combine
                  declarative constraints and imperative language
                  features into an integrated programming
                  language. The language Turtle supports these
                  programming paradigms and additionally integrates
                  functional programming with higher-order functions
                  and algebraic data types. This paper describes the
                  implementation of Turtle, consisting of a compiler,
                  a run-time system including constraint solvers and
                  an extensive library of supporting modules.}
}

@Misc{Grabmueller2003turtleWWW,
  author =       {Martin Grabm{\"u}ller},
  title =        {{Turtle -- A Constraint Imperative Programming
                  Language}},
  howpublished = {World Wide Web},
  year =         2003,
  note =
                  {\url{http://uebb.cs.tu-berlin.de/~magr/turtle/turtle.en.html}}
}

@Article{Grabmueller2005ParadigmIntegration,
  author =	 {Martin Grabm{\"u}ller and Petra Hofstedt and Peter
                  Pepper and Olaf Krzikalla},
  title =	 {Paradigm Integration -- Language and Library
                  Approach},
  journal =	 {Theory and Practice of Logic Programming},
  year =	 2005,
  volume =	 0,
  number =	 0,
  pages =	 {0--0},
  month =	 jan,
  note =	 {Submitted}
}

@InProceedings{GrabmuellerHofstedt2003Turtle,
  author =	 {Martin Grabm{\"u}ller and Petra Hofstedt},
  title =	 {{Turtle: A Constraint Imperative Programming
                  Language}},
  editor =	 {Frans Coenen and Alun Preece and Ann Macintosh},
  booktitle =	 {Twenty-third SGAI International Conference on
                  Innovative Techniques and Applications of Artificial
                  Intelligence},
  year =	 2003,
  number =	 {XX},
  series =	 {Research and Development in Intelligent Systems},
  address =	 {Cambridge, UK},
  month =	 dec,
  organization = BCS,
  publisher =	 SV,
  isbn =	 {1-85233-780-X},
  abstract =	 {Ideally, in constraint programs, the solutions of
                  problems are obtained by specifying their desired
                  properties, whereas in imperative programs, the
                  steps which lead to a solution must be defined
                  explicitly, rather than being derived
                  automatically. This paper describes the design and
                  implementation of the programming language Turtle,
                  which integrates declarative constraints and
                  imperative language elements in order to combine
                  their advantages and to form a more flexible
                  programming paradigm suitable for solving a wide
                  range of problems.}
}

@INPROCEEDINGS{Grieskamp1998Specifying,
  AUTHOR =	 {W. Grieskamp and M. Heisel and H. D{\"o}rr},
  TITLE =	 {{Specifying Embedded Systems with Statecharts and Z:
                  An Agenda for Cyclic Software Components}},
  BOOKTITLE =	 {Proc. of the 1st International Conference on
                  Fundamental Approaches to Software Engineering --
                  FASE'98},
  EDITOR =	 {E. Astesiano},
  YEAR =	 1998,
  SERIES =	 LNCS,
  VOLUME =	 1382,
  PUBLISHER =	 SV
}

@phdthesis{Grieskamp2000SetBasedCalculus,
  author =	 "Wolfgang Grieskamp",
  title =	 "A Set-Based Calculus and its Implementation",
  school =	 "Technische Universit{\"a}t Berlin",
  url =
                  "http://uebb.cs.tu-berlin.de/~wg/papers/GrieskampDiss.pdf",
  year =	 2000
}

@TechReport{Grossman2001RegionTypeSoundness,
  author =	 {Dan Grossman and Greg Morrisett and Trevor Jim and
                  Mike Hicks and Yanling Wang and James Cheney},
  title =	 {Formal Type Soundness for {Cyclone's} Region System},
  institution =	 {Cornell University and AT{\&}T Labs Research},
  year =	 2001,
  month =	 nov,
}

@InProceedings{Grossman2002RegionCyclone,
  author =	 {Dan Grossman and Greg Morrisett and Trevor Jim and
                  Michael Hicks and Yanling Wang and James Cheney},
  title =	 {Region-based Memory Management in Cyclone},
  booktitle =	 {ACM Conference on Programming Language Design and
                  Implementation},
  pages =	 {282--293},
  year =	 2002,
  address =	 {Berlin, Germany},
  month =	 jun
}

@techreport{ Gudeman1993RepresentingTypeInformation,
  author =	 "David Gudeman",
  title =	 "Representing Type Information in Dynamically-Typed
                  Languages",
  number =	 "TR93-27",
  address =	 "Tucson, Arizona",
  year =	 1993,
  month =	 oct,
  url =		 "citeseer.nj.nec.com/gudeman93representing.html"
}

@Book{Gunter1992Semantics,
  author =	 {Carl A. Gunter},
  ALTeditor =	 {},
  title =	 {Semantics of Programming Languages: Structures and
                  Techniques},
  publisher =	 MIT,
  year =	 {1992},
  series =	 {Foundations of Computing}
}

@Article{Gurevich1991EvolvingAlgebras,
  author =	 {Yuri Gurevich},
  title =	 {Evolving Algebras: An Introductory Tutorial},
  journal =	 {Bulletin of the European Association for Theoretical
                  Computer Science},
  year =	 1991,
  pages =	 {264--284},
  month =	 feb
}

@InBook{Gurevich1995LipariGuide,
  author =	 {Yuri Gurevich},
  editor =	 {E. B{\"o}rger,},
  title =	 {Specification and Validation Methods},
  chapter =	 {Evolving Algebra 1993: Lipari Guide},
  publisher =	 {Oxford University Press},
  year =	 1995,
  pages =	 {9--36},
}

@article{Gurevich2000SequentialASM,
  author =	 {Yuri Gurevich},
  title =	 {Sequential abstract-state machines capture
                  sequential algorithms},
  journal =	 {ACM Transactions on Computational Logic (TOCL)},
  volume =	 1,
  number =	 1,
  year =	 2000,
  issn =	 {1529-3785},
  pages =	 {77--111},
  doi =		 {http://doi.acm.org/10.1145/343369.343384},
  publisher =	 ACM,
}

@InProceedings{Hailpern1987DesignMultiparadigmLanguage,
  author =	 {Brent Hailpern},
  title =	 {Design of a Multiparadigm Language},
  booktitle =	 {Proceedings of the Twentieth Annual Hawaii
                  International Conference on System Sciences},
  pages =	 {239--246},
  year =	 1987
}

@InProceedings{Hammond1998Juaskell,
  author =	 {K. Hammond and D. Walsh-Kemmis},
  title =	 {Juaskell: Implementing Evaluation Strategies in
                  Java},
  booktitle =	 {Third Latin-American Conference on Functional
                  Programming},
  year =	 1998,
  url =		 {citeseer.nj.nec.com/hammond98juaskell.html}
}

@inproceedings{Hanson1990EfficientStackAllocation,
  author =	 {Chris Hanson},
  title =	 {Efficient stack allocation for tail-recursive
                  languages},
  booktitle =	 {Proceedings of the 1990 ACM Conference on LISP and
                  Functional Programming},
  year =	 1990,
  isbn =	 {0-89791-368-X},
  pages =	 {106--118},
  location =	 {Nice, France},
  doi =		 {http://doi.acm.org/10.1145/91556.91603},
  publisher =	 ACM,
}

@Article{Hanson1991SyntacticClosures,
  author =	 {Chris Hanson},
  title =	 {A Syntactic Closures Macro Facility},
  journal =	 {Lisp Pointers},
  year =	 1991,
  volume =	 {IV},
  number =	 4,
  month =	 oct # "/" # dec
}

@InProceedings{Hanus1995CurryTrulyFunctionalLogic,
  author =	 {Michael Hanus and Herbert Kuchen and Juan Jos{\'e}
                  Moreno-Navarro},
  title =	 {Curry: A Truly Functional Logic Language},
  booktitle =	 {Proc. ILPS'95 Workshop on Visions for the Future of
                  Logic Programming},
  pages =	 {95--107},
  year =	 1995,
  month =	 dec
}

@Article{Hanus1996IntegrationFunctionalLogic,
  author =	 {Michael Hanus and Herbert Kuchen},
  title =	 {Integration of Functional and Logic Programming},
  journal =	 {ACM Computing Surveys},
  year =	 1996,
  volume =	 28,
  number =	 2,
  pages =	 {306--308}
}

@Misc{Hanus1999CurryJava,
  author =	 {Michael Hanus and Ramin Sadre},
  title =	 {An Abstract Machine for {Curry} and its Concurrent
                  Implementation in {Java}},
  month =	 mar,
  year =	 1999
}

@Proceedings{Hanus2002MultiCPL,
  title =	 {MultiCPL'02: Workshop on Multiparadigm Constraint
                  Programming Languages and RCoRP'02: Fourth Workshop
                  on Rule-Based Constraint Reasoning and Programming},
  year =	 2002,
  editor =	 {Michael Hanus and Petra Hofstedt and Slim
                  Abdennadher and Thom Fr{\"u}hwirth and Armin Wolf},
  address =	 {Ithaca, NY, USA},
  organization = {Cornell University},
  note =	 {Workshop Proceedings},
}

@INPROCEEDINGS{Hanus90PLILP,
  author =	 "Michael Hanus",
  title =	 "Compiling Logic Programs with Equality",
  booktitle =	 "Proc.\ of the 2nd Int.\ Workshop on Programming
                  Language Implementation and Logic Programming",
  publisher =	 SV,
  series =	 LNCS,
  number =	 456,
  pages =	 "387-401",
  year =	 1990,
  abstract =	 { Horn clause logic with equality is an amalgamation
                  of functional and logic programming languages. A
                  sound and complete operational semantics for logic
                  programs with equality is based on resolution to
                  solve literals, and rewriting and narrowing to
                  evaluate functional expressions. This paper proposes
                  a technique for compiling programs with these
                  inference rules into programs of a low-level
                  abstract machine which can be efficiently executed
                  on conventional architectures. The presented
                  approach is based on an extension of the Warren
                  abstract machine (WAM). In our approach pure logic
                  programs without function definitions are compiled
                  in the same way as in the WAM-approach, and for
                  logic programs with function definitions particular
                  instructions are generated for occurrences of
                  functions inside clause bodies. In order to obtain
                  an efficient implementation of functional
                  computations, a stack of occurrences of function
                  symbols in goals is managed by the abstract
                  machine. The compiler generates the necessary
                  instructions for the efficient manipulation of the
                  occurrence stack from the given equational logic
                  program. }
}

@INPROCEEDINGS{Hanus92PLILP,
  author =	 "Michael Hanus",
  title =	 "Improving Control of Logic Programs by Using
                  Functional Logic Languages",
  year =	 1992,
  publisher =	 SV,
  series =	 LNCS,
  number =	 631,
  booktitle =	 "Proc. of the 4th International Symposium on
                  Programming Language Implementation and Logic
                  Programming -- PLILP",
  pages =	 "1-23"
}

@ARTICLE{Hanus96SDCR,
  author =	 "Michael Hanus",
  title =	 "Integration of Declarative Paradigms: Benefits and
                  Challenges",
  year =	 1996,
  journal =	 "ACM Computing Surveys",
  volume =	 "28A",
  number =	 4,
  note =	 "Also appeared in ACM SIGPLAN Notices, Vol.~32,
                  No.~1, 1997, 77--79"
}

@INPROCEEDINGS{Hanus97POPL,
  author =	 "Michael Hanus",
  title =	 "A Unified Computation Model for Functional and Logic
                  Programming",
  year =	 1997,
  booktitle =	 "Proc. 24st ACM Symposium on Principles of
                  Programming Languages (POPL'97)",
  pages =	 "80-93",
  abstract =	 { We propose a new computation model which combines
                  the operational principles of functional languages
                  (reduction), logic languages (non-deterministic
                  search for solutions), and integrated functional
                  logic languages (residuation and narrowing). This
                  computation model combines efficient evaluation
                  principles of functional languages with the
                  problem-solving capabilities of logic
                  programming. Since the model allows the delay of
                  function calls which are not sufficiently
                  instantiated, it also supports a concurrent style of
                  programming. We provide soundness and completeness
                  results and show that known evaluation principles of
                  functional logic languages are particular instances
                  of this model. Thus, our model is a suitable basis
                  for future declarative programming languages. }
}

@InProceedings{Haridi1996DistributedOz,
  author =	 {Seif Haridi and Peter {Van Roy} and Gert Smolka},
  title =	 {An Overview of the Design of {Distributed Oz}},
  crossref =	 {Chakravarty1996MPLP},
  booktitle =	 {Multi-paradigm Logic Programming},
  pages =	 {13--24},
  year =	 1996
}

@article{Harrison1993SubjectOrientedProgramming,
  author =	 {William Harrison and Harold Ossher},
  title =	 {Subject-oriented programming: a critique of pure
                  objects},
  journal =	 {SIGPLAN Notices},
  volume =	 28,
  number =	 10,
  year =	 1993,
  issn =	 {0362-1340},
  pages =	 {411--428},
  doi =		 {http://doi.acm.org/10.1145/167962.165932},
  publisher =	 ACM,
}

@InProceedings{Henderson2002AccurateGC,
  author =	 {Fergus Henderson},
  title =	 {Accurate Garbage Collection in an Uncooperative
                  Environment},
  booktitle =	 {ISMM'02, Berlin},
  year =	 2002
}

@InProceedings{Henderson2002CompilingMercury,
  author =	 {Fergus Henderson and Zoltan Somogyi},
  title =	 {Compiling Mercury to high-level {C} code},
  booktitle =	 {CC'02, Grenoble, France},
  year =	 2002
}

@InProceedings{Hentenryck2003ControlAbstractions,
  author =	 {Pascal {Van Hentenryck} and Laurent Michel},
  title =	 {Control Abstractions for Local Search},
  booktitle =	 {Ninth International Conference on Principles and
                  Practice of Constraint Programming},
  pages =	 {65--80},
  year =	 2003,
  editor =	 {Francesca Rossi},
  month =	 sep,
  publisher =	 SV
}

@InProceedings{Hickey1998LISP,
  author =	 {Timothy J. Hickey and Peter Norvig and and Ken
                  Anderson},
  title =	 {LISP - a Language for Internet Scripting and
                  Programming},
  booktitle =	 {LUGM'98: Proceedings of Lisp in the Mainstream},
  year =	 1998,
  address =	 {Berkeley, CA},
  month =	 nov
}

@InProceedings{Hickey2000Analytic,
  author =	 {Timothy J. Hickey},
  title =	 {Analytic Constraint Solving and Interval Arithmetic},
  booktitle =	 {Proceedings of the 27th Annual ACM SIGACT-SIGPLAN
                  Symposium on Principles of Programming Languages},
  year =	 2000,
  month =	 jan
}

@Article{Hickey2001IntervalArithmetic,
  author =	 {Timothy J. Hickey and Qun Ju and Maarten H. van
                  Emden},
  title =	 {Interval Arithmetic: from Principles to
                  Implementation},
  journal =	 JACM,
  year =	 2001,
  volume =	 48,
  number =	 5,
  pages =	 {1038--1068},
  month =	 sep
}

@Book{Hill1994Goedel,
  author =	 {P. M. Hill and J. W. Lloyd},
  title =	 {The {G{\"o}del} Programming Language},
  publisher =	 MIT,
  year =	 1994
}

@Article{Hinze2001TheWeb,
  author =	 {Ralf Hinze and Johan Jeuring},
  title =	 {Weaving a web},
  journal =	 {Journal of Functional Programming},
  year =	 2001,
  volume =	 11,
  number =	 6,
  pages =	 {681--689}
}
}

@article{Hoare1978CSP,
  author =	 {C. A. R. Hoare},
  title =	 {Communicating sequential processes},
  journal =	 CACM,
  volume =	 21,
  number =	 8,
  year =	 1978,
  issn =	 {0001-0782},
  pages =	 {666--677},
  doi =		 {http://doi.acm.org/10.1145/359576.359585},
  publisher =	 ACM,
}

@Book{Hoare1985CSP,
  author =	 {C. A. R. Hoare},
  title =	 {Communicating Sequential Processes},
  publisher =	 PH,
  year =	 1985
}

@article{Hoare1987LawsOfProgramming,
  author =	 {C. A. R. Hoare and I. J. Hayes and He Jifeng and
                  C. C. Morgan and A. W. Roscoe and J. W. Sanders and
                  I. H. Sorensen and J. M. Spivey and B. A. Sufrin},
  title =	 {Laws of programming},
  journal =	 CACM,
  volume =	 30,
  number =	 8,
  year =	 1987,
  issn =	 {0001-0782},
  pages =	 {672--686},
  doi =		 {http://doi.acm.org/10.1145/27651.27653},
  publisher =	 ACM,
}

@PhdThesis{Hofstedt2001CooperationCoordination,
  author =	 {Petra Hofstedt},
  title =	 {{Cooperation and Coordination of Constraint
                  Solvers}},
  school =	 {Technische Universt{\"a}t Dresden},
  year =	 2001
}

@Misc{Hofstedt2002EinfuehrungCP,
  author =	 {Petra Hofstedt and Armin Wolf},
  title =	 {Einf{\"u}hrung in die Constraint-Programmierung},
  howpublished = {Vorlesungs-Skript},
  year =	 2002
}

@INPROCEEDINGS{HofstedtCL:2000,
  AUTHOR =	 {P. Hofstedt},
  TITLE =	 {{Better Communication for Tighter Cooperation}},
  BOOKTITLE =	 {First International Conference on Computational
                  Logic -- CL},
  YEAR =	 2000,
  SERIES =	 LNCS,
  VOLUME =	 1861,
  PUBLISHER =	 SV
}

@INPROCEEDINGS{HofstedtCP:2000,
  AUTHOR =	 {P. Hofstedt},
  TITLE =	 {{Cooperating Constraint Solvers}},
  BOOKTITLE =	 {Sixth International Conference on Principles and
                  Practice of Constraint Programming -- CP},
  YEAR =	 2000,
  EDITOR =	 {R. Dechter},
  SERIES =	 LNCS,
  VOLUME =	 1894,
  PUBLISHER =	 SV
}

@INPROCEEDINGS{HofstedtMetzner:2003,
  AUTHOR =	 {P. Hofstedt and A. Metzner},
  TITLE =	 {{Multiple Evaluation Strategies for the
                  Multiparadigm Programming Language Brooks}},
  BOOKTITLE =	 {Proc. of the 12th International Workshop on
                  Functional and (Constraint) Logic Programming,
                  WFLP'03},
  YEAR =	 2003,
  EDITOR =	 {Germ{\'a}n Vidal}
}

@INPROCEEDINGS{Hofstedt_02B,
  AUTHOR =	 {Petra Hofstedt},
  TITLE =	 {{A general Approach for Building Constraint
                  Languages}},
  BOOKTITLE =	 {AI 2002: Advances in Artificial Intelligence},
  YEAR =	 2002,
  EDITOR =	 {B. McKay and J. Slaney},
  PAGES =	 {431-442},
  SERIES =	 LNCS,
  VOLUME =	 1470,
  PUBLISHER =	 SV
}

@InProceedings{Horn1992ConstraintPattersn,
  author =	 {Bruce Horn},
  title =	 {Constraint Patterns as a basis for object-oriented
                  constraint programming},
  booktitle =	 {Proceedings of the 1992 ACM Conference on
                  Object-Oriented Programming Systems, Languages and
                  Applications},
  pages =	 {218--233},
  year =	 1992,
  address =	 {Vancouver, British Columbia},
  month =	 oct
}

@InBook{Horn1992LanguagesUI,
  author =	 {Bruce Horn},
  title =	 {Languages for Developing User Interfaces},
  chapter =	 {Properties of user interface systems and the {S}iri
                  programming language},
  publisher =	 {Jones and Bartlett},
  year =	 1992,
  address =	 {Boston},
  pages =	 {211--236}
}

@Misc{Hudak1999GentleIntroduction,
  author =	 {Paul Hudak and John Peterson and Joseph H. Fasel},
  title =	 {A Gentle Introduction to {Haskell}},
  howpublished = {World Wide Web},
  year =	 1999
}

@TechReport{Huggins2002ASMPrimer,
  author =	 {James K. Huggins and Charles Wallace},
  title =	 {An Abstract State Machine Primer},
  institution =	 {Computer Science Department, Michigan Technological
                  University},
  year =	 2002,
  number =	 {CS-TR-02-04},
  month =	 dec
}

@Article{Hughes2000Arrows,
  author =	 {John Hughes},
  title =	 {Generalising monads to arrows},
  journal =	 {Science of Computer Programming, special issue on
                  Mathematics of Program Construction},
  year =	 2000,
  volume =	 37,
  number =	 3,
  pages =	 {67--112}
}

@TechReport{Hutton1996MonadicParserCombinators,
  author =	 {Graham Hutton and Erik Meijer},
  title =	 {Monadic parser combinators},
  institution =	 {Department of Computer Science, University of
                  Nottingham},
  year =	 1996,
  number =	 {NOTTCS-TR-96-4}
}

@Article{Hutton1998MonadicParsing,
  author =	 {Graham Hutton and Erik Meijer},
  title =	 {Monadic parsing in Haskell},
  journal =	 {Journal of Functional Programming},
  year =	 1998,
  volume =	 8,
  number =	 4,
  month =	 1998
}

@Misc{HyperJ,
  title =        {{HyperJ}},
  key =          {AspectJ},
  howpublished = {World Wide Web},
  note =
                  {\url{http://www.research.ibm.com/hyperspace/HyperJ/HyperJ.htm}, last visited on 2003-11-26}
}

@inproceedings{ILOG,
  author =	 {J.-F. Puget},
  title =	 {{A C++ Implementation of CLP}},
  booktitle =	 {Proceedings of the Second Singapore International
                  Conference on Intelligent Systems},
  address =	 {Singapore},
  year =	 1994
}

@proceedings{ISMM98,
  key =		 "ISMM",
  booktitle =	 {{ISMM'98} Proceedings of the First International
                  Symposium on Memory Management},
  title =	 {{ISMM'98} Proceedings of the First International
                  Symposium on Memory Management},
  editor =	 {Richard Jones},
  address =	 {Vancouver},
  series =	 SIGPLAN,
  volume =	 "34(3)",
  publisher =	 ACM,
  month =	 oct,
  year =	 1998,
  isbn =	 {1-58113-114-3},
  comment =	 {ISMM is the successor to the IWMM series of
                  workshops}
}

@MISC{Jack2,
  key =          {Jack},
  TITLE =        {{JACK -- Java Constraint Kit}},
  NOTE =         {Available from:
                  \url{http://www.pms.informatik.uni-muenchen.de/software/jack/},
                  last visited: 2003-02-24},
  howpublished = {World Wide Web},
  month =        feb,
  YEAR =         2003
}

@InProceedings{Jagannathan1992MultiThreadedScheme,
  author =	 {Suresh Jagannathan and Jim Philbin},
  title =	 {A foundation for an efficient multi-threaded Scheme
                  system},
  booktitle =	 {Proc. 1992 ACM Conference on Lisp and Functional
                  Programming},
  pages =	 {345--357},
  year =	 1992,
  month =	 jun
}

@InProceedings{Jim2002Cyclone,
  author =	 {Trevor Jim and Greg Morrisett and Dan Grossman and
                  Michael Hicks and James Cheney and Yanling Wang},
  title =	 {{Cyclone}: A Safe Dialect of {C}},
  booktitle =	 {USENIX Annual Technical Conference},
  pages =	 {275--288},
  year =	 2002,
  address =	 {Monterey, CA},
  month =	 jun
}

@inproceedings{JohnPlacer1993PedagogicalTools,
  author =	 {John Placer},
  title =	 {The promise of multiparadigm languages as
                  pedagogical tools},
  booktitle =	 {Proceedings of the 1993 ACM Conference on Computer
                  Science},
  year =	 1993,
  isbn =	 {0-89791-558-5},
  pages =	 {81--86},
  location =	 {Indianapolis, Indiana, United States},
  doi =		 {http://doi.acm.org/10.1145/170791.170807},
  publisher =	 ACM,
}

@TechReport{Jones1993ComposingMonads,
  author =	 {Mark P. Jones and Luc Duponcheel},
  title =	 {Composing Monads},
  institution =	 {Yale University},
  year =	 1993,
  number =	 {YALEU/DCS/RR-1004},
  month =	 dec,
}

@TechReport{Jones1994GoferImpl,
  author =	 {Mark P. Jones},
  title =	 {{The implementation of the Gofer functional
                  programming system}},
  institution =	 {Yale University},
  year =	 1994,
  type =	 {Research report},
  number =	 {YALEU/DCS/RR-1030},
  address =	 {New Haven, Connecticut, USA},
  month =	 may
}

@inproceedings{Jouvelot1991AlgebraicReconstruction,
  author =	 {Pierre Jouvelot and David Gifford},
  title =	 {Algebraic reconstruction of types and effects},
  booktitle =	 {Proceedings of the 18th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1991,
  isbn =	 {0-89791-419-8},
  pages =	 {303--310},
  location =	 {Orlando, Florida, United States},
  doi =		 {http://doi.acm.org/10.1145/99583.99623},
  publisher =	 ACM,
}

@MastersThesis{Kaijanaho2002BImpl,
  author =	 {Antti-Juhani Kaijanaho},
  title =	 {The formal method known as {B} and a sketch for its
                  implementation},
  school =	 {University of Jyv{\"a}skyl{\"a}},
  year =	 2002
}

@Misc{Karczmarczuk1998Unreliable,
  author =       {Jerzy Karczmarczuk},
  title =        {The Most Unreliable Technique in the World to
                  Compute PI},
  howpublished = {Available from:
                  \url{http://users.info.unicaen.fr/~karczma/arpap/lazypi.ps.gz}},
  year =         1998,
  note =         {A Braga School (1998) contribution}
}

@Article{Karczmarczuk1999Scientific,
  author =	 {Jerzy Karczmarczuk},
  title =	 {Scientific Computation and Functional Programming},
  journal =	 {Computing in Science \& Engineering},
  year =	 1999,
  volume =	 1,
  number =	 3,
  pages =	 {64--72}
}

@InProceedings{Kaway2002Multibyte,
  author =	 {Shiro Kawai},
  title =	 {Multibyte character string processing in Scheme },
  booktitle =	 {International Lisp Conference},
  year =	 2002,
  address =	 {San Francisco},
  month =	 {October}
}

@techreport{ Kelsey1993TailRecursive,
  author =	 "Richard A. Kelsey",
  title =	 "{T}ail-{R}ecursive {S}tack {D}isciplines for an
                  {I}nterpreter",
  number =	 "NU-CCS-93-03",
  month =	 "March",
  year =	 93,
  url =		 "citeseer.nj.nec.com/kelsey93tailrecursive.html"
}

@Article{kelsey94tractable,
  author =	 {Richard A. Kelsey and Jonathan A. Rees},
  title =	 {A Tractable {S}cheme Implementation},
  journal =	 {Lisp and Symbolic Computation: An International
                  Journal},
  year =	 1994,
  volume =	 7,
  number =	 4,
  pages =	 {315--335}
}

@Article{Kelsey1998R5RS,
  author =	 {Richard Kelsey and William Clinger and Jonathan Rees
                  and others},
  title =	 {Revised{${}^5$} Report on the Algorithmic Language
                  {Scheme}},
  journal =	 SIGPLAN,
  year =	 1998,
  volume =	 33,
  number =	 6,
  pages =	 {26--76},
  month =	 sep
}

@article{Kiczales1996AOP,
  author =	 {G. Kiczales},
  title =	 {Aspect-oriented programming},
  journal =	 {ACM Computing Surveys},
  volume =	 28,
  number =	 {4es},
  year =	 1996,
  issn =	 {0360-0300},
  pages =	 154,
  doi =		 {http://doi.acm.org/10.1145/242224.242420},
  publisher =	 ACM,
}

@InProceedings{Kiczales1997AspectOrientedProgramming,
  author =	 {Gregor Kiczales and John Lamping and Anurag
                  Mendhekar and Chris Maeda and Cristina Videira Lopes
                  and Jean-Marc Loingtier and John Irwin},
  title =	 {Aspect-Oriented Programming},
  booktitle =	 {Proceedings of the European Conference on
                  Object-Oriented Programming (ECOOP)},
  year =	 1997
}

@article{Kiczales2001GettingStartedAspectJ,
  author =	 {Gregor Kiczales and Erik Hilsdale and Jim Hugunin
                  and Mik Kersten and Jeffrey Palm and William
                  Griswold},
  title =	 {Getting started with ASPECTJ},
  journal =	 {Communications of the ACM},
  volume =	 44,
  number =	 10,
  year =	 2001,
  issn =	 {0001-0782},
  pages =	 {59--65},
  doi =		 {http://doi.acm.org/10.1145/383845.383858},
  publisher =	 ACM,
}

@inproceedings{Kieburtz1998Taming,
  author =	 {Richard B. Kieburtz},
  title =	 {Taming effects with monadic typing},
  booktitle =	 {Proceedings of the Third ACM SIGPLAN International
                  Conference on Functional Programming},
  year =	 1998,
  isbn =	 {1-58113-024-4},
  pages =	 {51--62},
  location =	 {Baltimore, Maryland, United States},
  doi =		 {http://doi.acm.org/10.1145/289423.289428},
  publisher =	 ACM
}

@Misc{Kiselyov1998MonadSchemeIO,
  author =       {Oleg Kiselyov},
  title =        {Monads, Scheme, and IO},
  howpublished = {World Wide Web},
  month =        mar,
  year =         1998,
  note =
                  {\url{http://okmij.org/ftp/Scheme/misc.html#monadic-io}, last visited: 2003-10-15}
}

@TechReport{Knuth1983WEBSystem,
  author =	 {Donald E. Knuth},
  title =	 {The {WEB} system of structured documentation},
  institution =	 {Stanford University, Stanford, CA},
  year =	 1983,
  number =	 {CS980},
  month =	 sep
}

@Book{Knuth1986CMTypefaces,
  author =	 {Donald E. Knuth},
  title =	 {Computer Modern Typefaces},
  publisher =	 AW,
  year =	 1986,
  volume =	 {E},
  series =	 {Computers \& Typesetting},
  address =	 {Reading, Massachusettes}
}

@Book{Knuth1986MetafontProgram,
  author =	 {Donald E. Knuth},
  title = 	 {METAFONT: The Program},
  publisher = 	 AW,
  year = 	 1986,
  volume =	 {D},
  series =	 {Computers \& Typesetting},
  address =	 {Reading, Massachusettes}
}

@Book{Knuth1986Metafontbook,
  author =	 {Donald E. Knuth},
  title = 	 {The METAFONTbook},
  publisher = 	 AW,
  year = 	 1986,
  volume =	 {C},
  series =	 {Computers \& Typesetting},
  address =	 {Reading, Massachusettes}
}

@Book{Knuth1986TeXProgram,
  author =	 {Donald E. Knuth},
  title = 	 {\TeX: The Program},
  publisher = 	 AW,
  year = 	 1986,
  volume =	 {B},
  series =	 {Computers \& Typesetting},
  address =	 {Reading, Massachusettes}
}

@Book{Knuth1986TeXbook,
  author =	 {Donald E. Knuth},
  title = 	 {The \TeX{}book},
  publisher = 	 AW,
  year = 	 1986,
  volume =	 {A},
  series =	 {Computers \& Typesetting},
  address =	 {Reading, Massachusettes}
}

@Book{Knuth1997TAOCPv1,
  author =	 {Donald E. Knuth},
  title = 	 {The Art of Computer Programming},
  publisher = 	 AW,
  year = 	 1997,
  volume =	 {1: Fundamental Algorithms},
  address =	 {Reading, Massachusettes},
  edition =	 {Third}
}

@Book{Knuth1998DigitalTypography,
  author =	 {Donald E. Knuth},
  title =	 {Digital Typography},
  publisher =	 {CSLI Publications},
  year =	 1998,
  number =	 78,
  series =	 {CSLI Lecture Notes}
}

@Book{Knuth1998TAOCPv2,
  author =	 {Donald E. Knuth},
  title = 	 {The Art of Computer Programming},
  publisher = 	 AW,
  year = 	 1998,
  volume =	 {2: Seminumerical Algorithms},
  address =	 {Reading, Massachusettes},
  edition =	 {Third}
}

@Book{Knuth1998TAOCPv3,
  author =	 {Donald E. Knuth},
  title = 	 {The Art of Computer Programming},
  publisher = 	 AW,
  year = 	 1998,
  volume =	 {3: Sorting and Searching},
  address =	 {Reading, Massachusettes},
  edition =	 {Second}
}

@InProceedings{KobayashiMarinIdaChe.WFLP02,
  author =	 {N. Kobayashi and M. Marin and T. Ida and Z. Che},
  title =	 {Open {CFLP}: An Open System for Collaborative
                  Constraint Functional Logic Programming},
  booktitle =	 {Proc. of the 11th International Workshop on
                  Functional and (Constraint) Logic Programming (WFLP
                  2002)},
  year =	 2002,
  series =	 {Research Report UDMI/18/2002/RR},
  publisher =	 {University of Udine}
}

@inproceedings{ Kokeny1994ConstraintSystem,
  author =	 "Tibor K{\"{o}}k\'{e}ny",
  title =	 "Yet Another Object-Oriented Constraint Resolution
                  System: An Open Architecture Approach",
  booktitle =	 "Proceedings {ECAI}'94 Workshop on Constraint
                  Processing",
  address =	 "Amsterdam",
  editor =	 "Manfred Meyer",
  year =	 1994,
  url =		 "citeseer.nj.nec.com/145609.html"
}

@inproceedings{Kranz1986Orbit,
  author =	 {David Kranz and Richard Kelsey and Jonathan Rees and
                  Paul Hudak and James Philbin},
  title =	 {{ORBIT}: an optimizing compiler for {Scheme}},
  booktitle =	 {Proceedings of the 1986 SIGPLAN Symposium on
                  Compiler Construction},
  year =	 1986,
  isbn =	 {0-89791-197-0},
  pages =	 {219--233},
  location =	 {Palo Alto, California, United States},
  doi =		 {http://doi.acm.org/10.1145/12276.13333},
  publisher =	 ACM
}

@PhdThesis{Kranz1988Orbit,
  author = 	 {David A. Kranz},
  title = 	 {ORBIT: An Optimizing Compiler for Scheme},
  school = 	 {Yale University},
  year = 	 1988
}

@InProceedings{Krishnamurthi1998Synthesizing,
  author =	 {Shriram Krishnamurthi and Matthias Felleisen and
                  Daniel P. Friedman},
  title =	 {Synthesizing Object-Oriented and Functional Design
                  to Promote Re-Use},
  booktitle =	 {European Conference on Object-Oriented Programming},
  year =	 1998
}

@InProceedings{Krzikalla2003CIPinCPP,
  author =	 {Olaf Krzikalla},
  title =	 {Constraint Imperative Programming in {C++}},
  booktitle =	 {Second International Workshop on Multiparadigm
                  Constraint Programming Languages, MultiCPL'03},
  year =	 2003,
  editor =	 {Michael Hanus and Petra Hofstedt and Armin Wolf},
  address =	 {Kinsale, Cork, Ireland},
  month =	 sep
}

@Misc{Krzikalla2003turtleppWWW,
  author =	 {Olaf Krzikalla},
  title =	 {{The Turtle Library -- Home Page}},
  howpublished = {World Wide Web},
  year =	 2003,
  note =	 {\url{http://people.freenet.de/turtle++/}}
}

@Article{Kuchen1996BabelGraphMachine,
  author =	 {Herbert Kuchen and Rita Loogen and Juan Jos{\'e}
                  Moreno-Navarro and Mario Rodr{\'\i}guez-Artalejo},
  title =	 {The Functional Logic Language {BABEL} and Its
                  Implementation on a Graph Machine},
  journal =	 {New Generation Computing},
  year =	 1996,
  volume =	 14,
  pages =	 {391--427}
}

@Article{LPJ03,
  author =	 "Ralf L{\"a}mmel and Simon {Peyton Jones}",
  title =	 "Scrap your boilerplate: a practical design pattern
                  for generic programming",
  journal =	 "ACM SIG{\-}PLAN Notices",
  volume =	 38,
  number =	 3,
  pages =	 "26--37",
  month =	 mar,
  year =	 2003,
  note =	 "Proc.\ of the ACM SIGPLAN Workshop on Types in
                  Language Design and Implementation (TLDI~2003)"
}

@inproceedings{Laemmel99a,
  author =	 "Ralf L{\"a}mmel",
  title =	 "{Declarative aspect-oriented programming}",
  pages =	 "131--146",
  editor =	 "Olivier Danvy",
  booktitle =	 "{Proceedings PEPM'99, 1999 ACM SIGPLAN Workshop on
                  Partial Evaluation and Semantics-Based Program
                  Manipulation PEPM'99, San Antonio (Texas), BRICS
                  Notes Series NS-99-1}",
  year =	 1999,
  month =	 jan
}

@article{Landin19666Next700PL,
  author =	 {P. J. Landin},
  title =	 {The next 700 programming languages},
  journal =	 {Communications of the ACM},
  volume =	 9,
  number =	 3,
  year =	 1966,
  issn =	 {0001-0782},
  pages =	 {157--166},
  doi =		 {http://doi.acm.org/10.1145/365230.365257},
  publisher =	 ACM,
}

@article{ Larose1999Compacting,
  author =	 "Martin Larose and Marc Feeley",
  title =	 "A compacting incremental collector and its
                  performance in a production quality compiler",
  journal =	 "ACM SIG{\-}PLAN Notices",
  volume =	 34,
  number =	 3,
  pages =	 "1--9",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/larose98compacting.html"
}

@article{Larson1999Memory,
  author =	 "Per-{\AA}ke Larson and Murali Krishnan",
  title =	 "Memory allocation for long-running server
                  applications",
  journal =	 "ACM SIG{\-}PLAN Notices",
  volume =	 34,
  number =	 3,
  pages =	 "176--185",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/article/larson98memory.html"
}

@TechReport{Leavens2002FOAL,
  author =	 {Gary T. Leavens and Ron Cytron},
  title =	 {FOAL 2002 Proceedings -- Foundations of
                  Aspect-Oriented Languages},
  institution =	 {Department of Computer Science, Iowa State
                  University},
  year =	 2002,
  number =	 {02-06},
  month =	 apr
},
@TechReport{Leavens2003FOAL,
  editor =	 {Gary T. Leavens and Curtis Clifton},
  author =	 {Gary T. Leavens and Curtis Clifton},
  title =	 {FOAL 2003 Proceedings -- Foundations of
                  Aspect-Oriented Languages},
  institution =	 {Department of Computer Science, Iowa State
                  University},
  year =	 2003,
  number =	 {03-05},
  month =	 mar
},
@PhdThesis{Leijen2003LambdaAbroad,
  author =	 {Daan Leijen},
  title =	 {The $\lambda$ Abroad -- A Functional Approach to
                  Software Components},
  school =	 {Utrecht University},
  year =	 2003,
  month =	 nov
},
@PhdThesis{Lepper:03,
  author =	 {M. Lepper},
  title =	 {MWatch --- An Algorithm for Evaluating Temporal
                  Trace Specifications in Real-Time},
  school =	 {Technische Universt{\"a}t Berlin},
  year =	 2004
},
@inproceedings{Leroy1991PolymorphicTypeInference,
  author =	 {Xavier Leroy and Pierre Weis},
  title =	 {Polymorphic type inference and assignment},
  booktitle =	 {Proceedings of the 18th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1991,
  isbn =	 {0-89791-419-8},
  pages =	 {291--302},
  location =	 {Orlando, Florida, United States},
  doi =		 {http://doi.acm.org/10.1145/99583.99622},
  publisher =	 ACM,
}

@Book{Levine2000LinkersLoaders,
  author =	 {John R. Levine},
  title =	 {Linkers \& Loaders},
  publisher =	 MK,
  year =	 2000
}

@inproceedings{Lewis2000Implicit,
  author =	 "Jeffrey Lewis and Mark Shields and Erik Meijer and
                  John Launchbury",
  title =	 "Implicit Parameters: Dynamic Scoping with Static
                  Types",
  booktitle =	 "Proceedings of the 27th Annual {ACM}
                  {SIGPLAN-SIGACT} Symposium on Principles of
                  Programming Languages, Boston, Massachusetts",
  year =	 2000,
  month =	 jan,
  pages =	 "108--118"
},

@InProceedings{Li2003ToolRefactoring,
  author =	 {Huiqing Li and Claus Reinke and Simon Thompson},
  title =	 {Tool Support for Refactoring Functional Programs},
  booktitle =	 {ACM SIGPLAN Haskell Workshop},
  year =	 2003,
  address =	 {Uppsala, Sweden},
  note =	 {To appear}
}

@TechReport{Lim1993pSather,
  author =	 {Chu-Cheow Lim},
  title =	 {A Parallel Object-Oriented System for Realizing
                  Reusable and Efficient Data Abstractions},
  institution =	 {ICSI and Computer Science Division, University of
                  California Berkeley},
  year =	 1993,
  number =	 {TR-93-063}
},

@book{Lindholm1999JavaVMSpecification,
  author =       {T. Lindholm and F. Yellin},
  title =        {The Java\texttrademark{} Virtual Machine
                  Specification},
  publisher =    {Sun Microsystems},
  year =         1999,
  edition =      {2nd}
},


@techreport{Lloyd1995ProgrammingEscher,
  number =	 {CSTR-95-013},
  title =	 {Declarative Programming in {Escher}},
  author =	 {J. W. Lloyd},
  bpages =	 122,
  rpages =	 5,
  institution =	 {Department of Computer Science, University of
                  Bristol},
  month =	 jun,
  year =	 1995,
  revision =	 {August 1995},
  abstract =	 {Escher is a declarative, general-purpose programming
                  language which integrates the best features of both
                  functional and logic programming languages. It has
                  types and modules, higher-order and meta-programming
                  facilities, and declarative input/output. Escher
                  also has a collection of system modules, providing
                  numerous operations on standard data types such as
                  integers, lists, characters, strings, sets, and
                  programs. The main design aim is to combine in a
                  practical and comprehensive way the best ideas of
                  existing functional and logic languages, such as
                  G\"odel, Haskell, and $\lambda$Prolog. Indeed,
                  Escher goes well beyond G\"odel in its ability to
                  allow function definitions, its higher-order
                  facilities, its improved handling of sets, and its
                  declarative input/output. Escher also goes well
                  beyond Haskell in its ability to run
                  partly-instantiated predicate calls, a familiar
                  feature of logic programming languages which
                  provides a form of non-determinism, and its more
                  flexible handling of equality. The language also has
                  a clean semantics, its underlying logic being (an
                  extension of) Church's simple theory of types. This
                  report is divided into two parts. The first part
                  provides a tutorial introduction to Escher. In this
                  part there are many example programs to illustrate
                  the various language features. In particular, these
                  example programs are meant to emphasize the
                  significant practical advantages that come from
                  integrating the best features of existing functional
                  and logic languages. The second part contains a
                  formal definition of the Escher language, including
                  its syntax, semantics, and a description of its
                  system modules. To make the report self-contained,
                  an appendix summarizes the key aspects of the simple
                  theory of types. },
  source =	 {tech-reports/1995/1995-lloyd.ps.gz},
  pubtype =	 6
},
@Book{Loogen1995Integration,
  author =	 {Rita Loogen},
  title =	 {Integration funktionaler und logischer
                  Programmiersprachen -- Semantik und Implementierung},
  publisher =	 {Oldenbourg},
  year =	 1995
}

@inproceedings{Lucassen1988EffectSystems,
  author =	 {J. M. Lucassen and D. K. Gifford},
  title =	 {Polymorphic effect systems},
  booktitle =	 {Proceedings of the 15th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1988,
  isbn =	 {0-89791-252-7},
  pages =	 {47--57},
  location =	 {San Diego, California, United States},
  doi =		 {http://doi.acm.org/10.1145/73560.73564},
  publisher =	 ACM,
}

@Unpublished{Marlow1998GHCHugsRTS,
  author =	 {Simon Marlow and Simon {Peyton Jones}},
  title =	 {{The New GHC/Hugs Runtime System}},
  year =	 1998
}

@inproceedings{Marlow2001AsynchronousExceptions,
  author =	 {Simon Marlow and Simon Peyton Jones and Andrew Moran
                  and John Reppy},
  title =	 {Asynchronous exceptions in Haskell},
  booktitle =	 {Proceedings of the ACM SIGPLAN 2001 conference on
                  Programming language design and implementation},
  year =	 2001,
  isbn =	 {1-58113-414-2},
  pages =	 {274--285},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/378795.378858},
  publisher =	 ACM,
}

@TechReport{Marlow2003PushEnterEvalApply,
  author =	 {Simon Marlow and Simon {Peyton Jones}},
  title =	 {Making a fast curry -- Push/enter vs eval/apply for
                  higher-order languages},
  institution =	 {Microsoft Research, Cambridge},
  year =	 2003,
  month =	 apr
}

@inproceedings{Maslov1993Amalgamation,
  author =	 {Sergei G. Maslov},
  booktitle =	 {NATO ASI Constraint Programming},
  title =	 {From Competition to Amalgamation of Different
                  Programming Paradigms},
  year =	 1993,
  month =	 aug,
  url =		 "citeseer.nj.nec.com/386474.html"
}

@Unpublished{Meijer1992DownWithLambdaLifting,
  author =	 {Erik Meijer and Ross Paterson},
  title =	 {Down with $\lambda$-lifting},
  note =	 {Unpublished paper},
  month =	 apr,
  year =	 1992
}

@Unpublished{Meseguer,
  author =	 {Jos{\'e} Meseguer},
  title =	 {{Semantic Frameworks for Multiparadigm Integration
                  and Coordination}},
  note =         {Unpublished}
}

@Misc{Metzner2002DiplomaThesis,
  author =	 {Andr{\'e} Metzner},
  title =	 {{Eine abstrakte Maschine f{\"u}r die (schrittweise)
                  Abarbeitung funktional-logischer Programme. Diploma
                  Thesis, Technische Universit{\"a}t Berlin}},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 2002
}

@Article{MillerLogicProgrammingLanguage,
  author =	 {Dale Miller},
  title =	 {A Logic Programming Language with
                  Lambda-Abstraction, Function Variables, and Simple
                  Unification},
  Journal =	 "Journal of Logic and Computation",
  Volume =	 1,
  Number =	 4,
  Pages =	 "497-536",
  Year =	 1991,
  url =		 "citeseer.nj.nec.com/miller91logic.html",
  url =		 
                  "file://ftp.cis.upenn.edu/pub/papers/miller/jlc91.dvi.Z"
}

@Book{Milner1997SML,
  author =	 {R. Milner and M. Tofte and R. Harper and
                  D. MacQueen},
  title =	 {The Definition of Standard ML},
  publisher =	 MIT,
  year =	 1997,
  note =	 {Revised edition.}
}

@Book{Mitchell2003Concepts,
  author =	 {John C. Mitchell},
  title =	 {Concepts in Programming Languages},
  publisher =	 CUP,
  year =	 2003
}

@inproceedings{Moggi1989Computational,
  author =	 {E. Moggi},
  title =	 {Computational lambda-calculus and monads},
  booktitle =	 {Proceedings of the Fourth Annual Symposium on Logic
                  in computer science},
  year =	 1989,
  isbn =	 {0-8186-1954-6},
  pages =	 {14--23},
  location =	 {Pacific Grove, California, United States},
  publisher =	 IEEE,
}

@Article{Moggi2001Revised,
  author =	 {E. Moggi and A. Sabry},
  title =	 {Monadic Encapsulation of Effects: a Revised Approach
                  (extended version)},
  journal =	 {Journal of Functional Programming},
  year =	 2001,
  volume =	 11,
  number =	 6
}

@InProceedings{Moggi2003MMML,
  author =	 {E. Moggi and S. Fagorzi},
  title =	 {A Monadic Multi-stage Metalanguage},
  booktitle =	 {FOSSACS 2003},
  year =	 2003,
  volume =	 2620,
  series =	 LNCS
}

@Article{Montanari1996WhatsNext,
  author =	 {Ugo Montanari and Francesca Rossi},
  title =	 {Constraint Solving and Programming: What's Next?},
  journal =	 {ACM Computing Surveys},
  year =	 1996,
  volume =	 28,
  number =	 {4es},
  month =	 dec
}

@Article{MorenoNavarro1992Babel,
  author =	 {Juan Jose Moreno-Navarro and Mario
                  Rodriguez-Artalejo},
  title =	 {Logic Programming with Functions and Predicates: The
                  Language {Babel}},
  journal =	 {Journal of Logic Programming},
  year =	 1992,
  volume =	 12,
  pages =	 {191--223}
}

@article{MorenoNavarroRodriguezArtalejo:1992,
  author =	 "J.J. Moreno-Navarro and M. Rodr{\'i}guez-Artalejo",
  title =	 "{Logic Programming with Functions and Predicates:
                  The Language BABEL}",
  journal =	 "Journal of Logic Programming",
  volume =	 12,
  pages =	 "191--223",
  year =	 1992
}

@InProceedings{Nadathur1988lProlog,
  author =	 {Gopalan Nadathur and Dale Miller},
  title =	 {An overview of lambda Prolog},
  booktitle =	 {Proceedings of Fifth International Logic Programming
                  Conference},
  pages =	 {810--827},
  year =	 1988,
  editor =	 {Kenneth A. Bowen and Robert A. Kowalski},
  address =	 {Seattle, Washington},
  month =	 aug,
  publisher =	 MIT
}

@inproceedings{Necula1997PCC,
  author =	 {George C. Necula},
  title =	 {Proof-carrying code},
  booktitle =	 {Proceedings of the 24th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1997,
  HIDDENisbn =	 {0-89791-853-3},
  pages =	 {106--119},
  location =	 {Paris, France},
  doi =		 {http://doi.acm.org/10.1145/263699.263712},
  publisher =	 ACM,
}

@Book{Nelson1995DataCompression,
  author =	 {Mark Nelson and Jean-Loup Gailly},
  title =	 {The Data Compression Book},
  publisher =	 {M\&T Books},
  year =	 1995,
  edition =	 {Second}
}

@inproceedings{ Neubauer2002FunctionalLogicOverloading,
  author =	 "Matthias Neubauer and Peter Thiemann and Martin
                  Gasbichler and Michael Sperber",
  title =	 "Functional logic overloading",
  booktitle =	 "Symposium on Principles of Programming Languages",
  pages =	 "233-244",
  year =	 2002,
  url =		 "citeseer.nj.nec.com/neubauer01functional.html"
}

@PhdThesis{Noble1995LazyComponents,
  author =	 {Rob Noble},
  title =	 {Lazy Functional Components for Graphical User
                  Interfaces},
  school =	 {York University},
  year =	 1995,
  month =	 nov
}

@Misc{Nordlander2001OHaskellSurvey,
  author =       {Johan Nordlander},
  title =        {{A survey of O'Haskell}},
  howpublished = {World Wide Web},
  month =        jan,
  year =         2001,
  note =         {Available from:
                  \url{http://www.cs.chalmers.se/~nordland/ohaskell/survey.html}},
}

@inproceedings{Odersky1993AssignmentLambdaCalculus,
  author =	 {Martin Odersky and Dan Rabin and Paul Hudak},
  title =	 {Call by name, assignment, and the lambda calculus},
  booktitle =	 {Proceedings of the 20th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1993,
  isbn =	 {0-89791-560-7},
  pages =	 {43--56},
  location =	 {Charleston, South Carolina, United States},
  doi =		 {http://doi.acm.org/10.1145/158511.158521},
  publisher =	 ACM,
}

@inproceedings{ Okasaki1995Purely,
  author =	 "Chris Okasaki",
  title =	 "Purely Functional Random-Access Lists",
  booktitle =	 "Functional Programming Languages and Computer
                  Architecture",
  pages =	 "86--95",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/okasaki95purely.html"
}

@article{Okasaki1998EvenHOParsing,
  author =	 "Chris Okasaki",
  title =	 "Functional Pearl: Even higher-order functions for
                  parsing or {Why} would anyone ever want to use a
                  sixth-order function?",
  journal =	 "Journal of Functional Programming",
  volume =	 8,
  number =	 2,
  pages =	 "195--199",
  year =	 1998,
  url =		 "citeseer.nj.nec.com/okasaki99functional.html"
}

@Book{Okasaki1999PurelyFunctional,
  author =	 {Chris Okasaki},
  title =	 {Purely Functional Data Structures},
  publisher =	 CUP,
  year =	 1999
}

@inproceedings{Okasaki2002PostfixHaskell,
  author =	 {Chris Okasaki},
  title =	 {Techniques for embedding postfix languages in
                  Haskell},
  booktitle =	 {Proceedings of the ACM SIGPLAN workshop on Haskell},
  year =	 2002,
  isbn =	 {1-58113-605-6},
  pages =	 {105--113},
  location =	 {Pittsburgh, Pennsylvania},
  doi =		 {http://doi.acm.org/10.1145/581690.581699},
  publisher =	 ACM,
}

@inproceedings{Ossher2000HyperJ,
  author =	 {Harold Ossher and Peri Tarr},
  title =	 {{Hyper/J: multi-dimensional separation of concerns
                  for Java}},
  booktitle =	 {Proceedings of the 22nd international conference on
                  Software engineering},
  year =	 2000,
  isbn =	 {1-58113-206-9},
  pages =	 {734--737},
  location =	 {Limerick, Ireland},
  doi =		 {http://doi.acm.org/10.1145/337180.337618},
  publisher =	 ACM,
}

@InProceedings{Ossher2000MultiDimensional,
  author =	 {Harold Ossher and Peri Tarr},
  title =	 {Multi-Dimensional Separation of Concerns and The
                  Hyperspace Approach},
  booktitle =	 {Proceedings of the Symposium on Software
                  Architectures and Component Technology: The State of
                  the Art in Software Development},
  year =	 2000,
  publisher =	 {Kluwer Academic Publishers}
}

@InProceedings{Ovlinger2001AspectsModules,
  author =	 {Johan Ovlinger and Karl Lieberherr and David
                  H. Lorenz},
  title =	 {Aspects and Modules Combined},
  year =	 2001,
  publisher =	 ACM
}

@Techreport{Ovlinger2002AspectsModules,
  AUTHOR =	 "Johan Ovlinger and Karl Lieberherr and David Lorenz",
  TITLE =	 "Aspects and Modules Combined",
  YEAR =	 2002,
  INSTITUTION =	 "College of Computer Science, Northeastern
                  University",
  MONTH =	 "March",
  NUMBER =	 "{NU-CCS-02-03}",
  ADDRESS =	 "Boston, MA",
  NOTE =
                  "http://www.ccs.neu.edu/research/demeter/papers/ac-aspectj-hyperj"
}

@InProceedings{Parrow1998FusionCalculus,
  author =	 {Joachim Parrow and Bj{\"o}rn Victor},
  title =	 {{The Fusion Calculus: Expressiveness and Symmetry in
                  Mobile Processes (extended abstract)}},
  booktitle =	 {Proceedings of LICS'98},
  year =	 1998,
  month =	 jun,
  publisher =	 IEEE
}

@InProceedings{Paterson2001ArrowNotation,
  author =	 {Ross Paterson},
  title =	 {A New Notation for Arrows},
  booktitle =	 {International Conference on Functional Programming
                  (ICFP2001)},
  year =	 2001
}

@INPROCEEDINGS{PavlovicPepperSmith:03,
  AUTHOR =	 {D. Pavlovic and P. Pepper and D. Smith},
  TITLE =	 {{Colimits for Concurrent Collectors}},
  BOOKTITLE =	 {Proc. of the International Symposium on
                  Verification},
  EDITOR =	 {N. Dershowitz},
  YEAR =	 2003,
  SERIES =	 LNCS,
  VOLUME =	 2772,
  PUBLISHER =	 SV,
  NOTE =	 {To appear}
}

@Proceedings{Pepper1984ProgTrans,
  title =	 {Program Transformations and Programming
                  Environments},
  year =	 1984,
  editor =	 {Peter Pepper},
  volume =	 8,
  series =	 {NATO ASI Series F: Computer and Systems Sciences},
  publisher =	 SV
}

@TechReport{Pepper1997ProgLangOpal,
  author =	 {Peter Pepper},
  title =	 {{The Programming Language Opal}},
  institution =	 {Technische Universit{\"a}t Berlin},
  year =	 1997,
  month =	 nov
}

@Article{Pepper2002SoftwareLanguages,
  author =	 {Peter Pepper and Michael Cebulla and Klaus Didrich
                  and Wolfgang Grieskamp},
  title =	 {From program languages to software languages},
  journal =	 {Journal of Systems and Software},
  year =	 2002,
  volume =	 60,
  number =	 60,
  pages =	 {91--101}
}

@BOOK{Pepper2003Opal,
  AUTHOR =	 {Peter Pepper},
  TITLE =	 {{Funktionale Programmierung in OPAL, ML, HASKELL und
                  GOFER}},
  PUBLISHER =	 SV,
  YEAR =	 2003,
  edition =	 {2nd}
}

@Misc{PerryImplFunLangOOVM,
  author =	 {Nigel Perry and Erik Meijer},
  title =	 {Implementing Functional Languages on Object-Oriented
                  Virtual Machines},
  howpublished = {Microsoft White Paper},
  url =
                  {http://docs.msdnaa.net/ark/Webfiles/WhitePapers/PerryAndMeijer.pdf}
}

@InProceedings{PeytonJones1989GMachine,
  author =	 {Simon L. {Peyton Jones} and John Salkild},
  title =	 {The Spineless Tagless {G}-machine},
  booktitle =	 {Functional Programming and Computer Architecture},
  year =	 1989,
  editor =	 {David MacQueen}
}

@inproceedings{PeytonJones1991Unboxed,
  author =	 "Simon L. {Peyton Jones} and J. Launchbury",
  title =	 "Unboxed Values as First Class Citizens in a
                  Non-strict Functional Language",
  booktitle =	 "Proceedings of the Conference on Functional
                  Programming and Computer Architecture",
  month =	 "26--28 August",
  publisher =	 "Springer-Verlag {LNCS}523",
  address =	 "Cambridge, Massachussets, USA",
  editor =	 "J. Hughes",
  pages =	 "636--666",
  year =	 1991,
  url =		 "citeseer.nj.nec.com/jones91unboxed.html"
}

@book{PeytonJones1998Haskell98,
  editor =	 {Simon {Peyton Jones}},
  title =	 {Haskell 98 Language and Libraries---The Revised
                  Report},
  publisher =	 CUP,
  year =	 2003,
  month =	 apr,
  note =	 {Also available from:
                  \url{http://www.haskell.org/haskellwiki/Definition},
                  last visited: 2008-10-07}
}

@misc{ PeytonJones1999SecretsGHCInliner,
  author =	 "S. {Peyton Jones} and S. Marlow",
  title =	 "Secrets of the Glasgow Haskell compiler inliner",
  text =	 "Simon L. Peyton Jones and Simon Marlow. Secrets of
                  the Glasgow Haskell compiler inliner. Submitted to
                  IDL'99, July 1999.",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/jones99secrets.html"
}


@Article{PeytonJones2002SecretsGHCInlinerJFP,
  author =       {Simon {Peyton Jones} and Simon Marlow},
  title =        {Secrets of the Glasgow Haskell Compiler inliner},
  journal =      JFP,
  year =         2002,
  volume =       12,
  number =       4,
  pages =        {393--434},
  month =        jul
}

@InBook{PeytonJones2001Tackling,
  author =	 {Simon {Peyton Jones}},
  title =	 {Engineering theories of software construction},
  chapter =	 {Tackling the Awkward Squad: monadic input/output,
                  concurrency, exceptions, and foreign-language calls
                  in Haskell},
  publisher =	 {NATO ASI},
  year =	 2001
}

@inproceedings{Pfenning1988HOAS,
  author =	 {F. Pfenning and C. Elliot},
  title =	 {Higher-order abstract syntax},
  booktitle =	 {Proceedings of the ACM SIGPLAN 1988 conference on
                  Programming Language design and Implementation},
  year =	 1988,
  isbn =	 {0-89791-269-1},
  pages =	 {199--208},
  location =	 {Atlanta, Georgia, United States},
  doi =		 {http://doi.acm.org/10.1145/53990.54010},
  publisher =	 ACM,
}

@Book{Pierce1991CategoryTheory,
  author =	 {Benjamin C. Pierce},
  title =	 {Basic Category Theory for Computer Scientists},
  publisher =	 MIT,
  year =	 1991,
  series =	 {Foundation of Computing Series},
  address =	 {Cambridge, Massachusettes}
}

@inproceedings{Pierce1998LocalTypeInference,
  author =	 "Benjamin C. Pierce and David N. Turner",
  title =	 "Local Type Inference",
  booktitle =	 "Conference Record of {POPL} 98: The 25TH {ACM}
                  {SIGPLAN}-{SIGACT} Symposium on Principles of
                  Programming Languages, San Diego, California",
  address =	 "New York, NY",
  pages =	 "252--265",
  year =	 1998,
  url =		 "citeseer.ist.psu.edu/pierce98local.html"
}

@Book{Pierce2002TypesAndPL,
  author =	 {Benjamin C. Pierce},
  title =	 {Types and Programming Languages},
  publisher =	 MIT,
  year =	 2002,
  address =	 {Cambridge, Massachusettes}
}

@inproceedings{Pippenger1996PureImpureLisp,
  author =	 {Nicholas Pippenger},
  title =	 {Pure versus impure Lisp},
  booktitle =	 {Proceedings of the 23rd ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1996,
  isbn =	 {0-89791-769-3},
  pages =	 {104--109},
  location =	 {St. Petersburg Beach, Florida, United States},
  doi =		 {http://doi.acm.org/10.1145/237721.237741},
  publisher =	 ACM
}

@Book{Plasmeijer1993FPandPGR,
  author =	 {Rinus Plasmeijer and Marko van Eekelen},
  title =	 {Functional Programming and Parallel Graph Rewriting},
  publisher =	 AW,
  year =	 1993,
  series =	 {International Computer Science Series}
}

@TechReport{Plasmeijer2001CleanReport,
  author =	 {Rinus Plasmeijer and Marko {van Eekelen}},
  title =	 {Clean Language Report Version 2.0},
  institution =	 {University of Nijmegen},
  year =	 2001,
  month =	 dec
}

@Book{Plotkin1981SOS,
  author =	 {Gordon D. Plotkin},
  title =	 {A Structural Approach to Operational Semantics},
  publisher =	 {Computer Science Department, Aarhus University},
  year =	 1981,
  month =	 sep
}

@InProceedings{Plotkin1994SubtypingParametricity,
  author =	 {Gordon Plotkin and Mart{\'i}n Abadi and Luca
                  Cardelli},
  title =	 {Subtyping and Parametricity},
  booktitle =	 {Symposium on Logic in Computer Science},
  pages =	 {310--319},
  year =	 1994,
  address =	 {Paris, France},
  month =	 jul,
  organization = IEEE
}

@inproceedings{Printezis2000MostylyConcurrentGC,
  author =	 {Tony Printezis and David Detlefs},
  title =	 {A generational mostly-concurrent garbage collector},
  booktitle =	 {Proceedings of the second international symposium on
                  Memory management},
  year =	 2000,
  isbn =	 {1-58113-263-8},
  pages =	 {143--154},
  location =	 {Minneapolis, Minnesota, United States},
  doi =		 {http://doi.acm.org/10.1145/362422.362480},
  publisher =	 ACM
}

@InProceedings{Rees1982T,
  author =	 {Jonathan A. Rees and Norman I. Adams IV},
  title =	 {T: A dialect of Lisp or, Lambda: The ultimate
                  software tool},
  booktitle =	 {Conference Record of the 1982 ACM Symposium on Lisp
                  and Functional Programming},
  year =	 1982,
  pages =	 {114--122}
}

@PhdThesis{Rees1995SecurityKernel,
  author =	 {Jonathon A. Rees},
  title =	 {A Security Kernel Based on the Lambda-Calculus},
  school =	 MIT,
  year =	 1995,
  month =	 feb
}

@TechReport{Rees1996SecurityKernel,
  author =	 {Jonathan A. Rees},
  title =	 {A Security Kernel Based on the Lambda-Calculus},
  institution =	 MITAI,
  year =	 1996,
  number =	 {AIM-1564},
  month =	 mar
}

@Misc{Reinke2002HCAR,
  author =       {Claus Reinke and others},
  title =        {Haskell Communities and Activities Report},
  howpublished = {World wide web},
  month =        {November},
  year =         2002,
  note =         {Available from:
                  \url{http://www.haskell.org/communities/}},
}

@Misc{Reinke2003HCAR,
  author =       {Claus Reinke and others},
  title =        {Haskell Communities and Activities Report},
  howpublished = {World wide web},
  month =        {November},
  year =         2003,
  note =         {Available from:
                  \url{http://www.haskell.org/communities/}},
}

@inproceedings{Remy1997ObjectiveML,
  author =	 {Didier R{\'e}my and J{\'e}r{\^o}me Vouillon},
  title =	 {Objective ML: a simple object-oriented extension of
                  ML},
  booktitle =	 {Proceedings of the 24th ACM SIGPLAN-SIGACT Symposium
                  on Principles of Programming Languages},
  year =	 1997,
  isbn =	 {0-89791-853-3},
  pages =	 {40--53},
  location =	 {Paris, France},
  doi =		 {http://doi.acm.org/10.1145/263699.263707},
  publisher =	 ACM,
}

@techreport{ Reppy1993HighPerformance,
  author =	 "John H. Reppy",
  title =	 "A High-Performance Garbage Collector for {S}tandard
                  {ML}",
  address =	 "Murray Hill, NJ",
  year =	 1993,
  url =		 "citeseer.nj.nec.com/reppy94highperformance.html"
}

@Book{Russel2003AIMA,
  author =	 {Stuart Russel and Peter Norvig},
  title =	 {Artificial Intelligence: A Modern Approach},
  publisher =	 {Pearson Education},
  year =	 2003,
  series =	 {Prentice Hall Series in Artificial Intelligence},
  address =	 {Upper Saddle River, New Jersey},
  edition =	 {Second}
}

@TechReport{Sabry1992ReasoningTR,
  author =	 {Amr Sabry and Matthias Felleisen},
  title =	 {Reasoning about Programs in Continuation-Passing
                  Style},
  institution =	 {Rice University},
  year =	 1992,
  number =	 {TR 92-180}
}

@article{ Sabry1998PurelyFunctional,
  author =	 "Amr Sabry",
  title =	 "What is a Purely Functional Language?",
  journal =	 "Journal of Functional Programming",
  volume =	 8,
  number =	 1,
  pages =	 "1-22",
  year =	 1998,
  month =	 jan,
  url =		 "citeseer.nj.nec.com/sabry98what.html"
}

@InProceedings{Sachindran2003MarkCopy,
  author =	 {Narendran Sachindran and J. Eliot B. Moss},
  title =	 {Mark-Copy: Fast copying GC with less space overhead},
  booktitle =	 {Proceedings of the ACM 2003 SIGPLAN Conference on
                  Object-Oriented Programming Systems, Languages and
                  Applications (OOPSLA)},
  year =	 2003,
  address =	 {Anaheim, CA},
  month =	 oct,
  publisher =	 ACM
}

@InProceedings{Sahlin1996ErlangOverview,
  author =	 {Dan Sahlin},
  title =	 {The concurrent functional programming language
                  {Erlang} -- An Overview},
  crossref =	 {Chakravarty1996MPLP},
  booktitle =	 {Multi-paradigm Logic Programming},
  pages =	 {9--12},
  year =	 1996
}

@InProceedings{Schiffer1994Vista,
  author =	 {Stefan Schiffer and Joachim Hans Fr{\"o}hlich},
  title =	 {Concepts and Architecture of {Vista} -- a
                  Multiparadigm Programming Environment},
  booktitle =	 {Proceedings IEEE Symposium on Visual Languages},
  pages =	 {40--47},
  year =	 1994,
  month =	 oct
}

@Book{Schmidt1986DenotationalSemantics,
  author =	 {David A. Schmidt},
  title =	 {Denotational Semantics},
  publisher =	 {Allyn and Bacon},
  year =	 1986,
  address =	 {Newton, Massachusetts}
}

@article{Schmidt1997PopularSemantics,
  author =	 {David A. Schmidt},
  title =	 {On the need for a popular formal semantics},
  journal =	 SIGPLAN,
  volume =	 32,
  number =	 1,
  year =	 1997,
  issn =	 {0362-1340},
  pages =	 {115--116},
  doi =		 {http://doi.acm.org/10.1145/251595.251617},
  publisher =	 ACM,
}

@Book{Schwartz1986SETL,
  author =	 {J. T. Schwartz and R. B. K. Dewar and E. Dubinsky
                  and E. Schonberg},
  title =	 {Programming with Sets: an Introduction to SETL},
  publisher =	 SV,
  year =	 1986
}

@misc{SchwartzbachPolymorphic,
  author =	 "Michael I. Schwartzbach",
  title =	 "Polymorphic Type Inference",
  url =
                  "citeseer.nj.nec.com/article/schwartzbach95polymorphic.html"
}

@Misc{Scott2001SISC,
  author =	 {Scott G. Miller},
  title =	 {{SISC: A Complete Scheme Interpreter in Java}},
  year =	 2001,
  month =	 jan
}

@inproceedings{Semmelroth1999MonadicEncapsulation,
  author =	 "Miley Semmelroth and Amr Sabry",
  title =	 "Monadic Encapsulation in {ML}",
  booktitle =	 "International Conference on Functional Programming",
  pages =	 "8-17",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/semmelroth99monadic.html"
}

@InProceedings{Serrano1994OptimizingCaml,
  author =	 {Manuel Serrano and Pierre Weis},
  title =	 {1+1=1: an optimizing Caml compiler},
  booktitle =	 {Proceedings of WML'94},
  year =	 1994
}

@InProceedings{Serrano1995ControlFlowAnalysis,
  author =	 {Manuel Serrano},
  title =	 {Control flow analysis: a functional languages
                  compilation paradigm},
  booktitle =	 {Proceedings of SAC'95},
  year =	 1995
}

@InProceedings{Serrano1996StorageAnalysis,
  author =	 {Manuel Serranoa and Marc Feeley},
  title =	 {Storage Use Analysis and its Applications},
  booktitle =	 {ACM SIGPLAN International Conference on Functional
                  Programming},
  year =	 1996,
  month =	 may
}

@InProceedings{Serrano2000UnderstandingMemory,
  author =	 {Manuel Serrano and Hans-J. Boehm},
  title =	 {Understanding Memory allocations of Scheme Programs},
  booktitle =	 {Proceedings of ICFP'00},
  year =	 2000
}

@Misc{Sestoft2002RuntimeCodeGeneration,
  author =	 {Peter Sestoft},
  title =	 {Runtime Code Generation with JVM and CLR},
  year =	 2002,
  url =
                  {http://www.matfys.kvl.dk/\~{}sestoft/publications.html}
}

@TechReport{Shao1992SmartestRecompilation,
  author = 	 {Zhong Shao and Andrew W. Appel},
  title = 	 {Smartest Recompilation},
  institution =  {Princeton University},
  year = 	 1992,
  number =	 {CS-TR-395-92},
  month =	 oct
}

@inproceedings{ Shao1993SmartestRecompilation,
  author =	 "Zhong Shao and Andrew W. Appel",
  title =	 "Smartest Recompilation",
  booktitle =	 "Conference Record of the Twentieth Annual {ACM}
                  {SIGPLAN}-{SIGACT} Symposium on Principles of
                  Programming Languages",
  address =	 "Charleston, South Carolina",
  pages =	 "439--450",
  year =	 1993,
  url =		 "citeseer.nj.nec.com/shao93smartest.html"
}

@PhdThesis{Shao1994CompilingStandardML,
  author =	 {Zhong Shao},
  title =	 {Compiling Standard {ML} for Efficient Execution on
                  Modern Machines},
  school =	 {Princeton University},
  year =	 1994,
  month =	 nov
}

@inproceedings{Shao1995TypeBasedCompilerStandardML,
  author =       {Zhong Shao and Andrew W. Appel},
  title =        {A type-based compiler for standard ML},
  booktitle =    {PLDI '95: Proceedings of the ACM SIGPLAN 1995
                  Conference on Programming Language Design and
                  Implementation},
  year =         1995,
  isbn =         {0-89791-697-2},
  pages =        {116--129},
  location =     {La Jolla, California, United States},
  publisher =    {ACM Press},
  address =      {New York, NY, USA}
}
 
@Article{Shao2000EfficentClosureConversion,
  author =	 {Zhong Shao and Andrew W. Appel},
  title =	 {Efficient and Safe-for-Space Closure Conversion},
  journal =	 {ACM Transactions on Programming Languages and
                  Systems},
  year =	 2000,
  volume =	 22,
  number =	 1,
  pages =	 {129--161},
  month =	 jan
}

@InProceedings{Sheard2002TemplateHaskell,
  author =	 {Tim Sheard and Simon {Peyton Jones}},
  title =	 {Template metaprogramming for Haskell},
  booktitle =	 {Haskell Workshop 2002},
  year =	 2002
}

@PhdThesis{Shields2001PhD,
  author =	 {Mark Brian Shields},
  title =	 {Static Types for Dynamic Documents},
  school =	 {Oregon Graduate Institute of Science and Technology},
  year =	 2001,
  month =	 feb
}

@TechReport{Simonyi1995IntentionalProgramming,
  author =	 {Charles Simonyi},
  title =	 {The Death of Computer Languages, The Birth of
                  Intentional Programming},
  institution =	 {Microsoft Research},
  year =	 1995,
  number =	 {MSR-TR-95-52},
  month =	 sep
}

@InProceedings{Sitaram1990ReasoningContII,
  author =	 {Dorai Sitaram and Matthias Felleisen},
  title =	 {Reasoning with Continuations II: Full Abstraction
                  for Models of Control},
  booktitle =	 {Proceedings of LFP 90},
  year =	 1990
}

@InProceedings{Smetsers1991GeneratingCode,
  author =	 {Sjaak Smetsers and Eric N{\"o}cker and John van
                  Groningen and Rinus Plasmeijer},
  title =	 {Generating Efficient Code for Lazy Functional
                  Languages},
  booktitle =	 {Proc. of Conference on Functional Programming
                  Languages and Computer Architecture (FPCA '91),
                  Cambridge, MA, USA},
  pages =	 {295--617},
  year =	 1991,
  editor =	 {Hughes},
  publisher =	 SV
}

@InProceedings{Smetsers1994SafeUpdates,
  author =	 {Sjaak Smetsers and Erik Barendsen and Marko van
                  Eekelen and Rinus Plasmeijer},
  title =	 {Guaranteeing safe destructive updates through a type
                  system with uniqueness information for graphs},
  booktitle =	 {Proc. of Graph Transformations in Computer Science,
                  International Workshop, Dagstuhl Castle, Germany},
  pages =	 {358--379},
  year =	 1994,
  editor =	 {Schneider and Ehrig},
  number =	 776,
  series =	 LNCS,
  publisher =	 SV
}

@InProceedings{Smith2000AliasTypes,
  author =	 {Frederick Smith and David Walker and Greg Morrisett},
  title =	 {Alias Types},
  crossref =	 {Smolka2000ESOP},
  pages =	 {366--381}
}

@Proceedings{Smolka2000ESOP,
  title =	 {Programming Languages and Systems -- 9th European
                  Symposium on Programming, ESOP 2000},
  year =	 2000,
  editor =	 {Gert Smolka},
  address =	 {Berlin, Germany},
  month =	 mar # "/" # apr
}

@InProceedings{Sobel1999ICFP,
  author =	 {Jonathan Sobel and Erik Hilsdale and R. Kent Dybvig
                  and Daniel P. Friedman },
  title =	 {Abstraction and Performance from Explicit Monadic
                  Reflection},
  booktitle =	 {ICFP'99},
  year =	 1999,
  note =	 {Submitted}
}

@InProceedings{Somogyi1995Mercury,
  author =	 {Zoltan Somogyi and Fergus Henderson and Thomas
                  Conway},
  title =	 {Mercury: an efficient purely declarative logic
                  programming language},
  booktitle =	 {ASCS'95, Glenelg, Australia},
  year =	 1995
}

@Article{Sondergaard1990ReferentialTransparency,
  author =	 {H. S{\o}ndergaard and P. Sestoft},
  title =	 {Referential transparency, definiteness
                  unfoldability},
  journal =	 {Acta Informatica},
  year =	 1990,
  volume =	 27,
  pages =	 {505--517}
}

@Article{Spinellis1995UsingObjects,
  author =	 {Diomidis Spinellis and Sophia Drossopoulou and Susan
                  Eisenbach },
  title =	 {Using Objects for Structuring Multiparadigm
                  Programming Environments},
  journal =	 {Journal of Object-Oriented Programming},
  year =	 1995,
  volume =	 8,
  number =	 1,
  pages =	 {33--38},
  month =	 mar # "/" # apr
}

@Book{Spivey1988UnderstandingZ,
  author =	 {J. M. Spivey},
  title =	 {Understanding {Z}},
  publisher =	 CUP,
  year =	 1988,
  volume =	 3,
  series =	 {Cambridge tracts in theoretical computer science}
}

@Book{Spivey1992TheZNotation,
  author =	 {J. M. Spivey},
  title =	 {The Z Notation -- A Reference Manual},
  publisher =	 PH,
  year =	 1992,
  edition =	 {Second},
  series =	 {International Series in Computer Science}
}

@Article{Stefik1986AccessOrientedProgramming,
  author =	 {Mark J. Stefik and Daniel G. Bobrow and Kenneth
                  M. Kahn},
  title =	 {Integrating Access-Oriented Programming into a
                  Multiparadigm Environment},
  journal =	 {IEEE Software},
  year =	 1986,
  volume =	 3,
  number =	 1,
  pages =	 {10--18},
  month =	 jan
}

@Proceedings{Striegnitz2001MPOOL,
  title =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  year =	 2001,
  month =	 jun,
  editor =	 {Kei Davis and Yannis Smaragdakis and J{\"o}rg
                  Striegnitz},
  volume =	 7,
  series =	 {NIC Series},
  organization = {John von Neumann Institute for Computing (NIC)},
  isbn =	 {3-00-007968-8}
}

@Proceedings{Striegnitz2002MPOOL,
  title =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  year =	 2002,
  month =	 jun,
  editor =	 {J{\"o}rg Striegnitz and Kei Davis and Yannis
                  Smaragdakis},
  volume =	 13,
  series =	 {NIC Series},
  organization = {John von Neumann Institute for Computing (NIC)},
  isbn =	 {3-00-009099-1}
}

@inproceedings{Stuckey1994QueryConstraints,
  author =	 {Peter J. Stuckey and S. Sudarshan},
  title =	 {Compiling query constraints (extended abstract)},
  booktitle =	 {Proceedings of the thirteenth ACM
                  SIGACT-SIGMOD-SIGART Symposium on Principles of
                  Database Systems},
  year =	 1994,
  isbn =	 {0-89791-642-5},
  pages =	 {56--67},
  location =	 {Minneapolis, Minnesota, United States},
  doi =		 {http://doi.acm.org/10.1145/182591.182598},
  publisher =	 ACM,
}

@TechReport{Sussman1975Scheme,
  author =	 {Gerald Jay Sussman and Guy Lewis Steele, Jr.},
  title =	 {Scheme: An interpreter for the extended lambda
                  calculus},
  institution =	 MITAI,
  year =	 1975,
  type =	 {AI Memo},
  number =	 349,
  month =	 dec
}

@InProceedings{Swarup1991Assignments,
  author =	 {Vipin Swarup and Uday Reddy and Evan Ireland},
  title =	 {Assignments for Applicative Languages},
  booktitle =	 {Conference on Functional Programming and Computer
                  Architecture},
  year =	 1991,
  editor =	 {R. J. M. Hughes},
  number =	 523,
  series =	 LNCS,
  month =	 sep,
  publisher =	 SV
}

@InProceedings{Swen2001Cxx,
  author =	 {Bing Swen},
  title =	 {Extended Object-Oriented Programming in Cxx},
  crossref =	 {Striegnitz2001MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {127--153},
  year =	 2001
}

@InProceedings{Taha2003EnvironmentClassifiers,
  author =	 {Walid Taha and Michael Florentin Nielsen},
  title =	 {Environment Classifiers},
  booktitle =	 {POPL'03},
  year =	 2003
}

@InProceedings{Tarditi1996TypeDirectedCompiler,
  author =	 {David Tarditi and Greg Morrisett and Perry Cheng and
                  Chris Stone and Robert Harper and Peter Lee},
  title =	 {TIL: A type-directed compiler for ML},
  booktitle =	 {ACM SIGPLAN Conf. Programming Language Design and
                  Implementation},
  pages =	 {181--192},
  year =	 1996,
  address =	 {New York},
  publisher =	 ACM
}

@InProceedings{Thielecke2000ExcCont,
  author =	 {Hayo Thielecke},
  title =	 {On Exceptions Versus Continuations in the Presence
                  of State},
  crossref =	 {Smolka2000ESOP},
  pages =	 {197--411}
}

@Book{Thompson1999Haskell,
  author =	 {Simon Thompson},
  title =	 {Haskell: The Craft of Functional Programming},
  publisher =	 AW,
  year =	 1999,
  edition =	 {Second}
}

@Misc{Todoran:Continuations,
  author =	 {Eneia Todoran and Nikolaos S. Papaspyrou},
  title =	 {Continuations for Parallel Logic Programming}
}

@Misc{Torgersen2004ExpressionRev,
  author =       {Mads Torgersen},
  title =        {The Expression Problem Revisited -- Four new
                  solutions using generics},
  year =         2004,
  howpublished = {World Wide Web},
  note =
                  {\url{http://www.daimi.au.dk/~madst/tool/papers/expression.pdf}}
}

@InProceedings{Trancon2002StackingCycles,
  author =	 {Baltasar {Tranc{\'o}n y Widemann}},
  title =	 {Stacking Cycles: Functional Transformation of
                  Circular Data},
  booktitle =	 {Proceedings of the Conference on the Implementation
                  of Functional Languages},
  year =	 2002,
  volume =	 2670,
  series =	 LNCS
}

@InProceedings{Trancon2003Corecursion,
  author =	 {Baltasar {Tranc{\'o}n y Widemann}},
  title =	 {Advanced Strict Corecursion},
  booktitle =	 {Proceedings of the Conference on the Implementation
                  of Functional Languages},
  year =	 2003,
  volume =	 2670,
  series =	 LNCS,
  note =	 {Under review}
}

@inproceedings{Tucker2003PointcutsAdviceHOL,
  author =	 {David B. Tucker and Shriram Krishnamurthi},
  title =	 {Pointcuts and advice in higher-order languages},
  booktitle =	 {Proceedings of the 2nd international conference on
                  Aspect-oriented software development},
  year =	 2003,
  isbn =	 {1-58113-660-9},
  pages =	 {158--167},
  location =	 {Boston, Massachusetts},
  doi =		 {http://doi.acm.org/10.1145/643603.643620},
  publisher =	 ACM,
}

@phdthesis{Turner1996PolymorphicPiCalculus,
  author =	 "David N. Turner",
  title =	 "The Polymorphic Pi-Calculus: Theory and
                  Implementation",
  year =	 1996,
  school =	 {University of Edinburgh},
  url =		 "http://citeseer.ist.psu.edu/turner95polymorphic.html"
}

@Article{Ungar1991Self,
  author =	 {David Ungar and Randall B. Smith},
  title =	 {Self: The power of simplicity},
  journal =	 {Lisp and Symbolic Computation},
  year =	 1991,
  volume =	 4,
  number =	 3
}

@inproceedings{ Waddell1997FastEffectiveInlining,
  author =	 "Oscar Waddell and R. Kent Dybig",
  title =	 "Fast and Effective Procedure Inlining",
  booktitle =	 "Static Analysis Symposium",
  pages =	 "35--52",
  year =	 1997,
  url =		 "citeseer.nj.nec.com/waddell97fast.html"
}

@InProceedings{Waddell2002letrec,
  author =	 {Oscar Waddell and Dipanwita Sarkar and R. Kent
                  Dybvig},
  title =	 {Robust and effective transformation of letrec},
  booktitle =	 {Proceedings of the Workshop on Scheme and Functional
                  Programming},
  year =	 2002,
  month =	 oct
}

@inproceedings{Wadler1991LinearLogic,
  author =	 {Philip Wadler},
  title =	 {Is there a use for linear logic?},
  booktitle =	 {Proceedings of the 1991 ACM SIGPLAN symposium on
                  Partial evaluation and semantics-based program
                  manipulation},
  year =	 1991,
  isbn =	 {0-89791-433-3},
  pages =	 {255--273},
  location =	 {New Haven, Connecticut, United States},
  doi =		 {http://doi.acm.org/10.1145/115865.115894},
  publisher =	 ACM,
}

@Article{Wadler1997DeclareImperative,
  author =	 {Philip Wadler},
  title =	 {How to declare an imperative},
  journal =	 {ACM Computing Surveys},
  year =	 1997,
  volume =	 29,
  number =	 3,
  pages =	 {140--263},
  month =	 sep
}

@Misc{Wadler1998ExpressionProblem,
  author =       {Philip Wadler},
  title =        {The Expression Problem},
  howpublished = {Java-genericity mailing list},
  month =        nov,
  year =         1998,
  note =         {Available from:
                  \url{http://www.cse.ohio-state.edu/~gb/cis888.07g/java-genericity/}}
}

@inproceedings{Wadler1998Marriage,
  author =	 {Philip Wadler},
  title =	 {The marriage of effects and monads},
  booktitle =	 {Proceedings of the Third ACM SIGPLAN International
                  Conference on Functional Programming},
  year =	 1998,
  isbn =	 {1-58113-024-4},
  pages =	 {63--74},
  location =	 {Baltimore, Maryland, United States},
  doi =		 {http://doi.acm.org/10.1145/289423.289429},
  publisher =	 ACM,
}

@InProceedings{Wadler2003Dual,
  author =	 {Philip Wadler},
  title =	 {Call-by-value is dual to call-by-name},
  booktitle =	 {International Conference on Functional Programming},
  year =	 2003,
  month =	 aug
}

@Misc{Wadler2003DualReloaded,
  author =       {Philip Wadler},
  title =        {Call-by-value is Dual to Call-by-name -- Reloaded},
  howpublished = {World Wide Web,
                  \url{http://homepages.inf.ed.ac.uk/wadler/papers/dual/dual-reloaded.pdf}},
  month =        jul,
  year =         2003
}

@article{Wadler2003Marriage,
  author =	 {Philip Wadler and Peter Thiemann},
  title =	 {The marriage of effects and monads},
  journal =	 {ACM Transactions on Computational Logic (TOCL)},
  volume =	 4,
  number =	 1,
  year =	 2003,
  issn =	 {1529-3785},
  pages =	 {1--32},
  doi =		 {http://doi.acm.org/10.1145/601775.601776},
  publisher =	 ACM,
}

@InProceedings{Wallace2003LanguagesPackages,
  author =	 {Mark Wallace},
  title =	 {Languages versus Packages for Constraint Problem
                  Solving},
  booktitle =	 {Ninth International Conference on Principles and
                  Practice of Constraint Programming},
  pages =	 {37--52},
  year =	 2003,
  editor =	 {Francesca Rossi},
  month =	 sep,
  publisher =	 SV
}

@inproceedings{Wan2000FRP,
  author =	 {Zhanyong Wan and Paul Hudak},
  title =	 {Functional reactive programming from first
                  principles},
  booktitle =	 {Proceedings of the ACM SIGPLAN 2000 conference on
                  Programming language design and implementation},
  year =	 2000,
  isbn =	 {1-58113-199-2},
  pages =	 {242--252},
  location =	 {Vancouver, British Columbia, Canada},
  doi =		 {http://doi.acm.org/10.1145/349299.349331},
  publisher =	 ACM,
}

@article{ Wand1998theory,
  author =	 "Mitchell Wand",
  title =	 "The Theory of Fexprs is Trivial",
  journal =	 "Lisp and Symbolic Computation",
  volume =	 10,
  number =	 3,
  pages =	 "189--199",
  year =	 1998,
  url =		 "citeseer.ist.psu.edu/wand98theory.html"
}

@Proceedings{Watt2000CC,
  title =	 {Compiler Construction -- 9th International
                  Conference, CC 2000},
  year =	 2000,
  editor =	 {David A. Watt},
  address =	 {Berlin, Germany},
  month =	 mar # "/" # apr
}

@InProceedings{Welch2002SecurityAspects,
  author =	 {Ian S. Welch and Robert J. Stroud},
  title =	 {Security and Aspects: A Metaobject Protocol
                  Viewpoint},
  booktitle =	 {Proceedings of ACP4IS'02},
  year =	 2002,
  address =	 {Enschede, The Netherlands}
}

@InProceedings{Wells2000Modules,
  author =	 {J. B. Wells and Ren{\'e} Vestergaard},
  title =	 {Equational Reasoning for Linking with First-Class
                  Primitive Modules},
  crossref =	 {Smolka2000ESOP},
  pages =	 {412--428}
}

@InProceedings{Westbrook1999Teaching,
  author =	 {D. Suzanne Westbrook},
  title =	 {A Multiparadigm Language Approach to Teaching
                  Principles of Programming Languages},
  booktitle =	 {29th ASEE/IEEE Frontiers in Education},
  year =	 1999,
  month =	 nov
}

@Book{Wikstroem1987FPUsingSML,
  author =	 {{\AA}ke Wikstr{\"o}m},
  title =	 {Functional Programming Using Standard ML},
  publisher =	 PH,
  year =	 1987
}

@InProceedings{Wilson1992PointerSwizzling,
  author =	 "Paul R. Wilson and Sheetal V. Kakkad",
  title =	 "Pointer Swizzling at Page Fault Time: Efficiently
                  and Compatibly Supporting Huge Address Spaces on
                  Standard Hardware",
  booktitle =	 "1992 Int. Workshop on Object Orientation and
                  Operating Systems",
  publisher =	 "IEEE Comp. Society Press",
  address =	 "Dourdan (France)",
  pages =	 "364--377",
  year =	 1992,
  url =		 "citeseer.nj.nec.com/wilson92pointer.html"
}

@InProceedings{Wilson1993RealTimeNonCopying,
  author =	 {Paul R. Wilson and Mark S. Johnstone},
  title =	 {Real-Time Non-Copying Garbage Collection},
  booktitle =	 {ACM OOPSLA Workshop on Memory Management and Garbage
                  Collection},
  year =	 1993
}

@InProceedings{Wilson1995DynamicStorageAllocation,
  author =	 {Paul R. Wilson and Mark S. Johnstone and Michael
                  Neely and David Boles},
  title =	 {Dynamic Storage Allocation: A Survey and Critical
                  Review},
  booktitle =	 {Proceedings 1995 International Workshop on Memory
                  Management},
  year =	 1996,
  series =	 LNCS,
  publisher =	 SV
}

@TechReport{Wright1993PolymorphismImperative,
  author =	 {Andrew K. Wright},
  title =	 {Polymorphism for Imperative Languages without
                  Imperative Types},
  institution =	 {Rice University},
  year =	 1993,
  number =	 {TR93-200},
  month =	 feb
}

@Book{Wright1994TCPIP,
  author =	 {Gary R. Wright and W. Richard Stevens},
  title =	 {TCP/IP Illustrated},
  publisher =	 AW,
  year =	 1994,
  volume =	 {2: The Implementation},
  series =	 {Professional Computing Series}
}

@article{Wright1995SimpleImperativePolymorphism,
  author =	 "Andrew K. Wright",
  title =	 "Simple Imperative Polymorphism",
  journal =	 "Lisp and Symbolic Computation",
  volume =	 8,
  number =	 4,
  pages =	 "343--355",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/wright95simple.html"
}

@inproceedings{ Xi1998EliminatingArrayBoundChecking,
  author =	 "Hongwei Xi and Frank Pfenning",
  title =	 "Eliminating Array Bound Checking Through Dependent
                  Types",
  booktitle =	 "{SIGPLAN} Conference on Programming Language Design
                  and Implementation",
  pages =	 "249-257",
  year =	 1998,
  url =		 "citeseer.nj.nec.com/xi98eliminating.html"
}

@inproceedings{ Xi2000ImperativeDependent,
  author =	 "Hongwei Xi",
  title =	 "Imperative Programming with Dependent Types
                  (Extended Abstract)",
  booktitle =	 "Logic in Computer Science",
  pages =	 "375-387",
  year =	 2000,
  url =		 "citeseer.nj.nec.com/xi00imperative.html"
}

@Article{Zave1989Compositional,
  author =	 {Pamela Zave},
  title =	 {A Compositional Approach to Multiparadigm
                  Programming},
  journal =	 {IEEE Software},
  year =	 1989,
  volume =	 6,
  number =	 5,
  pages =	 {15--25},
  month =	 sep
}

@InProceedings{Zenger2001JaCo,
  author =	 {Matthias Zenger and Martin Odersky},
  title =	 {Implementing Extensible Compilers},
  crossref =	 {Striegnitz2001MPOOL},
  booktitle =	 {Multiparadigm Programming with Object-Oriented
                  Languages (MPOOL)},
  pages =	 {61--80},
  year =	 2001
}

@InProceedings{Zhang2003TinyC,
  author =	 {Charles Zhang and Hans-Arno Jacobsen},
  title =	 {{TinyC$^2$: Towards Building a dynamic weaving
                  aspect aspect language for C}},
  crossref =	 {Leavens2003FOAL}
}

@inproceedings{ abdennadher01:jack:inp,
  author =	 {Slim Abdennadher and Ekkerhard Kr{\"a}mer and
                  Matthias Saft and Matthias Schmauss},
  title =	 {{JACK}: A {Java} Constraint Kit},
  abstract =	 {Most existing libraries providing constraint
                  facilities are embedded in the logic programming
                  language, Prolog, or in the object-oriented
                  language, C++. Recently, some proposals have been
                  made to integrate constraint handling in Java. The
                  goal of this work is to provide a new constraint
                  library for Java, called JACK. It consists of a
                  high-level language for writing constraint solvers,
                  a generic search engine and a tool to visualize the
                  simplification and propagation of constraints.},
  booktitle =	 {WFLP 2001},
  year =	 2001,
  month =	 sep,
  publisher =	 {University of Kiel; Technical Report No. 2017},
  url =		 {citeseer.nj.nec.com/abdennadher01jack.html},
  url =
                  {http://www.pms.informatik.uni-muenchen.de/mitarbeiter/abdennad/Publikationen/paperWLP.ps}
}

@misc{ bardou-roles,
  author =	 "Daniel Bardou",
  title =	 "Roles, Subjects and Aspects: How do they relate?",
  year =	 "????",
  url =		 "citeseer.nj.nec.com/413435.html"
}

@TechReport{bartakGrail,
  author =	 {Roman Bart{\'{a}}k},
  title =	 {Constraint Programming: In Pursuit of the Holy
                  Grail},
  institution =	 {????},
  year =	 {19??}
}

@Misc{bartakHierarchies,
  author =       {Roman Bart{\'{a}}k},
  title =        {Guide to Constraint Programming: Algorithms for
                  Solving Constraint Hierarchies},
  howpublished = {World Wide Web},
  year =         1998,
  note =
                  {\url{http://kti.ms.mff.cuni.cz/~bartak/constraints/ch_solvers.html}, last visited: 2003-02-24}
}

@Misc{bartakHierarchies1,
  author =       {Roman Bart{\'{a}}k},
  title =        {Guide to Constraint Programming: Constraint
                  Hierarchies},
  howpublished = {World Wide Web},
  NOTE =
                  {\url{http://kti.ms.mff.cuni.cz/~bartak/constraints/hierarchies.html}, last visited: 2003-02-24},
  YEAR =         1998
}

@TechReport{bartakPropagation,
  author =	 {Roman Bart{\'{a}}k},
  title =	 {Theory and Practice of Constraint Propagation},
  institution =	 {????},
  year =	 {19??}
}

@TechReport{bbms-TR1999/19,
  author =	 {G.J. Badros and A. Borning and K. Marriott and
                  P.J. Stuckey},
  year =	 1999,
  title =	 {Constraint Cascading Style Sheets for the Web},
  institution =	 {University of Washington},
  number =	 {UW CSE 99-05-01}
}

@InProceedings{benson90kaleidoscope,
  author =	 {Bjorn Freeman-Benson},
  title =	 {Kaleidoscope: Mixing Objects, Constraints, and
                  Imperative Programming},
  booktitle =	 {Proceedings of the ECOOP/OOPSLA '90 Joint Conference
                  on Object-Oriented Programming},
  year =	 1990
}

@PhdThesis{benson91cip,
  author =	 {B. N. Freeman-Benson},
  title =	 {Constraint Imperative Programming},
  school =	 {University of Washington, Dept. of Computer Science
                  and Engineering},
  year =	 1991,
  month =	 jul
}

@inproceedings{ benson92int,
  author =	 "Bjorn N. Freeman-Benson",
  title =	 "Integrating Constraints with an Object-Oriented
                  Language",
  booktitle =	 "Proceedings of the 1992 European Conference on
                  Object-Oriented Programming",
  address =	 "New York, NY",
  pages =	 "268--286",
  year =	 1992
}

@inproceedings{benton00monads,
  author =	 {Nick Benton and Andrew Kennedy},
  title =	 {Monads, Effects and Transformations},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 26,
  publisher =	 {Elsevier},
  editor =	 {Andrew Gordon and Andrew Pitts},
  year =	 2000
}

@Misc{bilsonOverload,
  author =       {Richard C. Bilson},
  title =        {Algorithms for Overload Resolution},
  howpublished = {World Wide Web},
  month =        {September},
  year =         2001,
  note =         {Available from:
                  {http://plg.uwaterloo.ca/~rcbilson/cforall/overload.html},
                  last visited: 2003-02-24}
}

@misc{ blume-refining,
  author =	 "Matthias Blume",
  title =	 "Refining Hygienic Macros for Modules and Separate
                  Compilation",
  url =		 "citeseer.nj.nec.com/12450.html"
}

@inproceedings{blume01no-longer-foreign,
  author =	 {Matthias Blume},
  title =	 {No-Longer-Foreign: Teaching an ML compiler to speak
                  C "natively"},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 59,
  issue =	 1,
  publisher =	 {Elsevier},
  editor =	 {Nick Benton and Andrew Kennedy},
  year =	 2001
}

@inproceedings{ boortz97compacting,
  author =	 "Kent Boortz and Dan Sahlin",
  title =	 "A Compacting Garbage Collector for Unidirectional
                  Heaps",
  booktitle =	 "Implementation of Functional Languages",
  pages =	 "358-",
  year =	 1997,
  url =		 "citeseer.nj.nec.com/boortz97compacting.html"
}

@InProceedings{borning2000splitstay,
  author =	 {Alan Borning and Greg J. Badros},
  title =	 {On Finding Graphically Plausible Solutions to
                  Constraint Hierarchies: The Split Stay Problem},
  booktitle =	 {Workshop on Soft Constraints: Theory and Practice,
                  Sixth International Conference on Principles and
                  Practice of Constraint Programming},
  year =	 2000,
  month =	 sep
}

@PhdThesis{borning79thinglab,
  author =	 {Alan Borning},
  title =	 {ThingLab---A constraint-oriented simulation
                  laboratory},
  school =	 {Stanford},
  year =	 1979,
  month =	 mar,
  note =	 {A revised version is published as Xerox Palo Alto
                  Research Center Report SSL-79-3, July 1979}
}

@Article{ borning92constrainthierarchies,
  author =	 {Alan Borning and Bjorn Freeman-Benson and Molly
                  Wilson},
  title =	 {Constraint Hierarchies},
  journal =	 {Lisp and Symbolic Computation},
  year =	 1992,
  volume =	 5,
  pages =	 {223-270}
}

@InProceedings{borning95oti,
  author =	 {Alan Borning and Bjorn Freeman-Benson},
  title =	 {The {OTI} Constraint Solver: A Constraint Library
                  for Constructing Interactive Graphical User
                  Interfaces},
  booktitle =	 {Proceedings of the First International Conference on
                  Principles and Practice of Constraint Programming},
  pages =	 {624--628},
  year =	 1995,
  month =	 sep
}

@TechReport{borning96indigo,
  author =	 {Alan Borning and Richard Anderson and Bjorn
                  Freeman-Benson},
  title =	 {The {Indigo} Algorithm},
  institution =	 {Dept. of Computer Science and Engineering,
                  University of Washington},
  year =	 1996,
  number =	 {96-05-01},
  month =	 jul
}

@Article{borning98ultraviolet,
  author =	 {Alan Borning and Bjorn Freeman-Benson},
  title =	 {Ultraviolet: A Constraint Satisfaction Algorithm for
                  Interactive Graphics},
  journal =	 {Constraints},
  year =	 1998,
  volume =	 3,
  number =	 3,
  pages =	 {1--26}
}

@inproceedings{ boyapati01racetypes,
  author =	 "Chandrasekhar Boyapati and Martin Rinard",
  title =	 "A parameterized type system for race-free {Java}
                  programs",
  booktitle =	 "16th Annual Conference on Object-Oriented
                  Programming, Systems, Languages, and Applications
                  (OOPSLA)",
  address =	 "Tampa Bay, FL",
  year =	 "October 2001",
  url =		 "citeseer.nj.nec.com/boyapati01parameterized.html"
}

@inproceedings{ bruggeman96representing,
  author =	 "Carl Bruggeman and Oscar Waddell and R. Kent Dybvig",
  title =	 "Representing Control in the Presence of One-Shot
                  Continuations",
  booktitle =	 "{SIGPLAN} Conference on Programming Language Design
                  and Implementation",
  pages =	 "99-107",
  year =	 1996,
  url =		 "citeseer.nj.nec.com/bruggeman96representing.html"
}

@Article{budd94leda,
  author =	 {Timothy A. Budd},
  title =	 {Blending Imperative and Relational Programming},
  journal =	 {IEEE Software},
  year =	 1991,
  volume =	 8,
  number =	 1,
  month =	 jan
}

@Book{budd95mppil,
  author =	 {Timothy A. Budd},
  title =	 {Multiparadigm Programming in Leda},
  publisher =	 AW,
  year =	 1995
}
	
@TechReport{buddGeneral,
  author =	 {Timothy A. Budd and Timothy P. Justice and Rajeev
                  K. Pandey},
  title =	 {General-Purpose Multiparadigm Programming Languages:
                  An Enabling Technology for Constructing Complex
                  Systems},
  institution =	 {Oregon State University, Department of Computer
                  Science},
  year =	 1995,
  number =	 {95-60-04}
}

@TechReport{bueno02ciao,
  author =       {F. Bueno and D. Cabeza and M. Carro and
                  M. Hermenegildo and P. Lopez and G. Puebla},
  title =        {The {Ciao} Prolog System},
  institution =  {The CLIP Group, School of Computer Science,
                  Technical University of Madrid},
  year =         2002,
  number =       {CLIP 3/97.1},
  note =         {Available from:
                  {http://clip.dia.fi.upm.es/Software/Ciao/ciao.pdf},
                  last visited: 2003-02-24}
}

@Article{chakravarty97goffin,
  author =	 {Manuel M. T. Chakravarty and Yike Guo and Martin
                  K\"ohler and Hendrik C. R. Lock},
  title =	 {Goffin: Higher-Order Functions Meet Concurrent
                  Constraints},
  journal =	 {Elsevier Science},
  year =	 1997,
  volume =	 29,
  note =	 {Special issue of ``Science of Computer
                  Programming''}
}

@inproceedings{ chakravarty99lazy,
  author =	 "Manuel M. T. Chakravarty",
  title =	 "Lazy Lexing is Fast",
  booktitle =	 "Fuji International Symposium on Functional and Logic
                  Programming",
  pages =	 "68-84",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/chakravarty99lazy.html"
}

@inproceedings{ chamberlain99regions,
  author =	 "Bradford L. Chamberlain and E. Christopher Lewis and
                  Calvin Lin and Lawrence Snyder",
  title =	 "Regions: an abstraction for expressing array
                  computation",
  booktitle =	 "{APL}",
  pages =	 "41-49",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/286983.html"
}

@Article{Cheney1970CompactionAlgorithm,
  author =	 {C. J. Cheney},
  title =	 {A non-recursive list compaction algorithm},
  journal =	 CACM,
  year =	 1970,
  volume =	 13,
  number =	 11,
  pages =	 {677--678},
  month =	 nov
}

@article{ clinger91macros,
  author =	 "William Clinger",
  title =	 "Macros In Scheme",
  journal =	 "Lisp Pointers",
  volume =	 "IV",
  number =	 4,
  month =	 "-",
  publisher =	 "ACM",
  pages =	 "25--28",
  year =	 1991,
  url =		 "citeseer.nj.nec.com/clinger91macros.html"
}

@inproceedings{ clinger97generational,
  author =	 "William D. Clinger and Lars T. Hansen",
  title =	 "Generational Garbage Collection and the Radioactive
                  Decay Model",
  booktitle =	 "{SIGPLAN} Conference on Programming Language Design
                  and Implementation",
  pages =	 "97-108",
  year =	 1997,
  url =		 "citeseer.nj.nec.com/clinger97generational.html"
}

@Article{colmerauer90prologIII,
  author =	 {Alain Colmerauer},
  title =	 {An introduction to {P}rolog {III}},
  journal =	 {Communications of the ACM},
  year =	 1990,
  volume =	 33,
  number =	 7,
  pages =	 {69--90},
  month =	 jul,
  issn =	 {0001-0782},
  doi =		 {http://doi.acm.org/10.1145/79204.79210},
  publisher =	 ACM
}

@misc{ cooper-linear,
  author =	 "Stephen Cooper",
  title =	 "On Linear Types and Imperative Update",
  year =	 "????",
  url =		 "citeseer.nj.nec.com/cooper97linear.html"
}

@Article{cras93review,
  author =	 {J.-Y. Cras},
  title =	 {A Review of Industrial Constraint Solving Tools},
  journal =	 {AI Intelligence},
  year =	 1993,
  isbn =	 {1-898804-001}
}

@Book{cunningham01wiki,
  author =	 {Bo Leuf and Ward Cunningham},
  title =	 {The Wiki Way: Collaboration and Sharing on the
                  Internet },
  publisher =	 AW,
  year =	 2001
}

@inproceedings{danvy00proving,
  author =	 {Olivier Danvy and Belmina Dzafic and Frank Pfenning},
  title =	 {On proving syntactic properties of CPS programs},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 26,
  publisher =	 {Elsevier},
  editor =	 {Andrew Gordon and Andrew Pitts},
  year =	 2000
}

@inproceedings{ darlington92new,
  author =	 "John Darlington and Yi{-}ke Guo and Helen Pull",
  title =	 "A New Perspective on Integrating Functional and
                  Logic Languages",
  booktitle =	 "Proceedings of the International Conference on Fifth
                  Generation Computer Systems",
  publisher =	 "Association for Computing Machinery",
  address =	 "ICOT, Japan",
  pages =	 "682--693",
  year =	 1992,
  url =		 "citeseer.nj.nec.com/darlington92new.html"
}

@Unpublished{deVolderLogicMetaProgramming,
  author =	 {Kris De Volder and Johan BrichauKim Mens and Theo
                  D'Hondt},
  title =	 {Logic Meta Programming, a Framework for
                  Domain-Specific Aspect Languages},
  note =
                  {http://www.cs.ubc.ca/\~{}kdvolder/binaries/cacm-aop-paper.pdf}
}

@TechReport{demoenPoly,
  author =	 {Bart Demoen and Maria Garcia de la Banda and Peter
                  J. Stuckey},
  title =	 {Type Constraint Solving for Parametric and Ad-hoc
                  Polymorphism},
  institution =	 {????},
  year =	 {19??}
}

@misc{ dube-bit,
  author =	 "Danny Dube",
  title =	 "BIT: A Very Compact Scheme System for Embedded
                  Applications",
  url =		 "citeseer.nj.nec.com/dube00bit.html"
}

@misc{ durfee-model,
  author =	 "Glenn Durfee",
  title =	 "A Model for a List-oriented Extension of the Lambda
                  Calculus",
  url =		 "citeseer.nj.nec.com/durfee97model.html"
}

@Misc{dwds,
  author =       {{Berlin-Brandenburgische Akademie der
                  Wissenschaften}},
  title =        {{Das digitale W{\"o}rterbuch der deutschen Sprache
                  des 20. Jahrhunderts}},
  howpublished = {World Wide Web},
  month =        jul,
  year =         2003,
  note =         {Available from: \url{http://www.dwds.de}, last
                  visited: 2003-07-28}
}

@TechReport{dybvig90destination,
  author =	 {R. Kent Dybvig and Robert Hieb and Tom Butler},
  title =	 {Destination-Driven Code Generation},
  institution =	 {Indiana University Computer Science Department},
  year =	 1990,
  number =	 302,
  month =	 feb
}

@article{ dybvig90new,
  author =	 "R. Kent Dybvig and Robert Hieb",
  title =	 "A New Approach to Procedures with Variable Arity",
  journal =	 "Lisp and Symbolic Computation: An International
                  Journal",
  volume =	 3,
  number =	 3,
  publisher =	 "Kluwer Academic Publishers",
  pages =	 "229--244",
  year =	 1990,
  url =		 "citeseer.nj.nec.com/dybvig90new.html"
}

@techreport{ dybvig92writing,
  author =	 "R. Kent Dybvig",
  title =	 "Writing hygienic macros in Scheme with syntax-case.",
  number =	 356,
  pages =	 31,
  year =	 1992,
  month =	 jun,
  url =		 "citeseer.nj.nec.com/dybvig92writing.html"
}

@TechReport{feeley97compilingtoc,
  author =	 {Marc Feeley and James S. Miller and Guillermo
                  J. Rozas and Jason A. Wilson},
  title =	 {Compiling Higher-Order Languages into Fully
                  Tail-Recursive Portable {C}},
  institution =	 {D\'epartement d'informatique et de recherche
                  op\'erationelle, Universit\'e de Montr\'eal},
  year =	 1997,
  number =	 1078,
  month =	 aug
}

@Article{fikes70refarf,
  author =	 {R. E. Fikes},
  title =	 {{REF-ARF}: A System for solving problems stated as
                  procedures },
  journal =	 {Artificial Intelligence 1},
  year =	 1970,
  pages =	 {27--120}
}

@incollection{ filinski94representing,
  author =	 "Andrzej Filinski",
  title =	 "Representing Monads",
  booktitle =	 "Conf.\ Record 21st {ACM} {SIGPLAN}-{SIGACT} Symp.\
                  on Principles of Programming Languages, {POPL}'94,
                  Portland, {OR}, {USA}, 17--21 Jan.\ 1994",
  publisher =	 ACM,
  address =	 "New York",
  pages =	 "446--457",
  year =	 1994,
  url =		 "citeseer.nj.nec.com/filinski94representing.html"
}

@misc{ filman00aspectoriented,
  author =	 "R. Filman and D. Friedman",
  title =	 "Aspect-Oriented Programming is Quantification and
                  Obliviousness",
  text =	 "R.E. Filman and D.P. Friedman, Aspect-Oriented
                  Programming is Quantification and Obliviousness,
                  Workshop on Advanced Separation of Concerns, OOPSLA
                  2000, October 2000,
                  Minneapolis. http://ic-www.arc.nasa.gov/ic/
                  darwin/oif/leo/filman/text/oif/aop-is.pdf",
  year =	 2000,
  url =		 "citeseer.nj.nec.com/filman00aspectoriented.html"
}

@incollection{Flanagan1993EssenceContinuations,
  author =	 "Cormac Flanagan and Amr Sabry and Bruce F. Duba and
                  Matthias Felleisen",
  title =	 "The Essence of Compiling with Continuations",
  booktitle =	 "Proceedings {ACM} {SIGPLAN} 1993 Conference on
                  Programming Language Design and Implementation,
                  {PLDI}'93, Albuquerque, {NM}, {USA}, 23--25 June
                  1993",
  volume =	 "28(6)",
  publisher =	 ACM,
  address =	 "New York",
  pages =	 "237--247",
  year =	 1993
}

@InProceedings{freemanbenson90design,
  author =	 {Bjorn N. Freeman-Benson and Alan Borning},
  title =	 {The Design and Implementation of {Kaleidoscope'90},
                  A Constraint Imperative Programming Language},
  booktitle =	 {Proc. of the IEEE Computer Society 1992 Int'l
                  Conference on Computer Languages},
  pages =	 {174-180},
  year =	 1992,
  month =	 apr
}

@Article{freemanbenson90incremental,
  author =	 {Bjorn N. Freeman-Benson and John Maloney and Alan
                  Borning},
  title =	 {An Incremental Constraint Solver},
  journal =	 CACM,
  year =	 1990,
  volume =	 33,
  number =	 1,
  pages =	 {54--62},
  month =	 jan
}

@Book{fruehwirth97ConstraintProgrammierung,
  author =	 {Thom Fr{\"u}hwirth and Slim Abdennadher},
  title =	 {Constraint-Programmierung},
  publisher =	 SV,
  year =	 1997
}

@Article{fruehwirth98chr,
  author =	 {Thom Fr{\"u}hwirth},
  title =	 {Theory and Practice of Constraint Handling Rules},
  journal =	 {Journal of Logic Programming},
  year =	 1998,
  volume =	 37,
  number =	 {1--3},
  pages =	 {95--138},
  month =	 oct
}

@InProceedings{fruehwirthAnwendungen,
  author =	 {Thom Fr{\"u}hwirth and Slim Abdennadher},
  title =	 {{Anwendungen Constraintbasierter Programmierung}},
  booktitle =	 {Informatik '97, Informatik als Innovationsmotor,
                  27. Jahrestagung der Gesellschaft f{\"u}r
                  Informatik},
  pages =	 {317--326},
  year =	 1997,
  editor =	 {Matthias Jarke and Klaus Pasedach and Klaus Pohl},
  series =	 {Informatik Aktuell},
  publisher =	 SV
}

@TechReport{fruewirth93clp,
  author =	 {T. Fr{\"u}hwirth and A. Herold and V. K{\"u}chenhoff
                  and T. {Le Provost} and P. Lim and E. Monfroy and
                  M. Wallace},
  title =	 {Constraint logic programming: An informal
                  introduction},
  institution =	 {ECRC},
  year =	 1993,
  number =	 {ECRC-93-5}
}

@TechReport{garciaHAL,
  author =	 {Maria Garcia de la Banda and David Jeffery and Kim
                  Mariott and Nicholas Nethercote and Peter J. Stuckey
                  and Christian Holzbaur},
  title =	 {Building Constraint Solvers with {HAL}},
  institution =	 {???},
  year =	 {19??}
}

@inproceedings{ gill93,
  pages =	 "223--232",
  year =	 1993,
  title =	 "A Short Cut to Deforestation",
  author =	 "Andrew Gill and John Launchbury and Peyton Jones,
                  Simon L.",
  month =	 "June",
  booktitle =	 "Conference on Functional Programming Languages and
                  Computer Architecture",
  url =		 "citeseer.nj.nec.com/gill93short.html"
}

@misc{ glauert-multiparadigm,
  author = "J.R.W. Glauert",
  title = "Multi-Paradigm Programming through Graph Rewriting: Case for Support",
  OPTurl = "citeseer.nj.nec.com/2438.html" }


@Misc{gnuProlog,
  author =       {Daniel Diaz},
  title =        {{GNU} {Prolog}: A Native {Prolog} Compiler with
                  Constraint Solving over Finite Domains},
  howpublished = {World Wide Web},
  month =        sep,
  year =         2002,
  note =         {Available from:
                  \url{http://pauillac.inria.fr/~diaz/gnu-prolog/manual/index.html},
                  last visited: 2003-02-24}
}

@Book{Goldberg1983Smalltalk,
  author =	 {Adele Goldberg and David Robson},
  title =	 {Smalltalk-80: The Language and its Implementation},
  publisher =	 AW,
  year =	 1983
}

@misc{ graunke-advanced,
  author =	 "Paul T. Graunke and Shriram Krishnamurthi",
  title =	 "Advanced Control Flows for Flexible Graphical User
                  Interfaces or, Growing GUIs on Trees or, Bookmarking
                  GUIs",
  url =		 "citeseer.nj.nec.com/552421.html"
}

@Book{grune00compilerdesign,
  author =	 {Dick Grune and Henri E. Bal and Ceriel J. H. Jacobs
                  and Koen G. Langendoen},
  title =	 {Modern Compiler Design},
  publisher =	 Wiley,
  year =	 2000
}

@techreport{ guo93falcon,
  author =	 "Yi{-}ke Guo and Helen Pull",
  title =	 "{FALCON}: {F}unctional {A}nd {L}ogic language with
                  {CON}straints--Language Definition",
  year =	 1993,
  institution =	 "Imperial College London",
  url =		 "citeseer.nj.nec.com/guo93falcon.html"
}

@article{ hall96type,
  author =	 "Cordelia V. Hall and Kevin Hammond and Simon
                  L. Peyton Jones and Philip L. Wadler",
  title =	 "Type Classes in {H}askell",
  journal =	 TOPLAS,
  volume =	 18,
  number =	 2,
  month =	 mar,
  publisher =	 ACM,
  pages =	 "109--138",
  year =	 1996,
  url =		 "citeseer.nj.nec.com/hall96type.html"
}

@inproceedings{harveyCompiling,
  author =	 {Warwick Harvey and Peter J. Stuckey and Alan
                  Borning},
  title =	 {Compiling constraint solving using projection},
  booktitle =	 {Proceedings of the Third International Conference on
                  Principles and Practices of Constraint Programming},
  year =	 1997,
  month =	 oct,
  publisher =	 SV,
  series =	 LNCS,
  editor =	 {G. Smolka},
  pages =	 {491-505},
  url =		 {citeseer.nj.nec.com/harvey97compiling.html},
  url =		 
                  {http://www.cs.mu.oz.au/publications/tr_db/mu_97_06.ps.gz AND http://www.cs.washington.edu/research/constraints/solvers/cp97.html}
}

@misc{ hilsdale-writing,
  author =	 "Erik Hilsdale and Daniel P. Friedman",
  title =	 "Writing Macros in Continuation-Passing Style",
  url =		 "citeseer.nj.nec.com/hilsdale00writing.html"
}

@InProceedings{hosobe94locally,
  author =	 {Hiroshi Hosobe and Ken Miyashita and Shin Takahashi
                  and Satoshi Matsuoka and Akinori Yonezawa},
  title =	 {Locally Simultaneous Constraint Satisfaction},
  booktitle =	 {PPCP'94},
  pages =	 {51--61},
  year =	 1994,
  number =	 874,
  series =	 LNCS,
  month =	 oct
}

@inproceedings{ hosobe96generalized,
  author =	 "Hiroshi Hosobe and Satoshi Matsuoka and Akinori
                  Yonezawa",
  title =	 "Generalized Local Propagation: A Framework for
                  Solving Constraint Hierarchies",
  booktitle =	 "Principles and Practice of Constraint Programming",
  pages =	 "237-251",
  year =	 1996,
  url =		 "citeseer.nj.nec.com/hosobe96generalized.html"
}

@inproceedings{housel01towards,
  author =	 {Peter Housel and Christian Stork and Vivek Haldar
                  and Niall Dalton and Michael Franz},
  title =	 {Towards Language-Agnostic Mobile Code},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 59,
  issue =	 1,
  publisher =	 {Elsevier},
  editor =	 {Nick Benton and Andrew Kennedy},
  year =	 2001
}

@Misc{ilogwww,
  author =       {ILOG},
  title =        {ILOG Web Site},
  howpublished = {World Wide Web},
  month =        feb,
  year =         2003,
  note =         {Available from: \url{http://www.ilog.com}, last
                  visited: 2003-02-24}
}

@InProceedings{jaffar87clp,
  author =	 {Joxan Jaffar and Jean-Louis Lassez},
  title =	 {Constraint Logic Programming},
  booktitle =	 {Conference Record of the Fourteenth Annual ACM
                  Symposium on Principles of Programming Languages},
  pages =	 {111--119},
  year =	 1987,
  volume =	 14,
  month =	 jan,
  organization = {ACM},
  publisher =	 ACM
}

@Article{jaffar94clpsurvey,
  author =	 {J. Jaffar and M. Maher},
  title =	 {Constraint logic programming: A Survey},
  journal =	 {Journal of Logic Programming 19/20},
  year =	 1994,
  pages =	 {503--581}
}

@inproceedings{ janson91programming,
  author =	 "Janson, Sverker and Haridi, Seif",
  title =	 "Programming Paradigms of the {A}ndorra Kernel
                  Language",
  booktitle =	 "Logic Programming, Proceedings of the 1991
                  International Symposium",
  publisher =	 MIT,
  address =	 "San Diego, USA",
  editor =	 "Saraswat, Vijay and Ueda, Kazunori",
  pages =	 "167--186",
  year =	 1991,
  url =		 
                  "citeseer.nj.nec.com/article/janson91programming.html"
}

@PhdThesis{janson94akl,
  author =	 {Sverker Janson},
  title =	 {{AKL}---A Multiparadigm Programming Language},
  school =	 {Uppsala University},
  year =	 1994,
  month =	 jun,
  note =	 {Also available as SICS Dissertation Series 14}
}

@PhdThesis{jansson-phdthesis,
  author =	 {Jansson, Patrik},
  title =	 {Functional Polytypic Programming},
  school =	 {Computing Science, Chalmers University of Technology
                  and G{\"o}teborg University, Sweden},
  month =	 may,
  isbn =	 {91-7197-895-X},
  year =	 2000
}

@inproceedings{ joachim95constraints,
  author =	 "Niehren, Joachim and Mueller, Martin",
  title =	 "{C}onstraints for {F}ree in {C}oncurrent
                  {C}omputation",
  booktitle =	 "Asian Computing Science Conference",
  volume =	 1023,
  month =	 "December",
  publisher =	 SV,
  editor =	 "Kanchanasut, Kanchana and Levy, Jean-Jaques",
  pages =	 "171--186",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/niehren95constraints.html"
}

@Book{jones96gc,
  author =	 {Richard Jones and Rafael Lins},
  title =	 {Garbage Collection---Algorithms for Automatic
                  Dynamic Memory Management},
  publisher =	 {John Wiley {\&} Sons},
  year =	 1996,
  address =	 {Chichester}
}

@inproceedings{ jones99portable,
  author =	 "Simon {Peyton Jones} and Norman Ramsey and Fermin
                  Reig",
  title =	 "{C}--: a Portable Assembly Language that Supports
                  Garbage Collection",
  booktitle =	 "International Conference on Principles and Practice
                  of Declarative Programming",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/239439.html"
}

@inproceedings{kakk98,
  author =	 {Sheetal V. Kakkad and Mark S. Johnstone and Paul
                  R. Wilson },
  title =	 {Portable Run-Time Type Description for Conventional
                  Compilers},
  pages =	 {146--153},
  crossref =	 {ISMM98},
  abstract =	 {Many useful programming language extensions and
                  support libraries require knowledge of the locations
                  of fields within objects at run time. Examples
                  include orthogonal persistent object stores, precise
                  garbage collectors, data structure picklers and
                  parameter marshaling schemes. For clean and
                  efficient implementation as libraries, these systems
                  require run-time knowledge of in-memory layouts of
                  data objects, which is unavailable in most
                  traditionally-compiled and linked programming
                  languages, such as C, C++, and Ada. Even C++'s
                  recently-standardized run-time type identification
                  (RTTI) feature is insufficient, because it describes
                  language-level features of the type hierarchy and
                  not compiler-dependent object layout decisions. We
                  present a facility for run-time type description or
                  RTTD, which extracts low-level layout information
                  from debugging information generated by conventional
                  compilers, and makes it available to user
                  programs. We believe this to be the simplest and
                  most portable approach to run-time type description,
                  requiring no changes to existing compilers. In this
                  paper, we describe the basic strategies and present
                  details of our implementation for C++. We also
                  sketch some extensions that we have implemented,
                  including special treatment of C++'s virtual
                  function table pointers to match persistent or
                  foreign data objects with the actual code in a
                  particular application. Our implementation of
                  run-time type description is freely available. It is
                  in regular use with multiple operating systems and
                  compilers, in both free and commercial products,
                  including a high-performance persistent object
                  storage system for C++ and a real-time garbage
                  collector. }
}

@book{karl:demeter,
  AUTHOR =	 "Karl J. Lieberherr",
  TITLE =	 "Adaptive Object-Oriented Software: The Demeter
                  Method with Propagation Patterns",
  PUBLISHER =	 "PWS Publishing Company, Boston",
  YEAR =	 1996,
  NOTE =	 "ISBN 0-534-94602-X"
}

@inproceedings{ kelsey89realistic,
  author =	 "Richard Kelsey and Paul Hudak",
  title =	 "Realistic Compilation by Program Transformation",
  booktitle =	 "Conference Record of the Sixteenth Annual {ACM}
                  Symposium on Principles of Programming Languages",
  address =	 "Austin, Texas",
  pages =	 "281--292",
  year =	 1989,
  url =		 "citeseer.nj.nec.com/kelsey89realistic.html"
}

@techreport{ kevin94imperate,
  author =	 "Kevin Hammond and Philip Wadler and Donald Brady",
  title =	 "{I}mperate: {B}e imperative",
  year =	 94,
  institution =	 {Department of Computing Science, University of
                  Glasgow},
  url =		 "citeseer.nj.nec.com/hammond91imperate.html"
}

@Misc{koalog,
  author =       {Koalog},
  title =        {Koalog Constraint Solver (v1.1 stable) Tutorial},
  howpublished = {World Wide Web},
  month =        feb,
  year =         2003,
  note =
                  {\url{http://www.koalog.com/resources/doc/jcs-tutorial.pdf}, last visited: 2003-02-24}
}

@Misc{koalogwww,
  author =	 {Koalog},
  title =	 {Koalog Web Site},
  howpublished = {World Wide Web},
  month =	 feb,
  year =	 2003,
  note =	 {\url{http://www.koalog.com}, last visited:
                  2003-02-24}
}

@inproceedings{ krall98efficient,
  author =	 "Andreas Krall",
  title =	 "Efficient {JavaVM} Just-in-Time Compilation",
  booktitle =	 "International Conference on Parallel Architectures
                  and Compilation Techniques",
  publisher =	 "North-Holland",
  address =	 "Paris",
  editor =	 "Jean-Luc Gaudiot",
  pages =	 "205--212",
  year =	 1998,
  url =		 "citeseer.nj.nec.com/krall98efficient.html"
}

@InProceedings{lamport84aliasing,
  author =	 {Leslie Lamport and Fred B. Schneider},
  title =	 {Constraints: A Uniform Approach to Aliasing and
                  Typing},
  booktitle =	 {Conference Record of the Twelfth Annual ACM
                  Symposium on Principles of Programming Languages},
  pages =	 {205--216},
  year =	 1984,
  volume =	 12,
  month =	 jan,
  publisher =	 ACM
}

@inproceedings{ latendresse00automatic,
  author =	 "Mario Latendresse",
  title =	 "Automatic Generation of Compact Programs and Virtual
                  Machines for Scheme",
  booktitle =	 "Proc. of the Workshop on Scheme and Functional
                  Programming",
  year =	 2000,
  url =		 "citeseer.nj.nec.com/latendresse00automatic.html"
}

@inproceedings{ launchbury93lazy,
  author =	 "J. Launchbury",
  title =	 "Lazy Imperative Programming",
  booktitle =	 "Proceedings of the {ACM} {SIGPLAN} Workshop on State
                  in Programming Languages, Copenhagen, {DK}, {SIPL}
                  '92",
  pages =	 "46--56",
  year =	 1993,
  url =		 "citeseer.nj.nec.com/launchbury93lazy.html"
}

@Article{lauriere78alice,
  author =	 {J.-L. Lauriere},
  title =	 {A Language and a Program for Stating and Solving
                  Combinatorial Problems},
  journal =	 {Artificial Intelligence 10},
  year =	 1978,
  pages =	 {29--127}
}

@inproceedings{ lee00efficient,
  author =	 "SeungIl Lee and Byung-Sun Yang and Suhyun Kim and
                  Seongbae Park and Soo-Mook Moon and Kemal Ebcioglu
                  and Erik R. Altman",
  title =	 "Efficient Java exception handling in just-in-time
                  compilation",
  booktitle =	 "Java Grande",
  pages =	 "1-8",
  year =	 2000,
  url =		 "citeseer.nj.nec.com/article/lee00efficient.html"
}

@Book{leler87cp,
  author =	 {William Leler},
  title =	 {Constraint Programming Languages: Their
                  Specification and Generation},
  publisher =	 AW,
  year =	 1987
}

@PhdThesis{li95oocp,
  author =	 {Jiarong Li},
  title =	 {Object-oriented constraint programming for
                  interactive applications},
  school =	 {Department of Numerical Analysis and Computing
                  Science, Royal Institute of Technology},
  year =	 1995,
  month =	 sep,
  url =		 {http://www.nada.kth.se/~li/thesis.html}
}

@misc{ locus-gold,
  author =	 "Dominique Boucher Locus",
  title =	 "GOld: a link-time optimizer for Scheme",
  url =		 "citeseer.nj.nec.com/395772.html"
}

@InProceedings{lopez94identity,
  author =	 {Gus Lopez and Bjorn Freeman-Benson and Alan Borning},
  title =	 {Constraints and object identity},
  booktitle =	 {Proceedings of the 1994 European Conference on
                  Object-Oriented Programming},
  pages =	 {260--279},
  year =	 1994,
  month =	 jul
}

@inproceedings{ lopez94implementing,
  author =	 "Gus Lopez and Bjorn N. Freeman-Benson and Alan
                  Borning",
  title =	 "Implementing Constraint Imperative Programming
                  Languages: the {Kaleidoscope'93} Virtual Machine",
  booktitle =	 "Proceedings of the 1994 ACM Conference on
                  Object-Oriented Programming Systems, Languages, and
                  Applications",
  pages =	 "259-271",
  year =	 1994,
  month =	 oct,
  url =		 "citeseer.nj.nec.com/lopez94implementing.html"
}

@inproceedings{ lopez94kaleidoscope,
  author =	 "Gus Lopez and Bjorn Freeman-Benson and Alan Borning",
  title =	 "Kaleidoscope: {A} Constraint Imperative Programming
                  Language",
  booktitle =	 "Constraint Programming: Proc. 1993 {NATO} {ASI}
                  Parnu, Estonia",
  publisher =	 SV,
  editor =	 "B. Mayoh and E. Tyugu and J. Penjaam",
  isbn =	 "3-540-57859-5",
  pages =	 "305--321",
  year =	 1994,
  url =		 "citeseer.nj.nec.com/lopez93kaleidoscope.html"
}

@PhdThesis{lopez97phd,
  author =	 {Gus Lopez},
  title =	 {The Design and Implementation of Kaleidoscope, A
                  Constraint Imperative Programming Language},
  school =	 {University of Washington, Department of Computer
                  Science and Engineering},
  year =	 1997,
  month =	 jan
}

@misc{ marlow00writing,
  author =	 "S. Marlow",
  title =	 "Writing high-performance server applications in
                  haskell",
  text =	 "Marlow, S., Writing high-performance server
                  applications in haskell, case study: A haskell web
                  server, in: G. Hutton, editor, Haskell Workshop,
                  2000.",
  year =	 2000,
  url =		 "citeseer.nj.nec.com/marlow00writing.html"
}

@Book{marriot98programmingwithconstraints,
  author =	 {K. Marriot and P. J. Stuckey},
  title =	 {Programming with Constraints},
  publisher =	 MIT,
  year =	 1998
}

@Article{mcaloon002lp,
  author =	 {Ken McAloon and Carol Tretkoff},
  title =	 {{2LP}: Linear Programming and Logic Programming},
  journal =	 {????},
  year =	 {19??}
}

@techreport{ mehl95amoz,
  author =	 "Michael Mehl and Ralf Scheidhauer and Christion
                  Schulte",
  title =	 "An Abstract Machine for {Oz}",
  institution =	 "Deutsches Forschungszentrum f{\"u}r k{\"u}nstliche
                  Intelligenz GmbH",
  year =	 1995,
  month =	 nov
}

@TechReport{meier95debugging,
  author =	 {Micha Meier},
  title =	 {Debugging Constraint Programs},
  institution =	 {European Computer-Industry Research Center},
  year =	 1995
}

@misc{ menzies93how,
  author =	 "T. Menzies and R. Spurret",
  title =	 "How to Edit it; or a Black-Box Constraint Based
                  Framework for User Interaction with Arbitrary
                  Structures",
  text =	 "T.J Menzies and R Spurret. How to Edit it; or a
                  Black-Box Constraint Based Framework for User
                  Interaction with Arbitrary Structures. In Tools
                  Pacific 12, pages 213--224. Prentice Hall, 1993.",
  year =	 1993,
  url =		 "citeseer.nj.nec.com/menzies93how.html"
}

@inproceedings{moggi00monadic,
  author =	 {E. Moggi and F. Palumbo},
  title =	 {Monadic Encapsulation of Effects: a Revised
                  Approach},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 26,
  publisher =	 {Elsevier},
  editor =	 {Andrew Gordon and Andrew Pitts},
  year =	 2000
}

@article{ moss97foundations,
  author =	 "Lawrence S. Moss and Norman Danner",
  title =	 "On the Foundations of Corecursion",
  journal =	 "Logic Journal of the IGPL",
  volume =	 5,
  number =	 2,
  pages =	 "231--257",
  year =	 1997,
  url =		 "citeseer.nj.nec.com/moss97foundations.html"
}

@Book{Muchnick1997AdvancedCompiler,
  author =	 {Steven S. Muchnick},
  title =	 {Advanced Compiler Design and Implementation},
  publisher =	 {Morgan Kaufmann Publishers},
  year =	 1997
}

@InProceedings{muller1995multiparadigmOz,
  author =	 {Martin M{\"u}ller and Tobias M{\"u}ller and Peter
                  {Van Roy}},
  title =	 {Multiparadigm Programming in {Oz}},
  booktitle =	 {Visions for the Future of Logic Programming: Laying
                  the Foundations for a Modern Successor of Prolog, A
                  Workshop in association with ILPS'95},
  year =	 1995,
  editor =	 {Donald Smith and Olivier Ridoux and Peter {Van Roy}},
  month =	 dec,
  url =		 
                  "citeseer.nj.nec.com/article/muller95multiparadigm.html"
}

@inproceedings{ pachet95mixing,
  author =	 "F. Pachet and P. Roy",
  title =	 "Mixing Constraints and Objects: {A} Case Study in
                  Automatic Harmonization",
  booktitle =	 "Proceedings of {TOOLS}-Europe{'}95, Versailles,
                  France",
  publisher =	 PH,
  editor =	 "I. Graham and B. Magnusson and J.-M. Nerson",
  pages =	 "119--126",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/5644.html"
}

@article{ pardo01fusion,
  author =	 "Alberto Pardo",
  title =	 "Fusion of recursive programs with computational
                  effects",
  journal =	 "Theoretical Computer Science",
  volume =	 260,
  number =	 "1--2",
  pages =	 "165--207",
  year =	 2001,
  url =		 "citeseer.ist.psu.edu/pardo00fusion.html"
}

@incollection{ pardo98monadic,
  author =	 "Alberto Pardo",
  title =	 "Monadic Corecursion: Definition, Fusion Laws and
                  Applications",
  booktitle =	 "Selected Papers 1st Workshop on Coalgebraic Methods
                  in Computer Science, {CMCS}'98, Lisbon, Portugal,
                  28--29 March 1998",
  volume =	 11,
  address =	 "Amsterdam",
  editor =	 "B. Jacobs and L. Moss and H. Reichel and J. Rutten",
  year =	 1998,
  url =		 "citeseer.ist.psu.edu/pardo98monadic.html"
}

@article{placer1992g2,
  author =	 {John Placer},
  title =	 {Integrating Destructive Assignment and Lazy
                  Evaluation in the Multiparadigm Language {G-2}},
  journal =	 SIGPLAN,
  volume =	 27,
  number =	 2,
  year =	 1992,
  month =	 feb,
  issn =	 {0362-1340},
  pages =	 {65--74},
  doi =		 {http://doi.acm.org/10.1145/130973.130978},
  publisher =	 ACM,
}

@Proceedings{podelski94cp,
  title =	 {Constraint Programming: Basics and Trends},
  year =	 1994,
  editor =	 {Andreas Podelski},
  number =	 910,
  series =	 {Lecture Notes in Computer Science},
  publisher =	 SV
}

@inproceedings{ popovici02dynamic,
  author =	 "A. Popovici and T. Gross and G. Alonso",
  title =	 "Dynamic weaving for aspect oriented programming",
  booktitle =	 "Proceedings of the 1st International Conference on
                  Aspect-Oriented Software Development",
  month =	 apr,
  year =	 2002,
  url =		 "citeseer.nj.nec.com/popovici02dynamic.html"
}

@Article{radensky1990paslog,
  author =	 {Atanas Radensky},
  title =	 {Toward integration of the imperative and logic
                  programming pa\-radigms: {Horn}-clause programming
                  in the {Pascal} environment},
  journal =	 SIGPLAN,
  year =	 1990,
  volume =	 25,
  number =	 2,
  pages =	 {25--34},
  month =	 feb
}

@inproceedings{ Reppy2001LocalCPS,
  author =	 "John Reppy",
  title =	 "Local {CPS} conversion in a direct-style compiler",
  booktitle =	 "Proceedings of the {Third} {ACM} {SIGPLAN}
                  {Workshop} on {Continuations} ({CW}'01)",
  pages =	 "13--22",
  year =	 2001,
  url =		 "citeseer.nj.nec.com/reppy01local.html"
}

@misc{ reynolds96design,
  author =	 "J. Reynolds",
  title =	 "Design of the programming language Forsythe",
  text =	 "John C. Reynolds. Design of the programming language
                  Forsythe. Technical Report CMU-CS96 -146, Carnegie
                  Mellon University, Pittsburgh, Pennsylvania, June
                  1996.",
  year =	 1996,
  url =		 "citeseer.nj.nec.com/reynolds96design.html"
}

@TechReport{sannella92skyblue,
  author =	 {Michael Sannella},
  title =	 {The {SkyBlue} Constraint Solver},
  institution =	 {Dept. of Computer Science and Engineering,
                  University of Washington},
  year =	 1992,
  number =	 {92-0702},
  month =	 feb
}

@Book{saraswat93cc,
  author =	 {V. A. Saraswat},
  title =	 {Concurrent Constraint Programming},
  publisher =	 MIT,
  year =	 1993
}

@TechReport{schimpf99search,
  author =	 {Joachim Schimpf and Kish Shen and Mark Wallace},
  title =	 {Tutorial on Search in ECLiPSe},
  institution =	 {Imperial College London},
  year =	 1999
}

@inproceedings{Schinz2001TailCallElimination,
  author =	 {Michel Schinz and Martin Odersky},
  title =	 {Tail call elimination on the {Java} Virtual Machine},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 59,
  issue =	 1,
  publisher =	 {Elsevier},
  editor =	 {Nick Benton and Andrew Kennedy},
  year =	 2001
}

@article{ seligmann95incremental,
  author =	 "Jacob Seligmann and Steffen Grarup",
  title =	 "Incremental Mature Garbage Collection Using the
                  Train Algorithm",
  journal =	 "Lecture Notes in Computer Science",
  volume =	 952,
  pages =	 "235--??",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/seligmann95incremental.html"
}

@inproceedings{ Serrano1995Bigloo,
  author =	 "Manuel Serrano and Pierre Weis",
  title =	 "Bigloo: A Portable and Optimizing Compiler for
                  Strict Functional Languages",
  booktitle =	 "Static Analysis Symposium",
  pages =	 "366-381",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/serrano95bigloo.html"
}

@misc{ Serrano1995FreshInlining,
  author =	 "M. Serrano",
  title =	 "A fresh look to inlining decision",
  text =	 "M. Serrano. A fresh look to inlining decision. In
                  4th International Computer Symposium (ICS'95),
                  Mexico city, Mexico, November 1995.",
  year =	 1995,
  url =		 "citeseer.nj.nec.com/serrano95fresh.html"
}

@inproceedings{ Serrano1997InlineExpansion,
  author =	 "Manuel Serrano",
  title =	 "Inline expansion: when and how?",
  booktitle =	 "Proceedings of the conference on Programming
                  Languages, Implementation and Logic Programming.",
  address =	 "Shouthampton",
  pages =	 15,
  year =	 1997,
  url =		 "citeseer.nj.nec.com/serrano97inline.html"
}

@Article{ serrano:jfp00,
  author =	 {Manuel Serrano},
  title =	 {{B}ee: an {I}ntegrated {D}evelopment {E}nvironment
                  for the {S}cheme {P}rogramming {L}anguage},
  journal =	 JFP,
  year =	 2000,
  month =	 may,
  volume =	 10,
  number =	 2,
  pages =	 {1--43}
}

@inproceedings{shields01object-oriented,
  author =	 {Mark Shields and Simon Peyton Jones},
  title =	 {Object-Oriented Style Overloading for Haskell},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 59,
  issue =	 1,
  publisher =	 {Elsevier},
  editor =	 {Nick Benton and Andrew Kennedy},
  year =	 2001
}

@techreport{Shivers1996SupportingDynamic,
  author =	 "Olin Shivers",
  title =	 "Supporting dynamic languages on the {Java} virtual
                  machine",
  number =	 "AIM-1576",
  institution =	 MITAI,
  pages =	 9,
  year =	 1996,
  url =		 "citeseer.nj.nec.com/shivers96supporting.html"
}

@techreport{ siskind91screamer,
  author =	 "Jeffrey Mark Siskind and David Allen McAllester",
  title =	 "Screamer: {A} Portable Efficient Implementation of
                  Nondeterministic Common Lisp",
  number =	 "IRCS-93-03",
  address =	 "Philadelphia, PA",
  year =	 1991,
  url =		 "citeseer.nj.nec.com/siskind93screamer.html"
}

@inproceedings{ siskind93nondeterministic,
  author =	 "Jeffrey Mark Siskind and David Allen McAllester",
  title =	 "Nondeterministic Lisp as a Substrate for Constraint
                  Logic Programming",
  booktitle =	 "Proceedings of the Eleventh National Conference on
                  Artificial Intelligence",
  publisher =	 "AAAI Press",
  address =	 "Menlo Park, California",
  editor =	 "Richard Fikes and Wendy Lehnert",
  year =	 1993,
  url =		 "citeseer.nj.nec.com/siskind93nondeterministic.html"
}

@incollection{ smolka95:oz-programming:inc,
  author =	 {Gert Smolka},
  title =	 {The {Oz} Programming Model},
  booktitle =	 {Computer Science Today: Recent Trends and
                  Developments},
  publisher =	 SV,
  year =	 1995,
  address =	 {Berlin},
  editor =	 {Jan van Leeuwen},
  pages =	 {324-343},
  isbn =	 {3-540-60105-8},
  series =	 {Lecture Notes in Computer Science},
  volume =	 1000,
  url =		 {citeseer.nj.nec.com/smolka95oz.html},
  url =		 {ftp://ftp.ps.uni-sb.de/pub/papers/ProgrammingSysLab/volume1000.ps.gz}
}

@techreport{ snyder90setl,
  author =	 "W. Kirk Snyder",
  title =	 "The {SETL2} Programming Language",
  number =	 490,
  address =	 "251 Mercer St., New York, NY",
  year =	 1990,
  institution =	 "New York University",
  url =		 "citeseer.nj.nec.com/snyder90setl.html"
}

@PhdThesis{steele80phd,
  author =	 {Guy L. {Steele, Jr.}},
  title =	 {The Definition and Implementation of a Computer
                  Programming Language Based on Constraints},
  school =	 MIT,
  year =	 1980,
  month =	 aug,
  note =	 {Published as MIT-AI TR 595}
}

@Book{steele90cl,
  author =	 {Guy Lewis Steele},
  title =	 {Common Lisp: The Language},
  publisher =	 {Digital Press},
  year =	 1990,
  address =	 {Badford, Massachusetts},
  edition =	 {second}
}

@Book{Stroustrup1986Cplusplus,
  author =	 {Bjarne Stroustrup},
  title =	 {The C++ Programming Language},
  publisher =	 AW,
  year =	 1986,
  address =	 {New York}
}

@Article{sussman80constraints,
  author =	 {G. J. Sussman and G. L. Steele},
  title =	 {CONSTRAINTS: A Language for Expressing
                  Almost-Hierarchical Descriptions},
  journal =	 {Artificial Intelligence 14},
  year =	 1980,
  pages =	 {1--39}
}

@InProceedings{sutherland63sketchpad,
  author =	 {Ivan Sutherland},
  title =	 {Sketchpad: A man-machine graphical communications
                  system},
  booktitle =	 {Proceedings of the Spring Joint Computer Conference},
  pages =	 {329--345},
  year =	 1963,
  series =	 {IFIPS}
}

@inproceedings{ Talpin1992TypeEffectDiscipline,
  author =	 "Jean-Pierre Talpin and Pierre Jouvelot",
  title =	 "The Type and Effect Discipline",
  booktitle =	 "Seventh Annual {IEEE} Symposium on Logic in Computer
                  Science, Santa Cruz, California",
  publisher =	 "IEEE Computer Society Press",
  address =	 "Los Alamitos, California",
  pages =	 "162--173",
  year =	 1992,
  url =		 "citeseer.nj.nec.com/article/talpin93type.html"
}

@misc{ Tammet-LambdaLifting,
  Author =       "T. Tammet",
  title =        "Lambda-lifting as an optimization for compiling
                  {Scheme} to {C}",
  text =         "Tanel Tammet. Lambda-lifting as an optimization for
                  compiling scheme to C. Available from
                  \url{ftp://www.cs.chalmers.edu/pub/users/tammet/www/hobbit.ps.}",
  url =          "citeseer.nj.nec.com/14308.html"
}

@Article{Tarditi1992NoAsm,
  author =	 {David Tarditi and Peter Lee and Anurag Acharya},
  title =	 {No Assembly Required: Compiling {Standard} {ML} to
                  {C}},
  journal =	 {ACM Letters on Programming Languages and Systems},
  year =	 1992,
  volume =	 1,
  number =	 2,
  pages =	 {161--177},
  month =	 jun
}

@InProceedings{vanWeelden2002FunctionalOS,
  author =	 {Arjen van Weelden and Rinus Plasmeijer},
  title =	 {Towards a Strongly Typed Functional Operating
                  System},
  booktitle =	 {Selected Papers Proceedings 14th International
                  Workshop on the Implementation of Functional
                  Languages, IFL 2002},
  year =	 2002,
  volume =	 2670,
  series =	 LNCS,
  address =	 {Madrid, Spain},
  month =	 sep # " 16--18"
}

@InProceedings{vanWeelden2002FunctionalShell,
  author =	 {Arjen {van Weelden} and Rinus Plasmeijer},
  title =	 {A Functional Shell that Dynamically Combines
                  Compiled Code},
  booktitle =	 {Proceedings of the 15th International Workshop on
                  the Implementation of Functional Languages, IFL
                  2003},
  year =	 2004,
  series =	 LNCS,
  volume =	 3145,
  address =	 {Scotland},
  publisher =	 SV
}

@article{ Vene1998FunctionalApomorphisms,
  AUTHOR =	 "Varmo Vene and Tarmo Uustalu",
  TITLE =	 "Functional Programming with Apomorphisms
                  (Corecursion)",
  JOURNAL =	 "Proceedings of the Estonian Academy of Sciences:
                  Physics, Mathematics",
  VOLUME =	 47,
  NUMBER =	 3,
  SPECIAL =	 "Selected Papers 9th Nordic Workshop on Programming
                  Theory, NWPT'97, Tallinn, Estonia, 15--17 Oct 1997",
  PAGES =	 "147--161",
  YEAR =	 1998,
  url =		 "citeseer.ist.psu.edu/vene98functional.html"
}

@TechReport{Vranic2000Multiparadigm,
  author =	 {V. Vrani{\'c}},
  title =	 {Towards Multi-Paradigm Software Development},
  institution =	 {University of Bratislava},
  year =	 2000
}

@inproceedings{Waddell1999Extending,
  author =	 "Oscar Waddell and R. Kent Dybvig",
  title =	 "Extending the Scope of Syntactic Abstraction",
  booktitle =	 "Conference Record of {POPL} 99: The 26th {ACM}
                  {SIGPLAN}-{SIGACT} Symposium on Principles of
                  Programming Languages, San Antonio, Texas",
  address =	 "New York, NY",
  pages =	 "203--213",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/waddell99extending.html"
}

@inproceedings{Walker2001Regions,
  author =	 "David Walker and Kevin Watkins",
  title =	 "On Regions and Linear Types",
  booktitle =	 "International Conference on Functional Programming",
  pages =	 "181--192",
  year =	 2001,
  url =		 "citeseer.nj.nec.com/428346.html"
}

@inproceedings{Walker1999InitialAOP,
  author =	 "Robert J. Walker and Elisa L. A. Baniassad and Gail
                  C. Murphy",
  title =	 "An Initial Assessment of Aspect-Oriented
                  Programming",
  booktitle =	 "International Conference on Software Engineering",
  pages =	 "120-130",
  year =	 1999,
  url =		 "citeseer.nj.nec.com/article/walker98initial.html"
}

@Article{Wallace1998CP,
  author =	 {Mark Wallace},
  title =	 {Constraint Programming},
  journal =	 {The Handbook of Applied Expert Systems},
  year =	 1998,
  publisher =	 {CRC Press}
}


@InProceedings{Wilk1991Equate,
  author =	 {M. R. Wilk},
  title =	 {Equate: An Object-Oriented Constraint Solver},
  booktitle =	 {OOPSLA '91},
  pages =	 {286--298},
  year =	 1991
}

@Misc{Wilson2003SchemeIntro,
  author =       {Paul R. Wilson},
  title =        {An Introduction to {Scheme} and its Implementation},
  howpublished = {World Wide Web},
  month =        feb,
  year =         2003,
  note =
                  {\url{http://www.cs.utexas.edu/users/wilson/schintro/schintro\_toc.html}, last visited: 2003-02-24}
}

@Article{Wilson1993HierarchicalCP,
  author =	 {Molly Wilson and Alan Borning},
  title =	 {Hierarchical Constraint Programming},
  journal =	 {Journal of Logic Programming},
  year =	 1993,
  volume =	 16,
  number =	 {3 \& 4},
  pages =	 {277--318},
  month =	 aug
}

@TechReport{Wilson1994HCLP,
  author =	 {Molly Wilson and Alan Borning},
  title =	 {Hierarchical Constraint Logic Programming},
  institution =	 {Department of Computer Science and Engineering,
                  University of Washington},
  year =	 1993,
  number =	 {93-01-02a},
  month =	 may
}

@book{Wirth1985Modula2,
  author =	 "Niklaus Wirth",
  title =	 "Programming in Modula-2",
  publisher =	 SV,
  year =	 1985,
  edition =	 "3rd"
}

@InProceedings{Zhou1998DJ,
  author =	 {Neng-Fa Zhou and Sousuke Kaneko and Kouji Yamauchi},
  title =	 {{DJ}: A {Java}-based Constraint Language and System},
  booktitle =	 {JSSST},
  year =	 1998
}

@InProceedings{Boehm2003Destructors,
  author =	 {Hans-J. Boehm},
  title =	 {Destructors, Finalizers, and Synchronization},
  booktitle =	 {SIGPLAN-SIGACT Symposium on Principles of
                  Programming Languages,},
  year =	 2003,
  address =	 {New Orleans, LA},
  month =	 jan
}

@InProceedings{Nielson1999TypeEffectSystems,
  author =	 {Flemming Nielson and Hanne Riis Nielson},
  title =	 {Type and Effect Systems},
  booktitle =	 {Correct System Design},
  pages =	 {114--136},
  year =	 1999
}

@Book{ECMA2005CSharp,
  author =	 {{ECMA International}},
  title =	 {{Standard ECMA-334: C\# Language Specification}},
  month =	 jun,
  edition =      {3rd},
  year =	 2005
}

@Book{ECMA2005CommonLanguageInfrastructure,
  author =	 {{ECMA International}},
  title =	 {{Standard ECMA-334: Common Language Infrastructure (CLI)}},
  month =	 jun,
  edition =      {3rd},
  year =	 2005
}

@Book{Nelson1991Modula3,
  editor =	 {G. Nelson},
  title =	 {Systems Programming in Modula-3},
  publisher =	 PH,
  year =	 1991
}

@Book{Amtoft1999TypeEffectSystems,
  author =	 {Torben Amtoft and Flemming Nielson and Hanne Riis
                  Nielson},
  title =	 {Type and Effect Systems -- Behaviours for
                  Concurrency},
  publisher =	 {Imperial College Press},
  year =	 1999
}

@Article{Nielson1996AnnotatedTES,
  author =	 {Flemming Nielson},
  title =	 {Annotated Type and Effect Systems},
  journal =	 {ACM Computing Surveys},
  year =	 1996,
  volume =	 28,
  number =	 2,
  pages =	 {344--345}
}

@inproceedings{Jouvelot1989ContinuationsControl,
  author =	 {P. Jouvelot and D. K. Gifford},
  title =	 {Reasoning about continuations with control effects},
  booktitle =	 {Proceedings of the ACM SIGPLAN 1989 Conference on
                  Programming language design and implementation},
  year =	 1989,
  isbn =	 {0-89791-306-X},
  pages =	 {218--226},
  location =	 {Portland, Oregon, United States},
  doi =		 {http://doi.acm.org/10.1145/73141.74837},
  publisher =	 ACM
}

@article{Tofte1998RegionInference,
  author =	 {Mads Tofte and Lars Birkedal},
  title =	 {A region inference algorithm},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 20,
  number =	 4,
  year =	 1998,
  issn =	 {0164-0925},
  pages =	 {724--767},
  doi =		 {http://doi.acm.org/10.1145/291891.291894},
  publisher =	 ACM
}

@article{Wright1997SoftType,
  author =	 {Andrew K. Wright and Robert Cartwright},
  title =	 {A practical soft type system for {Scheme}},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 19,
  number =	 1,
  year =	 1997,
  issn =	 {0164-0925},
  pages =	 {87--152},
  doi =		 {http://doi.acm.org/10.1145/239912.239917},
  publisher =	 ACM,
}

@inproceedings{Tofte1994Implementing,
  author =	 {Mads Tofte and Jean-Pierre Talpin},
  title =	 {Implementation of the typed call-by-value
                  $\lambda$-calculus using a stack of regions},
  booktitle =	 {Proceedings of the 21st ACM SIGPLAN-SIGACT symposium
                  on Principles of programming languages},
  year =	 1994,
  isbn =	 {0-89791-636-0},
  pages =	 {188--201},
  location =	 {Portland, Oregon, United States},
  doi =		 {http://doi.acm.org/10.1145/174675.177855},
  publisher =	 ACM,
}

@inproceedings{Tang1995EffectSystemsSubtyping,
  author =	 {Yan Mei Tang and Pierre Jouvelot},
  title =	 {Effect systems with subtyping},
  booktitle =	 {Proceedings of the 1995 ACM SIGPLAN symposium on
                  Partial evaluation and semantics-based program
                  manipulation},
  year =	 1995,
  isbn =	 {0-89791-720-0},
  pages =	 {45--53},
  location =	 {La Jolla, California, United States},
  doi =		 {http://doi.acm.org/10.1145/215465.215552},
  publisher =	 ACM,
}

@TechReport{Steele1979LambdaOpcode,
  author =	 {Guy Lewis {Steele Jr.} and Gerald Jay Sussman},
  title =	 {Design of LISP-Based Processors or, SCHEME: A
                  Dielectric LISP or, Finite Memories Considered
                  Harmful or, LAMBDA: The Ultimate Opcode},
  institution =	 {Massachusetts Institute of Technology, Artificial
                  Intelligence Laboratory},
  year =	 1979,
  type =	 {AI Memo},
  number =	 514,
  month =	 {March}
}

@InProceedings{Cheadle2004ExploringBarrier,
  author =	 {Andy Cheadle and Tony Field and Simon Marlow and
                  Simon Peyton Jones and Lyndon While},
  title =	 {Exploring the Barrier to Entry: Incremental
                  Generational Garbage Collection for Haskell},
  booktitle =	 {ISMM'04},
  year =	 2004,
  annote =	 {Submitted}
}

@PhdThesis{Sabry1994PhD,
  author =	 {Amr Sabry},
  title =	 {The Formal Relationship between Direct and
                  Continuation-passing Style Optimizing Compilers: A
                  Synthesis of Two Paradigms},
  school =	 {Rice University},
  year =	 1994
}

@InProceedings{Hallenberg2002Combining,
  author =	 "Niels Hallenberg and Martin Elsman and Mads Tofte",
  title =	 "Combining Region Inference and Garbage Collection",
  booktitle =	 "ACM SIGPLAN Conference on Programming Language
                  Design and Implementation (PLDI'02)",
  year =	 2002,
  publisher =	 ACM,
  note =	 "Berlin, Germany",
  month =	 jun
}

@InProceedings{Elsman1999StaticInterpretation,
  author = 	 {Martin Elsman},
  title = 	 {Static Interpretation of Modules},
  booktitle =	 {Fourth International Conference on Functional Programming},
  year =	 1999,
  address =	 {Paris, France},
  month =	 sep
}

@inproceedings{Hermann2001SizeInference,
  author =	 {Christoph A. Herrmann and Christian Lengauer},
  title =	 {A Transformational Approach which Combines Size
                  Inference and Program Optimization},
  editor =	 {Walid Taha},
  series =	 LNCS,
  volume =	 2196,
  pages =	 {199--218},
  booktitle =	 {Semantics, Applications, and Implementation of
                  Program Generation (SAIG'01)},
  year =	 2001,
  publisher =	 SV
}

@Article{Scholz2003SAC,
  author =	 {Sven-Bodo Scholz},
  title =	 {Single Assignment C -- Efficient Support for
                  High-level Array Operations in a Functional Setting},
  journal =	 {Journal of Functional Programming},
  year =	 2003,
  volume =	 13,
  number =	 6,
  pages =	 {1005--1059}
}

@UNPUBLISHED{Leijen2005Fclabels,
  author =	 {Leijen, Daan},
  title =	 {First-class labels for extensible rows},
  note =	 {Submitted to the 32nd annual {ACM SIGPLAN-SIGACT}
                  Symposium on Principles of Programming Languages
                  ({POPL}'05)},
  month =	 jan,
  year =	 2005
}

@INPROCEEDINGS{Leijen2004wxHaskell,
  author =	 {Daan Leijen},
  title =	 {wxHaskell -- A portable and concise {GUI} library
                  for {Haskell}},
  booktitle =	 {{ACM SIGPLAN} Haskell Workshop ({HW'04})},
  year =	 2004,
  month =	 sep,
  publisher =	 ACM,
  location =	 {Snowbird, Utah}
}

@Misc{JSR-175,
  author =	 {{Sun Microsystems}},
  title =	 {A Program Annotation Facility for the
                  {Java}\texttrademark{} Programming Language
                  ({JSR-175} public draft specification)},
  howpublished = {WWW},
  year =	 2002
}

@InProceedings{Grelck1995IOinSAC,
  author =	 {Clemens Grelck and Sven-Bodo Scholz},
  title =	 {Classes and Objects as Basis for {I/O} in {SAC}},
  booktitle =	 {Proceedings of the 7th International Workshop on
                  Implementation of Functional Languages (IFL'95)},
  pages =	 {30--44},
  year =	 1995,
  address =	 {Bastad, Sweden},
  organization = {Chalmers University of Technology}
}

@Book{Nielson1999ProgramAnalysis,
  author =	 {Flemming Nielson and Hanne Riis Nielson and Chris
                  Hankin},
  title =	 {Principles of Program Analysis},
  publisher =	 SV,
  year =	 1999
}

@MISC{Brunklaus2002MultiVM,
  title =	 {A Virtual Machine for Multi-Language Execution},
  year =	 2002,
  author =	 {Thorsten Brunklaus and Leif Kornstaedt},
  abstract =	 "This paper presents the architecture of a virtual
                  machine designed specifically for the execution of
                  multiple languages, which we call SEAM. The
                  architecture consists of a number of generic
                  components, usable by all languages, and of a number
                  of interfaces for which implementations have to be
                  provided by language implementors. Our contribution
                  is the identification of the generic services and
                  the clean design for the parameterization over their
                  language-specific aspects. The goal of SEAM is to
                  provide both for ample reuse and simple language
                  implementation, concerning both compilers and
                  runtime components, and to be a platform for
                  language interoperation. We have implemented a
                  prototype version of SEAM and validated it with two
                  language implementations. We present a full running
                  implementation of Alice and a naive implementation
                  of a Java Virtual Machine running on SEAM. The paper
                  presents first implementation effort and performance
                  results for the prototype.",
  month =	 nov,
  howpublished = "Submitted",
  project-key =	 {MI6},
  label =	 {multivm}
}

@techreport{Steele1978Rabbit,
  author =	 {Guy L. {Steele, Jr.}},
  title =	 {Rabbit: A Compiler for Scheme},
  year =	 1978,
  number =	 {AIM-474},
  publisher =	 {Massachusetts Institute of Technology},
}

@PhdThesis{Wang2001Managing,
  author =	 {Daniel C. Wang},
  title =	 {Managing Memory with Types},
  school =	 {Princeton University},
  year =	 2001,
  month =	 dec
}

@Unpublished{Wang2002RecursionSchemes,
  author = 	 {Daniel C. Wang and Tom {Murphy VII}},
  title = 	 {Programming with Recursion Schemes},
  note = 	 {Draft paper},
  year =	 2002
}

@InProceedings{Wang2001TypePreserving,
  author =	 {Daniel C. Wang and Andrew W. Appel},
  title =	 {Type-Preserving Garbage Collectors},
  booktitle =	 {28th Annual ACM SIGPLAN -- SIGACT Symposium on
                  Principals of Programming Languages},
  pages =	 {166-178},
  year =	 2001,
  month =	 jan,
  publisher =	 ACM
}

@PhdThesis{Chitil2000Deforestation,
  author =	 {Olaf Chitil},
  title =	 {Type-Inference Based Deforestation of Functional
                  Programs},
  school =	 {RWTH Aachen},
  year =	 2000
}

@TechReport{Wansborough1998OnceUponPolyType,
  author =	 {Keith Wansbrough and Simon Peyton Jones},
  title =	 {Once Upon a Polymorphic Type},
  institution =	 {University of Glasgow},
  year =	 1998,
  number =	 {TR-1998-19}
}

@inproceedings{PeytonJones1996LetFLoating,
  author =	 {Simon {Peyton Jones} and Will Partain and
                  Andr{\'e} Santos},
  title =	 {Let-floating: moving bindings to give faster
                  programs},
  booktitle =	 {Proceedings of the first ACM SIGPLAN International
                  Conference on Functional Programming},
  year =	 1996,
  isbn =	 {0-89791-770-7},
  pages =	 {1--12},
  location =	 {Philadelphia, Pennsylvania, United States},
  doi =		 {http://doi.acm.org/10.1145/232627.232630},
  publisher =	 ACM
}

@article{Appel1998SSAisFP,
  author =	 {Andrew W. Appel},
  title =	 {{SSA is Functional Programming}},
  journal =	 SIGPLAN,
  volume =	 33,
  number =	 4,
  year =	 1998,
  issn =	 {0362-1340},
  pages =	 {17--20},
  doi =		 {http://doi.acm.org/10.1145/278283.278285},
  publisher =	 ACM
}

@techreport{Appel1994Loop,
  author =	 {Andrew W. Appel},
  title =	 {{Loop Headers in Lambda-Calculus or {CPS}}},
  number =	 {TR-460-94},
  institution =  {Princeton University},
  pages =	 {8 pages},
  year =	 1994,
  url =		 {citeseer.ist.psu.edu/appel94loop.html}
}

@article{Steckler1997Lightweight,
  author =       {Paul A. Steckler and Mitchell Wand},
  title =        {Lightweight closure conversion},
  journal =      {ACM Trans. Program. Lang. Syst.},
  volume =       19,
  number =       1,
  year =         1997,
  issn =         {0164-0925},
  pages =        {48--86},
  doi =          {http://doi.acm.org/10.1145/239912.239915},
  publisher =    {ACM Press},
  address =      {New York, NY, USA},
}

@PhdThesis{Tarditi1996PhD,
  author =	 {David Tarditi},
  title =	 {Design and Implementation of Code Optimiziations for
                  a Type-Directed Compiler for Standard ML},
  school =	 {School of Computer Science, Carnegie Mellon
                  University},
  year =	 1996,
  month =	 dec,
  note =	 {Available as Technical Report CMU-CS-97-108}
}

@article{ Danvy2000LambdaDropping,
  author =	 "Olivier Danvy and Ulrik P. Schultz",
  title =	 "Lambda-dropping: transforming recursive equations
                  into programs with block structure",
  journal =	 "Theoretical Computer Science",
  volume =	 248,
  number =	 "1--2",
  pages =	 "243--287",
  year =	 2000,
  url =		 "citeseer.ist.psu.edu/danvy99lambdadropping.html"
}

@Book{Stallman2003UsingGCC,
  author =	 {Richard M. Stallman and {the GCC Developer
                  Community}},
  title =	 {Using GCC: The GNU Compiler Collection Reference
                  Manual},
  publisher =	 {GNU Press},
  year =	 2003
}

@mastersthesis{Bauer2003CompilationGCC,
  author =	 {Andreas Bauer},
  title =	 {{Compilation of Functional Programming Languages
                  using GCC\,---\,Tail Calls}},
  year =	 2003,
  school =	 {Department of Informatics, Munich University of
                  Technology},
  address =	 {Munich, Germany},
  url =		 {http://home.in.tum.de/~baueran/thesis/}
}

@article{Baker1992ConsShould1,
  author =	 {Henry G. Baker},
  title =	 {CONS should not CONS its arguments, or, a lazy alloc
                  is a smart alloc},
  journal =	 {SIGPLAN Notices},
  volume =	 27,
  number =	 3,
  year =	 1992,
  issn =	 {0362-1340},
  pages =	 {24--34},
  doi =		 {http://doi.acm.org/10.1145/130854.130858},
  publisher =	 ACM
}

@article{Baker1995ConsShould2,
  author =	 {Henry G. Baker},
  title =	 {CONS should not CONS its arguments, part II: Cheney
                  on the M.T.A.},
  journal =	 {SIGPLAN Notices},
  volume =	 30,
  number =	 9,
  year =	 1995,
  issn =	 {0362-1340},
  pages =	 {17--20},
  doi =		 {http://doi.acm.org/10.1145/214448.214454},
  publisher =	 ACM
}

@Misc{Winkelmann2004ChickenHomepage,
  author =       {Felix L. Winkelmann},
  title =        {{Chicken Scheme Compiler Homepage}},
  howpublished = {Available from:
                  \url{http://www.call-with-current-continuation.org}},
  year =         2004
}

@article{Kelsey1993CPSandSSA,
  author =	 {Richard A. Kelsey},
  title =	 {A correspondence between continuation passing style
                  and static single assignment form},
  journal =	 {SIGPLAN Notices},
  volume =	 30,
  number =	 3,
  year =	 1993,
  issn =	 {0362-1340},
  pages =	 {13--22},
  doi =		 {http://doi.acm.org/10.1145/202530.202532},
  publisher =	 ACM
}

@article{Wegman1991ConstantPropagation,
  author =	 {Mark N. Wegman and F. Kenneth Zadeck},
  title =	 {Constant propagation with conditional branches},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 13,
  number =	 2,
  year =	 1991,
  issn =	 {0164-0925},
  pages =	 {181--210},
  doi =		 {http://doi.acm.org/10.1145/103135.103136},
  publisher =	 ACM
}

@article{Cytron1991EfficientSSA,
  author =	 {Ron Cytron and Jeanne Ferrante and Barry K. Rosen
                  and Mark N. Wegman and F. Kenneth Zadeck},
  title =	 {Efficiently computing static single assignment form
                  and the control dependence graph},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 13,
  number =	 4,
  year =	 1991,
  issn =	 {0164-0925},
  pages =	 {451--490},
  doi =		 {http://doi.acm.org/10.1145/115372.115320},
  publisher =	 ACM
}

@inproceedings{Alpern1988DetectingEquality,
  author =	 {B. Alpern and M. N. Wegman and F. K. Zadeck},
  title =	 {Detecting equality of variables in programs},
  booktitle =	 {Proceedings of the 15th ACM SIGPLAN-SIGACT symposium
                  on Principles of programming languages},
  year =	 1988,
  isbn =	 {0-89791-252-7},
  pages =	 {1--11},
  location =	 {San Diego, California, United States},
  doi =		 {http://doi.acm.org/10.1145/73560.73561},
  publisher =	 ACM
}

@PHDTHESIS{Gomard1991AnalysisMatters,
  AUTHOR =	 {Carsten K. Gomard},
  TITLE =	 {Program Analysis Matters},
  SCHOOL =	 {DIKU, University of Copenhagen},
  YEAR =	 1991,
  ADDRESS =	 {Denmark},
  NOTE =	 {also DIKU Rapport 91/17}
}

@PHDTHESIS{Sestoft1991AnalysisImplementationFP,
  AUTHOR =	 {Peter Sestoft},
  TITLE =	 {Analysis and Efficient Implementation of Functional
                  Programs},
  SCHOOL =	 {DIKU, University of Copenhagen},
  YEAR =	 1991,
  ADDRESS =	 {Denmark},
  NOTE =	 {also DIKU Rapport }
}

@inproceedings{Acar2002AdaptiveFP,
  author =	 "Umut A. Acar and Guy E. Blelloch and Robert Harper",
  title =	 {{Adaptive Functional Programming}},
  booktitle =	 "Symposium on Principles of Programming Languages",
  pages =	 "247-259",
  year =	 2002,
  url =		 "citeseer.ist.psu.edu/acar01adaptive.html"
}

@misc{Hinze2001TypeIndexed,
  author =	 {R. Hinze and J. Jeuring and A. L{\"o}h},
  title =	 "Type-indexed datatypes",
  text =	 "Unpublished,
                  2001.
                  http://www.cs.uu.nl/~johanj/publications/tidata.ps.",
  year =	 2001,
  url =
                  "citeseer.ist.psu.edu/article/hinze01typeindexed.html"
}

@PhdThesis{Maessen2002PhD,
  author =	 {Jan-Willem Maessen},
  title =	 {Hybrid Eager and Lazy Evaluation for Efficient
                  Compilation of Haskell},
  school =	 {Massachusetts Institute of Technology},
  year =	 2002,
  month =	 jun
}

@PhdThesis{Dube2002PhD,
  author =	 {Danny Dub{\'e}},
  title =	 {Demand-Driven Type Analysis for Dynamically-Typed
                  Functional Languages},
  school =	 {Universit{\'e} de Montr{\'e}al},
  year =	 2002,
  month =	 aug
}

@phdthesis{Shivers1991PhD,
  author =	 "Olin Shivers",
  title =	 "Control-Flow Analysis of Higher-Order Languages",
  year =	 1991,
  school =	 {School of Computer Science, Carnegie Mellon
                  University}
}

@TechReport{Siskind1999FlowDirected,
  author =	 {Jeffrey Mark Siskind},
  title =	 {Flow-Directed Lightweight Closure Conversion},
  institution =	 {NEC Research Institute},
  year =	 1999,
  number =	 {99-190R},
  month =	 dec
}

@PhdThesis{Boquist1999PhD,
  author =	 {Urban Boquist},
  title =	 {Code Optimisation Techniques for Lazy Functional
                  Languages},
  school =	 {Chalmers University of Technology},
  year =	 1999,
  address =	 {Gothenburg},
  month =	 apr
}

@MastersThesis{Boquist1995Licentiate,
  author =	 {Urban Boquist},
  title =	 {Interprocedural Register Allocation for Lazy
                  Functional Languages},
  school =	 {Department of Computing Science, Chalmers University
                  of Technology},
  year =	 1995,
  type =	 {Licentiate thesis}
}

@Book{Thompson1991TypeTheory,
  author =	 {Simon Thompson},
  title =	 {Type Theory and Functional Programming},
  publisher =	 AW,
  year =	 1991
}

@PhdThesis{Schulte1992PhD,
  author =	 {Wolfram Schulte},
  title =	 {Effiziente und korrekte {\"U}bersetzung strikter
                  applikativer Programmiersprachen},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 1992
}

@InProceedings{Schulte1992PortableEfficient,
  author =	 {Wolfram Schulte and Wolfgang Grieskamp},
  title =	 {Generating Portable and Efficient Code for a Strict
                  Applicative Language},
  booktitle =	 {Declarative Programming},
  year =	 1992,
  editor =	 {J. Darlington and R. Dietrich}
}

@PhdThesis{Rountev2002PhD,
  author =	 {Atanas Rountev},
  title =	 {Dataflow Analysis of Software Fragments},
  school =	 {Rutgers University},
  year =	 2002,
  month =	 apr,
  note =	 {Also as Technical Report DCS-TR-501}
}

@phdthesis{Didrich2001PhD,
  author =	 "Klaus Didrich",
  title =	 "Integration of Verification and Testing into
                  Compilation Systems -- Concept and Case Study",
  abstract =	 "In this thesis we present a compiler architecture
                  that enables the compiler to check the correctness
                  of the source code \emph{as part of the compilation
                  process}. It allows to perform these correctness
                  checks with \emph{different} methods, in particular
                  formal testing and formal proof. \par A fully
                  automated check is very expensive and often
                  impossible. Hence, it is not feasible to check
                  correctness automatically with the help of
                  specification and implementation. We extend the
                  programming language by (correctness)
                  \emph{justifications} that the user must insert into
                  the source code (``\emph{literate
                  justification}''). Depending on the chosen
                  justification method the user must work out the
                  justification in more or less detail. The
                  introduction of justifications changes the
                  compiler's task from deriving a correctness proof by
                  itself to \emph{checking a correctness proof}
                  provided by the user. \par The correctness check for
                  justifications can be integrated into the compiler
                  or delegated to an external tool. An external tool
                  allows the integration of existing tools but the
                  development of specialized tools is also
                  possible. The example development of a specialized
                  tactical theorem-prover shows that the development
                  of a specialized tool is not necessarily more
                  expensive than the adaptation of an existing
                  tool. \par For test execution during the compilation
                  an \emph{interpreter} must be available. The
                  execution of untested code causes \emph{security
                  risks}. We discuss different possibilities to deal
                  with this problem. \par The \emph{correctness} of a
                  compilation unit corresponds to the
                  \emph{consistency of an algebraic specification}. We
                  study two proof methods: either by construction of a
                  model or by establishing a correctness-preserving
                  relation. The proof obligations result from the
                  proof method, in addition proof obligations are
                  introduced to ensure the correctness of modular
                  programs. \par The compiler architecture described
                  in this thesis has been \emph{prototypically
                  implemented}. The \textsc{opal} system has been
                  extended with language elements to denote
                  specifications and (correctness) justifications. The
                  thesis presents some short examples. The
                  \textsc{opal/j} prototype is part of the
                  \textsc{opal} distribution since version
                  \texttt{2.3e}.",
  month =	 "November",
  school =	 "Technische Universit{\"a}t Berlin",
  url =
                  "http://uebb.cs.tu-berlin.de/~kd/integration-of-verification-and-testing.pdf",
  year =	 2001
}

@PhdThesis{Maeder2001PhD,
  author =	 {Christian Maeder},
  title =	 {Zur Kontextanalyse einer algebraischen
                  Programmiersprache},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 2001,
  month =	 jun
}

@PhdThesis{Bohlmann2001PhD,
  author =	 {Karsten Bohlmann},
  title =	 {Modeling Interaction and Causality: A Two-Level
                  Declarative Approach},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 1998,
  month =	 feb
}

@PhdThesis{Diwan1997UnderstandingModern,
  author =	 "Amer Suleman Diwan",
  title =	 "Understanding and improving the performance of
                  modern programming languages",
  text =	 "DIWAN, A. 1997. Understanding and improving the
                  performance of modern programming
                  languages. Ph.D. thesis, University of Massachusetts
                  at Amherst.",
  year =	 1997,
  school =	 {University of Massachusetts Amherst},
  month =	 feb,
  url =		 "citeseer.ist.psu.edu/diwan97understanding.html"
}

@InProceedings{Mock2001DynamicPointsTo,
  author =	 {Markus Mock and Manuvir Das and Craig Chambers and
                  Susan J. Eggers},
  title =	 {Dynamic Points-To Sets: A Comparison with Static
                  Analyses and Potential Applications in Program
                  Understanding and Optimization},
  booktitle =	 {proceedings of the ACM SIGPLAN SIGSOFT Workshop on
                  Program Analysis for Software Tools and Engineering
                  (PASTE'01)},
  pages =	 {66--72},
  year =	 2001,
  month =	 jun,
  publisher =	 ACM
}

@Article{Grant2000DyC,
  author =	 {Brian Grant and Markus Mock and Matthai Philipose
                  and Craig Chambers and Susan J. Eggers},
  title =	 {{DyC}: An Expressive Annotation-Directed Dynamic
                  Compiler for {C}},
  journal =	 {Theoretical Computer Science},
  year =	 2000,
  volume =	 248,
  number =	 {1--2},
  pages =	 {147--199},
  month =	 oct
}

@InProceedings{Mock2003BottomUp,
  author =	 {Markus Mock},
  title =	 {Dynamic Analysis from the Bottom Up},
  booktitle =	 {ICSE 2003 Workshop on Dynamic Analysis (WODA 2003)},
  year =	 2003,
  address =	 {Portland, Oregon},
  month =	 may
}

@PhdThesis{Mock2002PhD,
  author =	 {Markus Mock},
  title =	 {Automating Selective Dynamic Compilation},
  school =	 {University of Washington},
  year =	 2002,
  month =	 aug
}

@inproceedings{Launchbury1993NaturalSemantics,
  author =	 {John Launchbury},
  title =	 {A natural semantics for lazy evaluation},
  booktitle =	 {Proceedings of the 20th ACM SIGPLAN-SIGACT symposium
                  on Principles of programming languages},
  year =	 1993,
  isbn =	 {0-89791-560-7},
  pages =	 {144--154},
  location =	 {Charleston, South Carolina, United States},
  doi =		 {http://doi.acm.org/10.1145/158511.158618},
  publisher =	 ACM
}

@InProceedings{Leroy1997Effectiveness,
  author =	 {Xavier Leroy},
  title =	 {The Effectiveness of Type-based Unboxing},
  booktitle =	 {Workshop on Types in Compilation},
  year =	 1997,
  address =	 {Amsterdam, The Netherlands},
  month =	 jun,
  organization = {ACM SIGPLAN},
  note =	 {Published as Boston College Computer Science
                  Dept. Technical Report BCCS-97-03}
}

@PhdThesis{Laumann1997PhD,
  author =	 {Oliver Laumann},
  title =	 {The Scheme Language as the Foundation for a Reusable
                  Extension Language Kit},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 1997
}

@article{Aho1976Optimal,
  author =	 {A. V. Aho and S. C. Johnson},
  title =	 {Optimal Code Generation for Expression Trees},
  journal =	 {J. ACM},
  volume =	 23,
  number =	 3,
  year =	 1976,
  issn =	 {0004-5411},
  pages =	 {488--501},
  doi =		 {http://doi.acm.org/10.1145/321958.321970},
  publisher =	 ACM,
}

@INPROCEEDINGS{Hirschowitz-Leroy-Wells-rec,
  AUTHOR =	 {Tom Hirschowitz and Xavier Leroy and J. B. Wells},
  TITLE =	 {Compilation of extended recursion in call-by-value
                  functional languages},
  BOOKTITLE =	 {International Conference on Principles and Practice
                  of Declarative Programming},
  YEAR =	 2003,
  PAGES =	 {160--171},
  PUBLISHER =	 ACM,
  URL =
                  {http://pauillac.inria.fr/~xleroy/publi/compil-recursion.pdf},
  ABSTRACT =	 {This paper formalizes and proves correct a
                  compilation scheme for mutually-recursive
                  definitions in call-by-value functional
                  languages. This scheme supports a wider range of
                  recursive definitions than standard call-by-value
                  recursive de nitions. We formalize our technique as
                  a translation scheme to a lambda-calculus featuring
                  in-place update of memory blocks, and prove the
                  translation to be faithful.}
}

@inproceedings{Auslander1982OverviewPL8,
  author =	 {Marc Auslander and Martin Hopkins},
  title =	 {An overview of the PL.8 compiler},
  booktitle =	 {Proceedings of the 1982 SIGPLAN symposium on
                  Compiler construction},
  year =	 1982,
  isbn =	 {0-89791-074-5},
  pages =	 {22--31},
  location =	 {Boston, Massachusetts, United States},
  publisher =	 ACM
}

@InProceedings{Broberg2004RegularExpPatterns,
  author =	 {Niklas Broberg and Andreas Farre and Josef
                  Svenningsson},
  title =	 {Regular Expression Patterns},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming (ICFP'04)},
  year =	 2004
}

@Misc{Palsberg199BindingTimeAnalysis,
  author =	 {Jens Palsberg and Michael I. Schwartzbach},
  title =	 {Binding Time Analysis: Abstract Interpretation
                  versus Type Inference},
  month =	 apr,
  year =	 1992
}

@inproceedings{PeytonJones1982Investigation,
  author =	 {{Simon L.} {Peyton Jones}},
  title =	 {An investigation of the relative efficiencies of
                  combinators and lambda expressions},
  booktitle =	 {Proceedings of the 1982 ACM Symposium on LISP and
                  Functional Programming},
  year =	 1982,
  isbn =	 {0-89791-082-6},
  pages =	 {150--158},
  location =	 {Pittsburgh, Pennsylvania, United States},
  publisher =	 ACM,
}

@TechReport{Stallman1980PhantomStacks,
  author = 	 {Richard M. Stallman},
  title = 	 {Phantom Stacks: If You Look Too Hard, They Aren't There},
  institution =  MITAI,
  year = 	 1980,
  number =	 {AIM-556},
  month =	 jul
}

@InProceedings{Zee2002WriteBarrier,
  author =	 {Karen Zee and Martin Rinard},
  title =	 {Write Barrier Removal by Static Analysis},
  booktitle =	 {OOPSLA 2002},
  year =	 2002
}

@techreport{Bawden1993ImplementingDistributed,
  author =	 "Alan Bawden",
  title =	 "Implementing Distributed Systems Using Linear
                  Naming",
  number =	 "AITR-1627",
  pages =	 156,
  year =	 1993,
  url =		 "citeseer.ist.psu.edu/bawden93implementing.html"
}

@Article{Suganuma2000IBMJIT,
  author =	 {T. Suganuma and T. Ogasawara and M. Takeuchi and
                  T. Yasue and M. Kawahito and K. Ishizaki and
                  H. Komatsu and T. Nakatani},
  title =	 {{Overview of the IBM Java Just-in-Time Compiler}},
  journal =	 {IBM Systems Journal},
  year =	 2000,
  volume =	 39,
  number =	 1,
  pages =	 {175--193}
}

@InProceedings{Qian2004DynamicAnalysis,
  author =	 {Feng Qian and Laurie Hendren},
  title =	 {{Towards Dynamic Interprocedural Analysis in JVMs}},
  booktitle =	 {VM 2004},
  year =	 2004,
  address =	 {San Jose, USA},
  month =	 may
}

@PhdThesis{Gagnon2002PhD,
  author =	 {Etienne Gagnon},
  title =	 {A Portable Research Framework for the Execution of
                  Java Bytecodes},
  school =	 {School of Computer Science, McGill University,
                  Montreal},
  year =	 2002,
  month =	 dec
}

@TechReport{Elliott1999ImageMan,
  author = 	 {Conal Elliott, Sigbjorn Finne and Oege de Moor},
  title = 	 {Efficient Image Manipulation via Run-time Compilation},
  institution =  {Microsoft Research},
  year = 	 {1999},
  OPTkey = 	 {},
  OPTtype = 	 {},
  number =	 {TR-99-82},
  OPTaddress = 	 {},
  OPTmonth = 	 {},
  OPTnote = 	 {},
  OPTannote = 	 {}
}

@Article{Wakeling1998DynCompLazy,
  author =	 {David Wakeling},
  title =	 {The dynamic compilation of lazy functional programs},
  journal =	 {Journal of Functional Programming},
  year =	 1998,
  volume =	 8,
  number =	 1,
  pages =	 {61--81},
  month =	 jan
}

@InProceedings{Engler1996vcode,
  author =	 {Dawson R. Engler},
  title =	 {vcode: A Retargetable, extensible, Very Fast Dynamic
                  Code Generation System},
  booktitle =	 {SIGPLAN Conference on Programming Language Design
                  and Implementation},
  year =	 1996,
  address =	 {Philadelphia, PA},
  month =	 may
}

@inproceedings{PSSC04,
  author =	 {Andr{\'e} Pang and Don Stewart and Sean Seefried and
                  Manuel M. T. Chakravarty},
  title =	 {Plugging Haskell in},
  booktitle =	 {Proceedings of the ACM SIGPLAN workshop on Haskell},
  year =	 2004,
  isbn =	 {1-58113-850-4},
  pages =	 {10--21},
  location =	 {Snowbird, Utah, USA},
  doi =		 {http://doi.acm.org/10.1145/1017472.1017478},
  publisher =	 ACM,
}

@Misc{Bracha2004JavaGenerics,
  author =	 {Gilad Bracha},
  title =	 {Generics in the Java Programming Language},
  month =	 jul,
  year =	 2004
}

@inproceedings{62717,
  author =	 {G. L. Burn and S. L. Peyton Jones and J. D. Robson},
  title =	 {The spineless {G}-machine},
  booktitle =	 {Proceedings of the 1988 ACM conference on LISP and
                  functional programming},
  year =	 1988,
  isbn =	 {0-89791-273-X},
  pages =	 {244--258},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/62678.62717},
  publisher =	 ACM,
}

@Article{Banatre1993Multiset,
  author =	 {Jean-Pierre Banatre and Daniel Le M{\'e}tayer},
  title =	 {Programming with Multiset Transformation},
  journal =	 {Communications of the ACM},
  year =	 1993,
  volume =	 36,
  number =	 1,
  pages =	 {98--111},
  month =	 jan
}

@InProceedings{Berry1990Chemical,
  author =	 {G{\'e}rard Berry and G{\'e}rard Boudol},
  title =	 {The Chemical Abstract Machine},
  booktitle =	 {Seventeenth Annual ACM Symposium on Principles of
                  Programming Languages},
  pages =	 81,
  year =	 1990,
  address =	 {San Francisco, California},
  month =	 jan,
  publisher =	 ACM
}

@Misc{SouthernStorm2004libjit,
  author =       {{Southern Storm Software, Pty Ltd}},
  title =        {{Just-In-Time Compiler Library}},
  howpublished = {Available from:
                  \url{http://www.southern-storm.com.au/libjit.html}},
  year =         2004
}

@Misc{DotGNU2004DotGNU,
  author =       {{DotGNU Project}},
  title =        {{DotGNU Project/Portable.NET}},
  howpublished = {Available from: \url{http://dotgnu.org}},
  note =         {Last visited: 2008-10-07},
  year =         2004
}

@Misc{Mono2007Mono,
  author =       {{Mono Project}},
  title =        {{Mono}},
  howpublished = {Available from: \url{http://www.mono-project.com}},
  note =         {Last visited: 2008-10-07},
  year =         2007
}

@Misc{LLVM2004LLVM,
  author =	 {LLVM Project},
  title =	 {{The LLVM Compiler Infrastructure}},
  howpublished = {Available from: \url{http://llvm.cs.uiuc.edu}},
  year =	 2004
}

@InProceedings{LLVM:CGO04,
  author =	 {Chris Lattner and Vikram Adve},
  title =	 {{LLVM: A Compilation Framework for Lifelong Program
                  Analysis \& Transformation}},
  booktitle =	 {Proceedings of the 2004 International Symposium on
                  Code Generation and Optimization (CGO'04)},
  address =	 {Palo Alto, California},
  month =	 mar,
  year =	 2004
}

@InProceedings{DKAL:LCTES03,
  Author =	 {Dinakar Dhurjati, Sumant Kowshik, Vikram Adve and
                  Chris Lattner},
  Title =	 {{Memory Safety Without Runtime Checks or Garbage
                  Collection}},
  Booktitle =	 {{Proc. Languages Compilers and Tools for Embedded
                  Systems 2003}},
  Address =	 {San Diego, CA},
  Month =	 {June},
  Year =	 2003,
  URL =     {http://llvm.cs.uiuc.edu/pubs/2003-05-05-LCTES03-CodeSafety.html}
}

@inproceedings{Deutsch1984SmalltalkImpl,
  author =	 {L. Peter Deutsch and Allan M. Schiffman},
  title =	 {Efficient implementation of the {Smalltalk-80} system},
  booktitle =	 {Proceedings of the 11th ACM SIGACT-SIGPLAN Symposium
                  on Principles of Programming Languages},
  year =	 1984,
  isbn =	 {0-89791-125-3},
  pages =	 {297--302},
  location =	 {Salt Lake City, Utah, United States},
  publisher =	 ACM,
}

@inproceedings{Myers1984EfficientDataTypes,
  author =	 {Eugene W. Myers},
  title =	 {Efficient applicative data types},
  booktitle =	 {Proceedings of the 11th ACM SIGACT-SIGPLAN symposium
                  on Principles of programming languages},
  year =	 1984,
  isbn =	 {0-89791-125-3},
  pages =	 {66--75},
  location =	 {Salt Lake City, Utah, United States},
  publisher =	 ACM,
}

@Book{Armstrong1996Erlang,
  author =	 {Joe Armstrong and Robert Virding and Claes
                  Wikstr{\"o}m and Mike Williams},
  title =	 {Concurrent Programming in Erlang},
  publisher =	 PH,
  year =	 1996,
  edition =	 {second}
}

@inproceedings{Lee1996OptimizingML,
  author =	 {Peter Lee and Mark Leone},
  title =	 {Optimizing {ML} with run-time code generation},
  booktitle =	 {Proceedings of the ACM SIGPLAN 1996 Conference on
                  Programming Language Design and Implementation},
  year =	 1996,
  isbn =	 {0-89791-795-2},
  pages =	 {137--148},
  location =	 {Philadelphia, Pennsylvania, United States},
  doi =		 {http://doi.acm.org/10.1145/231379.231407},
  publisher =	 ACM,
}

@inproceedings{Auslander1996DynamicCompilation,
  author =	 {Joel Auslander and Matthai Philipose and Craig
                  Chambers and Susan J. Eggers and Brian N. Bershad},
  title =	 {Fast, effective dynamic compilation},
  booktitle =	 {Proceedings of the ACM SIGPLAN 1996 conference on
                  Programming language design and implementation},
  year =	 1996,
  isbn =	 {0-89791-795-2},
  pages =	 {149--159},
  location =	 {Philadelphia, Pennsylvania, United States},
  doi =		 {http://doi.acm.org/10.1145/231379.231409},
  publisher =	 ACM,
}

@article{Aycock2003HistoryJIT,
  author =	 {John Aycock},
  title =	 {A brief history of just-in-time},
  journal =	 {ACM Computing Surveys},
  volume =	 35,
  number =	 2,
  year =	 2003,
  issn =	 {0360-0300},
  pages =	 {97--113},
  publisher =	 ACM,
}

@inproceedings{Chambers1989Customization,
  author =	 {C. Chambers and D. Ungar},
  title =	 {Customization: optimizing compiler technology for
                  {Self}, a dynamically-typed object-oriented
                  programming language},
  booktitle =	 {Proceedings of the ACM SIGPLAN 1989 Conference on
                  Programming Language Design and Implementation},
  year =	 1989,
  isbn =	 {0-89791-306-X},
  pages =	 {146--160},
  location =	 {Portland, Oregon, United States},
  doi =		 {http://doi.acm.org/10.1145/73141.74831},
  publisher =	 ACM,
}

@article{Keppel1991SpaceModification,
  author =	 {David Keppel},
  title =	 {A portable interface for on-the-fly instruction
                  space modification},
  journal =	 {SIGPLAN Notices},
  volume =	 26,
  number =	 4,
  year =	 1991,
  issn =	 {0362-1340},
  pages =	 {86--95},
  doi =		 {http://doi.acm.org/10.1145/106973.106983},
  publisher =	 ACM,
}

@inproceedings{Wallace1995Liftshaft,
  author =	 {Malcolm Wallace and Colin Runciman},
  title =	 {Lambdas in the liftshaft},
  booktitle =	 {Proceedings of the seventh international conference
                  on Functional programming languages and computer
                  architecture},
  year =	 1995,
  isbn =	 {0-89791-719-7},
  pages =	 {249--258},
  location =	 {La Jolla, California, United States},
  doi =		 {http://doi.acm.org/10.1145/224164.224213},
  publisher =	 ACM,
}

@Book{Strom1991Hermes,
  author =	 {Robert E. Strom and David F. Bacon and Andy Lowry
                  and Arthur P. Goldberg and Daniel M. Yellin and and
                  Shaula Yemini},
  title =	 {Hermes: A Language for Distributed Computing},
  publisher =	 {Prentice-Hall},
  year =	 1991,
  series =	 {Series in Innovative Technology},
  month =	 feb,
  isbn =	 {0-13-389537-8}
}

@Article{Hanson2004CSharp,
  author =	 {David R. Hanson and Todd A. Proebsting},
  title =	 {A research C\# compiler},
  journal =	 {Software Practice and Experience},
  year =	 2004,
  volume =	 34,
  number =	 13,
  pages =	 {1211--1224},
  month =	 {nov}
}

@Misc{Sun2001HotSpotWhitePaper,
  author =       {{Sun Microsystems}},
  title =        {{The Java HotSpot Virtual Machine, v1.4.1, d2}},
  howpublished = {Available from:
                  \url{http://java.sun.com/products/hotspot/docs/whitepaper/Java_HotSpot_WP_Final_4_30_01.html}},
  year =         2002,
  month =        sep
}

@Article{Zheng2000PARISCia64,
  author =	 {Cindy Zheng and Carol Thompson},
  title =	 {{PA-RISC to IA-64: Transparent Execution, no
                  Recompilation}},
  journal =	 {IEEE Computer},
  year =	 2000,
  volume =	 33,
  number =	 3,
  pages =	 {47--52},
  month =	 mar
}

@InProceedings{Chung2000LazyFits,
  author =	 {Yoo C. Chung and Soo-Mook Moon},
  title =	 {Memory Allocation with Lazy Fits},
  booktitle =	 {ISMM '2000: International Symposium on Memory
                  Management},
  year =	 2000
}

@InProceedings{Yang1999LaTTe,
  author =	 {Byung-Sun Yang and Soo-Mook Moon and Seongbae Park
                  and Junpyo Lee and SeungIl Lee and Jinpyo Park and
                  Yoo C. Chung and Suhyun Kim and Kemal Ebcioglu and
                  Erik Altman},
  title =	 { LaTTe: A Java VM Just-in-Time Compiler with Fast
                  and Efficient Register Allocation},
  booktitle =	 {1999 International Conference on Parallel
                  Architectures and Compilation Techniques (PACT'99)},
  year =	 1999,
  address =	 {New Port Beach, California},
  month =	 oct
}

@PhdThesis{Ertl1996PhD,
  author =	 {Martin Anton Ertl},
  title =	 {Implementation of Stack-Based Languages on Register
                  Machines},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 1996
}

@Misc{Klaiber2000Crusoe,
  author =       {Andreas Klaiber},
  title =        {The Technology behind {Crusoe} Processors},
  howpublished = {Available from:
                  \url{http://www.charmed.com/PDF/CrusoeTechnologyWhitePaper_1-19-00.pdf}},
  note =         {Last visited: 2008-10-07},
  year =         2000
}

@PhdThesis{Hoelzle1994PhD,
  author =	 {Urs H{\"o}lzle},
  title =	 {Adaptive optimization for Self: Reconciling High
                  Performance with Exploratory Programming},
  school =	 {Computer Science Department, Stanford University},
  year =	 1994
}

@PhdThesis{Hicks2001PhD,
  author =	 {Michael Hicks},
  title =	 {Dynamic Software Updating},
  school =	 {Computer and Information Science Department, the
                  University of Pennsylvania},
  year =	 2001,
  month =	 aug
}

@PhdThesis{Burger1997PhD,
  author =	 {Robert G. Burger},
  title =	 {Efficient Compilation and Profile-Driven Dynamic
                  Recompilation in Scheme},
  school =	 {Indiana University Computer Science Department},
  year =	 1997,
  month =	 mar
}

@InProceedings{Burger1998Infrastructure,
  author =	 {Robert G. Burger and R. Kent Dybvig},
  title =	 {An infrastructure for profile-driven dynamic
                  recompilation},
  booktitle =	 {IEEE Computer Society 1998 International Conference
                  on Computer Languages},
  year =	 1998,
  month =	 may
}

@InProceedings{Tuna1994Continuations,
  author =	 {M. Esen Tuna and Steven D. Johnson and Robert
                  G. Burger},
  title =	 {Continuations in Hardware-Software Codesign},
  booktitle =	 {Proceedings of the International Conference on
                  Computer Design},
  pages =	 {264--269},
  year =	 1994,
  month =	 oct,
  organization = {IEEE}
}

@TechReport{Leone1997Dynamo,
  author =	 {Mark Leone and R. Kent Dybvig},
  title =	 {Dynamo: A Staged Compiler Architecture for Dynamic
                  Program Optimization},
  institution =	 {Indiana University Computer Science Department},
  year =	 1997,
  number =	 490,
  month =	 sep
}

@PhdThesis{Leone1997PhD,
  author =	 {Mark Leone},
  title =	 {A Principled and Practical Approach to Run-Time Code
                  Generation},
  school =	 {School of Computer Science, Carnegie Mellon
                  University},
  year =	 1997
}

@InProceedings{Leone1994Lightweight,
  author =	 {Mark Leone and Peter Lee},
  title =	 {Lightweight Run-Time Code Generation},
  booktitle =	 {Proceedings of the ACM SIGPLAN Workshop on Partial
                  Evaluation and Semantics-Based Program Manipulation},
  pages =	 {97-106},
  year =	 1994,
  month =	 jun
}

@TechReport{Ebcioglu1996DAISY,
  author =	 {Kemal Ebcioglu and Erik R. Altman},
  title =	 {{DAISY: Dynamic Compilation for 100\% Architectural
                  Compatibility}},
  institution =	 {IBM},
  year =	 1996,
  number =	 8502
}

@InProceedings{Bierman2003FormalizingUpdate,
  author =	 {Gavin Bierman and Michael Hicks and Peter Sewell and
                  Gareth Stoyle},
  title =	 {Formalizing dynamic software updating (Extended
                  Abstract)},
  booktitle =	 {Proceedings of Workshop on Unexpected Software
                  Evolution (USE'03)},
  year =	 2003,
  month =	 apr
}

@Unpublished{Appel1994HotSliding,
  author =       {Andrew W. Appel},
  title =        {{Hot-Sliding in ML}},
  note =         {Available online from
                  \url{http://www.cs.princeton.edu/~appel/papers}},
  month =        dec,
  year =         1994
}

@article{Clements2004TailRecursiveMachine,
  author =	 {John Clements and Matthias Felleisen},
  title =	 {A tail-recursive machine with stack inspection},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 26,
  number =	 6,
  year =	 2004,
  issn =	 {0164-0925},
  pages =	 {1029--1052},
  doi =		 {http://doi.acm.org/10.1145/1034774.1034778},
  publisher =	 ACM,
}

@article{ Ashley1998PracticalFlowAnalysis,
  author =	 "J. Michael Ashley and R. Kent Dybvig",
  title =	 "A Practical and Flexible Flow Analysis for
                  Higher-Order Languages",
  journal =	 "ACM Transactions on Programming Languages and
                  Systems",
  volume =	 20,
  number =	 4,
  month =	 "July",
  publisher =	 ACM,
  pages =	 "845--868",
  year =	 1998,
  url =		 "citeseer.ist.psu.edu/article/ashley96practical.html"
}

@PhdThesis{Ashley1996PhD,
  author =	 {J. Michael Ashley},
  title =	 {A Practical and Flexible Flow Analysis for
                  Higher-Order Languages},
  school =	 {Indiana University},
  year =	 1996
}

@article{Pu1988SynthesisKernel,
  author =	 {Calton Pu and Henry Massalin and John Ioannidis},
  title =	 {The {S}ynthesis Kernel},
  journal =	 {Computing Systems},
  year =	 1988,
  volume =	 1,
  number =	 1,
  pages =	 {11--32},
  month =	 {Winter},
  url =		 {citeseer.ist.psu.edu/22153.html},
  url =		 {http://citeseer.nj.nec.com/22153.html}
}

@phdthesis{Massalin1992synthesis,
  author =	 {H. Massalin},
  title =	 {Synthesis: {An} Efficient Implementation of
                  Fundamental Operating System Services},
  school =	 {Columbia University},
  year =	 1992,
  url =		 {citeseer.ist.psu.edu/massalin92synthesi.html}
}

@article{Thompson1968RegularExpression,
  author =	 {Ken Thompson},
  title =	 {Programming Techniques: Regular expression search
                  algorithm},
  journal =	 {Communications of the ACM},
  volume =	 11,
  number =	 6,
  year =	 1968,
  issn =	 {0001-0782},
  pages =	 {419--422},
  doi =		 {http://doi.acm.org/10.1145/363347.363387},
  publisher =	 ACM
}

@Article{Wickline1998Modal,
  author =	 {Philip Wickline and Peter Lee and Frank Pfenning and
                  Rowan Davies},
  title =	 {Modal types as staging specifications for run-time
                  code generation},
  journal =	 {ACM Computing Surveys},
  year =	 1998,
  volume =	 30,
  number =	 {3es},
  month =	 sep
}

@InProceedings{Wickline1998RunTimeCodeGen,
  author =	 {Philip Wickline and Peter Lee and Frank Pfenning},
  title =	 {Run-time code generation and modal-ML},
  booktitle =	 {Proceedings of the Conference on Programming
                  Language Design and Implementation (PLDI'98)},
  pages =	 {224-235},
  year =	 1998,
  editor =	 {Keith D. Cooper},
  address =	 {Montreal, Canada},
  month =	 jun,
  publisher =	 ACM
}

@inproceedings{ Sperber1997TwoForThePrice,
  author =	 "Michael Sperber and Peter Thiemann",
  title =	 "Two for the Price of One: Composing Partial
                  Evaluation and Compilation",
  booktitle =	 "{SIGPLAN} Conference on Programming Language Design
                  and Implementation",
  pages =	 "215-225",
  year =	 1997,
  url =		 "citeseer.ist.psu.edu/sperber97two.html"
}

@Unpublished{Lomov2002DynamicCaml,
  author =	 {Dmitry Lomov and Anton Moscal},
  title =	 {{Dynamic Caml -- Run-Time Code Generation
                  Library for Objective Caml}},
  note =	 {Available on the World Wide Web at
                  \url{http://oops.tepkom.ru/dml/},
                  last visited: 2008-10--7},
  month =	 may,
  year =	 2002
}

@inproceedings{Hentenryck1999opl,
  author =	 {Pascal Van Hentenryck and Laurent Michel and Laurent
                  Perron and Jean-Charles R{\'e}gin},
  title =	 {Constraint Programming in OPL},
  booktitle =	 {Proceedings of the International Conference on
                  Principles and Practice of Declarative Programming
                  (PPDP'99)},
  year =	 1999,
  month =	 {September 29 - October 1},
  editor =	 {Gopalan Nadathur },
  pages =	 {98-116},
  url =		 {citeseer.ist.psu.edu/hentenryck99constraint.html},
  url =		 {http://www.cs.brown.edu/people/pvh/ppdp99.ps},
  series =	 {Lecture Notes in Computer Science},
  volume =	 1702
},


@techreport{Michel2000opl++,
  author =	 {Laurent Michel and Pascal Van Hentenryck},
  title =	 {OPL++: A Modeling Layer for Constraint Programming
                  Libraries},
  abstract =	 {Mathematical modeling and constraint programming
                  languages have orthogonal strengths in stating
                  combinatorial optimization problems. Modeling
                  languages typically feature high-level set and
                  algebraic notations, while constraint programming
                  languages provide a rich constraint language and the
                  ability to specify search procedures. This paper
                  shows that many of the functionalities typically
                  found in modeling languages can be integrated
                  elegantly in constraint programming libraries
                  without defining a specific language or
                  preprocessor. In particular, it presents the design
                  of OPL++, a C++ modeling layer for constraint
                  programming that combines the salient features of
                  both approaches. Of particular interest is the
                  one-to-one correspondence between high-level models
                  and OPL++ statements and the negligible overhead
                  induced by the extensions },
  institution =	 {Brown University, Computer Science Department},
  year =	 2000,
  month =	 {December},
  type =	 {Tech Report},
  address =	 {http://www.cs.brown.edu/},
  number =	 {CS-00-07},
  url =		 {citeseer.ist.psu.edu/michel00opl.html},
  url =
                  {ftp://ftp.cs.brown.edu/pub/techreports/00/cs00-07.ps.Z}
}

@PhdThesis{Taha1999PhD,
  author =	 {Walid Taha},
  title =	 {Multi-Stage Programming: Its Theory and
                  Applications},
  school =	 {Oregon Graduate Institute of Science and Technology},
  year =	 1999,
  month =	 nov
}

@Article{Benton2005EmbeddingInterpreters,
  author = 	 {Nick Benton},
  title = 	 {Embedding Interpreters},
  journal = 	 {Journal of Functional Programming},
  year = 	 {2005},
  OPTkey = 	 {},
  OPTvolume = 	 {},
  OPTnumber = 	 {},
  OPTpages = 	 {},
  OPTmonth = 	 {},
  note =	 {To appear},
  OPTannote = 	 {}
}

@Book{Swierstra1998AdvancedFP,
  editor =	 {S. Doaitse Swierstra and Pedro R. Henriques and Jos{\'e} N. Oliviera},
  title = 	 {Advanced Functional Programming},
  publisher = 	 SV,
  year = 	 1998,
  volume =	 1608,
  series =	 LNCS,
  month =	 sep,
  note =	 {Third International School, AFP'98}
}

%  crossref =	 {Swierstra1998AdvancedFP},
@InCollection{Sheard1998UsingMetaML,
  author = 	 {Tim Sheard},
  title = 	 {{Using MetaML: A Staged Programming Language}},
  booktitle = 	 {Advanced Functional Programming},
  editor =	 {S. Doaitse Swierstra and Pedro R. Henriques and Jos{\'e} N. Oliviera},
  pages =	 {207--239},
  year = 	 1998,
  volume =	 1608,
  series =	 LNCS,
  month =	 sep,
  note =	 {Third International School, AFP'98}
}

@InProceedings{Taha2004Practical,
  author =	 {Walid Taha},
  title =	 {Practical Aspects of Multi-stage Programming},
  booktitle =	 {???},
  year =	 {???}
}

@InProceedings{Barthe1997MonadicTypeSystems,
  author =	 {Gilles Barthe and John Hatcliff and Peter Thiemann},
  title =	 {Monadic Type Systems: Pure Type Systems for Impure
                  Settings (Preliminary Report)},
  booktitle =	 {HOOTS'97},
  year =	 1997,
  volume =	 10,
  series =	 {Electronic Notes in Theoretical Computer Science},
  publisher =	 {Elsevier Science}
}

@InProceedings{Moggi1999IdealizedMetaML,
  author =	 {Eugenio Moggi and Walid Taha and Zine El-Abidine
                  Benaissa and Tim Sheard},
  title =	 {{An Idealized MetaML: Simpler, and More Expressive}},
  booktitle =	 {ESOP},
  year =	 1999
}

@InProceedings{Taha1997MSPExpl,
  author =	 {Walid Taha and Tim Sheard},
  title =	 {Multi-Stage Programming with Explicit Annotations},
  booktitle =	 {PEPM},
  year =	 1991
}

@InProceedings{Calcagno2000ClosedTypes,
  author =	 {Cristiano Calcagno and Eugenio Moggi and Walid Taha},
  title =	 {Closed Types as a Simple Approach to Safe Imperative
                  Multi-Stage Programming},
  booktitle =	 {ICALP},
  year =	 2000
}


@Article{Taha:2000:MMS,
  author =	 "Walid Taha and Tim Sheard",
  title =	 "{MetaML} and multi-stage programming with explicit
                  annotations",
  journal =	 "Theoretical Computer Science",
  volume =	 248,
  number =	 "1--2",
  pages =	 "211--242",
  day =		 6,
  month =	 oct,
  year =	 2000,
  CODEN =	 "TCSCDI",
  ISSN =	 "0304-3975",
}

@Article{Arnold2005SurveyVM,
  author =	 {Matthew Arnold and Stephen J. Fink and David Grove
                  and Michael Hind and Peter F. Sweeney},
  title =	 {A Survey of Adaptive Optimization in Virtual
                  Machines},
  journal =	 {Proceedings of the IEEE},
  year =	 2005,
  volume =	 93,
  number =	 2,
  pages =	 {449--466},
  month =	 feb
}

@TechReport{Arnold2004Architecture,
  author =	 {Matthew Arnold and Stephen Fink and David Grove and
                  Michael Hind and Peter F. Sweeney},
  title =	 {Architecture and Policy for Adaptive Optimization in
                  Virtual Machines},
  institution =	 {IBM Research},
  year =	 2004,
  type =	 {Research Report},
  number =	 23429,
  month =	 nov
}

@inproceedings{Detlefs1999InliningVirtualMethods,
  author =	 {David Detlefs and Ole Agesen},
  title =	 {Inlining of Virtual Methods},
  booktitle =	 {ECOOP '99: Proceedings of the 13th European
                  Conference on Object-Oriented Programming},
  year =	 1999,
  isbn =	 {3-540-66156-5},
  pages =	 {258--278},
  publisher =	 SV,
}

@InProceedings{Detlefs2001LockFree,
  author =	 {David L. Detlefs and Paul A. Martin and Mark Moir
                  and Guy L. {Steele Jr}},
  title =	 {Lock-Free Reference Counting},
  booktitle =	 {Proceedings of PODC 2001},
  year =	 2001
}

@Misc{Achten2004ArrowGECs,
  author =       {Peter Achten and Marko {van Eekelen} and Rinus
                  Plasmeijer and Arjen {van Weelden}},
  title =        {Arrows for Generic Graphical Editor Components},
  howpublished = {Availble from:
                  \url{ftp://ftp.cs.kun.nl/pub/Clean/papers/2004/achp2004-ArrowGECs.pdf}},
  year =         2004
}

@Article{Wadler1992Comprehending,
  author =	 {Philip Wadler},
  title =	 {Comprehending monads},
  journal =	 {Mathematical Structures in Computer Science, Special
                  issue of selected papers from 6'th Conference on
                  Lisp and Functional Programming},
  year =	 1992,
  volume =	 2,
  pages =	 {461--493}
}

@InProceedings{King1992CombiningMonads,
  author =	 {David King and Philip Wadler},
  editor =       {J. Launchbury and P. M. Sansom},
  title =	 {Combining monads},
  booktitle =	 {Glasgow Workshop on Functional Programming},
  year =	 1992,
  series =	 {Workshops in Computing Series},
  month =	 jul,
  address =      {Ayr, Scotland},
  publisher =	 SV
}

@Misc{Stewart2003hs-plugins,
  author =	 {Don Stewart},
  title =	 {{hs-plugins -- Dynamically Loaded Haskell Modules}},
  howpublished = {World Wide Web: \url{http://www.cse.unsw.edu.au/~dons/hs-plugins/}},
  month =	 feb,
  year =	 2006,
  note =         {Last visited: 2008-10-07}
}

@InProceedings{Harris2005Composable,
  author =	 {Tim Harris and Simon Marlow and Simon Peyton Jones
                  and Maurice Herlihy},
  title =	 {Composable memory transactions},
  booktitle =	 {PPoPP 2005},
  year =	 2005,
  note =	 {Submitted}
}

@InProceedings{Chernoff1997DigitalFX32,
  author =	 {Anton Chernoff and Ray Hookway},
  title =	 {{Digital FX!32 -- Running 32-Bit x86 Applications on
                  Alpha NT}},
  booktitle =	 {Proceedings of the USENIX Windows NT Workshop},
  year =	 1997,
  address =	 {Seattle, Washington},
  month =	 aug
}

@inproceedings{Piumarta1998SelectiveInlining,
  author =	 {Ian Piumarta and Fabio Riccardi},
  title =	 {Optimizing direct threaded code by selective
                  inlining},
  booktitle =	 {PLDI '98: Proceedings of the ACM SIGPLAN 1998
                  conference on Programming language design and
                  implementation},
  year =	 1998,
  isbn =	 {0-89791-987-4},
  pages =	 {291--300},
  location =	 {Montreal, Quebec, Canada},
  doi =		 {http://doi.acm.org/10.1145/277650.277743},
  publisher =	 ACM,
}

@Misc{FeeleyBetterAPI,
  author =	 {Marc Feeley},
  title =	 {{A Better API for First-Class Continuations}}
}

@inproceedings{Marlet1999Efficient,
  author =	 {Renaud Marlet and Charles Consel and Philippe
                  Boinot},
  title =	 {Efficient incremental run-time specialization for
                  free},
  booktitle =	 {PLDI '99: Proceedings of the ACM SIGPLAN 1999
                  conference on Programming language design and
                  implementation},
  year =	 1999,
  isbn =	 {1-58113-094-5},
  pages =	 {281--292},
  location =	 {Atlanta, Georgia, United States},
  doi =		 {http://doi.acm.org/10.1145/301618.301681},
  publisher =	 ACM
}

@inproceedings{Bruening2003Infrastructure,
  author =	 {Derek Bruening and Timothy Garnett and Saman
                  Amarasinghe},
  title =	 {An infrastructure for adaptive dynamic optimization},
  booktitle =	 {CGO '03: Proceedings of the International Symposium
                  on Code Generation and Optimization},
  year =	 2003,
  isbn =	 {0-7695-1913-X},
  pages =	 {265--275},
  location =	 {San Francisco, California},
  publisher =	 {IEEE Computer Society},
}

@inproceedings{Felgentreu1986DynamicOpt,
  author =	 {K.-U. Felgentreu and W.-M. Lippe},
  title =	 {Dynamic optimization of covered tail recursive
                  functions in applicative languages},
  booktitle =	 {CSC '86: Proceedings of the 1986 ACM fourteenth
                  annual conference on Computer science},
  year =	 1986,
  isbn =	 {0-89791-177-6},
  pages =	 {293--299},
  location =	 {Cincinnati, Ohio, United States},
  doi =		 {http://doi.acm.org/10.1145/324634.325437},
  publisher =	 ACM
}

@PhdThesis{Wallace1995FPEmbedded,
  author =	 {Malcolm Wallace},
  title =	 {Functional Programming and Embedded Systems},
  school =	 {Department of Computer Science, University of York},
  year =	 1995,
  month =	 jan
}

@TechReport{Taivalsaari1998JavaInJava,
  author =	 {Antero Taivalsaari},
  title =	 {{Implementing a Java\texttrademark{} Virtual Machine
                  in the Java Programming Language}},
  institution =	 {Sun Microsystems},
  year =	 1998,
  number =	 {TR-98-64}
}

@Article{Agesen1997Pep,
  author =	 {Ole Agesen},
  title =	 {{The Design and Implementation of Pep, A
                  Java\texttrademark{} Just-In-Time Translator}},
  journal =	 {Theory and Practice of Object Systems},
  year =	 1997,
  volume =	 3,
  number =	 2,
  pages =	 {127--155}
}

@inproceedings{Shivers2004MultiReturn,
  author =	 {Olin Shivers and David Fisher},
  title =	 {Multi-return function call},
  booktitle =	 {ICFP '04: Proceedings of the ninth ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2004,
  isbn =	 {1-58113-905-5},
  pages =	 {79--89},
  location =	 {Snow Bird, UT, USA},
  doi =		 {http://doi.acm.org/10.1145/1016850.1016864},
  publisher =	 ACM
}

@inproceedings{Hughes2003PolishParsers,
  author =	 {R. John M. Hughes and S. Doaitse Swierstra},
  title =	 {Polish parsers, step by step},
  booktitle =	 {ICFP '03: Proceedings of the eighth ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2003,
  isbn =	 {1-58113-756-7},
  pages =	 {239--248},
  location =	 {Uppsala, Sweden},
  doi =		 {http://doi.acm.org/10.1145/944705.944727},
  publisher =	 ACM
}

@inproceedings{AdlTabatabai2004Compressing,
  author =	 {Ali-Reza Adl-Tabatabai and Jay Bharadwaj and Michal
                  Cierniak and Marsha Eng and Jesse Fang and Brian
                  T. Lewis and Brian R. Murphy and James M. Stichnoth},
  title =	 {Improving 64-Bit {Java} {IPF} Performance by Compressing
                  Heap References},
  booktitle =	 {CGO '04: Proceedings of the International Symposium
                  on Code Generation and Optimization},
  year =	 2004,
  isbn =	 {0-7695-2102-9},
  pages =	 100,
  location =	 {Palo Alto, California},
  publisher =	 {IEEE Computer Society},
}

@inproceedings{Dehnert2003CodeMorphing,
  author =	 {James C. Dehnert and Brian K. Grant and John
                  P. Banning and Richard Johnson and Thomas Kistler
                  and Alexander Klaiber and Jim Mattson},
  title =	 {{The Transmeta Code Morphing\texttrademark{}
                  Software: using speculation, recovery, and adaptive
                  retranslation to address real-life challenges}},
  booktitle =	 {CGO '03: Proceedings of the International Symposium
                  on Code Generation and Optimization},
  year =	 2003,
  isbn =	 {0-7695-1913-X},
  pages =	 {15--24},
  location =	 {San Francisco, California},
  publisher =	 {IEEE Computer Society},
}

@inproceedings{Scott2003Retargetable,
  author =	 {K. Scott and N. Kumar and S. Velusamy and
                  B. Childers and J. W. Davidson and M. L. Soffa},
  title =	 {Retargetable and reconfigurable software dynamic
                  translation},
  booktitle =	 {CGO '03: Proceedings of the international symposium
                  on Code generation and optimization},
  year =	 2003,
  isbn =	 {0-7695-1913-X},
  pages =	 {36--47},
  location =	 {San Francisco, California},
  publisher =	 {IEEE Computer Society},
}


@inproceedings{Kamin2003Jumbo,
  author =	 {Sam Kamin and Lars Clausen and Ava Jarvis},
  title =	 {Jumbo: run-time code generation for Java and its
                  applications},
  booktitle =	 {CGO '03: Proceedings of the international symposium
                  on Code generation and optimization},
  year =	 2003,
  isbn =	 {0-7695-1913-X},
  pages =	 {48--56},
  location =	 {San Francisco, California},
  publisher =	 {IEEE Computer Society},
}

@inproceedings{Fink2003AdaptiveRecompilation,
  author =	 {Stephen J. Fink and Feng Qian},
  title =	 {Design, implementation and evaluation of adaptive
                  recompilation with on-stack replacement},
  booktitle =	 {CGO '03: Proceedings of the international symposium
                  on Code generation and optimization},
  year =	 2003,
  isbn =	 {0-7695-1913-X},
  pages =	 {241--252},
  location =	 {San Francisco, California},
  publisher =	 {IEEE Computer Society},
}

@TechReport{Bauer1968AlgolWIntro,
  author =	 {Henry R. Bauer and Sheldon I. Becker and Susan
                  L. Graham},
  title =	 {Algol W Notes for Introductory Computer Science
                  Courses},
  institution =	 {Computer Science Department Stanford University},
  year =	 1968,
  month =	 jan
}

@article{Ledgard1970MiniLang,
  author =	 {Henry F. Ledgard},
  title =	 {Ten mini-languages in need of formal definition},
  journal =	 {SIGPLAN Notices},
  volume =	 5,
  number =	 {4-5},
  year =	 1970,
  issn =	 {0362-1340},
  pages =	 {14--37},
  doi =		 {http://doi.acm.org/10.1145/987438.987440},
  publisher =	 ACM,
}

@Book{Leitch2001PAME,
  author =	 {Sian Leitch},
  title =	 {Programming Algol~68 Made Easy},
  publisher =	 {Phoenix Engineering},
  year =	 2001
}

@article{Carr1959RecursiveCompilers,
  author =	 {John W. {Carr, III}},
  title =	 {Recursive subscripting compilers and list-type
                  memories},
  journal =	 {Communications of the ACM},
  volume =	 2,
  number =	 2,
  year =	 1959,
  issn =	 {0001-0782},
  pages =	 {4--6},
  doi =		 {http://doi.acm.org/10.1145/368280.368281},
  publisher =	 ACM,
}

@Misc{VitaleCatenation,
  author =	 {Benjamin Vitale and Tarek S. Abdelrahman},
  title =	 {Catenation and Specialization for {Tcl} Virtual
                  Machine Performance}
}

@article{Samelson1960SequentialFormula,
  author =	 {K. Samelson and F. L. Bauer},
  title =	 {Sequential formula translation},
  journal =	 {Communications of the ACM},
  volume =	 3,
  number =	 2,
  year =	 1960,
  issn =	 {0001-0782},
  pages =	 {76--83},
  doi =		 {http://doi.acm.org/10.1145/366959.366968},
  publisher =	 ACM,
}

@article{Bell1973ThreadedCode,
  author =	 {James R. Bell},
  title =	 {Threaded code},
  journal =	 {Communications of the ACM},
  volume =	 16,
  number =	 6,
  year =	 1973,
  issn =	 {0001-0782},
  pages =	 {370--372},
  doi =		 {http://doi.acm.org/10.1145/362248.362270},
  publisher =	 ACM,
}

@article{Dewar1975IndirectThreadedCode,
  author =	 {Robert B. K. Dewar},
  title =	 {Indirect threaded code},
  journal =	 {Communications of the ACM},
  volume =	 18,
  number =	 6,
  year =	 1975,
  issn =	 {0001-0782},
  pages =	 {330--331},
  doi =		 {http://doi.acm.org/10.1145/360825.360849},
  publisher =	 ACM,
}

@Article{Strachey1965Macrogenerator,
  author =	 {C. Strachey},
  title =	 {A general purpose macrogenerator},
  journal =	 {Computer Journal},
  year =	 1965,
  volume =	 8,
  number =	 3,
  pages =	 {225--241}
}

@Article{Ramsey1999Eliminating,
  author =	 {Norman Ramsey},
  title =	 {Eliminating Spurious Error Messages Using
                  Exceptions, Polymorphism, and Higher-Order
                  Functions},
  journal =	 {Computer Journal},
  year =	 1999,
  volume =	 42,
  number =	 5,
  pages =	 {360--372}
}

@InProceedings{Widera2001CompleteType,
  author =	 {Manfred Widera},
  title =	 {A Sketch of Complete Type Inference for Functional
                  Programming},
  booktitle =	 {International Workshop on Functional and
                  (Constraint) Logic Programming (WLFP 2001)},
  year =	 2001,
  month =	 sep
}

@Article{Feeley1992LambdaPlusEps,
  author =	 {Marc Feeley and Guy Lapalme},
  title =	 {Closure Generation Based on Viewing LAMBDA As
                  EPSILON Plus COMPILE},
  journal =	 {Journal of Computer Languages},
  year =	 1992,
  volume =	 17,
  number =	 4
}

@Article{Feeley1987ClosureCodeGen,
  author =	 {Marc Feeley and Guy Lapalme},
  title =	 {Using Closures for Code Generation},
  journal =	 {Journal of Computer Languages},
  year =	 1987,
  volume =	 12,
  number =	 1
}

@InProceedings{Debray1999LimkTime,
  author =	 {Saumya Debray and Robert Muth and Scott Watterson},
  title =	 {Link-time Improvement of Scheme Programs},
  booktitle =	 {International Conference on Compiler Construction
                  (CC'99)},
  year =	 1999,
  month =	 mar
}

@Misc{DePristo2000SINTL,
  author =	 {Mark DePristo},
  title =	 {SINTL: A Strongly-Typed Generic Intermediate
                  Language for Scheme},
  month =	 may,
  year =	 2000,
  note =	 {Northwestern University}
}

@Misc{Bonzini2000GNULightning,
  author =	 {Paolo Bonzini},
  title =	 {{GNU Lightning}},
  howpublished = {Available from: \url{http://www.gnu.org/software/lightning}},
  year =	 2000
}

@PhdThesis{Franz1994PhD,
  author =	 {Michael Steffen Oliver Franz},
  title =	 {Code-Generation On-the-fly: A Key to Portable
                  Software},
  school =	 {ETH Z{\"u}rich},
  year =	 1994
}

@inproceedings{Kay1993EarlyHistorySmalltalk,
  author =	 {Alan C. Kay},
  title =	 {The early history of Smalltalk},
  booktitle =	 {HOPL-II: The second ACM SIGPLAN conference on
                  History of programming languages},
  year =	 1993,
  isbn =	 {0-89791-570-4},
  pages =	 {69--95},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/154766.155364},
  publisher =	 ACM,
}

@inproceedings{Wirth1993DevelopmentPascal,
  author =	 {N. Wirth},
  title =	 {Recollections about the development of Pascal},
  booktitle =	 {HOPL-II: The second ACM SIGPLAN conference on
                  History of programming languages},
  year =	 1993,
  isbn =	 {0-89791-570-4},
  pages =	 {333--342},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/154766.155378},
  publisher =	 ACM,
}

@inproceedings{Roejemo1995nhcHighlights,
  author =	 {Niklas R{\"o}jemo},
  title =	 {Highlights from nhc---space-efficient Haskell
                  compiler},
  booktitle =	 {FPCA '95: Proceedings of the seventh international
                  conference on Functional programming languages and
                  computer architecture},
  year =	 1995,
  isbn =	 {0-89791-719-7},
  pages =	 {282--292},
  location =	 {La Jolla, California, United States},
  doi =		 {http://doi.acm.org/10.1145/224164.224217},
  publisher =	 ACM,
}

@inproceedings{Wadler1981ApplicativeStyle,
  author =	 {Philip Wadler},
  title =	 {Applicative style programming, program
                  transformation, and list operators},
  booktitle =	 {FPCA '81: Proceedings of the 1981 conference on
                  Functional programming languages and computer
                  architecture},
  year =	 1981,
  isbn =	 {0-89791-060-5},
  pages =	 {25--32},
  location =	 {Portsmouth, New Hampshire, United States},
  publisher =	 ACM,
}

@inproceedings{Wadler1989TheoremsForFree,
  author =	 {Philip Wadler},
  title =	 {Theorems for free!},
  booktitle =	 {FPCA '89: Proceedings of the fourth international
                  conference on Functional programming languages and
                  computer architecture},
  year =	 1989,
  isbn =	 {0-89791-328-0},
  pages =	 {347--359},
  location =	 {Imperial College, London, United Kingdom},
  doi =		 {http://doi.acm.org/10.1145/99370.99404},
  publisher =	 ACM,
}

@inproceedings{Nielson1989TransformationsHOF,
  author =	 {Hanne Riis Nielson and Flemming Nielson},
  title =	 {Transformations on higher-order functions},
  booktitle =	 {FPCA '89: Proceedings of the fourth international
                  conference on Functional programming languages and
                  computer architecture},
  year =	 1989,
  isbn =	 {0-89791-328-0},
  pages =	 {129--143},
  location =	 {Imperial College, London, United Kingdom},
  doi =		 {http://doi.acm.org/10.1145/99370.99380},
  publisher =	 ACM,
}

@inproceedings{Diniz1997DynamicFeedback,
  author =	 {Pedro C. Diniz and Martin C. Rinard},
  title =	 {Dynamic feedback: an effective technique for
                  adaptive computing},
  booktitle =	 {PLDI '97: Proceedings of the ACM SIGPLAN 1997
                  conference on Programming language design and
                  implementation},
  year =	 1997,
  isbn =	 {0-89791-907-6},
  pages =	 {71--84},
  location =	 {Las Vegas, Nevada, United States},
  doi =		 {http://doi.acm.org/10.1145/258915.258923},
  publisher =	 ACM,
}

@inproceedings{Colby2000CertifyingCompiler,
  author =	 {Christopher Colby and Peter Lee and George C. Necula
                  and Fred Blau and Mark Plesko and Kenneth Cline},
  title =	 {A certifying compiler for Java},
  booktitle =	 {PLDI '00: Proceedings of the ACM SIGPLAN 2000
                  conference on Programming language design and
                  implementation},
  year =	 2000,
  isbn =	 {1-58113-199-2},
  pages =	 {95--107},
  location =	 {Vancouver, British Columbia, Canada},
  doi =		 {http://doi.acm.org/10.1145/349299.349315},
  publisher =	 ACM,
}

@inproceedings{Cierniak2000PracticingJUDO,
  author =	 {Michal Cierniak and Guei-Yuan Lueh and James
                  M. Stichnoth},
  title =	 {Practicing JUDO: Java under dynamic optimizations},
  booktitle =	 {PLDI '00: Proceedings of the ACM SIGPLAN 2000
                  conference on Programming language design and
                  implementation},
  year =	 2000,
  isbn =	 {1-58113-199-2},
  pages =	 {13--26},
  location =	 {Vancouver, British Columbia, Canada},
  doi =		 {http://doi.acm.org/10.1145/349299.349306},
  publisher =	 ACM,
}

@inproceedings{Fernandez1995LinkTimeModula,
  author =	 {Mary F. Fern{\'a}ndez},
  title =	 {Simple and effective link-time optimization of
                  Modula-3 programs},
  booktitle =	 {PLDI '95: Proceedings of the ACM SIGPLAN 1995
                  conference on Programming language design and
                  implementation},
  year =	 1995,
  isbn =	 {0-89791-697-2},
  pages =	 {103--115},
  location =	 {La Jolla, California, United States},
  doi =		 {http://doi.acm.org/10.1145/207110.207121},
  publisher =	 ACM,
}

@inproceedings{Sullivan2003DynamicNativeOpt,
  author =	 {Gregory T. Sullivan and Derek L. Bruening and Iris
                  Baron and Timothy Garnett and Saman Amarasinghe},
  title =	 {Dynamic native optimization of interpreters},
  booktitle =	 {IVME '03: Proceedings of the 2003 workshop on
                  Interpreters, Virtual Machines and Emulators},
  year =	 2003,
  isbn =	 {1-58113-655-2},
  pages =	 {50--57},
  location =	 {San Diego, California},
  doi =		 {http://doi.acm.org/10.1145/858570.858576},
  publisher =	 ACM,
}

@inproceedings{AdlTabatabai1998FastCodeGenJIT,
  author =	 {Ali-Reza Adl-Tabatabai and Michal Cierniak and
                  Guei-Yuan Lueh and Vishesh M. Parikh and James
                  M. Stichnoth},
  title =	 {Fast, effective code generation in a just-in-time
                  {Java} compiler},
  booktitle =	 {PLDI '98: Proceedings of the ACM SIGPLAN 1998
                  Conference on Programming Language Design and
                  Implementation},
  year =	 1998,
  isbn =	 {0-89791-987-4},
  pages =	 {280--290},
  location =	 {Montreal, Quebec, Canada},
  doi =		 {http://doi.acm.org/10.1145/277650.277740},
  publisher =	 ACM,
}

@inproceedings{Whaley2003Joeq,
  author =	 {John Whaley},
  title =	 {Joeq: a virtual machine and compiler infrastructure},
  booktitle =	 {IVME '03: Proceedings of the 2003 workshop on
                  Interpreters, Virtual Machines and Emulators},
  year =	 2003,
  isbn =	 {1-58113-655-2},
  pages =	 {58--66},
  location =	 {San Diego, California},
  doi =		 {http://doi.acm.org/10.1145/858570.858577},
  publisher =	 ACM,
}

@inproceedings{Ayers1997AggressiveInlining,
  author =	 {Andrew Ayers and Richard Schooler and Robert
                  Gottlieb},
  title =	 {Aggressive inlining},
  booktitle =	 {PLDI '97: Proceedings of the ACM SIGPLAN 1997
                  conference on Programming language design and
                  implementation},
  year =	 1997,
  isbn =	 {0-89791-907-6},
  pages =	 {134--145},
  location =	 {Las Vegas, Nevada, United States},
  doi =		 {http://doi.acm.org/10.1145/258915.258928},
  publisher =	 ACM,
}

@inproceedings{Krintz2001AnnotationsReduce,
  author =	 {Chandra Krintz and Brad Calder},
  title =	 {Using annotations to reduce dynamic optimization
                  time},
  booktitle =	 {PLDI '01: Proceedings of the ACM SIGPLAN 2001
                  conference on Programming language design and
                  implementation},
  year =	 2001,
  isbn =	 {1-58113-414-2},
  pages =	 {156--167},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/378795.378831},
  publisher =	 ACM,
}

@Book{Bauer1976CompilerConstruction,
  editor =	 {F. L. Bauer and J. Eickel},
  title =	 {Compiler Construction -- An Advanced Course},
  publisher =	 SV,
  year =	 1976,
  edition =	 {Second},
  series =	 LNCS,
  published =	 SV
}

@Book{Salomon2004DataCompression,
  author =	 {David Salomon},
  title =	 {Data Compression: The Complete Reference},
  publisher =	 SV,
  year =	 2004,
  edition =	 {Third}
}

@Book{Salomon1993AssemblersAndLoaders,
  author =	 {David Salomon},
  title =	 {Assemblers and Loaders},
  publisher =	 {Ellis Horwood Ltd},
  year =	 1993,
  series =	 {Ellis Horwood Series in Computers and Their
                  Applications}
}

@Unpublished{Pfenning2002LinearLogic,
  author =	 {Frank Pfenning},
  title =	 {Linear Logic},
  note =	 {Course Notes},
  month =	 jan,
  year =	 2002
}

@PhdThesis{Bruening2004PhD,
  author =	 {Derek L. Bruening},
  title =	 {Efficient, Transparent, and Comprehensive Runtime
                  Code Manipulation},
  school =	 {Massachusetts Institute of Technology},
  year =	 2004,
  month =	 sep
}

@Book{Barendregt1985LambdaCalculus,
  author =	 {H. P. Barendregt},
  title =	 {The Lambda Calculus},
  publisher =	 NH,
  year =	 1985,
  volume =	 103,
  series =	 {Studies in Logic and the Foundations of Mathematics},
  edition =	 {Revised}
}

@Proceedings{Hermenegildo2002SAS,
  title =	 {Static Analysis},
  year =	 2002,
  booktitle =	 {Proceedings of the 9th International Symposium, SAS
                  2002},
  editor =	 {Manuel V. Hermenegildo and Germ{\'a}n Puebla},
  volume =	 2477,
  series =	 LNCS,
  publisher =	 SV
}

@PhdThesis{Ward1989PhD,
  author =	 {Martin Ward},
  title =	 {Proving Program Refinements and Transformations},
  school =	 {St. Annes College Oxford},
  year =	 1989,
  month =	 jun
}

@Misc{Transitive2005Homepage,
  author =       {Transitive Limited},
  title =        {Transitive Home Page},
  note =         {Available from: \url{http://www.transitive.com}},
  month =        apr,
  year =         2005
}

@TechReport{Allen2005FortressSpec,
  author =	 {Eric Allen and David Chase and Victor Luchangco and
                  Jan-Willem Maessen and Sukyoung Ryu and Guy
                  L. {Steele Jr.} and Sam Tobin-Hochstadt},
  title =	 {The {Fortress} Language Specification Version 0.618},
  institution =	 {Sun Microsystems Research Labs},
  year =	 2005,
  month =	 apr
}

@Misc{Dybvig2005MonadicSubcomputations,
  author =       {R. Kent Dybvig and Simon Peyton-Jones and Amr Sabry},
  title =        {A Monadic Framework for Subcontinuations},
  howpublished = {Available from:
                  \url{http://www.cs.indiana.edu/~sabry/papers/monadicSubcont.ps}},
  month =        feb,
  year =         2005
}

@InProceedings{Pardo2002GenericAccumulations,
  author =	 {Alberto Pardo},
  title =	 {Generic Accumulations},
  booktitle =	 {IFIP WG2.1 Working Conference on Generic
                  Programming},
  year =	 2002,
  address =	 {Dagstuhl, Germany},
  month =	 jul
}

@MastersThesis{Feeley1986DeuxApproches,
  author =	 {Marc Feeley},
  title =	 {Deux approches {\`a} l'implantation du language
                  Scheme},
  school =	 {Universit{\'e} de Montr{\'e}al},
  year =	 1986,
  month =	 may
}

@Article{Hartel1996Benchmarking,
  author =	 {Pieter H. Hartel and Marc Feeley and Martin Alt and
                  Lennart Augustson and Peter Baumann and Marcel
                  Beemster and Emmanuel Chailloux and Christine
                  H. Flood and Wolfgang Grieskamp and John H. G. van
                  Groningen and Kevin Hammond and Bogumil Hausman and
                  Melody Y. Ivory and Richard E. Jones and Jasper
                  Kamperman and Peter Lee and Xavier Leroy and Rafael
                  D. Lins and Sandra Loosemore and Niklas R{\"o}jemo
                  and Manuel Serrano and Jean-Pierre Talpin and John
                  Thackray and Stephen Thomas and Pum Walters and
                  Pierre Weis and Peter Wentworth},
  title =	 {Benchmarking Implementations of Functional Languages
                  with ``Pseudoknot'', a Float-Intensive Benchmark},
  journal =	 {Journal of Functional Programming},
  year =	 1996,
  volume =	 6,
  number =	 4,
  pages =	 {621--655}
}

@inproceedings{Kohlhase1997DynamicLambdaCalculus,
  author =	 {Michael Kohlhase and Susanna Kuschert},
  title =	 {Dynamic Lambda Calculus},
  booktitle =	 {Proceedings of the 5th Meeting on Mathematics of
                  Language - MOL5},
  year =	 1997,
  pages =	 {85--92},
}

@PhdThesis{Brand2005PhD,
  author =	 {Per Brand},
  title =	 {The Design Philosphy of Distributed Programming
                  Systems: the Mozart Experience},
  school =	 {Royal Institute of Technology Stockholm},
  year =	 2005,
  month =	 jun
}

@Book{Cormen2001IntroToAlgorithms,
  author =	 {Thomas H. Cormen and Charles E. Leiserson and Ronald
                  L. Rivest and Clifford Stein},
  title =	 {Introduction to Algorithms},
  publisher =	 {MIT Press},
  year =	 2001,
  edition =	 {Second}
}

@inproceedings{Vytiniotis2006BoxyTypes,
  author =	 {Dimitrios Vytiniotis and Stephanie Weirich and Simon
                  Peyton Jones},
  title =	 {Boxy types: inference for higher-rank types and
                  impredicativity},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {251--262},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159838},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Graham1982gprof,
  author =	 {Susan L. Graham and Peter B. Kessler and Marshall
                  K. Mckusick},
  title =	 {Gprof: A call graph execution profiler},
  booktitle =	 {SIGPLAN '82: Proceedings of the 1982 SIGPLAN
                  symposium on Compiler construction},
  year =	 1982,
  isbn =	 {0-89791-074-5},
  pages =	 {120--126},
  location =	 {Boston, Massachusetts, United States},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Brooks1982OptimizingLISP,
  author =	 {Rodney A. Brooks and Richard P. Gabriel and Guy
                  L. Steele, Jr.},
  title =	 {An optimizing compiler for lexically scoped LISP},
  booktitle =	 {SIGPLAN '82: Proceedings of the 1982 SIGPLAN
                  symposium on Compiler construction},
  year =	 {1982},
  isbn =	 {0-89791-074-5},
  pages =	 {261--275},
  location =	 {Boston, Massachusetts, United States},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Brooks1986DesignOptimizing,
  author =	 {Rodney A. Brooks and David B. Posner and James
                  L. McDonald and Jon L. White and Eric Benson and
                  Richard P. Gabriel},
  title =	 {Design of an optimizing, dynamically retargetable
                  compiler for common Lisp},
  booktitle =	 {LFP '86: Proceedings of the 1986 ACM conference on
                  LISP and functional programming},
  year =	 1986,
  isbn =	 {0-89791-200-4},
  pages =	 {67--85},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/319838.319851},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Whaley2001PartialMethodCompilation,
  author =	 {John Whaley},
  title =	 {Partial method compilation using dynamic profile
                  information},
  booktitle =	 {OOPSLA '01: Proceedings of the 16th ACM SIGPLAN
                  conference on Object oriented programming, systems,
                  languages, and applications},
  year =	 2001,
  isbn =	 {1-58113-335-9},
  pages =	 {166--179},
  location =	 {Tampa Bay, FL, USA},
  doi =		 {http://doi.acm.org/10.1145/504282.504295},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Levanoni2001OnTheFlyGC,
  author =	 {Yossi Levanoni and Erez Petrank},
  title =	 {An on-the-fly reference counting garbage collector
                  for Java},
  booktitle =	 {OOPSLA '01: Proceedings of the 16th ACM SIGPLAN
                  conference on Object oriented programming, systems,
                  languages, and applications},
  year =	 2001,
  isbn =	 {1-58113-335-9},
  pages =	 {367--380},
  location =	 {Tampa Bay, FL, USA},
  doi =		 {http://doi.acm.org/10.1145/504282.504309},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@MastersThesis{Broberg2005Thesis,
  author =	 {Niklas Broberg},
  title =	 {Haskell Server Pages},
  school =	 {Chalmers University of Technology},
  year =	 2005
}

@Article{Dijkstra1972HumbleProgrammer,
  author =	 {Edsger W. Dijkstra},
  title =	 {EWD 340: The humble programmer},
  journal =	 CACM,
  year =	 1972,
  volume =	 15,
  number =	 10,
  pages =	 {859--866}
}

@Article{Petrank2004DelayedAllocation,
  author =	 {Erez Petrank and Elliot K. Kolodner},
  title =	 {Parallel Copying Garbage Collection using Delayed
                  Allocation},
  journal =	 {Parallel Processing Letters},
  year =	 2004,
  volume =	 14,
  number =	 2,
  month =	 jun
}

@InProceedings{Chakravarty2001Nepal,
  author =	 {Manuel M. T. Chakravarty and Gabriele Keller and
                  Roman Lechtchinsky and Wolf Pfannenstiel},
  title =	 {Nepal -- Nested Data-Parallelism in Haskell.},
  booktitle =	 {Euro-Par 2001: Parallel Processing, 7th
                  International Euro-Par Conference,},
  pages =	 {524--534},
  year =	 2001,
  editor =	 {Rizos Sakellariou and John Keane and John R. Gurd
                  and Len Freeman},
  volume =	 2150,
  series =	 LNCS,
  publisher =	 SV
}

@InProceedings{Chakravarty2004SSAOptimisation,
  author =	 {Manuel M. T. Chakravarty and Gabriele Keller and
                  Patryk Zadarnowski},
  title =	 {A Functional Perspective on SSA Optimisation
                  Algorithms},
  booktitle =	 {2nd International Workshop on Compiler Optimization
                  Meets Compiler Verification (COCV 2003),},
  year =	 2004,
  volume =	 {82:2},
  series =	 {Electronic Notes in Theoretical Computer Science},
  publisher =	 {Elsevier Science}
}

@article{Wadler1987CritiqueAbelson,
  author =	 {P Wadler},
  title =	 {A critique of Abelson and Sussman or why calculating
                  is better than scheming},
  journal =	 {SIGPLAN Notices},
  volume =	 22,
  number =	 3,
  year =	 1987,
  issn =	 {0362-1340},
  pages =	 {83--94},
  doi =		 {http://doi.acm.org/10.1145/24697.24706},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Chakravarty1991LazyNarrowing,
  author =	 {Manuel M. T. Chakravarty and Hendrik C. R. Lock},
  title =	 {The Implementation of Lazy Narrowing},
  booktitle =	 {Programming Language, Implementation, and Logic
                  Programming, 3rd International Symposium PLILP'91},
  pages =	 {123--134},
  year =	 1991,
  editor =	 {J. Maluszunski and M. Wirsing},
  volume =	 528,
  series =	 LNCS,
  publisher =	 SV
}

@Article{Smith1994PrincipalTypeSchemes,
  author =	 {Geoffrey S. Smith},
  title =	 {Principal Type Schemes for Functional Programs with
                  Overloading and Subtyping},
  journal =	 {Science of Computer Programming},
  year =	 1994,
  volume =	 23,
  number =	 {2--3},
  pages =	 {197--226},
  month =	 dec
}

@Article{Reynolds1970Gedanken,
  author =	 {John C. Reynolds},
  title =	 {GEDANKEN--A Simple Typeless Language Based on the
                  Principle of Completeness and the Reference Concept},
  journal =	 CACM,
  year =	 1970,
  volume =	 13,
  number =	 5,
  pages =	 {308--319},
  month =	 may
}

@Book{Pepper2005ProgrammierenMitJava,
  author =	 {Peter Pepper},
  title =	 {Programmieren mit Java},
  publisher =	 SV,
  year =	 2005
}

@article{ Pepper1997HighlevelDerivation,
  author =	 "Peter Pepper and Douglas R. Smith",
  title =	 "A High-Level Derivation of Global Search Algorithms
                  (with Constraint Propagation)",
  journal =	 "Science of Computer Programming",
  volume =	 28,
  number =	 "2-3",
  pages =	 "247-271",
  year =	 1997,
  url =		 "citeseer.ist.psu.edu/pepper96highlevel.html"
}

@inproceedings{Cousot1977AbstractInterpretation,
  author =	 {Patrick Cousot and Radhia Cousot},
  title =	 {Abstract interpretation: a unified lattice model for
                  static analysis of programs by construction or
                  approximation of fixpoints},
  booktitle =	 {POPL '77: Proceedings of the 4th ACM SIGACT-SIGPLAN
                  symposium on Principles of programming languages},
  year =	 1977,
  pages =	 {238--252},
  location =	 {Los Angeles, California},
  doi =		 {http://doi.acm.org/10.1145/512950.512973},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Johnsson1985LambdaLifting,
  author =	 {Thomas Johnsson},
  title =	 {Lambda lifting: transforming programs to recursive
                  equations},
  booktitle =	 {Proceedings of the International Conference of
                  Functional programming languages and computer
                  architecture},
  publisher =	 SV,
  volume =	 201,
  series =	 LNCS,
  year =	 1985,
  url =		 {citeseer.ist.psu.edu/johnsson85lambda.html}
}

@article{ PeytonJones1998Transformationbased,
  author =	 "Simon L. {Peyton Jones} and Andr{\'e} L. M. Santos",
  title =	 "A transformation-based optimiser for {Haskell}",
  journal =	 "Science of Computer Programming",
  volume =	 32,
  number =	 "1--3",
  pages =	 "3--47",
  year =	 1998,
  url =
                  "citeseer.ist.psu.edu/peytonjones98transformationbased.html"
}

@inproceedings{ PeytonJones1996Compiling,
  author =	 "Simon L. Peyton Jones",
  title =	 "Compiling Haskell by Program Transformation: A
                  Report from the Trenches",
  booktitle =	 "European Symposium on Programming",
  pages =	 "18-44",
  year =	 1996,
  url =		 "citeseer.ist.psu.edu/peytonjones96compiling.html"
}

@inproceedings{Backus1973SemanticsApplicative,
  author =	 {John Backus},
  title =	 {Programming language semantics and closed
                  applicative languages},
  booktitle =	 {POPL '73: Proceedings of the 1st annual ACM
                  SIGACT-SIGPLAN symposium on Principles of
                  programming languages},
  year =	 1973,
  pages =	 {71--86},
  location =	 {Boston, Massachusetts},
  doi =		 {http://doi.acm.org/10.1145/512927.512934},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@phdthesis{Santos1995PhD,
  author =	 "Santos, Andr\'e",
  title =	 "{C}ompilation by {T}ransformation in {N}on-{S}trict
                  {F}unctional {L}anguages",
  year =	 1995,
  url =		 "citeseer.ist.psu.edu/santos95compilation.html"
}

@inproceedings{Augustsson1993ImplementingOverloading,
  author =	 {Lennart Augustsson},
  title =	 {Implementing {Haskell} overloading},
  booktitle =	 {FPCA '93: Proceedings of the Conference on
                  Functional Programming Languages and Computer
                  Architecture},
  year =	 {1993},
  isbn =	 {0-89791-595-X},
  pages =	 {65--73},
  location =	 {Copenhagen, Denmark},
  doi =		 {http://doi.acm.org/10.1145/165180.165191},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@phdthesis{Hunt1991AbstractInterpretation,
  author =	 "Sebastian Hunt",
  title =	 "{A}bstract {I}nterpretation of {F}unctional
                  {L}anguages: {F}rom {T}heory to {P}ractice",
  school =       {University of London, Imperial College},
  month =	 "October",
  year =	 91,
  url =		 "citeseer.ist.psu.edu/hunt91abstract.html"
}

@TechReport{Pepper2004PowefulParsers,
  author =	 {Peter Pepper},
  title =	 {How To Obtain Powerful Parsers That Are Elegant and
                  Practical},
  institution =	 {Technische Universit{\"a}t Berlin},
  year =	 2004,
  type =	 {Research report},
  number =	 {\mbox{2004-01} in {\em Forschungsberichte Fakult{\"a}t IV
                  -- Elektrotechnik und Informatik}},
  month =	 mar
}

@InProceedings{Bierman2005EssenceDataAccess,
  author =	 {Gavin Bierman and Erik Meijer and Wolfram Schulte},
  title =	 {The essence of data access in C$\omega$ -- The power
                  is in the dot!},
  booktitle =	 {ECOOP'05},
  year =	 2005,
  note =	 {Accepted for publicatio}
}

@InProceedings{Wadler1989HowAdHoc,
  author =	 {P. Wadler and S. Blott},
  title =	 {How to make ad-hoc polymorphism less ad-hoc},
  pages =	 {60--76},
  booktitle =	 {Conference Record of the 16th Annual {ACM} Symposium
                  on Principles of Programming Languages},
  publisher =	 ACM,
  month =	 jan,
  year =	 1989,
  documenturl =
                  {ftp://ftp.dcs.gla.ac.uk/pub/glasgow-fp/authors/Philip_Wadler/how-to-make-ad-hoc-poly-less-ad-hoc.dvi},
  url =		 {citeseer.ist.psu.edu/wadler88how.html}
}

@article{Cmelik1994Shade,
  author =	 "Robert Cmelik and David Keppel",
  title =	 "{S}hade: {A} Fast Instruction-Set Simulator for
                  Execution Profiling",
  journal =	 "ACM SIGMETRICS Performance Evaluation Review",
  volume =	 22,
  number =	 1,
  month =	 "May",
  pages =	 "128--137",
  year =	 1994,
  url =		 "citeseer.ist.psu.edu/article/cmelik93shade.html"
}

@inproceedings{Burke1999Jalapeno,
  author =	 "M. Burke and J. Choi and S. Fink and D. Grove and
                  M. Hind and V. Sarkar and M. Serrano and V. Sreedhar
                  and H. Srinivasan and J. Whaley",
  title =	 "The {Jalape{\~n}o} dynamic optimizing compiler for {Java}",
  booktitle =	 "Proceedings ACM 1999 Java Grande Conference",
  pages =	 "129--141",
  month =	 jun,
  year =	 1999,
  organization = ACM,
  address =	 "San Francisco, CA, United States",
  url =		 "citeseer.ist.psu.edu/burke99jalapentildeo.html",
  url =		 "citeseer.nj.nec.com/burke99jalapentildeo.html"
}

@InProceedings{Stuckey2002TheoryOverloading,
  author =	 {P.~J.~Stuckey and M.~Sulzmann },
  title =	 {A Theory of Overloading},
  booktitle =	 {Proc. of ICFP'02},
  pages =	 {167--178},
  year =	 2002,
  publisher =	 ACM
}

@InProceedings{Jones2000FunDep,
  author =	 {Mark P. Jones},
  title =	 {Type Classes with Functional Dependencies},
  booktitle =	 {Proceedings of the 9th European Symposium on
                  Programming, ESOP 2000},
  year =	 2000,
  volume =	 1782,
  series =	 LNCS,
  address =	 {Berlin, Germany},
  month =	 mar,
  publisher =	 SV
}

@InProceedings{Jones1998FunctionsJava,
  author =	 {Mark P. Jones},
  title =	 {The Functions of Java Bytecode},
  booktitle =	 {Proceedings of the OOPSLA '98 workshop on Formal
                  Underpinnings of Java},
  year =	 1998,
  address =	 {Vancouver, BC, Canada},
  month =	 oct
}

@InProceedings{Jones1995FunctionalProgramming,
  author =	 {Mark P. Jones},
  title =	 {Functional Programming with Overloading and
                  Higher-Order Polymorphism},
  booktitle =	 {First International Spring School on Advanced
                  Functional Programming Techniques},
  pages =	 "97-136",
  year =	 1995,
  volume =	 925,
  series =	 LNCS,
  address =	 {B{\aa}stad, Sweden},
  month =	 may,
  publisher =	 SV
}

@TechReport{Appel1994MakingLambda,
  author =	 {Andrew W. Appel and Trevor Jim},
  title =	 {Making Lambda Calculus Smaller, Faster},
  institution =	 {Princeton University},
  year =	 1994,
  number =	 {CS-TR-477-94},
  month =	 nov
}

@Misc{Kelsey1997PreScheme,
  author =       {Richard Kelsey},
  title =        {Pre-Scheme: A Scheme Dialect for Systems
                  Programming},
  howpublished = {Available from: \url{http://mumble.net/~kelsey},
                  last visisted: 2005-06-06},
  month =        jun,
  year =         1997
}

@InProceedings{Shivers2003CFARetrospect,
  author =	 {Olin Shivers},
  title =	 {Higher-order control-flow analysis in retrospect:
                  Lessons learned, lessons abandoned},
  booktitle =	 {20 years of the ACM/SIGPLAN Conference on
                  Programming Language Design and Implementation
                  (1979--1999): A Selection, 2003},
  year =	 2003
}

@inproceedings{ Steele1994BuildingInterpreters,
  author =	 "Guy L. {Steele, Jr.}",
  title =	 "Building interpreters by composing monads",
  booktitle =	 "Conference record of {POPL} '94, 21st {ACM
                  {SIGPLAN}-{SIGACT}} Symposium on Principles of
                  Programming Languages: Portland, Oregon, January
                  17--21, 1994",
  publisher =	 ACM,
  address =	 "New York, NY, USA",
  editor =	 "{ACM}",
  isbn =	 "0-89791-636-0",
  pages =	 "472--492",
  year =	 1994,
  url =		 "citeseer.ist.psu.edu/steele94building.html"
}

@Article{Morrisett2002STAL,
  author =	 {Greg Morrisett and Karl Crary and Neal Glew and David
                  Walker},
  title =	 {Stack-Based Typed Assembly Language},
  journal =	 {Journal of Functional Programming},
  year =	 2002,
  volume =	 12,
  number =	 1,
  pages =	 {43--88},
  month =	 jan
}

@PhdThesis{Glew2000PhD,
  author =	 {Neal Glew},
  title =	 {Low-Level Type Systems for Modularity and
                  Object-Oriented Constructs},
  school =	 {Cornell University},
  year =	 2000,
  address =	 {4130 Upson Hall, Ithaca, NY 14853-7501, USA},
  month =	 jan
}

@inproceedings	{Greiner1996ProvablyImplementation,
  author =	 "John Greiner and Guy~E. Blelloch",
  title =	 "A Provably Time-Efficient Parallel Implementation of
                  Full Speculation",
  booktitle =	 "Proceedings of the 23rd ACM Symposium on Principles
                  of Programming Languages",
  year =	 1996,
  month =	 jan,
  pages =	 "309--321"
}

@inproceedings	{Blelloch1996ProvableNesl,
  author =	 "Guy~E. Blelloch and John Greiner",
  title =	 "A Provable Time and Space Efficient Implementation
                  of NESL",
  booktitle =	 "ACM SIGPLAN International Conference on Functional
                  Programming",
  year =	 1996,
  month =	 may,
  pages =	 "213--225"
}

@Misc{Harper2004TheoryAndPractice,
  author =       {Robert Harper},
  title =        {Programming Languages: Theory and Practice},
  howpublished = {Available on the World Wide Web:
                  \url{http://www-edlab.cs.umass.edu/cs530/Harper/HarperDec17-2004.pdf},
                  last visited: 2005-06-07},
  month =        dec,
  year =         2004,
  note =         {Draft}
}

@inproceedings{Brassel2005RuntimeProfiling,
  author =	 "B. Brassel and M. Hanus and F. Huch and J. Silva and
                  G. Vidal",
  title =	 "{Runtime Profiling of Functional Logic Programs}",
  booktitle =	 "Logic-based Program Synthesis and Transformation
                  (revised and selected papers from LOPSTR'04)",
  editor =	 "Sandro Etalle",
  publisher =	 "Springer LNCS 3573",
  pages =	 "182-197",
  year =	 2005,
}

@InProceedings{Sansom1995TimeAndSpace,
  author =	 {Patrick M. Sansom and Simon L. {Peyton Jones}},
  title =	 {Time and space profiling for non-strict,
                  higher-order functional languages},
  booktitle =	 {Proceedings of 22nd ACM Symposium on Principles of
                  Programming Languages},
  year =	 1995,
  address =	 {San Francisco},
  month =	 jan
}

@InProceedings{Sansom1993GenerationalGC,
  author =	 {Patrick M. Sansom and Simon L. {Peyton Jones}},
  title =	 {Generational garbage collection for Haskell},
  booktitle =	 {Proceedings of FPCA'93},
  year =	 1993
}

@Misc{Michaelson2003FSM-Hume,
  author =	 {Greg Michaelson and Kevin Hammond and Jocelyn Serot},
  title =	 {FSM-Hume: Programming Resource-Limited Systems using
                  Bounded Automata},
  howpublished = {Available on the World Wide Web: \url{http://www-fp.dcs.st-and.ac.uk/hume/papers/}},
  month =	 aug,
  year =	 2003,
  note =         {Submitted to SAC'04}
}

@InProceedings{Mogensen1992SelfApplicable,
  author =	 {Torben {\AE}. Mogensen},
  title =	 {Self-applicable Partial Evaluation for Pure Lambda
                  Calculus},
  booktitle =	 {ACM SIGPLAN Conference on Partial Evaluation and
                  Semantics-based Program Manipulation},
  year =	 1992
}

@InProceedings{Asai1997PESideEffects,
  author =	 {Kenichi Asai and Hidehiko Masuhara and Akinori
                  Yonezawa},
  title =	 {Partial Evaluation of Call-by-value Lambda-calculus
                  with Side-effects},
  booktitle =	 {ACM SIGPLAN Conference on Partial Evaluation and
                  Semantics-Based Program Manipulation (PEPM '97)},
  year =	 1997,
  month =	 jun
}

@PhdThesis{Amtoft1993Sharing,
  author =	 {Torben Amtoft},
  title =	 {Sharing of Computations},
  school =	 {Computer Science Department, Aarhus University},
  year =	 1993,
  address =	 {Ny Munkegade, DK-8000 {\AA}rhus C, Denmark},
  month =	 aug
}

@inproceedings{Henglein1995SafePolymorphic,
  author =	 {Fritz Henglein and Jakob Rehof},
  title =	 {Safe polymorphic type inference for a dynamically
                  typed language: translating Scheme to ML},
  booktitle =	 {FPCA '95: Proceedings of the seventh international
                  conference on Functional programming languages and
                  computer architecture},
  year =	 1995,
  isbn =	 {0-89791-719-7},
  pages =	 {192--203},
  location =	 {La Jolla, California, United States},
  doi =		 {http://doi.acm.org/10.1145/224164.224203},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Baars2002TypingDynamicTyping,
  author =	 {Arthur I. Baars and S. Doaitse Swierstra},
  title =	 {Typing Dynamic Typing},
  booktitle =	 {ICFP'02},
  year =	 2002,
  address =	 {Pittsburgh, Pennsylvania, USA},
  month =	 oct
}

@PHDTHESIS{Sands1999PhD,
  author = {D. Sands},
  title = {Calculi for Time Analysis of Functional Programs},
  school = {Department of Computing, Imperial College},
  year = {1990},
  address = {University of London},
  month = {September},
  abstract = {Techniques for reasoning about extensional properties of
functional programs are well-understood, but methods for analysing  the
underlying intensional, or operational properties have been much neglected.
This thesis presents the  development of several calculi for time analysis
of functional programs.

We focus on two features, higher-order functions and lazy evaluation, which
contribute much to the expressive power and semantic elegance of
functional languages, but serve to make operational properties more
opaque.

Analysing higher-order functions is problematic because complexity is
dependent not only on the cost of computing, but also on the cost of {\em
applying}\ function-valued expressions.  Techniques for statically deriving
programs which compute time-cost in the presence of arbitrary higher-order
functions are developed. The key to this process is the introduction of
syntactic structures called {\em cost-closures}, which enable intensional
properties to be carried by functions. The approach is formalised by the
construction of an appropriate cost-model, against which the correctness of
the derivation is proved. A specific factorisation tactic for reasoning
about higher-order functions out of context is illustrated.

Reasoning about lazy evaluation (ie call-by-name, or more usually,
call-by-need) is problematic because the cost of evaluating an expression
cannot be understood simply from the costs of its sub-expressions.  A
direct calculus for reasoning about a call-by-name language with lazy lists
is derived from a simple operational model. In order to extend this
calculus with a restricted form of equational reasoning, a nonstandard
notion of operational approximation called {\em cost-simulation} is
developed, by analogy with {\em (bi)simulation} in CCS.

The problem with calculi of the above form, based directly on an
operational model, is that they do not yield a {\em compositional}
description of cost, and cannot model {\em lazy evaluation}
(graph-reduction) easily. We show how a description of the {\em context} in
which a function is evaluated can be used to parameterise two types of
time-equation: {\em sufficient-time} equations and {\em necessary-time}
equations, which together provide bounds on the exact time-cost of lazy
evaluation.  This approach is extended to higher-order functions using a
modification of the cost-closure technique.},
  ps = {http://www.cs.chalmers.se/~dave/papers/PhDthesis.ps},
}

@Book{Rabhi1999Algorithms,
  author =	 {Fethi Rabhi and Guy Lapalme},
  title =	 {Algorithms -- A Functional Language Approach},
  publisher =	 AW,
  year =	 1999
}

@TechReport{Shivers2004BottomUpBetaSubstitution,
  author = 	 {Olin Shivers and Mitchell Wand},
  title = 	 {Bottum-Up $\beta$-Substitution: Uplinks and $\lambda$-DAGs},
  institution =  {BRICS, Department of Computer Science, University of Aarhus},
  year = 	 2004,
  number =	 {RS-04-38},
  month =	 dec
}


@InProceedings{Wakeling1995ThrowAway,
  author =	 {D. Wakeling},
  title =	 {A Throw-Away Compiler for a Lazy Functional
                  Language},
  booktitle =	 {Proceedings of the Fuji International Workshop on
                  Functional and Logic Programming},
  pages =	 {287--300},
  year =	 1995,
  month =	 jul,
  organization = {World Scientific}
}

@InProceedings{Pil1996FileIO,
  author =	 {Marco Pil},
  title =	 {First Class File I/O},
  booktitle =	 {Proceedings of IFL'96},
  year =	 1996,
  series =	 LNCS,
  publisher =	 SV
}

@Misc{LeoneDeferredCompilation,
  author =       {Mark Leone and Peter Lee},
  title =        {Deferred compilation: The automation of run-time
                  code generation},
  howpublished = {Available from:
                  \url{http://www-2.cs.cmu.edu/~petel/papers/staged/deferred-comp.ps}}
}

@InProceedings{Cridlig1992OptimizingMLCompiler,
  author =	 {R{\'e}gis Cridlig},
  title =	 {An optimizing ML to C compiler},
  booktitle =	 {ACM SIGPLAN '92 Workshop on ML and its applications},
  year =	 1992
}

@TechReport{Ducasse1995ProgrammingEnvironments,
  author =	 {Mirielle Ducass{\'e} and Jacques Noy{\'e}},
  title =	 {Logic Programming Environments: Dynamic Program
                  Analysis and Debugging},
  institution =	 {INRIA},
  year =	 1995,
  type =	 {Rapport de recherche},
  number =	 {N${}^{\rm o}$2618},
  month =	 jul
}

@article{Dornic1992PolymorphicTimeSystems,
  author =	 {Vincent Dornic and Pierre Jouvelot and David
                  K. Gifford},
  title =	 {Polymorphic time systems for estimating program
                  complexity},
  journal =	 {ACM Lett. Program. Lang. Syst.},
  volume =	 1,
  number =	 1,
  year =	 1992,
  issn =	 {1057-4514},
  pages =	 {33--45},
  doi =		 {http://doi.acm.org/10.1145/130616.130620},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Danvy1992CPSTransformation,
  author =	 {Olivier Danvy and John Hatcliff},
  title =	 {CPS-transformation after strictness analysis},
  journal =	 {ACM Lett. Program. Lang. Syst.},
  volume =	 1,
  number =	 3,
  year =	 1992,
  issn =	 {1057-4514},
  pages =	 {195--212},
  doi =		 {http://doi.acm.org/10.1145/151640.151641},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Moreau2005ResourceAwareProgramming,
  author =	 {Luc Moreau and Christian Queinnec},
  title =	 {Resource aware programming},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 27,
  number =	 3,
  year =	 2005,
  issn =	 {0164-0925},
  pages =	 {441--476},
  doi =		 {http://doi.acm.org/10.1145/1065887.1065891},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Chitil2005PrettyPrinting,
  author =	 {Olaf Chitil},
  title =	 {Pretty printing with lazy dequeues},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 27,
  number =	 1,
  year =	 2005,
  issn =	 {0164-0925},
  pages =	 {163--184},
  doi =		 {http://doi.acm.org/10.1145/1053468.1053473},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{MacLachlan1992PythonCompiler,
  author =	 {Robert A. MacLachlan},
  title =	 {The Python compiler for CMU Common Lisp},
  booktitle =	 {LFP '92: Proceedings of the 1992 ACM conference on
                  LISP and functional programming},
  year =	 1992,
  isbn =	 {0-89791-481-3},
  pages =	 {235--246},
  location =	 {San Francisco, California, United States},
  doi =		 {http://doi.acm.org/10.1145/141471.141558},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Frauenstein1996CommunicatingAgents,
  author =	 {Thomas Frauenstein and Wolfgang Grieskamp and Peter
                  Pepper and Mario S{\"u}dholt},
  title =	 {Communicating Functional Agents and their
                  Application to Graphical User Interfaces},
  booktitle =	 {Proceedings of the 2nd International Conference on
                  Perspectives of System Informatics},
  year =	 1996,
  address =	 {Novosibirsk},
  month =	 jun
}

@MastersThesis{Schroeder1994Striktheit,
  author =	 {Jacob Schr{\"o}der},
  title =	 {{Entwurf und Implementierung eines
                  N{\"a}herungsverfahrens f{\"u}r Striktheitsanalyse}},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 1994,
  type =	 {Studienarbeit},
  month =	 may
}

@MastersThesis{Karatschai1998SharingAnalyse,
  author =	 {Olaf Karatschai},
  title =	 {Statische Sharing-Analyse zur Optimierung von
                  Zwischencode einer funktionalen Programmiersprache},
  school =	 {Technische Universit{\"a}t Berlin},
  year =	 1998,
  type =	 {Diplomarbeit},
  month =	 jul
}

@Article{HallOverloadingEvaluators,
  author =	 {Cordelia V. Hall},
  title =	 {Using Overloading to Express Distinctions Between
                  Evaluators},
  journal =	 {Information Processing Letters},
  number =	 48,
  pages =	 {1--8},
  year =	 1993,
  note =	 {To appear}
}

@inproceedings{Stoyle2005MutatisMutandis,
  author =	 {Gareth Stoyle and Michael Hicks and Gavin Bierman
                  and Peter Sewell and Iulian Neamtiu},
  title =	 {Mutatis mutandis: safe and predictable dynamic
                  software updating},
  booktitle =	 {POPL '05: Proceedings of the 32nd ACM SIGPLAN-SIGACT
                  Symposium on Principles of Programming Languages},
  year =	 2005,
  isbn =	 {1-58113-830-X},
  pages =	 {183--194},
  location =	 {Long Beach, California, USA},
  doi =		 {http://doi.acm.org/10.1145/1040305.1040321},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Hope2005AccurateStepCounting,
  author =	 {Catherine Hope and Graham Hutton},
  title =	 {Accurate Step Counting},
  booktitle =	 {Proceedings of the 17th International Workshop on
                  Implementation and Application of Functional
                  Languages},
  year =	 2005,
  address =	 {Dublin, Ireland}
}

@InProceedings{Oliviera2005TypeCase,
  author =	 {Bruno C. d. S. Oliviera and Jeremy Gibbons},
  title =	 {{TypeCase}: A design pattern for type-indexed
                  Functions},
  booktitle =	 {Haskell Workshop},
  year =	 2005,
  note =	 {Submitted for publication}
}

@InProceedings{Hallgren2004OverviewProgramatica,
  author =	 {Thomas Hallgren and James Hook and Mark P. Jones and
                  Dick Kieburtz},
  title =	 {An Overview of the Programatica ToolSet},
  booktitle =	 {HCSS04},
  year =	 2004
}

@Misc{CardelliImplementing,
  author =       {Luca Cardelli},
  title =        {Implementing Functional Languages},
  howpublished = {Available from:
                  \url{http://research.microsoft.com/Users/luca/Papers/CompilingML.pdf}}
}

@Book{Turbak2005ConceptsPL,
  author =	 {Franklyn Turbak and David Gifford and Mark Sheldon},
  title =	 {Design Concepts in Programming Languages},
  publisher =	 {Internal},
  year =	 2005,
  note =	 {Draft version of 2005-07-01}
}

@article{Lampson1983Hints,
  author =	 {Butler W. Lampson},
  title =	 {Hints for computer system design},
  journal =	 {SIGOPS Oper. Syst. Rev.},
  volume =	 17,
  number =	 5,
  year =	 1983,
  issn =	 {0163-5980},
  pages =	 {33--48},
  doi =		 {http://doi.acm.org/10.1145/773379.806614},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Massalin1987Superoptimizer,
  author =	 {Henry Massalin},
  title =	 {Superoptimizer: a look at the smallest program},
  journal =	 {SIGOPS Oper. Syst. Rev.},
  volume =	 21,
  number =	 4,
  year =	 1987,
  issn =	 {0163-5980},
  pages =	 {122--126},
  doi =		 {http://doi.acm.org/10.1145/36204.36194},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Steenkiste1987Tags,
  author =	 {Peter Steenkiste and John Hennessy},
  title =	 {Tags and type checking in LISP: hardware and
                  software approaches},
  journal =	 {SIGOPS Oper. Syst. Rev.},
  volume =	 21,
  number =	 4,
  year =	 1987,
  issn =	 {0163-5980},
  pages =	 {50--59},
  doi =		 {http://doi.acm.org/10.1145/36204.36183},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Dodge2005Initialization,
  author =	 {Catherine Dodge and Cynthia Irvine and Thuy Nguyen},
  title =	 {A study of initialization in Linux and OpenBSD},
  journal =	 {SIGOPS Oper. Syst. Rev.},
  volume =	 39,
  number =	 2,
  year =	 2005,
  issn =	 {0163-5980},
  pages =	 {79--93},
  doi =		 {http://doi.acm.org/10.1145/1055218.1055226},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Book{Berkeley1966LISP,
  editor =	 {Edmund C. Berkeley and Daniel G. Bobrow},
  title =	 {The Programming Language LISP: Its Operation and
                  Applications},
  publisher =	 MIT,
  year =	 1966
}

@Book{McCarthy1962LISP15,
  author =	 {John McCarthy and Paul W. Abrahams and Daniel J
                  Edwards and Timothy P. Hart and Michael I. Levin},
  title =	 {LISP 1.5 Programmer's Manual},
  publisher =	 MIT,
  year =	 1962
}

@InProceedings{Meijer2004StaticDynamic,
  author =	 {Erik Meijer and Peter Drayton},
  title =	 {Static Typing Where Possible, Dynamic Typing When
                  Needed: The End of the Cold War Between Programming
                  Languages},
  booktitle =	 {Revival of Dynamic Languages '04},
  year =	 2004,
  note =	 {Intended for submission}
}

@article{Ditzel1982CMachineStackCache,
  author =	 {David R. Ditzel and H. R. McLellan},
  title =	 {{Register allocation for free: The C machine stack
                  cache}},
  journal =	 {SIGPLAN Notices},
  volume =	 17,
  number =	 4,
  year =	 1982,
  issn =	 {0362-1340},
  pages =	 {48--56},
  doi =		 {http://doi.acm.org/10.1145/960120.801825},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Steenkiste1988LISPonRISC,
  author =	 {Peter Steenkiste and John Hennessy},
  title =	 {Lisp on a Reduced-Instruction-Set Processor:
                  Characterization and Optimization},
  journal =	 {Computer},
  volume =	 21,
  number =	 7,
  year =	 1988,
  issn =	 {0018-9162},
  pages =	 {34--45},
  doi =		 {http://dx.doi.org/10.1109/2.67},
  publisher =	 {IEEE Computer Society Press},
  address =	 {Los Alamitos, CA, USA},
}

@MastersThesis{Alanko2004TypesReflection,
  author =	 {Lauri E. Alanko},
  title =	 {Types and Reflection},
  school =	 {University of Helsinki, Department of Computer
                  Science},
  year =	 2004,
  month =	 nov
}

@InProceedings{Leone1996DeclarativeApproach,
  author =	 {Mark Leone and Peter Lee},
  title =	 {A declarative appoach to run-time code generation},
  booktitle =	 {Workshop on Compiler Support for System Software
                  (WCSSS)},
  year =	 1996
}

@Article{Hornof1999CertifyingRuntimeCG,
  author =	 {Luke Hornof and Trevor Jim},
  title =	 {Certifying Compilation and Run-time Code Generation},
  journal =	 {Higher-Order and Symbolic Computation},
  year =	 1999,
  volume =	 12,
  number =	 4,
  pages =	 {337--375},
  month =	 dec
}

@inproceedings{Hicks1993StorageReclamation,
  author =	 {James Hicks},
  title =	 {Experiences with compiler-directed storage
                  reclamation},
  booktitle =	 {FPCA '93: Proceedings of the conference on
                  Functional programming languages and computer
                  architecture},
  year =	 1993,
  isbn =	 {0-89791-595-X},
  pages =	 {95--105},
  location =	 {Copenhagen, Denmark},
  doi =		 {http://doi.acm.org/10.1145/165180.165194},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Sekar2003ModelCarrying,
  author =	 {R. Sekar and V.N. Venkatakrishnan and Samik Basu and
                  Sandeep Bhatkar and Daniel C. DuVarney},
  title =	 {Model-carrying code: a practical approach for safe
                  execution of untrusted applications},
  booktitle =	 {SOSP '03: Proceedings of the nineteenth ACM
                  symposium on Operating systems principles},
  year =	 2003,
  isbn =	 {1-58113-757-5},
  pages =	 {15--28},
  location =	 {Bolton Landing, NY, USA},
  doi =		 {http://doi.acm.org/10.1145/945445.945448},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Ghemawat2003GoogleFileSystem,
  author =	 {Sanjay Ghemawat and Howard Gobioff and Shun-Tak
                  Leung},
  title =	 {The Google file system},
  booktitle =	 {SOSP '03: Proceedings of the nineteenth ACM
                  symposium on Operating systems principles},
  year =	 2003,
  isbn =	 {1-58113-757-5},
  pages =	 {29--43},
  location =	 {Bolton Landing, NY, USA},
  doi =		 {http://doi.acm.org/10.1145/945445.945450},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Cooper2005ACME,
  author =	 {Keith D. Cooper and Alexander Grosul and Timothy
                  J. Harvey and Steven Reeves and Devika Subramanian
                  and Linda Torczon and Todd Waterman},
  title =	 {ACME: adaptive compilation made efficient},
  journal =	 {SIGPLAN Notices},
  volume =	 40,
  number =	 7,
  year =	 2005,
  issn =	 {0362-1340},
  pages =	 {69--77},
  doi =		 {http://doi.acm.org/10.1145/1070891.1065921},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Hertz2005GCwithoutPaging,
  author =	 {Matthew Hertz and Yi Feng and Emery D. Berger},
  title =	 {Garbage collection without paging},
  journal =	 {SIGPLAN Notices},
  volume =	 40,
  number =	 6,
  year =	 2005,
  issn =	 {0362-1340},
  pages =	 {143--153},
  doi =		 {http://doi.acm.org/10.1145/1064978.1065028},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Nierstrasz2005DynamicLang,
  author =	 {Oscar Nierstrasz and Alexandre Bergel and Marcus
                  Denker and St{\'e}phane Ducasse and Markus G{\"a}lli
                  and Roel Wuyts},
  title =	 {On the Revival of Dynamic Languages},
  booktitle =	 {Proceedings Software Composition 2005},
  year =	 2005,
  editor =	 {Thomas Gschwind and Uwe A{\ss}mann},
  volume =	 2005,
  series =	 {LNCS},
  note =         {To appear}
}

@Book{PeytonJones1991Implementing,
  author =	 {Simon L. {Peyton Jones} and David R. Lester},
  title =	 {Implementing Functional Languages: a tutorial},
  publisher =	 {University of Glasgow and University of Manchester},
  year =	 1991
}

@InProceedings{Mucha2004LambdaLiftingScheme,
  author =	 {Barbara Mucha and Marco T. Moraz{\'a}n},
  title =	 {Lambda-Lifting Scheme Programs},
  booktitle =	 {Proceedings of Mid-Atlantic Student Workshop on
                  Programming Languages and Systems},
  year =	 2004,
  organization = {Seton Hall University}
}

@InProceedings{Morazan2003TowardsDVMFriendly,
  author =	 {Marco T. Moraz{\'a}n},
  title =	 {Towards DVM Friendly First-Class Functions},
  booktitle =	 {Draft Proceedings of TFP 2003 Fourth symposium on
                  Trends in Functional Programming},
  year =	 2003,
  address =	 {Edinburgh, Scotland},
  month =	 sep
}

@Misc{MLton2006MLtonHomepage,
  author =       {{MLton Developers}},
  title =        {{MLton Standard ML Compiler Homepage}},
  howpublished = {Available from: \url{http://mlton.org}},
  year =         2006,
  note =         {Last visited: 2008-10-07}
}

@Misc{Bigloo2008BiglooHomepage,
  author =       {{Bigloo Developers}},
  title =        {{Bigloo Homepage}},
  howpublished = {Available from:
                  \url{http://www-sop.inria.fr/mimosa/fp/Bigloo/}},
  year =         2008,
  note =         {Last visited: 2008-10-07}
}

@Misc{Sun2008JDK5Homepage,
  author =       {{Sun, Inc.}},
  title =        {{Java SE Downloads - Previous Release - J2SE 5.0}},
  howpublished = {Available from:
                  \url{http://java.sun.com/javase/downloads/index_jdk5.jsp}},
  year =         2008,
  note =         {Last visited: 2008-10-07}
}

@Misc{Opal2004OpalHomepage,
  author =	 {{Opal Group}},
  title =	 {{Opal Project Homepage}},
  howpublished = {Available from: \url{http://uebb.cs.tu-berlin.de/~opal}},
  year =	 2004,
  note =         {Last visited: 2008-10-07}
}

@Misc{GHC2006GHCHomepage,
  author =	 {{GHC Developers}},
  title =	 {{Glasgow Haskell Compiler Homepage}},
  howpublished = {Available from: \url{http://www.haskell.org/ghc}},
  year =	 2008,
  note =         {Last visited: 2008-10-07}
}

@Misc{Hugs2006HugsHomepage,
  author =	 {{Hugs Developers}},
  title =	 {{Hugs Homepage}},
  howpublished = {Available from: \url{http://www.haskell.org/hugs}},
  year =	 2006,
  note =         {Last visited: 2006-09-19}
}

@Misc{GCC2005GCCHomepage,
  author =	 {{GCC Developers}},
  title =	 {{GNU Compiler Collection Homepage}},
  howpublished = {Available from: \url{http://gcc.gnu.org}},
  year =	 2008,
  note =         {Last visited: 2008-10-07}
}

@Misc{Siskind2005Software,
  author =       {Jeffrey Mark Siskind},
  title =        {{Jeffrey Mark Siskind's Software}},
  howpublished = {Available from:
                  \url{http://www.ece.purdue.edu/~qobi/software.html}},
  year =         2005,
  note =         {Last visited: 2005-08-04}
}

@inproceedings{Ganz1999Trampolined,
  author =	 "Steven E. Ganz and Daniel P. Friedman and Mitchell
                  Wand",
  title =	 "Trampolined Style",
  booktitle =	 "International Conference on Functional Programming",
  pages =	 "18-27",
  year =	 1999,
  url =		 "citeseer.ist.psu.edu/ganz99trampolined.html"
}


@inproceedings{Garrido2002RefactoringC,
  author =	 {Alejandra Garrido and Ralph Johnson},
  title =	 {Challenges of refactoring C programs},
  booktitle =	 {IWPSE '02: Proceedings of the International Workshop
                  on Principles of Software Evolution},
  year =	 2002,
  isbn =	 {1-58113-545-9},
  pages =	 {6--14},
  location =	 {Orlando, Florida},
  doi =		 {http://doi.acm.org/10.1145/512035.512039},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Book{Hyde2003AoAL,
  author =	 {Randall Hyde},
  title =	 {The Art of Assembly Language},
  publisher =	 {No Starch Press},
  year =	 2003,
  month =	 sep
}

@Book{Aaby2003CompilerConstruction,
  author =	 {Anthony Aaby},
  title =	 {Compiler Construction using Flex and Bison},
  publisher =	 {WWW},
  year =	 2003
}

@Book{Graham1993OnLisp,
  author =	 {Paul Graham},
  title =	 {On Lisp},
  publisher =	 PH,
  year =	 1993
}

@Book{Finseth1991Craft,
  author =       {Craig A. Finseth},
  title =        {The Craft of Text Editing -- Emacs for he Modern
                  World},
  publisher =    SV,
  year =         1991,
  note =         {Available from: \url{http://www.finseth.com/craft}}
}

@Book{Hailperin1999ConcreteAbstractions,
  author =	 {Max Hailperin and Barbara Kaiser and Karl Knight},
  title =	 {Concrete Abstractions: An Introduction to Computer
                  Science Using Scheme},
  publisher =	 {Brooks/Cole Publishing Company},
  year =	 1999
}

@InProceedings{Norrish2002RigourIsGood,
  author =	 {Michael Norrish and Peter Sewell and Keith
                  Wansbrough},
  title =	 {Rigour is good for you and feasible: reflections on
                  formal treatments of C and UDP sockets},
  booktitle =	 {Tenth ACM SIGOPS European Workshop: Can We Really
                  Depend on an OS?},
  year =	 2002,
  month =	 sep
}

@PhdThesis{Norrish1998PhD,
  author =	 {Michael Norrish},
  title =	 {C formalised in HOL},
  school =	 {Computer Laboratory, University of Cambridge},
  year =	 1998
}

@InProceedings{Umeda2005MultiThreading,
  author =	 {Masanobu Umeda and Keiichi Katamine and Isao
                  Nagasawa and Masaaki Hashimoto and Osamu Takata},
  title =	 {Multi-Threading Inside Prolog for Knowledge-Based
                  Enterprise Applications},
  booktitle =	 {Proceedings of 16th International Conference on
                  Applications of Declarative Programming and
                  Knowledge Management INAP2005},
  year =	 2005,
  address =	 {Waseda University, Fukuoka, Japan},
  month =	 oct,
  note =	 {Submitted}
}

@TechReport{Grabmueller2006ImplementingClosures,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Implementing Closures using Run-time Code
                  Generation}},
  institution =	 {Technische Universit{\"a}t Berlin},
  year =	 2006,
  type =	 {Research report},
  number =	 {\mbox{2006-02} in {\em Forschungsberichte Fakult{\"a}t IV
                  -- Elektrotechnik und Informatik}},
  month =	 feb,
  abstract =	 {This report describes an implementation of a purely
                  functional strict programming language which relies
                  heavily on run-time code generation. Closures are
                  not implemented as data structures containing code
                  pointers and bindings for free variables, but
                  instead by generating the machine code for a closure
                  each time it is constructed. The actual values of
                  free variables are embedded into the machine code
                  instead of using references to a closure record. The
                  goal of this experimental implementation is to
                  examine the possibilities of run-time code
                  generation -- and just-in-time compilation in
                  general -- in the context of purely functional
                  languages. The implementation details are described
                  and the performance of several example programs is
                  measured and compared to other functional language
                  implementations. }
}

@InProceedings{Grabmueller2006GenericFPDynOpt,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {A Generic Model of Functional Programming With
                  Dynamic Optimization},
  booktitle =	 {Draft Proceedings of the Seventh Symposium on Trends
                  in Functional Programming (TFP 2006)},
  year =	 2006,
  editor =	 {Henrik Nilsson},
  month =	 apr,
  publisher =	 {University of Nottingham},
  abstract =	 {Modern virtual machines for object-oriented machines
                  use dynamic (run-time) compilation in order to
                  ensure fast execution while maintaining security and
                  portability of program code. Several virtual machine
                  implementations using this compilation model have
                  been implemented and are successfully used in
                  practice, but to date no formal model of program
                  execution and dynamic compilation has been
                  published. This paper presents a formal framework
                  for describing dynamically optimizing virtual
                  machines in the context of purely functional
                  programming languages. }
}

@InProceedings{Grabmueller2007ModelFPDynCompOpt,
  author =       {Martin Grabm{\"u}ller},
  title =        {A Model of Functional Programming With Dynamic
                  Compilation and Optimization},
  booktitle =    {Trends in Functional Programming},
  year =         2007,
  editor =       {Henrik Nilsson},
  volume =       7,
  month =        apr,
  publisher =    {Intellect},
  abstract =     {Modern virtual machines for object-oriented
                  languages use dynamic (run-time) compilation in
                  order to ensure fast execution while maintaining
                  security and portability of program code. Several
                  virtual machine implementations using this
                  compilation model have been implemented and are
                  successfully used in practice, but have rarely been
                  used in the implementation of functional
                  languages. This paper presents a framework for
                  describing dynamically optimizing virtual machines
                  in the context of purely functional programming
                  languages.}
}

@article{Wegman1986POPLRefree,
  author =	 {M. N. Wegman},
  title =	 {What it's like to be a POPL referee; or how to write
                  an extended abstract so that it is more likely to be
                  accepted},
  journal =	 {SIGPLAN Notices},
  volume =	 21,
  number =	 5,
  year =	 1986,
  issn =	 {0362-1340},
  pages =	 {91--95},
  doi =		 {http://doi.acm.org/10.1145/14947.14955},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Levin1983SOSPSubmissions,
  author =	 {Roy Levin and David D. Redell},
  title =	 {An Evaluation of the Ninth SOSP Submissions or How
                  (and How Not) to Write a Good Systems Paper},
  journal =	 {Operating Systems Review},
  volume =	 17,
  number =	 3,
  year =	 1983,
  pages =	 {35--40},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Misc{Pike2005Sawzall,
  author =       {Rob Pike and Sean Dorward and Robert Griesemer and
                  Sean Quinlan},
  title =        {Interpreting the Data: Parallel Analysis with
                  Sawzall},
  howpublished = {Available from:
                  \url{http://labs.google.com/papers/sawzall.html}},
  month =        aug,
  year =         2005,
  note =         {Draft submitted to {\em Scientific Programming
                  Journal} Special Issue on Grids and Worldwide
                  Computing Programming Models and Infrastructure}
}

@inproceedings{Haahr1993EsHOShell,
  author =	 "Paul Haahr and Byron Rakitzis",
  title =	 "Es: A shell with higher-order functions",
  booktitle =	 "{USENIX} Winter",
  pages =	 "51-60",
  year =	 1993,
  url =		 "citeseer.ist.psu.edu/haahr93es.html"
}

@inproceedings{Dean1994InliningTrials,
  author =	 "Jeffrey Dean and Craig Chambers",
  title =	 "Towards Better Inlining Decisions Using Inlining
                  Trials",
  booktitle =	 "Conference on {LISP} and Functional Programming",
  pages =	 "273-282",
  year =	 1994,
  url =		 "citeseer.ist.psu.edu/195684.html"
}

@misc{ Scales2000SwiftJavaCompiler,
  author =	 "D. Scales and K. Randall and S. Ghemawat and
                  J. Dean",
  title =	 "The Swift Java Compiler: Design and Implementation",
  text =	 "D. J. Scales, K. H. Randall, S. Ghemawat, and
                  J. Dean. The Swift Java Compiler: Design and
                  Implementation. Technical Report 2000/2, Compaq
                  Western Research Laboratory, Apr. 2000.",
  year =	 2000,
  url =		 "citeseer.ist.psu.edu/scales00swift.html"
}

@InProceedings{Consel1993PartialEvaluation,
  author =	 {Charles Consel and Olivier Danvy},
  title =	 {Partial Evaluation: Principles and Perspectives},
  booktitle =	 {Proceedings of the Twentieth Annual ACM
                  SIGPLAN-SIGACT Symposium on Principles of
                  Programming Languages},
  year =	 1993,
  month =	 jan,
  publisher =	 ACM
}

@InProceedings{Zhu2005StatefulViews,
  author =	 {Dengping Zhu and Hongwei Xi},
  title =	 {Safe Programming with Pointers Through Stateful
                  Views},
  booktitle =	 {Practical Aspects of Declarative Languages: 7th
                  International Symposium (PADL 2005)},
  pages =	 {83--97},
  year =	 2005,
  editor =	 {Manuel Hermenegildo and Daniel Cabeza},
  volume =	 3350,
  series =	 LNCS,
  address =	 {Long Beach, CA, USA},
  month =	 jan
}

@InProceedings{Alimarine2005ImprovedFusion,
  author =	 {Artem Alimarine and Sjaak Smetsers},
  title =	 {Improved Fusion for Optimizing Generics},
  booktitle =	 {Practical Aspects of Declarative Languages: 7th
                  International Symposium (PADL 2005)},
  pages =	 {203--218},
  year =	 2005,
  editor =	 {Manuel Hermenegildo and Daniel Cabeza},
  volume =	 3350,
  series =	 LNCS,
  address =	 {Long Beach, CA, USA},
  month =	 jan
}

@article{Findler2004Slidewhow,
  author =	 {Robert Bruce Findler and Matthew Flatt},
  title =	 {Slideshow: functional presentations},
  journal =	 {SIGPLAN Notices},
  volume =	 39,
  number =	 9,
  year =	 2004,
  issn =	 {0362-1340},
  pages =	 {224--235},
  doi =		 {http://doi.acm.org/10.1145/1016848.1016880},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Sheard2004LanguagesFuture,
  author =	 {Tim Sheard},
  title =	 {Languages of the future},
  journal =	 {SIGPLAN Notices},
  volume =	 39,
  number =	 12,
  year =	 2004,
  issn =	 {0362-1340},
  pages =	 {119--132},
  doi =		 {http://doi.acm.org/10.1145/1052883.1052897},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Sheard2003PureLanguage,
  author =	 {Tim Sheard},
  title =	 {A Pure Language with Default Strict Evaluation Order
                  and Explicit Laziness},
  booktitle =	 {Haskell Workshop 03},
  year =	 2003,
  note =	 {Submitted}
}

@InProceedings{Jones1999THiH,
  author =	 {Mark P. Jones},
  title =	 {{Typing Haskell in Haskell}},
  booktitle =	 {Proceedings of the 1999 Haskell Workshop},
  year =	 1999,
  note =	 {Published in Technical Report UU-CS-1999-28,
                  Department of Computer Science, University of
                  Utrecht}
}

@PhdThesis{Briggs1992PhD,
  author =	 {Preston Briggs},
  title =	 {Register Allocation via Graph Coloring},
  school =	 {Rice University},
  year =	 1992,
  month =	 apr
}

@article{Cooper2001OperatorStrength,
  author =	 {Keith D. Cooper and L. Taylor Simpson and
                  Christopher A. Vick},
  title =	 {Operator strength reduction},
  journal =	 {Transactions on Programming Languages and Systems},
  volume =	 23,
  number =	 5,
  pages =	 {603--625},
  year =	 2001,
}

@Article{Leucker2005FPVerification,
  author =	 {Martin Leucker and Thomas Noll and Perdita Stevens
                  and Michael Weber},
  title =	 {Functional programming languages for verification
                  tools: a comparison of Standard ML and Haskell},
  journal =	 {International Journal on Software Tools for
                  Technology Transfer (STTT)},
  year =	 2005,
  volume =	 7,
  number =	 2,
  pages =	 {184--194},
  month =	 apr
}

@article{Chow1988Minimizing,
  author =	 {F. C. Chow},
  title =	 {Minimizing register usage penalty at procedure
                  calls},
  journal =	 {SIGPLAN Notices},
  volume =	 23,
  number =	 7,
  year =	 1988,
  issn =	 {0362-1340},
  pages =	 {85--94},
  doi =		 {http://doi.acm.org/10.1145/960116.53999},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Robinson2001Economics,
  author =	 {Arch D. Robinson},
  title =	 {The Impact of Economics on Compiler Optimization},
  booktitle =	 {Proceedings of the ACM 2001 Java Grande Conference},
  year =	 2001,
  month =	 jun
}

@inproceedings{Lu1997RegisterPromotion,
  author =	 {John Lu and Keith D. Cooper},
  title =	 {Register promotion in C programs},
  booktitle =	 {PLDI '97: Proceedings of the ACM SIGPLAN 1997
                  conference on Programming language design and
                  implementation},
  year =	 1997,
  isbn =	 {0-89791-907-6},
  pages =	 {308--319},
  location =	 {Las Vegas, Nevada, United States},
  doi =		 {http://doi.acm.org/10.1145/258915.258943},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Hannan2005HOUncurrying,
  abstract =	 { We present a formal specification of unCurrying for
                  a higher-order, functional language with ML-style
                  let-polymorphism. This specification supports the
                  general unCurrying of functions, even for functions
                  that are passed as arguments or returned as
                  values. The specification also supports partial
                  unCurrying of any consecutive parameters of a
                  function, rather than only unCurrying all of a
                  function's parameters. We present the specification
                  as a deductive system that axiomatizes a judgment
                  relating a source term with an unCurried form of the
                  term. We prove that this system relates only typable
                  terms and that it is correct with respect to an
                  operational semantics. We define a practical
                  algorithm, based on algorithm W, that implements
                  unCurrying and prove this algorithm sound and
                  complete with respect to the deductive system. This
                  algorithm generates maximally unCurried forms of
                  source terms. These results provide a declarative
                  framework for reasoning about unCurrying and support
                  a richer form of unCurrying than is currently found
                  in compilers for functional languages. },
  author =	 {John Hannan and Patrick Hicks},
  date-modified ={2005-06-20 13:40:45 -0400},
  journal =	 {Journal of Higher Order and Symbolic Computation},
  pdf =
                  {http://www.cse.psu.edu/~phicks/pubs/papers/HOUncurryingJournal.pdf},
  number =	 3,
  pages =	 {179--216},
  title =	 {Higher-Order Uncurrying},
  volume =	 13,
  year =	 2000
}

@inproceedings{Hannan1998ArityRaising,
  abstract =	 {Arity raising, also known as variable splitting or
                  flattening, is the program optimization which
                  transforms a function of one argument into a
                  function of several arguments by decomposing the
                  structure of the original one argument into
                  individual components in that structure. This
                  optimization eliminates the need for the structuring
                  of the components and also allows more arguments to
                  be passed in registers during a function call. We
                  present a formal specification of arity raising for
                  a higher-order functional language. This
                  specification supports the general arity raising of
                  functions, even for functions which are passed as
                  arguments or returned as values. We define a
                  practical algorithm, based on algorithm W, which
                  implements arity raising, and we prove this
                  algorithm sound with respect to the deductive
                  system. These results provide a declarative
                  framework for reasoning about arity raising and
                  support a richer form of the transformation than is
                  currently found in compilers for functional
                  languages.},
  address =	 {Baltimore, MD},
  author =	 {John Hannan and Patrick Hicks},
  booktitle =	 {Proceedings of 3rd ACM SIGPLAN International
                  Conference on Functional Programming},
  date-modified ={2005-06-20 13:40:45 -0400},
  pdf =
                  {http://www.cse.psu.edu/~phicks/pubs/papers/HOArityRaising.pdf},
  month =	 SEP,
  pages =	 {27--38},
  title =	 {Higher-Order Arity Raising},
  year =	 1998
}

@TechReport{Danvy2004QuadraticLambdaLiftingTR,
  author = 	 {Olivier Danvy and Ulrik P. Schultz},
  title = 	 {Lambda-Lifting in Quadratic Time},
  institution =  {BRICS, Department of Computer Science, University of Aarhus},
  year = 	 2004,
  number =	 {RS-04-12},
  month =	 jun
}


@Article{Danvy2004QuadraticLambdaLifting,
  author =	 {Olivier Danvy and Ulrik P. Schultz},
  title =	 {Lambda-Lifting in Quadratic Time},
  journal =	 {Journal of Functional and Logic Programming},
  year =	 2004,
  volume =	 2004,
  number =	 1,
  publisher =	 {EAPLS},
  month =	 jul
}

@inproceedings{Kobayashi2000TypeBasedUVE,
  author =	 "Naoki Kobayashi",
  title =	 "Type-Based Useless Variable Elimination",
  booktitle =	 "Partial Evaluation and Semantic-Based Program
                  Manipulation",
  pages =	 "84-93",
  year =	 2000,
  url =		 "citeseer.ist.psu.edu/kobayashi99typebased.html"
}

@article{Kobayashi2001TypeBasedUVE,
  author =	 {Naoki Kobayashi},
  title =	 {Type-Based Useless-Variable Elimination.},
  journal =	 {Higher-Order and Symbolic Computation},
  volume =	 14,
  number =	 {2-3},
  year =	 2001,
  pages =	 {221-260},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}

@inproceedings{Fischbach2001TypeSystemsUVE,
  author =	 {Adam Fischbach and John Hannan},
  title =	 {Type Systems for Useless-Variable Elimination},
  booktitle =	 {PADO '01: Proceedings of the Second Symposium on
                  Programs as Data Objects},
  year =	 2001,
  isbn =	 {3-540-42068-1},
  pages =	 {25--38},
  publisher =	 SV,
  address =	 {London, UK},
}

@InProceedings{Hannan1995TypeClosureConversions,
  author =	 {John Hannan},
  title =	 {Type Systems for Closure Conversions},
  booktitle =	 {Proceedings of Workshop on Types for Program
                  Analysis},
  pages =	 {48--62},
  year =	 1995,
  editor =	 {H. R. Nielson and K. L. Solberg},
  number =	 {PB-493},
  series =	 {Daimi Reports}
}

@phdthesis{Erkoek2002PhD,
  author =	 "Levent {Erk\"{o}k}",
  title =	 "Value recursion in monadic computations",
  year =	 2002,
  address =	 "Portland, Oregon",
  school =	 "OGI School of Science and Engineering, OHSU",
}

@Article{erwig2005VisualTypeInference,
  author =	 {Martin Erwig},
  title =	 {Visual Type Inference},
  journal =	 { Journal of Visual Languages and Computing},
  year =	 2005,
  note =	 {To appear}
}

@Article{Erwig2004Monadification,
  author =	 {Martin Erwig and Deling Ren},
  title =	 {Monadification of Functional Programs},
  journal =	 { Science of Computer Programming},
  year =	 2004,
  volume =	 52,
  number =	 {1--3},
  pages =	 {101--129}
}

@techreport{Glesner2005IntroCo,
  author =	 {Sabine Glesner},
  type =	 {publikation},
  title =	 {An Introduction to (Co)Algebras and (Co)Induction
                  and their Application to the Semantics of
                  Programming Languages},
  year =	 2005,
  month =	 aug,
  publisher =	 {Fakult{\"a}t f{\"u}r Informatik, Universit{\"a}t
                  Karlsruhe},
  number =	 {2005-22},
  abstract =	 {This report summarizes operational approaches to the
                  formal semantics of programming languages and shows
                  that they can be interpreted inductively by least
                  fixed points as well as coinductively by greatest
                  fixed points. While the inductive interpretation
                  gives semantics to all terminating programs, the
                  coinductive one defines moreover also a semantics
                  for all non-terminating programs. This is especially
                  important in areas where programs do not terminate
                  in general, e.g. data bases, operating systems, or
                  control software in embedded systems. The semantic
                  foundations described in this report can be used to
                  verify that transformations (e.g. in compilers) of
                  such software systems are correct. In the course of
                  this report, coalgebras and coinduction are
                  introduced, starting with a gentle intuitive
                  motivation and ending with a detailed mathematical
                  description within the notions of category theory.},
}

@techreport{Glesner2005OptimierendeCompiler,
  author =	 {Sabine Glesner},
  type =	 {publikation},
  title =	 {Optimierende Compiler: Vertrauen ist gut,
                  Verifikation ist besser!},
  year =	 2005,
  month =	 sep,
  publisher =	 {Fakult{\"a}t f{\"u}r Informatik, Universit{\"a}t
                  Karlsruhe},
  number =	 {2005-28}
}

@InProceedings{Pettyjohn2005GeneralizedStackInspection,
  author =	 {Greg Pettyjohn and John Clements and Joe Marshall
                  and Shriram Krishnamurthi and Matthias Felleisen},
  title =	 {Continuations from Generalized Stack Inspection},
  booktitle =	 {ACM SIGPLAN International Conference on Functional
                  Programming},
  year =	 2005
}

@InProceedings{Shivers2004AnatomyLoop,
  author =	 {Olin Shivers},
  title =	 {The Anatomy of a Loop -- A story of scope and
                  control},
  booktitle =	 {International Conference on Functional Programming,
                  ICFP'05},
  year =	 2005,
  month =	 sep,
  location =	 {Tallinn, Estonia},
  publisher =	 ACM
}

@inproceedings{Stewart2005DynamicApplications,
  author =	 {Don Stewart and Manuel M. T. Chakravarty},
  title =	 {Dynamic Applications From the Ground Up},
  booktitle =	 {Proceedings of the ACM SIGPLAN Workshop on Haskell},
  year =	 2005,
  month =	 sep,
  location =	 {Tallinn, Estonia},
  publisher =	 ACM
}

@misc{Blech2004SpezifikationKonstanten,
  author =	 {Jan Olaf Blech},
  type =	 {publikation},
  title =	 {Spezifikation und maschinelle Verifikation von
                  Konstantenfaltung in {\"U}bersetzern},
  year =	 2003,
  month =	 may,
  school =	 {Universit{\"a}t Karlsruhe},
  institution =	 {Institut f{\"u}r Programmstrukturen und
                  Datenorganisation}
}

@misc{Blech2004FormaleSemantikSSA,
  author =	 {Jan Olaf Blech},
  type =	 {publikation},
  title =	 { Eine formale Semantik f{\"u}r SSA-Zwischensprachen
                  in Isabelle/HOL },
  year =	 2004,
  month =	 mar,
  organization = {Universit{\"a}t Karlsruhe, Fakult{\"a}t f{\"u}r
                  Informatik}
}

@MastersThesis{Ohlendorfs2005CookbookXML,
  author =	 {Manuel Ohlendorfs},
  title =	 {A Cookbook for the Haskell XML Toolbox with Examples
                  for Processing RDF Documents},
  school =	 {FH Wedel},
  year =	 2005
}

@MastersThesis{Schmidt2005ValidatingXML,
  author =	 {Martin Schmidt},
  title =	 {Design and Implementation of a validating XML parser
                  in Haskell},
  school =	 {FH Wedel},
  year =	 2005
}

@MastersThesis{Kuseler2005RelaxNG,
  author =	 {Torben Kuseler},
  title =	 {Design und Entwicklung eines Relax NG Schema
                  Validators auf Basis der Haskell XML Toolbox},
  school =	 {FH Wedel},
  year =	 2005
}

@InProceedings{Lambers2004NewGTXL,
  author =	 {Leen Lambers},
  title =	 {New Version of GTXL: An Exchange Format for Graph
                  Transformation Systems},
  booktitle =	 { Workshop on Graph-Based Tools (GraBaTs'04),
                  Satellite Event of ICGT'04},
  year =	 2004
}

@MastersThesis{Agat1998FLRegister,
  author =	 {Johan Agat},
  title =	 {A Typed Functional language for Expressing Register
                  Utilisation},
  school =	 {Chalmers University},
  year =	 1998,
  month =	 oct
}

@Article{Morrisett1999SystemFtoTAL,
  author =	 {Greg Morrisett and David Walker and Karl Crary and
                  Neal Glew},
  title =	 {From {System} {F} to Typed Assembly Language},
  journal =	 {ACM Transactions on Programming Languages and
                  Systems},
  year =	 1999,
  volume =	 21,
  number =	 3,
  pages =	 {528--569},
  month =	 may
}

@InProceedings{Morrisett1998SystemFtoTAL,
  author =	 {Greg Morrisett and David Walker and Karl Crary and
                  Neal Glew},
  title =	 {From {System} {F} to Typed Assembly Language},
  booktitle =	 {Twenty-Fifth ACM SIGPLAN-SIGACT Symposium on
                  Principles of Programming Languages},
  pages =	 {85--97},
  year =	 1998,
  address =	 {San Diego, CA, USA},
  month =	 jan,
  publisher =	 ACM
}

@InProceedings{Morrisett2005L3,
  author =	 {Greg Morrisett and Amal Ahmed and Matthew Fluet},
  title =	 {L3: A Linear Language with Locations},
  booktitle =	 {Seventh International Conference on Typed Lambda
                  Calculi and Applications},
  year =	 2005,
  month =	 apr
}

@Book{Girard1989ProofsAndTypes,
  author =	 {Jean-Yves Girard and Paul Taylor and Yves Lafont},
  title =	 {Proofs and Types},
  publisher =	 {Cambridge University Press},
  year =	 1989,
  number =	 7,
  series =	 {Cambridge Tracts in Theoretical Computer Science},
  edition =	 {reprinted with corrections 1990}
}

@incollection{ Harper1993ExplicitCPS,
  author =	 "Robert Harper and Mark Lillibridge",
  title =	 "Explicit Polymorphism and {CPS} Conversion",
  booktitle =	 "Conf.\ Record 20th Ann.\ {ACM} {SIGPLAN}-{SIGACT}
                  Symp.\ on Principles of Programming Languages,
                  {POPL}'93, Charleston, {SC}, {USA}, ??? Jan.\ 1993",
  publisher =	 ACM,
  address =	 "New York",
  pages =	 "206--219",
  year =	 1993,
  url =		 "citeseer.ist.psu.edu/article/harper93explicit.html"
}


@InProceedings{Bernard1998HowGeneric,
  author =	 {Andrew Bernard and Robert Harper and Peter Lee},
  title =	 {How generic is a generic back end? Using MLRISC as a
                  back end for the TIL compiler},
  booktitle =	 {Proceedings of the Workshop on Types in Compilation},
  pages =	 {53--77},
  year =	 1998,
  editor =	 {X. Leroy and A. Ohori},
  volume =	 1473,
  series =	 LNCS,
  address =	 {Kyoto, Japan},
  month =	 mar,
  publisher =	 SV
}

@PhdThesis{Morrisett1995PhD,
  author =	 {Greg Morrisett},
  title =	 {Compiling with Types},
  school =	 {School of Computer Science, Carnegie Mellon
                  University},
  year =	 1995,
  month =	 dec,
  note =	 {Published as CMU Technical Report CMU-CS-95-226}
}

@TECHREPORT{UUCS199928,
  author =	 {H. J. M. Meijer},
  year =	 1999,
  title =	 {Proceedings of the 1999 Haskell Workshop},
  number =	 {UU-CS-1999-28},
  institution =	 {Institute of Information and Computing Sciences,
                  Utrecht University},
  urlps =
                  {{http://archive.cs.uu.nl/pub/RUU/CS/techreps/CS-1999/1999-28.ps.gz}},
  urlpdf =
                  {{http://archive.cs.uu.nl/pub/RUU/CS/techreps/CS-1999/1999-28.pdf}},
  pubcat =	 {techreport}
}

@TECHREPORT{UUCS200162,
  author =	 {Ralf Hinze (editor)},
  year =	 2001,
  title =	 {Preliminary proceedings of the 2001 ACM SIGPLAN
                  Haskell Workshop (HW'2001)},
  number =	 {UU-CS-2001-62},
  institution =	 {Institute of Information and Computing Sciences,
                  Utrecht University},
  urlpdf =
                  {{http://archive.cs.uu.nl/pub/RUU/CS/techreps/CS-2001/2001-62.pdf}},
  pubcat =	 {techreport}
}

@InProceedings{PeytonJones2001PlayingRules,
  author =	 {Simon {Peyton Jones} and Andrew Tolmach and Tony
                  Hoare},
  title =	 {Playing by the Rules: Rewriting as a practical
                  optimisation technique in {GHC}},
  crossref =	 {UUCS200162},
  booktitle =	 {Preliminary proceedings of the 2001 ACM SIGPLAN
                  Haskell Workshop (HW'2001)},
  pages =	 {203-233},
  year =	 2001,
  editor =	 {Ralf Hinze}
}

@incollection{ cardelli91extension,
    author = "Luca Cardelli and John C. Mitchell and Simone Martini and Andre Scedrov",
    title = "An Extension of System {F} with Subtyping",
    booktitle = "Proc.\ of 1st Int.\ Symp.\ on Theor.\ Aspects of Computer Software, {TACS}'91, Sendai, Japan, 24--27 Sept 1991",
    volume = "526",
    publisher = SV,
    address = "Berlin",
    editor = "Takayasu Ito and Albert R. Meyer",
    pages = "750--770",
    year = "1991",
    url = "citeseer.ist.psu.edu/cardelli91extension.html" }

@InProceedings{Cardelli1991SystemFSub,
  author =	 {Luca Cardelli and Simone Martini and John
                  C. Mitchell and Andre Scedrov},
  title =	 {An Extension of System {F} with Subtyping},
  booktitle =	 {Proc.\ of 1st Int.\ Symp.\ on Theor.\ Aspects of
                  Computer Software, {TACS}'91},
  pages =	 {750--770},
  year =	 1991,
  editor =	 {Takayasu Ito and Albert R. Meyer},
  volume =	 526,
  series =	 LNCS,
  address =	 {Sendai, Japan},
  publisher =	 SV
}

@Article{Kennedy1996DrawingTrees,
  author =	 {Andrew Kennedy},
  title =	 {Functional Pearls: Drawing Trees},
  journal =	 {Journal of Functional Programming},
  year =	 1996,
  volume =	 6,
  number =	 3,
  pages =	 {527--534},
  month =	 may
}

@Article{Kennedy2004PicklerCombinators,
  author =	 {Andrew Kennedy},
  title =	 {Functional Pearls: Pickler Combinators},
  journal =	 {Journal of Functional Programming},
  year =	 2004,
  note =	 {To appear}
}

@InProceedings{Harris2005HaskellSharedMP,
  author =	 {Tim Harris and Simon Marlow and Simon {Peyton
                  Jones}},
  title =	 {Haskell on a shared-memory multiprocessor},
  booktitle =	 {Haskell Workshop},
  year =	 2005,
  address =	 {Tallin},
  month =	 sep
}

@article{Baker1997COMFY,
  author =	 {Henry G. Baker},
  title =	 {The COMFY 6502 compiler},
  journal =	 {SIGPLAN Notices},
  volume =	 32,
  number =	 11,
  year =	 1997,
  issn =	 {0362-1340},
  pages =	 {25--30},
  doi =		 {http://doi.acm.org/10.1145/270941.270947},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Misc{PeytonJones2006PracticalArbRank,
  author =       {SL {Peyton Jones} and D Vytiniotis and S Weirich and
                  M Shields},
  title =        {Practical type inference for arbitrary-rank types},
  howpublished = {Available from:
                  \url{http://research.microsoft.com/Users/simonpj/papers/higher-rank/index.htm}},
  month =        feb,
  year =         2006,
  note =         {To appear in Journal of Functional Programming}
}

@Misc{Pavlovic2005SpecificationEngineering,
  author =	 {D. Pavlovic and P. Pepper and D. Smith},
  title =	 {Specification Engineering},
  howpublished = {draft},
  month =	 sep,
  year =	 2005
}

@Misc{Henderson1993StrongModes,
  author =	 {Fergus Henderson},
  title =	 {Strong Modes can Change the World!},
  howpublished = {Honour's Thesis},
  month =	 nov,
  year =	 1993
}

@INPROCEEDINGS{Leijen2005scopedlabels,
  author =	 {Leijen, Daan},
  title =	 {Extensible records with scoped labels},
  booktitle =	 {Proceedings of the 2005 Symposium on Trends in
                  Functional Programming (TFP'05)},
  location =	 {{T}allin, {E}stonia},
  month =	 sep,
  year =	 2005
}

@Misc{Leijen2001DivisionModulus,
  author =	 {Leijen, Daan},
  title =	 {Division and Modulus for Computer Scientists},
  month =	 dec,
  year =	 2001,
  annote =	 {Draft}
}

@MASTERSTHESIS{Leijen1998mscthesis,
  author =	 {Daan Leijen},
  title =	 {Functional Components: {COM} components in
                  {Haskell}},
  school =	 {Department of Computer Science, University of
                  {Amsterdam}},
  month =	 sep,
  year =	 1998
}

@InProceedings{Chakravarty1995MultiSTG,
  author =	 {Manuel M. T. Chakravarty},
  title =	 {{Integrating Multithreading into the Spineless
                  Tagless {G}-machine}},
  booktitle =	 {1995 Glasgow Workshop on Functional Programming},
  year =	 1995,
  month =	 jul
}

@TechReport{Jones1993ExplicitParallel,
  author =	 {Mark P. Jones and Paul Hudak},
  title =	 {Implicit and explicit parallel programming in
                  Haskell},
  institution =	 {Yale University},
  year =	 1993,
  type =	 {Research Report},
  number =	 {YALEU/DCS/RR-982},
  month =	 aug
}

@PhdThesis{Oortmerssen2000PhD,
  author =	 {Wouter {van Oortmerssen}},
  title =	 {Concurrent Tree Space Transformation in the
                  Aardappel Programming Language},
  school =	 {University of Southampton},
  year =	 2000,
  month =	 jul
}

@TechReport{Tullsen1996CompilingHaskell,
  author =	 {Mark Tullsen},
  title =	 {Compiling Haskell to Java},
  institution =	 {Yale University},
  year =	 1996,
  type =	 {Research report},
  number =	 {YALEU/DCS/RR-1204}
}

@Article{Glew2004TypeSafeMethodInlining,
  author =	 {Neal Glew and Jens Palsberg},
  title =	 {Type-safe method inlining},
  journal =	 {Science of Computer Programming},
  year =	 2004,
  volume =	 52,
  pages =	 {281--306}
}

@Article{Palsberg1996Adaptive,
  author =	 {Jens Palsberg and Boaz Patt-Shamir and Karl
                  Lieberherr},
  title =	 {A new approach to compiling adaptive programs},
  journal =	 {Science of Computer Programming},
  year =	 1996,
  volume =	 29,
  number =	 3,
  pages =	 {303--326}
}

@InProceedings{Noel1996TemplateBased,
  author =	 {F. No{\"e}l and L. Hornof and C. Consel and
                  J.L. Lawall},
  title =	 {Automatic, Template-Based Runtime Specialization:
                  Implementation and Experimental Study},
  booktitle =	 {IEEE International Conference on Computer Languages},
  pages =	 {123-142},
  year =	 1998,
  month =	 may
}

@InProceedings{Consel1996ProgramAdaptation,
  author =	 {C. Consel},
  title =	 {Program Adaptation based on Program Transformation},
  booktitle =	 {ACM Workshop on Strategic Directions in Computing
                  Research},
  year =	 1996
}

@MastersThesis{Jeltsch2005Diplomarbeit,
  author =	 {Wolfgang Jeltsch},
  title =	 {Integration funktionaler und imperativer
                  Programmierkonzepte},
  school =	 {Brandenburgischen Technischen Universität Cottbus},
  year =	 2005,
  type =	 {Diplomarbeit},
  month =	 sep
}

@InCollection{Hughes1995DesignPrettyPrinting,
  author =	 {John Hughes},
  title =	 {The Design of a Pretty-printing Library},
  booktitle =	 {Advanced Functional Programming},
  publisher =	 SV,
  year =	 1995,
  editor =	 {Johan Jeuring and Erik Meijer},
  volume =	 925,
  series =	 LNCS
}

@InProceedings{Discolo2006LockFree,
  author =	 {Anthony Discolo and Tim Harris and Simon Marlow and Simon
                  Peyton Jones and Satnam Singh},
  title =	 {Lock-Free Data Structures using STMs in Haskell},
  booktitle =	 {Proceedings of the Eighth International Symposium on
                  Functional and Logic Programming (FLOPS 2006)},
  year =	 2006,
  month =	 apr,
  note =	 {Submitted}
}

@InProceedings{Harris2003LightweightTransaction,
  author =	 {Timothy Harris and Keir Fraser},
  title =	 {Language Support for Lightweight Transactions},
  booktitle =	 {ACM SIGPLAN Conference on Object-Oriented
                  Programming, Systems, and Applications (OOPSLA)},
  year =	 2003,
  month =	 oct,
  publisher =	 ACM
}

@PhdThesis{Fraser2003PracticalLockFreedom,
  author =	 {Keir Fraser},
  title =	 {Practical lock-freedom},
  school =	 {University of Cambridge, Computer Laboratory},
  year =	 2003,
  month =	 sep,
  note =	 {Published as Technical Report No. UCAM-CL-TR-579}
}

@TechReport{Briggs1994MultiplicationIntegerConstants,
  author =	 {Preston Briggs and Tim Harvey},
  title =	 {Multiplication by integer constants},
  institution =	 {Rice University, Department of Computer Science},
  year =	 1994,
  number =	 {TR03-425}
}

@TechReport{Keppel1991CaseRuntimeCodeGeneration,
  author =	 {David Keppel and Susan J. Eggers and Robert
                  R. Henry},
  title =	 {A Case for Runtime Code Generation},
  institution =	 {Department of Computer Science, University of
                  Washington},
  year =	 1991,
  number =	 {91-11-04}
}

@TechReport{Keppel1993Evaluating,
  author =	 {David Keppel and Susan J. Eggers and Robert
                  R. Henry},
  title =	 {Evaluating Runtime-Compiled Value-Specific
                  Optimizations},
  institution =	 {Department of Computer Science, University of
                  Washington},
  year =	 1993,
  number =	 {93-11-02}
}

@TechReport{Muller1996JITvsOfflineCompilers,
  author =	 {Gilles Muller and B{\'a}rbara Moura and Fabrice
                  Bellard and Charles Consel},
  title =	 {{JIT} {\em vs.} Offline Compilers: Limits and
                  Benefits of Bytecode Compilation},
  institution =	 {IRISA},
  year =	 1996,
  type =	 {Rapport de recherche},
  number =	 1063,
  address =	 {Rennes, France},
  month =	 dec
}

@misc{Yarvin1994QuaC,
  author =	 "C. Yarvin and A. Sah",
  title =	 "QuaC: Binary optimization for fast runtime code
                  generation in C",
  text =	 "C. Yarvin and A. Sah. QuaC: Binary optimization for
                  fast runtime code generation in C. Technical Report
                  94-792, Computer Science Department, University of
                  California, Berkeley, 1994.",
  year =	 1994,
  url =		 "citeseer.ist.psu.edu/yarvin94quac.html"
}

@article{hardin-maranget-pagano-report,
  author =	 "Thérèse Hardin, Luc Maranget and Bruno Pagano",
  title =	 "Functional Runtimes within the Lambda-Sigma
                  Calculus",
  journal =	 "Journal of Functional Programming",
  volume =	 8,
  number =	 2,
  month =	 mar,
  year =	 1998,
  publisher =	 "Cambridge University Press"
}

@InProceedings{Ennals2003OptimisticEvaluation,
  author =	 {Robert Ennals and Simon {Peyton Jones}},
  title =	 {Optimistic evaluation: an adaptive evaluation
                  strategy for non-strict programs},
  booktitle =	 {8th ACM SIGPLAN International Conference on
                  Functional Programming (ICFP 2003)},
  year =	 2003,
  publisher =	 ACM
}

@Misc{Ennals2000Feris,
  author =	 {Robert Ennals},
  title =	 {Feris: A Functional Environment for Retargetable
                  Interactive Systems},
  howpublished = {},
  year =	 2000
}

@Misc{Rieffel2000Quantum,
  author =       {Eleanor G. Rieffel and Wolfgang Polak},
  title =        {An Introduction to Quantum Computing for
                  Non-Physicists},
  howpublished = {Available from:
                  \url{http://xxx.lanl.gov/abs/quant-ph/9809016}},
  month =        jan,
  year =         2000
}

@Misc{Hope2005Fusion,
  author =       {Catherine Hope and Graham Hutton},
  title =        {Fusion in less space},
  howpublished = {Available from:
                  \url{http://www.cs.nott.ac.uk/~cvh/hylos/hylos.pdf}},
  month =        dec,
  year =         2005,
  note =         {Draft paper}
}

@MastersThesis{Holdermans2005GenericViews,
  author =	 {Stefan Holdermans},
  title =	 {Generic views},
  school =	 {Utrecht University},
  year =	 2005
}



@inproceedings{Baraz2003EL,
  author =	 {Leonid Baraz and Tevi Devor and Orna Etzion and
                  Shalom Goldenberg and Alex Skaletsky and Yun Wang
                  and Yigel Zemach},
  title =	 {{IA-32 Execution Layer: a two-phase dynamic
                  translator designed to support IA-32 applications on
                  Itanium\texttrademark{}-based systems}},
  booktitle =	 {MICRO 36: Proceedings of the 36th annual IEEE/ACM
                  International Symposium on Microarchitecture},
  year =	 2003,
  isbn =	 {0-7695-2043-X},
  pages =	 191,
  publisher =	 {IEEE Computer Society},
  address =	 {Washington, DC, USA},
}

@Article{Amdahl1964System360,
  author =	 {G. M. Amdahl and G. A. Blaauw and F. P. {Brooks,
                  Jr.}},
  title =	 {Architecture of the {IBM} {System/360}},
  journal =	 {IBM Journal of Research and Development},
  year =	 1964,
  volume =	 8,
  number =	 2,
  pages =	 87
}

@Book{Smith2005VirtualMachines,
  author =	 {James E. Smith and Ravi Nair},
  title =	 {Virtual Machines -- Versatile Platforms for Systems
                  and Processes},
  publisher =	 MK,
  year =	 2005
}

@InProceedings{Hazelwood2000IfConversion,
  author =	 {Kim Hazelwood and Thomas Conte},
  title =	 {A Lightweight Algorithm for Dynamic If-Conversion
                  during Dynamic Optimization},
  booktitle =	 {International Conference on Parallel Architectures
                  and Compilation Techniques},
  pages =	 {71--80},
  year =	 2000,
  month =	 oct
}

@PhdThesis{HazelwoodCettei2004PhD,
  author =	 {Kim {Hazelwood Cettei}},
  title =	 {Code Cache Management in Dynamic Optimization
                  Systems},
  school =	 {Harvard University},
  year =	 2004,
  month =	 may
}

@article{Sites1993AlphaAXPArchitecture,
  author =	 {Richard L. Sites},
  title =	 {Alpha AXP architecture},
  journal =	 {Communications of the ACM},
  volume =	 36,
  number =	 2,
  year =	 1993,
  issn =	 {0001-0782},
  pages =	 {33--44},
  doi =		 {http://doi.acm.org/10.1145/151220.151226},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Sites1993BinaryTranslation,
  author =	 {Richard L. Sites and Anton Chernoff and Matthew
                  B. Kirk and Maurice P. Marks and Scott G. Robinson},
  title =	 {Binary translation},
  journal =	 {Communications of the ACM},
  volume =	 36,
  number =	 2,
  year =	 1993,
  issn =	 {0001-0782},
  pages =	 {69--81},
  doi =		 {http://doi.acm.org/10.1145/151220.151227},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Article{Benton2001ExceptionalSyntax,
  author =	 {Nick Benton and Andrew Kennedy},
  title =	 {Exceptional Syntax},
  journal =	 {Journal of Functional Programming},
  year =	 2001,
  volume =	 11,
  number =	 4,
  pages =	 {395--410},
  month =	 jul
}

@InProceedings{Benton2004SMLDotNETExperience,
  author =	 {Nick Benton and Andrew Kennedy and Claudio Russo},
  title =	 {Adventures in Interoperability: The SML.NET
                  Experience},
  booktitle =	 {6th ACM-SIGPLAN International Conference on
                  Principles and Practice of Declarative Programming
                  (PPDP)},
  year =	 2004,
  address =	 {Verona, Italy},
  month =	 aug
}

@InProceedings{Angelov2005VisualHaskell,
  author =	 {Krasimir Angelov and Simon Marlow},
  title =	 {{Visual} {Haskell}: A full-featured {Haskell} development
                  environment},
  booktitle =	 {Haskell '05: Proceedings of the 2005 ACM SIGPLAN
                  workshop on Haskell},
  year =	 2005,
  month =	 {September},
  abstract =	 {We describe the design and implementation of a
                  full-featured Haskell development environment, based
                  on Microosft's extensible Visual Studio
                  environment. Visual Haskell provides a number of
                  features not found in existing Haskell development
                  environments: interactive error-checking, displaying
                  of inferred types in the editor, and other features
                  based on static properties of the source
                  code. Visual Haskell also provides full support for
                  developing and building multi-module Haskell
                  projects, based on the Cabal architecture. Visual
                  Haskell supports the full GHC language, and can be
                  used to develop real Haskell applications (including
                  the code of the plugin itself). Visual Haskell has
                  driven developments in other Haskell-related
                  projects: Cabal, the Concurrent FFI extension, and
                  an API to allow programmatic access to GHC
                  itself. Furthermore, development of the Visual
                  Haskell plugin required industrial-strength foreign
                  language interoperability; we describe all our
                  experiences in detail. },
  url =
                  {http://www.haskell.org/~simonmar/papers/vshaskell.pdf},
  doi =		 {http://doi.acm.org/10.1145/1088348.1088350},
  isbn =	 {1-59593-071-X},
  pages =	 {5--16},
  location =	 {Tallinn, Estonia},
  publisher =	 ACM
}

@InProceedings{Cheadle2000NonStopHaskell,
  author =	 {A. M. Cheadle and A. J. Field and S. Marlow and
                  S. L. Peyton Jones and R. L. While},
  title =	 {Non-stop Haskell},
  booktitle =	 {ICFP '00: Proceedings of the fifth ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2000,
  abstract =	 {We describe an efficient technique for incorporating
                  Baker's incremental garbage collection algorithm
                  into the Spineless Tagless G-machine on stock
                  hardware. This algorithm eliminates the stop/go
                  execution associated with bulk copying collection
                  algorithms, allowing the system to place an upper
                  bound on the pauses due to garbage collection. The
                  technique exploits the fact that objects are always
                  accessed by jumping to code rather than being
                  explicitly dereferenced. It works by modifying the
                  entry code-pointer when an object is in the
                  transient state of being evacuated but not
                  scavenged. An attempt to enter it from the mutator
                  causes the object to "self-scavenge" transparently
                  before resetting its entry code pointer. We describe
                  an implementation of the scheme in v4.01 of the
                  Glasgow Haskell Compiler and report performance
                  results obtained by executing a range of
                  applications. These experiments show that the read
                  barrier can be implemented in dynamic dispatching
                  systems such as the STG-machine with very short
                  mutator pause times and with negligible overhead on
                  execution time. },
  url =		 {http://www.haskell.org/~simonmar/papers/nonstop.pdf},
  doi =		 {http://doi.acm.org/10.1145/351240.351265},
  isbn =	 {1-58113-202-6},
  pages =	 {257--267},
  publisher =	 ACM
}

@article{Backus1954SpeedcodingSystem,
  author =	 {J. W. Backus},
  title =	 {The IBM 701 Speedcoding System},
  journal =	 {J. ACM},
  volume =	 1,
  number =	 1,
  year =	 1954,
  issn =	 {0004-5411},
  pages =	 {4--6},
  doi =		 {http://doi.acm.org/10.1145/320764.320766},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Backus1957FortranAutomaticCodingSystem,
  author =	 {J.W. Backus and R.J. Beeber and S. Best and
                  R. Goldberg and L.M. Haibt and H.L. Herrick and
                  R.A. Nelson and D. Sayre and P.B. Sheridan and
                  H.J. Stern and I. Ziller and R.A. Hughes and
                  R. Nutt},
  title =	 {{The FORTRAN automatic coding system}},
  booktitle =	 {Proceedings Western Joint Computer Conference},
  pages =	 {188--198},
  year =	 1957,
  address =	 {Los Angeles, California},
  month =	 feb
}

@article{Gil2005SubtypingTest,
  author =	 {Joseph (Yossi) Gil and Yoav Zibin},
  title =	 {Efficient subtyping tests with PQ-encoding},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 27,
  number =	 5,
  year =	 2005,
  issn =	 {0164-0925},
  pages =	 {819--856},
  doi =		 {http://doi.acm.org/10.1145/1086642.1086643},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Mucci1999PAPI,
  author =	 {Browne, S. and Deane, C. and Ho, G. and Mucci, P.},
  title =	 {PAPI: A Portable Interface to Hardware Performance
                  Counters},
  booktitle =	 {Proceedings of Department of Defense HPCMP Users
                  Group Conference},
  year =	 1999,
  month =	 {jun}
}

@InProceedings{Olinsky2006StagedAllocation,
  author =	 {Reuben Olinsky and Christian Lindig and Norman
                  Ramsey},
  title =	 {Staged Allocation: A Compositional Technique for
                  Specifying and Implementing Procedure Calling
                  Conventions},
  booktitle =	 {POPL '06: Proceedings of the 32nd ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 2006,
  publisher =	 ACM
}

@inproceedings{Menon2005VerifiableSSARepresentation,
  author =	 {Vijay S. Menon and Neal Glew and Brian R. Murphy and
                  Andrew McCreight and Tatiana Shpeisman and Ali-Reza
                  Adl-Tabatabai and Leaf Petersen},
  title =	 {A verifiable SSA program representation for
                  aggressive compiler optimization},
  booktitle =	 {POPL '06: Conference record of the 33rd ACM
                  SIGPLAN-SIGACT symposium on Principles of
                  programming languages},
  year =	 2006,
  isbn =	 {1-59593-027-2},
  pages =	 {397--408},
  location =	 {Charleston, South Carolina, USA},
  doi =		 {http://doi.acm.org/10.1145/1111037.1111072},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}
@Manual{Intel2005Vanderpool,
  title =        {Intel Vanderpool Technology for IA-32 Processors
                  (VT-x) -- Preliminary Specification},
  author =       {{Intel Corporation}},
  month =        jan,
  year =         2005,
  note =         {Available from:
                  \url{http://cache-www.intel.com/cd/00/00/19/76/197666_197666.pdf}}
}


@Manual{Intel2006DevelopersManual,
  title =        {IA-32 Intel Architecture Software Developer's Manual
                  Volumes 1, 2A, 2B, 3A, 3B},
  author =       {{Intel Corporation}},
  month =        jan,
  year =         2006,
  note =         {Available from: \url{http://www.intel.com/design/Pentium4/documentation.htm}}
}

@Manual{Intel2006DevelopersManualVolume1,
  title =        {IA-32 Intel Architecture Software Developer's Manual
                  Volume 1: Basic Architecture},
  author =       {{Intel Corporation}},
  month =        jan,
  year =         2006,
  note =         {Available from:
                  \url{http://www.intel.com/design/Pentium4/documentation.htm}}
}

@Manual{Intel2006DevelopersManualVolume3B,
  title =        {IA-32 Intel Architecture Software Developer's Manual
                  Volume 3B: System Programming Guide, Part 2},
  author =       {{Intel Corporation}},
  month =        jan,
  year =         2006,
  note =         {Available from: \url{http://www.intel.com/design/Pentium4/documentation.htm}}
}

@Manual{Intel2005OptimizationManual,
  title =        {IA-32 Intel Architecture Optimization Reference
                  Manual},
  author =       {{Intel Corporation}},
  month =        jun,
  year =         2005,
  note =         {Available from: \url{http://www.intel.com/design/Pentium4/documentation.htm}}
}

@Book{Bauer1981AlgorithmischeSprache,
  author =	 {Friedrich L. Bauer and Hans W{\"o}ssner},
  title =	 {Algorithmische Sprache und Programmentwicklung},
  publisher =	 SV,
  year =	 1981
}

@InProceedings{Rhiger2005FirstClassOpenClosedCode,
  author =	 "Morten Rhiger",
  title =	 "First-Class Open and Closed Code Fragments",
  booktitle =	 "Proceedings of the Sixth Symposium on Trends in
                  Functional Programming",
  editor =	 "Marko {van Eekelen}",
  publisher =	 "Tartu University Press",
  address =	 "Tallinn, Estonia",
  month =	 sep,
  year =	 2005,
  pages =	 "206--219",
}

@InProceedings{Marazan2004LambdaDynamic,
  author =	 {Marco T. Moraz{\'a}n and Barbara Mucha},
  title =	 {Lambda Lifting MT-Scheme Programs for Dynamic Code
                  Generation},
  booktitle =	 {Draft Proceedingsof the 16th International Workshop
                  on Implementation and Application of Functional
                  Languages},
  year =	 2004,
  note =	 {Appeared as Technical Report 0408 of the Institute
                  of Computer Science and Applied Mathematics of the
                  University of Kiel}
}

@Book{Wirth1998ProjectOberon,
  author =	 {Niklaus Wirth and J{\"u}rg Gutknecht},
  title =	 {Project Oberon -- The Design of an Operating System
                  and Compiler},
  publisher =	 AW,
  year =	 1998
}

@Article{AdlTabatabai2003StarJIT,
  author =	 {Ali-Reza Adl-Tabatabai and Jay Bharadwaj and
                  Dong-Yuan Chen and Anwar Ghuloum and Vijay Menon and
                  Brian Murphy and Mauricio Serrano and Tatiana
                  Shpeisman},
  title =	 {The {StarJIT} Compiler: A Dynamic Compiler for Managed
                  Runtime Environments},
  journal =	 {Intel Technology Journal},
  year =	 2003,
  volume =	 7,
  number =	 1,
  month =	 feb
}

@InProceedings{RudiakGold2006HaskellNotNotML,
  author =	 {Ben Rudiak-Gould and Alan Mycroft and Simon {Peyton
                  Jones}},
  title =	 {Haskell is not not ML},
  booktitle =	 {European Symposium on Programming 2006 (ESOP'06)},
  year =	 2006,
  month =	 mar
}

@InProceedings{Flanagan2006HybridTypeChecking,
  author =	 {Cormac Flanagan},
  title =	 {Hybrid Type Checking},
  booktitle =	 {POPL '06: Proceedings of the 32nd ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 2006,
  publisher =	 ACM
}

@TechReport{Proutskova2005PileSystem,
  author =       {Polina Proutskova},
  title =        {The Pile System: A New Approach To Data And
                  Computing},
  institution =  {Pile Systems Inc.},
  year =         2005,
  note =         {Available from:
                  \url{http://pilesys.com/Pile%20Math%20Intro.pdf}}
}

@inproceedings{Traub1989CompilationAsPartitioning,
  author =	 {Kenneth R. Traub},
  title =	 {Compilation as partitioning: a new approach to
                  compiling non-strict functional languages},
  booktitle =	 {FPCA '89: Proceedings of the fourth international
                  conference on Functional programming languages and
                  computer architecture},
  year =	 1989,
  isbn =	 {0-89791-328-0},
  pages =	 {75--88},
  location =	 {Imperial College, London, United Kingdom},
  doi =		 {http://doi.acm.org/10.1145/99370.99376},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Peterson1989UntaggedData,
  author =	 {John Peterson},
  title =	 {Untagged data in tagged environments: choosing
                  optimal representations at compile time},
  booktitle =	 {FPCA '89: Proceedings of the fourth international
                  conference on Functional programming languages and
                  computer architecture},
  year =	 1989,
  isbn =	 {0-89791-328-0},
  pages =	 {89--99},
  location =	 {Imperial College, London, United Kingdom},
  doi =		 {http://doi.acm.org/10.1145/99370.99377},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@PhdThesis{Courtney2004ModelingUserInterfaces,
  author =	 {Antony Alexander Courtney},
  title =	 {Modeling User Interfaces in a Functional Language},
  school =	 {Yale University},
  year =	 2004
}

@article{Turner1979NewImplementationTechnique,
  author =	 {D. A. Turner},
  title =	 {A New Implementation Technique for Applicative
                  Languages.},
  journal =	 {Softw., Pract. Exper.},
  volume =	 9,
  number =	 1,
  year =	 1979,
  pages =	 {31-49}
}

@InProceedings{Wallace1999HaskellAndXML,
  author =	 {Malcolm Wallace and Colin Runciman},
  title =	 {{Haskell} and {XML}: Generic Combinators or
                  Type-Based Translation?},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming (ICFP)},
  year =	 1999,
  address =	 {Paris},
  month =	 sep,
  publisher =	 ACM
}

@InProceedings{Erwig2000PatternGuards,
  author =	 {Martin Erwig and Simon {Peyton Jones}},
  title =	 {Pattern Guards and Transformational Patterns},
  booktitle =	 {Haskell Workshop},
  year =	 2000
}

@article{Kernighan1979UnixProgrammingEnvironment,
  author =	 {Brian W. Kernighan and John R. Mashey},
  title =	 {The UNIX/TM Programming Environment.},
  journal =	 {Softw., Pract. Exper.},
  volume =	 9,
  number =	 1,
  year =	 1979,
  pages =	 {1-15},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}

@Article{Hayes2003ALucidInterval,
  author =	 {Brian Hayes},
  title =	 {A Lucid Interval},
  journal =	 {American Scientist},
  year =	 2003,
  volume =	 91,
  number =	 6,
  pages =	 {484-0488}
}

@inproceedings{Hayase2005RevisionControl,
  author =	 {Yasuhiro Hayase and Makoto Matsushita and Katsuro
                  Inoue},
  title =	 {Revision control system using delta script of syntax
                  tree},
  booktitle =	 {SCM '05: Proceedings of the 12th international
                  workshop on Software configuration management},
  year =	 2005,
  isbn =	 {1-59593-310-7},
  pages =	 {133--149},
  location =	 {Lisbon, Portugal},
  doi =		 {http://doi.acm.org/10.1145/1109128.1109138},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Suganuma2006RegionBasedCompilation,
  author =	 {Toshio Suganuma and Toshiaki Yasue and Toshio
                  Nakatani},
  title =	 {A region-based compilation technique for dynamic
                  compilers},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 28,
  number =	 1,
  year =	 2006,
  issn =	 {0164-0925},
  pages =	 {134--174},
  doi =		 {http://doi.acm.org/10.1145/1111596.1111600},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Boute2005FunctionalDeclarative,
  author =	 {Raymond Boute},
  title =	 {Functional declarative language design and predicate
                  calculus: a practical approach},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 27,
  number =	 5,
  year =	 2005,
  issn =	 {0164-0925},
  pages =	 {988--1047},
  doi =		 {http://doi.acm.org/10.1145/1086642.1086647},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Graham1992HigherorderParsing,
  author =	 "Hutton, Graham",
  title =	 "Higher-order functions for parsing",
  journal =	 JFP,
  volume =	 2,
  number =	 3,
  month =	 "July",
  pages =	 "323--343",
  year =	 1992,
  url =		 "citeseer.ist.psu.edu/hutton93higherorder.html"
}

@article{PeytonJones1992ImplementingLazy,
  author =	 "Simon L. Peyton Jones",
  title =	 "Implementing Lazy Functional Languages on Stock
                  Hardware: The Spineless Tagless G-Machine",
  journal =	 JFP,
  volume =	 2,
  number =	 2,
  pages =	 "127--202",
  year =	 1992,
  url =		 "citeseer.ist.psu.edu/peytonjones92implementing.html"
}

@Article{Augustsson1994UniqueNames,
  author =	 {Lennart Augustsson and Mikael Rittri and Dan Synek},
  title =	 {On Generating unique names},
  journal =	 JFP,
  year =	 1994,
  volume =	 4,
  number =	 1,
  pages =	 {117--123},
}

@Article{Dakin1973MixedCodeApproach,
  author =	 {R. J. Dakin and P. C. Poole},
  title =	 {A mixed code approach},
  journal =	 CompJ,
  year =	 1973,
  volume =	 16,
  number =	 3,
  pages =	 {219--222}
}

@Article{Dawson1973Combining,
  author =	 {J. L. Dawson},
  title =	 {Combining interpretive code with machine code},
  journal =	 CompJ,
  year =	 1973,
  volume =	 16,
  number =	 3,
  pages =	 {216--219}
}

@Article{Samet1975DetailedAnalysis,
  author =	 {P. A. Samet},
  title =	 {Detailed Analysis of a program---an instructive
                  horror story},
  journal =	 SPE,
  year =	 1975,
  volume =	 5,
  number =	 2,
  pages =	 {211--217}
}

@Article{Brown1976ThrowAwayCompiling,
  author =	 {P. J. Brown},
  title =	 {Throw-away Compiling},
  journal =	 SPE,
  year =	 1976,
  volume =	 6,
  number =	 4,
  pages =	 {423--434}
}

@TechReport{Hunt2005OverviewSingularity,
  author =	 {Galen Hunt and James Larus and Mart{\'i}n Abadi and
                  Mark Aiken and Paul Barham and Manuel F{\"a}hndrich
                  and Chris Hawblitzel and Orian Hodson and Steven
                  Levi and Nick Murphy and Bjarne Steensgaard and
                  David Tarditi and Ted Wobber and Brian Zill},
  title =	 {An Overview of the Singularity Project},
  institution =	 {Microsoft Research},
  year =	 2005,
  number =	 {MSR-TR-2005-135}
}

@Book{Coulouris2001DistributedSystems,
  author =	 {George Coulouris and Jean Dollimore Tim Kindberg},
  title =	 {Distributed Systems: Concepts and Design},
  publisher =	 AW,
  year =	 2001,
  edition =	 {third}
}

@Book{Stevens2005APEU,
  author =	 {W. Richard Stevens and Stephen A. Rago},
  title =	 {Advanced Programming in the UNIX\textregistered{} Environment},
  publisher =	 AW,
  year =	 2005,
  edition =	 {Second}
}

@InProceedings{Mitchell2005UnfailingHaskell,
  author =	 {Neil Mitchell and Colin Runciman},
  title =	 {Unfailing Haskell: A Static Checker for Pattern
                  Matching},
  booktitle =	 {Draft Proceedings of Symposium on Trends in
                  Functional Programming 2005},
  year =	 2005
}

@InProceedings{Hanus2001CIDER,
  author =	 {Michael Hanus and Johannes Koj},
  title =	 {An Integrated Development Environment for
                  Declarative Multi-Paradigm Programming},
  booktitle =	 {Proceedings of the Eleventh Workshop on Logic
                  Programming Environments (WLPE'01)},
  year =	 2001,
  editor =	 {A. Kusalik},
  month =	 dec
}

@InProceedings{DiosCastro2000GraphicalDevelopmentEnvironment,
  author =	 {J. de Dios Castro and J.C. Gonz\'alez Moreno},
  title =	 {A Graphical Development Environment for Functional
                  Logic Languages},
  booktitle =	 {Proc. of the Ninth International Workshop on
                  Functional and Logic Programming ({WFLP})},
  year =	 2000
}

@InProceedings{Pena2000CompilerConstruction,
  author =	 {Ricardo Pe{\~n}a},
  title =	 {Compiler Construction in a Functional Setting},
  booktitle =	 {Proc. of the Ninth International Workshop on
                  Functional and Logic Programming ({WFLP})},
  year =	 2000
}

@InProceedings{Hallgren2005House,
  author =	 {Thomas Hallgren and Mark P. Jones and Rebekah Leslie
                  and Andrew Tolmach},
  title =	 {A Principled Approach to Operating System
                  Construction in Haskell},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming (ICFP)},
  year =	 2005
}

@article{ Pike1989ConcurrentWindowSystem,
  author =	 "Rob Pike",
  title =	 "A Concurrent Window System",
  journal =	 "Computing Systems",
  volume =	 2,
  number =	 2,
  pages =	 "133-153",
  year =	 1989,
  url =		 "citeseer.ist.psu.edu/pike89concurrent.html"
}

@InProceedings{Michael2004ScalableMemoryAllocation,
  author =	 {Maged M. Michael},
  title =	 {Scalable Lock-Free Dynamic Memory Allocation pdf},
  booktitle =	 {The 2004 ACM SIGPLAN Conference on Programming
                  Language Design and Implementation},
  pages =	 {35--46},
  year =	 2004,
  month =	 jun
}

@Book{Hudak2000SOE,
  author =	 {Paul Hudak},
  title =	 {The Haskell School of Expression},
  publisher =	 CUP,
  year =	 2000
}

@Book{Hofstedt2006FTFP,
  author =	 {Petra Hofstedt and Peter Pepper},
  title =	 {Funktionale Programmierung -- Fortgeschrittene
                  Techniken},
  publisher =	 SV,
  year =	 2006,
}

@article{Partsch1983ProgramTransformationSystems,
  author =	 {H. Partsch and R. Steinbr{\"u}ggen},
  title =	 {Program Transformation Systems},
  journal =	 {ACM Comput. Surv.},
  volume =	 {15},
  number =	 {3},
  year =	 {1983},
  issn =	 {0360-0300},
  pages =	 {199--236},
  doi =		 {http://doi.acm.org/10.1145/356914.356917},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{ Baader2001CombiningConstraintSolving,
  author =	 "Franz Baader and Klaus U. Schulz",
  title =	 "Combining Constraint Solving",
  journal =	 "Lecture Notes in Computer Science",
  volume =	 2002,
  pages =	 "104--??",
  year =	 2001,
  url =		 "citeseer.ist.psu.edu/baader01combining.html"
}

@article{ Tip1995SurveyProgramSlicing,
  author =	 "F. Tip",
  title =	 "A survey of program slicing techniques",
  journal =	 "Journal of programming languages",
  volume =	 3,
  pages =	 "121--189",
  year =	 1995,
  url =		 "citeseer.csail.mit.edu/tip95survey.html"
}

@article{Wand1980ContinuationBasedTransformation,
  author =	 {Mitchell Wand},
  title =	 {Continuation-Based Program Transformation
                  Strategies},
  journal =	 JACM,
  volume =	 27,
  number =	 1,
  year =	 1980,
  issn =	 {0004-5411},
  pages =	 {164--180},
  doi =		 {http://doi.acm.org/10.1145/322169.322183},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@PhdThesis{Missura1997PhD,
  author =	 {Stephan Albert Missura},
  title =	 {Higher-Order Mixfix Syntax for Representing
                  Mathematical Notation and its Parsing},
  school =	 {ETH Z{\"u}rich},
  year =	 1997
}

@Article{Whaley2005Joeq,
  author =	 {John Whaley},
  title =	 {Joeq: A virtual machine and compiler infrastructure},
  journal =	 {Science of Computer Programming},
  year =	 2005,
  volume =	 57,
  number =	 3,
  pages =	 {339--356},
  month =	 sep
}

@Article{Franz2005PortableVM,
  author =	 {Michael Franz and Deepak Chandra and Andreas Gal and
                  Vivek Haldar and Christian W. Probst and Ferm{\'i}n
                  Reig and Ning Wang},
  title =	 {A portable virtual machine target for proof-carrying
                  code},
  journal =	 {Science of Computer Programming},
  year =	 2005,
  volume =	 57,
  number =	 3,
  pages =	 {275--294},
  month =	 sep
}

@Article{Latendresse2005HuffmanBytecode,
  author =	 {Mario Latendresse and Marc Feeley},
  title =	 {Generation of fast interpreters for Huffman
                  compressed bytecode},
  journal =	 {Science of Computer Programming},
  year =	 2005,
  volume =	 57,
  number =	 3,
  pages =	 {295-317},
  month =	 sep
}

@Article{Ung2006DynamicBinaryTranslation,
  author =	 {David Ung and Cristina Cifuentes},
  title =	 {Dynamic binary translation using run-time feedbacks},
  journal =	 {Science of Computer Programming},
  year =	 2006,
  volume =	 60,
  number =	 2,
  pages =	 {189--204},
  month =	 apr
}

@Article{Debbabi2006SelectiveDynamic,
  author =	 {Mourad Debbabi and Abdelouahed Gherbi and Azzam
                  Mourad and Hamdi Yahyaoui},
  title =	 {A selective dynamic compiler for embedded Java
                  virtual machines targeting ARM processors},
  journal =	 {Science of Computer Programming},
  year =	 2006,
  volume =	 59,
  number =	 {1--2},
  pages =	 {38--63},
  month =	 jan
}

@TechReport{Demuth1997EchteCompilergenerierung,
  author =	 {Jochen Demuth and Stephan Weber and S{\"o}nke
                  Kannapinn and Mario Kr{\"o}plin},
  title =	 {{Echte Compilergenerierung -- Effiziente
                  Implementierung einer abgeschlossenen Theorie}},
  institution =	 {Technische Universit{\"a}t Berlin},
  year =	 1997,
  type =	 {Research report},
  number =	 {\mbox{1997-06} in {\em Forschungsberichte des
                  Fachbereichs Informatik}},
}

@inproceedings{Wu2005ControllingEnergy,
  author =	 {Qiang Wu and Margaret Martonosi and Douglas W. Clark
                  and V. J. Reddi and Dan Connors and Youfeng Wu and
                  Jin Lee and David Brooks},
  title =	 {A Dynamic Compilation Framework for Controlling
                  Microprocessor Energy and Performance},
  booktitle =	 {MICRO 38: Proceedings of the 38th annual IEEE/ACM
                  International Symposium on Microarchitecture},
  year =	 2005,
  isbn =	 {0-7695-2440-0},
  pages =	 {271--282},
  doi =		 {http://dx.doi.org/10.1109/MICRO.2005.7},
  publisher =	 {IEEE Computer Society},
  address =	 {Washington, DC, USA},
}

@inproceedings{Unnikrishnan2002EnergyAdaptation,
  author =	 {P. Unnikrishnan and G. Chen and M. Kandemir and
                  D. R. Mudgett},
  title =	 {Dynamic compilation for energy adaptation},
  booktitle =	 {ICCAD '02: Proceedings of the 2002 IEEE/ACM
                  International Conference on Computer-aided Design},
  year =	 2002,
  isbn =	 {0-7803-7607-2},
  pages =	 {158--163},
  location =	 {San Jose, California},
  doi =		 {http://doi.acm.org/10.1145/774572.774595},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Ogel2005EffiicentDynamicAspects,
  author =	 {Fr{\'e}d{\'e}ric Ogel and Ga{\"e}l Thomas and Bertil
                  Folliot},
  title =	 {Supporting efficient dynamic aspects through
                  reflection and dynamic compilation},
  booktitle =	 {SAC '05: Proceedings of the 2005 ACM Symposium on
                  Applied Computing},
  year =	 2005,
  isbn =	 {1-58113-964-0},
  pages =	 {1351--1356},
  location =	 {Santa Fe, New Mexico},
  doi =		 {http://doi.acm.org/10.1145/1066677.1066983},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Kotzmann2005EscapeAnalysis,
  author =	 {Thomas Kotzmann and Hanspeter M{\"o}ssenb{\"o}ck},
  title =	 {Escape analysis in the context of dynamic
                  compilation and deoptimization},
  booktitle =	 {VEE '05: Proceedings of the 1st ACM/USENIX
                  International Conference on Virtual Execution
                  Environments},
  year =	 2005,
  isbn =	 {1-59593-047-7},
  pages =	 {111--120},
  location =	 {Chicago, IL, USA},
  doi =		 {http://doi.acm.org/10.1145/1064979.1064996},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Hazelwood2003AdaptiveOnlineInlining,
  author =	 {Kim Hazelwood and David Grove},
  title =	 {Adaptive online context-sensitive inlining},
  booktitle =	 {CGO '03: Proceedings of the international symposium
                  on Code generation and optimization},
  year =	 2003,
  isbn =	 {0-7695-1913-X},
  pages =	 {253--264},
  location =	 {San Francisco, California},
  publisher =	 {IEEE Computer Society},
  address =	 {Washington, DC, USA},
}

@inproceedings{Ogata1994MultithreadSmalltalk,
  author =	 {Kazuhiro Ogata and Norihisa Doi},
  title =	 {Object allocation and dynamic compilation in
                  {MultithreadSmalltalk}},
  booktitle =	 {SAC '94: Proceedings of the 1994 ACM Symposium on
                  Applied Computing},
  year =	 1994,
  isbn =	 {0-89791-647-6},
  pages =	 {452--456},
  location =	 {Phoenix, Arizona, United States},
  doi =		 {http://doi.acm.org/10.1145/326619.326808},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Wimmer2005OptimizedIntervalSplitting,
  author =	 {Christian Wimmer and Hanspeter M{\"o}ssenb{\"o}ck},
  title =	 {Optimized interval splitting in a linear scan
                  register allocator},
  booktitle =	 {VEE '05: Proceedings of the 1st ACM/USENIX
                  international conference on Virtual execution
                  environments},
  year =	 2005,
  isbn =	 {1-59593-047-7},
  pages =	 {132--141},
  location =	 {Chicago, IL, USA},
  doi =		 {http://doi.acm.org/10.1145/1064979.1064998},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Ung2000MachineAdaptableDynamic,
  author =	 {David Ung and Cristina Cifuentes},
  title =	 {Machine-adaptable dynamic binary translation},
  booktitle =	 {DYNAMO '00: Proceedings of the ACM SIGPLAN Workshop
                  on Dynamic and Adaptive Compilation and
                  Optimization},
  year =	 2000,
  isbn =	 {1-58113-241-7},
  pages =	 {41--51},
  doi =		 {http://doi.acm.org/10.1145/351397.351414},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Brifault2004DataDrivenRTCG,
  author =	 {Karine Brifault and Henri-Pierre Charles},
  title =	 {Efficient data driven run-time code generation},
  booktitle =	 {LCR '04: Proceedings of the 7th workshop on Workshop
                  on languages, compilers, and run-time support for
                  scalable systems},
  year =	 2004,
  pages =	 {1--7},
  location =	 {Houston, Texas},
  doi =		 {http://doi.acm.org/10.1145/1066650.1066653},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Smith2000Overcoming,
  author =	 {Michael D. Smith},
  title =	 {Overcoming the challenges to feedback-directed
                  optimization (Keynote Talk)},
  booktitle =	 {DYNAMO '00: Proceedings of the ACM SIGPLAN workshop
                  on Dynamic and adaptive compilation and
                  optimization},
  year =	 2000,
  isbn =	 {1-58113-241-7},
  pages =	 {1--11},
  doi =		 {http://doi.acm.org/10.1145/351397.351408},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Kistler2003ContinuousProgramOptimization,
  author =	 {Thomas Kistler and Michael Franz},
  title =	 {Continuous program optimization: A case study},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 25,
  number =	 4,
  year =	 2003,
  issn =	 {0164-0925},
  pages =	 {500--548},
  doi =		 {http://doi.acm.org/10.1145/778559.778562},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Grant2004RetrospectiveDyC,
  author =	 {Brian Grant and Matthai Philipose and Markus Mock
                  and Craig Chambers and Susan J. Eggers},
  title =	 {A retrospective on: ``an evaluation of staged
                  run-time optimizations in DyC''},
  journal =	 {SIGPLAN Notices},
  volume =	 39,
  number =	 4,
  year =	 2004,
  issn =	 {0362-1340},
  pages =	 {656--669},
  doi =		 {http://doi.acm.org/10.1145/989393.989458},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Coglio2002SimpleVerification,
  author =	 {Alessandro Coglio},
  title =	 {Simple Verification Technique for Complex {Java}
                  Bytecode Subroutines},
  booktitle =	 {Proc.\ 4th {ECOOP} Workshop on Formal Techniques for
                  {Java}-like Programs},
  year =	 2002,
  month =	 {June}
}

@Book{Waite1984CompilerConstruction,
  author =	 {William M. Waite and Gerhard Goos},
  title =	 {Compiler Construction},
  publisher =	 SV,
  year =	 1984
}

@Book{Nielson1992SemanticsWithApplications,
  author =	 {Hanne Riis Nielson and Flemming Nielson},
  title =	 {Semantics with Applications: A Formal Introduction},
  publisher =	 Wiley,
  year =	 1992
}

@TechReport{Beck2005FIRM,
  author =	 {Michael Beck and G{\"o}tz Lindenmaier and Boris
                  Boesler and Rubino Gei{\ss}},
  title =	 {Firm, an Intermediate Language for Compiler
                  Research},
  institution =	 {University of Karlsruhe},
  year =	 2005,
  number =	 {2005-8,},
  month =	 {mar}
}

@Article{Nielson1987HoareLikeProofSystem,
  author =	 "H. Riis Nielson",
  title =	 "A Hoare-like Proof System for Run-time Analysis of
                  Programs",
  year =	 1987,
  pages =	 "107-136",
  journal =	 "Science of Computer Programming",
  volume =	 9,
  editor =	 "",
  number =	 "",
  publisher =	 "",
  url =		 "http://www2.imm.dtu.dk/pubdb/p.php?1768"
}
 
@PhdThesis{Wright2005,
  author =	 {Joel J. Wright},
  title =	 {Compiling and Reasoning about Exceptions and
                  Interrupts},
  school =	 {University of Nottingham},
  year =	 2005,
  month =	 jun
}

@Book{Michaelson1995ElementaryStandardML,
  author =	 {Greg Michaelson},
  title =	 {Elementary {Standard} {ML}},
  publisher =	 {UCL Press},
  year =	 1995
}

@Book{Michaelson1988IntroFP,
  author =	 {Greg Michaelson},
  title =	 {An Introduction to Functional Programming Through
                  Lambda Calculus},
  publisher =	 AW,
  year =	 1988
}

@InProceedings{Cooper2006Links,
  author =	 {Ezra Cooper and Sam Lindley and Philip Wadler and
                  Jeremy Yallop},
  title =	 {Links: Web Programming Without Tiers},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming (ICFP'06)},
  year =	 2006,
  note =	 {Submitted}
}

@inproceedings{Zenger2001ExtensibleAlgebraicDatatypes,
  author =	 {Matthias Zenger and Martin Odersky},
  title =	 {Extensible algebraic datatypes with defaults},
  booktitle =	 {ICFP '01: Proceedings of the sixth ACM SIGPLAN
                  International Conference on Functional Programming},
  year =	 2001,
  isbn =	 {1-58113-415-0},
  pages =	 {241--252},
  location =	 {Florence, Italy},
  doi =		 {http://doi.acm.org/10.1145/507635.507665},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{Loeh2006OpenDataTypes,
  author =	 {Andres L{\"o}h and Ralf Hinze},
  title =	 {Open data types and open functions},
  institution =	 {Lehrstuhl f{\"u}r Informatik III, Universit{\"a}t
                  Bonn},
  year =	 2006,
  number =	 {IAI-TR-2006-02}
}

@InProceedings{Loeh2006OpenDataTypesAndOpenFunctions,
  author =	 {Andres L{\"o}h and Ralf Hinze},
  title =	 {Open data types and open functions},
  booktitle =	 {Eighth ACM-SIGPLAN International Symposium on
                  Principles and Practice of Declarative Programming
                  (PPDP'06)},
  year =	 2006,
  editor =	 {Michael Maher},
  address =	 {Venice, Italy},
  month =	 jul,
  publisher =	 ACM
}

@InProceedings{Spiliopoulou2000BriskMachine,
  author =	 {Eleni Spiliopoulou and Ian Holyer},
  title =	 {The Brisk Machine: the Next Step in the Execution of
                  Functional Languages},
  booktitle =	 {Proceedings of Festival Workshop in Foundations and
                  Computations, FC'00},
  year =	 2000,
  month =	 jul
}

@InProceedings{Candea2004Microreboot,
  author =	 {George Candea and Shinichi Kawamoto and Yuichi
                  Fujiki and Greg Friedman and Armando Fox},
  title =	 {Microreboot -- A Technique for Cheap Recovery},
  booktitle =	 {Proceedings of the 6th Symposium on Operating
                  Systems Design and Implementation (OSDI)},
  year =	 2004,
  address =	 {San Francisco, CA},
  month =	 dec
}

@InProceedings{Candea2001RecursiveRestartability,
  author =	 {George Candea and Armando Fox},
  title =	 {Recursive Restartability: Turning the Reboot
                  Sledgehammer into a Scalpel},
  booktitle =	 {Proceedings of the 8th {W}orkshop on {H}ot {T}opics
                  in {O}perating {S}ystems ({HotOS-VIII})},
  pages =	 {110--115},
  year =	 2001,
  address =	 {Schloss Elmau, Germany},
  month =	 may,
  organization = {{IEEE} {C}omputer {S}ociety},
  annote =	 {Even after decades of software engineering research,
                  complex computer systems still fail, primarily due
                  to nondeterministic bugs that are typically resolved
                  by rebooting. Conceding that Heisenbugs will remain
                  a fact of life, we propose a systematic
                  investigation of restarts as "high availability
                  medicine." In this paper we show how recursive
                  restartability (RR) -- the ability of a system to
                  gracefully tolerate restarts at multiple levels --
                  improves fault tolerance, reduces time-to-repair,
                  and enables system designers to build flexible,
                  highly available software infrastructures. Using
                  several examples of widely deployed software
                  systems, we identify properties that are required of
                  RR systems and outline an agenda for turning the
                  recursive restartability philosophy into a practical
                  software structuring tool. Finally, we describe
                  infrastructural support for RR systems, along with
                  initial ideas on how to analyze and benchmark such
                  systems.}
}

@InProceedings{Candea2003CrashOnlySoftware,
  author =	 {George Candea and Armando Fox},
  title =	 {Crash-Only Software},
  booktitle =	 {Proceedings of the 9th {W}orkshop on {H}ot {T}opics
                  in {O}perating {S}ystems ({HotOS-IX})},
  year =	 2003,
  address =	 {Lihue, Hawaii},
  month =	 may,
  organization = {{IEEE} {C}omputer {S}ociety}
}

@Misc{MLWorkingGroup2000ML2000,
  author =       {The {ML2000 Working Group}},
  title =        {{Principles and a Preliminary Design for ML2000}},
  howpublished = {World Wide Web},
  month =        mar,
  year =         2000,
  annote =       {Available at:
                  \url{http://flint.cs.yale.edu/flint/publications/ml2000.html}}
}

@TechReport{Thies1999StaticAnalysisLib,
  author =	 {Michael Thies},
  title =	 {Static compositional analysis of libraries in
                  support of dynamic optimization},
  institution =	 {Universit{\"a}t Paderborn Fachbereich
                  Mathematik-Informatik},
  year =	 1999,
  type =	 {Technischer Bericht, Reihe Informatik},
  number =	 {tr-ri-99-210},
  month =	 aug
}

@inproceedings{Ishizaki2000Devirtualization,
  author =	 {Kazuaki Ishizaki and Motohiro Kawahito and Toshiaki
                  Yasue and Hideaki Komatsu and Toshio Nakatani},
  title =	 {A study of devirtualization techniques for a Java
                  Just-In-Time compiler},
  booktitle =	 {OOPSLA '00: Proceedings of the 15th ACM SIGPLAN
                  conference on Object-oriented programming, systems,
                  languages, and applications},
  year =	 2000,
  isbn =	 {1-58113-200-X},
  pages =	 {294--310},
  location =	 {Minneapolis, Minnesota, United States},
  doi =		 {http://doi.acm.org/10.1145/353171.353191},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Misc{Jian2004DistributedJIT,
  author =       {Li Jian},
  title =        {Distributed Java Just-in-Time compiler for embedded
                  system},
  howpublished = {Available from: \url{http://www.cogs.susx.ac.uk/users/pgrep/whp/doc/individual/2004/papers/LiJian.pdf}}
}

@inproceedings{Meyer1988ContinuationsUnreasonable,
  author =	 {Albert Meyer and Jon G. Riecke},
  title =	 {Continuations may be unreasonable},
  booktitle =	 {LFP '88: Proceedings of the 1988 ACM conference on
                  LISP and functional programming},
  year =	 1988,
  isbn =	 {0-89791-273-X},
  pages =	 {63--71},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/62678.62685},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Reps2006IntermediateRepresentation,
  author =	 {Thomas Reps and Gogul Balakrishnan and Junghee Lim},
  title =	 {Intermediate-Representation Recovery from Low-Level
                  Code},
  booktitle =	 {Proc. Workshop on Partial Evaluation and Program
                  Manipulation (PEPM)},
  year =	 2006,
  address =	 {Charleston, South California},
  note =	 jan
}

@PhdThesis{Backes2004XRTLAnalyse,
  author =	 {Werner Backes},
  title =	 {{Programmanalyse des XRTL Zwischencodes}},
  school =	 {Universit{\"a}t des Saarlandes},
  year =	 2004
}

@incollection{Wall1992SystemsCodeModification,
  author =	 "David W. Wall",
  title =	 "{S}ystems for late code modification",
  booktitle =	 "Code Generation - Concepts, Tools, Techniques",
  publisher =	 "Springer-Verlag",
  editor =	 "Giegerich, Robert and Graham, Susan L.",
  pages =	 "275-293",
  year =	 1992,
  url =		 "citeseer.ist.psu.edu/wall92systems.html"
}

@article{Kamin2003RoutineRTCG,
  author =	 {Sam Kamin},
  title =	 {Routine run-time code generation},
  journal =	 {SIGPLAN Notices},
  volume =	 38,
  number =	 12,
  year =	 2003,
  issn =	 {0362-1340},
  pages =	 {44--56},
  doi =		 {http://doi.acm.org/10.1145/966051.966059},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Gay2005TinyOS,
  author =	 {David Gay and Phil Levis and David Culler},
  title =	 {Software design patterns for TinyOS},
  booktitle =	 {LCTES'05: Proceedings of the 2005 ACM SIGPLAN/SIGBED
                  conference on Languages, compilers, and tools for
                  embedded systems},
  year =	 2005,
  isbn =	 {1-59593-018-3},
  pages =	 {40--49},
  location =	 {Chicago, Illinois, USA},
  doi =		 {http://doi.acm.org/10.1145/1065910.1065917},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Cheney2005ScrapYourNameplate,
  author =	 {James Cheney},
  title =	 {Scrap your Nameplate (Functional Pearl)},
  booktitle =	 {Proceedings of the International Conference on
                  Functional Programming (ICFP 2005)},
  pages =	 {180--191},
  year =	 2005
}

@InProceedings{Soffa2004DevelopingFoundation,
  author =	 {Mary Lou Soffa},
  title =	 {Developing a Foundation for Code Optimization},
  booktitle =	 {Compiler Construction: 13th International
                  Conference, CC 2004},
  pages =	 {1--4},
  year =	 2004,
  volume =	 2985,
  series =	 LNCS,
  month =	 jan
}

@Article{Wehr2006ModulesClasses,
  author =	 {Stefan Wehr and Manuel M. T. Chakravarty},
  title =	 {{ML Modules and Haskell Type Classes: A Constructive
                  Comparison}},
  journal =	 JFP,
  year =	 2006,
  note =	 {Submitted}
}

@Book{Fahringer2003SymbolicAnalysis,
  author =	 {Thomas Fahringer and Bernhard Scholz},
  title =	 {Advanced Symbolic Analysis for Compilers},
  publisher =	 SV,
  year =	 2003,
  volume =	 2628,
  series =	 LNCS
}

@InProceedings{Blazy2006CFront,
  author =	 {Sandrine Blazy and Zaynah Dargaye and Xavier Leroy},
  title =	 {Formal verification of a C compiler front-end},
  booktitle =	 {Formal Methods 2006},
  year =	 2006
}

@InProceedings{Dean1995CHA,
  author =	 {Jeffrey Dean and David Grove and Craig Chambers},
  title =	 {Optimization of Object-Oriented Programs Using
                  Static Class Hierarchy Analysis},
  booktitle =	 {ECOOP '95},
  pages =	 {77--101},
  year =	 1995,
  volume =	 952,
  series =	 LNCS
}

@inproceedings{Morris1973TypesAreNotSets,
  author =	 {James H. Morris, Jr.},
  title =	 {Types are not sets},
  booktitle =	 {POPL '73: Proceedings of the 1st annual ACM
                  SIGACT-SIGPLAN symposium on Principles of
                  programming languages},
  year =	 1973,
  pages =	 {120--124},
  location =	 {Boston, Massachusetts},
  doi =		 {http://doi.acm.org/10.1145/512927.512938},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Shivers1991UVE,
  author =	 {Olin Shivers},
  title =	 {Useless-variable elimination},
  booktitle =	 {Proceedings of the Workshop on Static Analysis of
                  Equational, Functional and Logic Programs (WSA'91)},
  year =	 1991,
  address =	 {Bordeaux, France},
  month =	 oct,
  note =	 {Published as \emph{Actes JTASPEFL'91}, Bigre \#74,
                  Atelier Irisa, IRISA Campus de Beaulieu}
}

@TechReport{Shivers1990SuperBeta,
  author =	 {Olin Shivers},
  title =	 {Super-$\beta$: Copy, constant, and lambda
                  propagation in Scheme},
  institution =	 {CMU School of Computer Science},
  year =	 1990,
  note =	 {Scheme Flow-analysis Working Note \#3 (May 1, 1990)}
}

@InProceedings{vanReeuwijk2003Metacompilation,
  author =	 {C. van Reeuwijk},
  title =	 {Rapid and Robust Compiler Construction Using
                  Template-Based Metacompilation},
  booktitle =	 {CC2003},
  pages =	 {247--261},
  year =	 2003,
  month =        apr,
  address =	 {Warsaw, Poland}
}

@InProceedings{vanReeuwijk2002AddingTuplesToJava,
  author =	 {C. van Reeuwijk and H.J. Sips},
  title =	 {Adding Tuples to Java: a Study in Lightweight Data
                  Structures},
  booktitle =	 {Proc. of the Java Grande/ISCOPE 2002 Conference},
  pages =	 {185--191},
  year =	 2002,
  address =	 {Seattle, USA},
  month =	 nov
}

@inproceedings{Loewe2002MetaprogrammingApplied,
  author =	 {Welf L{\"o}we and Markus L. Noga},
  title =	 {Metaprogramming Applied to Web Component Deployment},
  booktitle =	 {Electronic Notes in Theoretical Computer Science},
  volume =	 65,
  number =	 4,
  publisher =	 {Elsevier},
  year =	 2002
}

@InProceedings{Boerger1999JavaSemantics,
  author =	 {Egon B{\"o}rger and Wolfram Schulte},
  title =	 {A Programmer Friendly Modular Definition of the
                  Semantics of Java},
  booktitle =	 {Formal Syntax and Semantics of Java},
  pages =	 {353--404},
  year =	 1999,
  editor =	 {J. Alves-Foss},
  volume =	 1523,
  series =	 LNCS,
  publisher =	 SV
}

@Misc{Ramsey2001FeatherweightConcurrency,
  author =       {Norman Ramsey and Simon {Peyton Jones}},
  title =        {Featherweight concurrency in a portable assembly
                  language},
  howpublished = {Available from:
                  \url{http://research.microsoft.com/Users/simonpj/papers/c--/c--conc.htm}},
  month =        jan,
  year =         2001
}

@Article{BakerFinch2004CPR,
  author =	 {Clem Baker-Finch and Kevin Glynn and Simon {Peyton
                  Jones}},
  title =	 {Constructed Product Result Analysis for Haskell},
  journal =	 {Journal of Functional Programming},
  year =	 2004,
  volume =	 14,
  number =	 2,
  pages =	 {211--245}
}

@PhdThesis{Escobar2003PhD,
  author =	 {Santiago Escobar},
  title =	 {Strategies and Analysis Techniques for Functional
                  Program Optimization},
  school =	 {Departamento de Sistemas Informáticos y Computación,
                  Universidad Politécnica de Valencia},
  year =	 2003,
  month =	 oct
}

@inproceedings{Debray1995AbstractInterpretationLowLevelOptimization,
  author =	 {Saumya Debray},
  title =	 {Abstract interpretation and low-level code
                  optimization},
  booktitle =	 {PEPM '95: Proceedings of the 1995 ACM SIGPLAN
                  symposium on Partial evaluation and semantics-based
                  program manipulation},
  year =	 1995,
  isbn =	 {0-89791-720-0},
  pages =	 {111--121},
  location =	 {La Jolla, California, United States},
  doi =		 {http://doi.acm.org/10.1145/215465.215571},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Nilsson2005DynamicOptimization,
  author =	 {Henrik Nilsson},
  title =	 {Dynamic optimization for functional reactive
                  programming using generalized algebraic data types},
  booktitle =	 {ICFP '05: Proceedings of the tenth ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2005,
  isbn =	 {1-59593-064-7},
  pages =	 {54--65},
  location =	 {Tallinn, Estonia},
  doi =		 {http://doi.acm.org/10.1145/1086365.1086374},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{DBLP:conf/ifl/BentonKLR04,
  author =	 {Nick Benton and Andrew Kennedy and Sam Lindley and
                  Claudio V. Russo},
  title =	 {Shrinking Reductions in SML.NET.},
  booktitle =	 {IFL},
  year =	 {2004},
  pages =	 {142-159},
  ee =		 {http://dx.doi.org/10.1007/11431664_9},
  crossref =	 {DBLP:conf/ifl/2004},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}

@proceedings{DBLP:conf/ifl/2004,
  editor =	 {Clemens Grelck and Frank Huch and Greg Michaelson
                  and Philip W. Trinder},
  title =	 {Implementation and Application of Functional
                  Languages, 16th International Workshop, IFL 2004,
                  L{\"u}beck, Germany, September 8-10, 2004, Revised
                  Selected Papers},
  booktitle =	 {IFL},
  publisher =	 {Springer},
  series =	 {Lecture Notes in Computer Science},
  volume =	 {3474},
  year =	 {2005},
  isbn =	 {3-540-26094-3},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}

@inproceedings{DBLP:conf/ifl/StefanovS04,
  author =	 {Ekaterina Stefanov and Anthony M. Sloane},
  title =	 {Simple, Effective Code-Size Reduction for Functional
                  Programs.},
  booktitle =	 {IFL},
  year =	 {2004},
  pages =	 {211-225},
  ee =		 {http://dx.doi.org/10.1007/11431664_13},
  crossref =	 {DBLP:conf/ifl/2004},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}

@Misc{Palmer2006PluvoHomePage,
  author =       {Sean B. Palmer},
  title =        {Pluvo Home Page},
  howpublished = {Available from: \url{http://inamidst.com/pluvo/}},
  month =        jul,
  year =         2006,
  note =         {Just-in-time compiled functional/imperative
                  scripting language}
}

@Misc{PLT2006PLTSchemeHomePage,
  author =	 {The {PLT Group}},
  title =	 {PLT Scheme Home Page},
  howpublished = {Available from: \url{http://www.plt-scheme.org}},
  month =	 jul,
  year =	 2006,
  note =	 {Scheme compiler/interpreter with just-in-time
                  compilation}
}

@Book{Demoen2005First10PrologContests,
  author =	 {Bart Demoen and Phuong-Lan Nguyen and Tom Schrijvers
                  and Remko Troncon},
  title =	 {The First 10 Prolog Programming Contests},
  publisher =	 {Self},
  year =	 2005
}

@proceedings{AlvesFoss1999FormalSyntaxSemanticsJava,
  editor    = {Jim Alves-Foss},
  title     = {Formal Syntax and Semantics of Java},
  booktitle = {Formal Syntax and Semantics of Java},
  publisher = {Springer},
  series    = {Lecture Notes in Computer Science},
  volume    = {1523},
  year      = {1999},
  isbn      = {3-540-66158-1},
  bibsource = {DBLP, http://dblp.uni-trier.de}
}

@inproceedings{Qian1999FormalSepcJVMCode,
  author =	 {Zhenyu Qian},
  title =	 {A Formal Specification of Java Virtual Machine
                  Instructions for Objects, Methods and Subrountines.},
  booktitle =	 {Formal Syntax and Semantics of Java},
  year =	 1999,
  pages =	 {271-312},
  ee =
                  {http://link.springer.de/link/service/series/0558/bibs/1523/15230271.htm},
  crossref =	 {AlvesFoss1999FormalSyntaxSemanticsJava},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}

@InProceedings{Paleczny2001HotSpotServer,
  author =	 {Michael Paleczny and Christopher Vick and Cliff
                  Click},
  title =	 {{The Java HotSpot\texttrademark{} Server Compiler}},
  booktitle =	 {Proceedings of the Java\texttrademark{} Virtual
                  Machine Research and Technology Symposium (JVM '01)},
  year =	 2001,
  month =	 apr,
  organization = {USENIX Association}
}

@Proceedings{Cook2003WODA,
  title =	 {ICSE Workshop on Dynamic Analysis (WODA 2003)},
  year =	 2003,
  editor =	 {Jonathan Cook and Michael Ernst},
  address =	 {Portland, Oregon},
  month =	 may
}

@Article{Bird2006FindingCelebreties,
  author =	 {Richard Bird and Sharon Curtis},
  title =	 {FUNCTIONAL PEARLS: Finding celebrities: A lesson in
                  functional programming},
  journal =	 JFP,
  year =	 2006,
  volume =	 16,
  number =	 1,
  pages =	 {13--20},
  month =	 jan
}

@Article{Erwig2006ProbabilisticFP,
  author =	 {Martin Erwig and Steve Kollmansberger},
  title =	 {FUNCTIONAL PEARLS: Probabilistic functional
                  programming in Haskell },
  journal =	 JFP,
  year =	 2006,
  volume =	 16,
  number =	 1,
  pages =	 {21--34},
  month =	 jan
}

@InBook{Hinze1998ProjBasStriktAna,
  author =	 {Ralf Hinze},
  title =	 {Ausgezeichnete Informatikdissertationen 1996},
  chapter =	 {Projektionsbasierte Striktheitsanalyse},
  publisher =	 {Teubner, Stuttgart},
  year =	 1998,
  pages =	 {46--61}
}

@Article{Hinze2006FingerTrees,
  author =	 {Ralf Hinze and Ross Paterson},
  title =	 {Finger trees: a simple general-purpose data
                  structure},
  journal =	 JFP,
  year =	 2006,
  volume =	 16,
  number =	 2,
  pages =	 {197-217}
}

@PhdThesis{Hinze1995PhD,
  author =	 {Ralf Hinze},
  title =	 {Projection-based Strictness Analysis - Theoretical
                  and Practical Aspects},
  school =	 {Universität Bonn},
  year =	 1995,
  month =	 nov
}

@Book{Felleisen2006PLLC,
  author =       {Matthias Felleisen and Matthew Flatt},
  title =        {Programming Languages and Lambda Calculi},
  publisher =    {Web},
  year =         2006,
  note =         {Available from:
                  \url{http://www.cs.utah.edu/plt/publications/pllc.pdf}}
}

@InProceedings{Benton2006AbstractingAllocation,
  author =       {Nick Benton},
  title =        {Abstracting Allocation: The New new Thing},
  booktitle =    {Somewhere Conference},
  year =         2006,
  month =        sep,
  note =         {Available online:
                  \url{http://research.microsoft.com/~nick/newnewcsl.pdf}}
}

@Misc{Abramsky2006SociallyResponsive,
  author =       {Samson Abramsky},
  title =        {Socially Responsive, Environmentally Friendly Logic},
  howpublished = {Available online:
                  \url{http://web.comlab.ox.ac.uk/oucl/work/
                  samson.abramsky/sandu.pdf}},
  year =         2006
}

@Article{Cierniak2003ORP,
  author =	 {Michal Cierniak and Marsha Eng and Neal Glew and
                  Brian Lewis and James Stichnoth},
  title =	 {The Open Runtime Platform: A Flexible
                  High-Performance Managed Runtime Environment},
  journal =	 {Intel Technology Journal},
  year =	 2003,
  volume =	 7,
  number =	 1,
  month =	 feb
}

@inproceedings{Hundt2006StructureLayoutOptimization,
  author =	 {Robert Hundt and Sandya Mannarswamy and Dhruva
                  Chakrabarti},
  title =	 {Practical Structure Layout Optimization and Advice},
  booktitle =	 {CGO '06: Proceedings of the International Symposium
                  on Code Generation and Optimization},
  year =	 2006,
  isbn =	 {0-7695-2499-0},
  pages =	 {233--244},
  doi =		 {http://dx.doi.org/10.1109/CGO.2006.29},
  publisher =	 {IEEE Computer Society},
  address =	 {Washington, DC, USA},
}

@inproceedings{Bruening2006ThreadShared,
  author =	 {Derek Bruening and Vladimir Kiriansky and Timothy
                  Garnett and Sanjeev Banerji},
  title =	 {Thread-Shared Software Code Caches},
  booktitle =	 {CGO '06: Proceedings of the International Symposium
                  on Code Generation and Optimization},
  year =	 2006,
  isbn =	 {0-7695-2499-0},
  pages =	 {28--38},
  doi =		 {http://dx.doi.org/10.1109/CGO.2006.36},
  publisher =	 {IEEE Computer Society},
  address =	 {Washington, DC, USA},
}

@InProceedings{Haller2006EventBased,
  author =       {Philipp Haller and Martin Odersky},
  title =        {Event-Based Programming without Inversion of Control},
  booktitle =    {Proc. Joint Modular Languages Conference},
  year =         2006,
  series =       {Springer LNCS}
}

@Misc{Valgrind2006HomePage,
  title =	 {Valgrind Home Page},
  howpublished = {Available from: \url{http://valgrind.org}},
  month =	 jul,
  year =	 2006
}

@InProceedings{PeytonJones2007HistoryOfHaskell,
  author =	 {Simon {Peyton Jones} and Phil Wadler and Paul Hudak
                  and and John Hughes },
  title =	 {The History of Haskell (draft)},
  booktitle =	 {History of Programming Languages conference
                  (HOPL'07)},
  year =	 2007,
  note =	 {Submitted}
}

@Unpublished{PeytonJones1992StaticSemanticsHaskell,
  author =       {Simon {Peyton Jones} and Philip Wadler},
  title =        {A static semantics for {Haskell}},
  note =         {Draft, available online:
                  \url{http://research.microsoft.com/~simonpj/Papers/static-semantics.dvi.gz}},
  month =        feb,
  year =         1992
}

@TechReport{Harris2006LeakyRegions,
  author =	 {Tim Harris},
  title =	 {Leaky regions: linking reclamation hints to program
                  structure},
  institution =	 {Microsoft Research},
  year =	 2006,
  number =	 {MSR-TR-2006-84},
  month =	 jun
}

@TechReport{UnknownMITMemo35,
  author =	 {No author(s) listed},
  title =	 {LAP (LISP Assembly Program)},
  institution =	 MITAI,
  year =	 {No date listed},
  type =	 {MIT Memo},
  number =	 35
}

@TechReport{McCarthy1962BasisMathematicalTheory,
  author =	 {John McCarthy},
  title =	 {A Basis for a Mathematical Theory of Computation},
  institution =	 MITAI,
  year =	 1962,
  type =	 {MIT Memo},
  number =	 31,
  month =	 jan
}

@Book{Chakravarty2003FFIReport,
  editor =	 {Manuel Chakravarty},
  title =	 {The Haskell 98 Foreign Function Interface 1.0 -- An
                  Addendum to the Haskell 98 Report},
  publisher =	 {WWW},
  year =	 2003
}

@Book{SPARC1994SPARCArchitectureManual,
  editor =	 {David L. Weaver and Tom Germond},
  title =	 {The SPARC Architecture Manual},
  publisher =	 {PTR Prentice Hall},
  year =	 1994
}

@phdthesis{King2004RemovingGCSynchronisation,
  author =	 {Andy C. King},
  title =	 {Removing Garbage Collector Synchronisation},
  month =	 {September},
  year =	 2004,
  pages =	 211,
  keywords =	 {},
  note =	 {},
  url =		 {http://www.cs.kent.ac.uk/pubs/2004/1981},
  publication_type ={phdthesis},
  submission_id ={24459_1096908934},
  school =	 {University of Kent at Canterbury},
}

@article{ Bacon1994CompilerTransformations,
  author =	 "David F. Bacon and Susan L. Graham and Oliver
                  J. Sharp",
  title =	 "Compiler Transformations for High-Performance
                  Computing",
  journal =	 "ACM Computing Surveys",
  volume =	 26,
  number =	 4,
  pages =	 "345--420",
  year =	 1994,
  url =		 "citeseer.ist.psu.edu/article/bacon93compiler.html"
}

@Misc{Brady2006Ivor,
  author =       {Edwin Brady},
  title =        {Ivor, a Proof Engine},
  howpublished = {Available from:
                  \url{http:/www.dcs.st-and.ac.uk/~eb/drafts/ivor.pdf}},
  month =        aug,
  year =         2006
}

@Article{Lapalme1998DynamicTabbing,
  author =	 {Guy Lapalme},
  title =	 {Dynamic tabbing for automatic indentation with the
                  layout rule},
  journal =	 JFP,
  year =	 1998,
  volume =	 8,
  number =	 5,
  month =	 sep
}

@Article{McBride2006Applicative,
  author =	 {Conor McBride and Ross Paterson},
  title =	 {Applicative Programming with Effects},
  journal =	 JFP,
  year =	 2006,
  volume =	 0,
  number =	 0,
  pages =	 {0--0},
  note =	 {submitted}
}

@InProceedings{Hill1994VectorisationMonad,
  author =	 {Jonathan M. D. Hill and Keith M. Clarke and Richard
                  Bornat},
  title =	 {The Vectorisation Monad},
  booktitle =	 {PASCO'94},
  pages =	 {204--213},
  year =	 1994
}

@InProceedings{Hinze2000DerivingBacktracking,
  author =	 {Ralf Hinze},
  title =	 {Deriving Backtracking Monad Transformers},
  booktitle =	 {ICFP'00},
  year =	 2000,
  address =	 {Montreal, Canada},
  publisher =	 ACM
}

@article{Ershov1965Alpha,
  author =	 {A. P. Ershov},
  title =	 {ALPHA - an automatic programming system of high
                  efficiency},
  journal =	 {ALGOL Bull.},
  number =	 19,
  year =	 1965,
  issn =	 {0084-6198},
  pages =	 {19--27},
  doi =		 {http://doi.acm.org/10.1145/1060998.1061006},
  publisher =	 {Computer History Museum},
  address =	 {Mountain View, CA, United States},
}

@inproceedings{Buda1975Alpha6,
  author =	 {A. O. Buda and A. A. Granovaky and A. P. Ershov},
  title =	 {Implementation of the Alpha-6 programming system},
  booktitle =	 {Proceedings of the international conference on
                  Reliable software},
  year =	 1975,
  pages =	 {371--381},
  location =	 {Los Angeles, California},
  doi =		 {http://doi.acm.org/10.1145/800027.808460},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Steele1975Compactifying,
  author =	 {Guy L. {Steele, Jr.}},
  title =	 {Multiprocessing compactifying garbage collection},
  journal =	 {Communications of the ACM},
  volume =	 18,
  number =	 9,
  year =	 1975,
  issn =	 {0001-0782},
  pages =	 {495--508},
  doi =		 {http://doi.acm.org/10.1145/361002.361005},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Shields2001FirstClassModules,
  author =	 {Mark Shields and Simon {Peyton Jones}},
  title =	 {First-class Modules for Haskell},
  booktitle =	 {International Conference on Foundations of
                  Object-Oriented Languages (FOOL 9)},
  year =	 2001,
  address =	 {Portland, Oregon},
  month =	 oct
}


@InProceedings{PeytonJonesBulkTypes,
  author =	 {Simon {Peyton Jones}},
  title =	 {Bulk types with class},
  booktitle =	 {Electronic proceedings of the 1996 Glasgow
                  Functional Programming Workshop},
  year =	 1996,
  address =	 {Ullapool},
  month =	 jul
}

@PhdThesis{Gill1996PhD,
  author =	 {Andrew Gill},
  title =	 {Cheap deforestation for non-strict functional
                  languages},
  school =	 {University of Glasgow},
  year =	 1996,
  month =	 jan
}

@inproceedings{Huelsbergen93Concurrent,
  author =	 "Lorenz Huelsbergen and James R. Larus",
  title =	 "A Concurrent Copying Garbage Collector for Languages
                  that Distinguish (Im)mutable Data",
  booktitle =	 "Principles Practice of Parallel Programming",
  pages =	 "73-82",
  year =	 1993,
  url =		 "citeseer.ist.psu.edu/huelsbergen93concurrent.html"
}

@TechReport{Nettles1993Replication,
  author =	 {Scott M. Nettles and James W. O'Toole and David
                  Pierce and Nicholas Haines},
  title =	 {Replication-Based Incremental Copying Collection},
  institution =	 {Carnegie Mellon University},
  year =	 1993,
  number =	 {CMU-CS-93-135}
}

@Book{Knuth1991LiterateProgramming,
  author =	 {Donald E. Knuth},
  title =	 {Literate Programming},
  publisher =	 {Center for the Study of Language and Information},
  year =	 1991,
  number =	 27,
  series =	 {CSLI Lecture Notes}
}

@Book{Ruething1998CodeMotion,
  author =	 {Oliver R{\"u}thing},
  title =	 {Interacting Code Motion Transformations: Their
                  Impact and Their Complexity},
  publisher =	 SV,
  year =	 1998,
  volume =	 1539,
  series =	 LNCS
}

@Proceedings{Bodik2005CC,
  title =	 {Compiler Construction},
  year =	 2005,
  editor =	 {Ratislav Bodik},
  volume =	 3443,
  series =	 LNCS
}

@InProceedings{Siek2006GradualTyping,
  author =	 {Jeremy G. Siek and Walid Taha},
  title =	 {Gradual Typing for Functional Languages},
  booktitle =	 {Scheme and Functional Programming},
  year =	 2006,
  address =	 {Portland, Oregon},
  publisher =	 ACM
}

@InProceedings{Xu2006ExtendedStaticChecking,
  author =	 {Dana N. Xu},
  title =	 {Extended Static Checking for Haskell},
  booktitle =	 {Haskell Workshop '06},
  year =	 2006,
  address =	 {Portland, Oregon},
  publisher =	 ACM
}

@InProceedings{Hoare2003VerifyingCompiler,
  author =	 {C.A.R. Hoare},
  title =	 {The Verifying Compiler: A Grand Challenge for
                  Computing Research},
  booktitle =	 {Modular Programming Languages},
  year =	 2003,
  volume =	 2789,
  series =	 LNCS,
  publisher =	 SV
}

@PhdThesis{Buttle2001VerificationCompiledCode,
  author =	 {Darren Lee Buttle},
  title =	 {Verification of Compiled Code},
  school =	 {University of York},
  year =	 2001,
  month =	 jan
}

@Book{Garey1979ComputersIntractibility,
  author =	 {Michael R. Garey and David S. Johnson},
  title =	 {Computers and Intractibility},
  publisher =	 {W. H. Freeman and Company},
  year =	 1979
}

@InProceedings{Glesner2005Herausforderungen,
  author =	 {Sabine Glesner and Jan Olaf Blech},
  title =	 {Logische und softwaretechnische Herausforderungen
                  bei der Verifikation optimierender Compiler},
  booktitle =	 {Tagung Software Engineering 2005},
  year =	 2005,
  series =	 {Lecture Notes in Informatics},
  address =	 {Essen, Germany}
}

@Article{Frederiksen2002Correctness,
  author =	 {Carl Christian Frederiksen},
  title =	 {Correctness of Classical Compiler Optimizations
                  using CTL},
  journal =	 {Electronic Notes in Theoretical Computer Science},
  year =	 2002,
  volume =	 65,
  number =	 2
}

@inproceedings{Gaul1996Architecture,
  author =	 {Thomas Gaul and Gerhard Goos and Andreas Heberle and
                  Wolf Zimmermann and Wolfgang Goerigk},
  title =	 {{An Architecture for Verified Compiler
                  Construction}},
  booktitle =	 {{J}oint {M}odular {L}anguages {C}onference JMLC'97},
  year =	 1997 ,
  month =	 mar,
  annote =	 {},
  address =	 {Linz, Austria}
}

@InProceedings{Goos1999VerificationOfCompilers,
  author =	 {Gerhard Goos and Wolf Zimmermann},
  title =	 {Verification of Compilers},
  booktitle =	 {Correct System Design},
  year =	 1999
}

@inproceedings{Stringer-Calvert1997UsingPVS,
  title =	 {Using {PVS} to Prove a {Z} Refinement: A Case Study},
  author =	 {David W.J. Stringer-Calvert and Susan Stepney and
                  Ian Wand},
  institution =	 {Department of Computer Science, University of York},
  booktitle =	 {{FME} '97: Formal Methods: Their Industrial
                  Application and Strengthened Foundations},
  editor =	 {John Fitzgerald and Cliff B. Jones and Peter Lucas},
  address =	 {Gr{\"a}z, Austria},
  publisher =	 SV,
  series =	 LNCS,
  number =	 1313,
  month =	 sep,
  year =	 1997,
  pages =	 {573--588}
}

@inproceedings{Glesner2002VerifiedCodeGeneration,
  author =	 {Sabine Glesner and Rubino Gei{\ss} and Boris
                  Boesler},
  title =	 {Verified Code Generation for Embedded Systems},
  booktitle =	 {In Proceedings of the COCV-Workshop 2002 (Compiler
                  Optimization meets Compiler Verification)},
  year =	 2002,
  month =	 Apr,
  organization = {Electronic Notes in Theoretical Computer Science
                  (ENTCS)},
  publisher =	 {5th European Conferences on Theory and Practice of
                  Software (ETAPS 2002)},
  volume =	 65,
  number =	 2,
  pages =	 {1-18},
  abstract =	 {Leider nur in Englisch verf{\"u}gbar. Digital signal
                  processors provide specialized SIMD (single
                  instruction multiple data) operations designed to
                  dramatically increase performance in embedded
                  systems. While these operations are simple to
                  understand, their unusual functions and their
                  parallelism make it dicult for automatic code
                  generation algorithms to use them eectively. In this
                  paper, we present a new optimizing code generation
                  method that can deploy these operations successfully
                  while also verifying that the generated code is a
                  correct translation of the input program. },
  address =	 {Grenoble, France},
}

@inproceedings{Glesner2004ASMSemanticsSSA,
  author =	 {Sabine Glesner},
  title =	 {An ASM Semantics for SSA Intermediate
                  Representations},
  booktitle =	 {Proceedings of the 11th International Workshop on
                  Abstract State Machines},
  year =	 2004,
  month =	 may,
  publisher =	 SV,
  series =	 LNCS,
  volume =	 {Vol. 3052},
  pages =	 {144 - 160},
  address =	 {Wittenberg, Germany},
}

@inproceedings{Necula2000TranslationValidation,
  author =	 {George C. Necula},
  title =	 {Translation validation for an optimizing compiler},
  booktitle =	 {PLDI '00: Proceedings of the ACM SIGPLAN 2000
                  conference on Programming language design and
                  implementation},
  year =	 2000,
  isbn =	 {1-58113-199-2},
  pages =	 {83--94},
  location =	 {Vancouver, British Columbia, Canada},
  doi =		 {http://doi.acm.org/10.1145/349299.349314},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Article{Bicarregui2006VerifiedRepository,
  author =	 {J.C. Bicarregui and C.A.R. Hoare and
                  J.C.P. Woodcock},
  title =	 {The verified software repository: a step towards the
                  verifying compiler},
  journal =	 {Formal Aspects of Computing},
  year =	 2006,
  volume =	 18,
  number =	 2,
  pages =	 {143--151},
  month =	 jun
}

@article{Leinenbach2005FormalVerification,
  author =	 {Dirk Leinenbach and Wolfgang Paul and Elena Petrova},
  title =	 {Towards the Formal Verification of a C0 Compiler:
                  Code Generation and Implementation Correctnes},
  journal =	 {sefm},
  volume =	 0,
  year =	 2005,
  isbn =	 {0-7695-2435-4},
  pages =	 {2-12},
  doi =
                  {http://doi.ieeecomputersociety.org/10.1109/SEFM.2005.51},
  publisher =	 {IEEE Computer Society},
  address =	 {Los Alamitos, CA, USA},
}

@inproceedings{Leroy2006FormalCertification,
  author =	 {Xavier Leroy},
  title =	 {Formal certification of a compiler back-end or:
                  programming a compiler with a proof assistant},
  booktitle =	 {POPL '06: Conference record of the 33rd ACM
                  SIGPLAN-SIGACT symposium on Principles of
                  programming languages},
  year =	 2006,
  isbn =	 {1-59593-027-2},
  pages =	 {42--54},
  location =	 {Charleston, South Carolina, USA},
  doi =		 {http://doi.acm.org/10.1145/1111037.1111042},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Dave2003CompilerVerificationBibliography,
  author =	 {Maulik A. Dave},
  title =	 {Compiler verification: a bibliography},
  journal =	 {SIGSOFT Softw. Eng. Notes},
  volume =	 28,
  number =	 6,
  year =	 2003,
  issn =	 {0163-5948},
  pages =	 {2--2},
  doi =		 {http://doi.acm.org/10.1145/966221.966235},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Leinenbach2005FormalVerificationC0,
  Author =	 {Leinenbach, D. and Paul, W. and Petrova, E.},
  Title =	 {Towards the formal verification of a {C}0 compiler:
                  {C}ode generation and implementation correctness},
  BookTitle =	 {Proceedings of the 3rd {I}nternational {C}onference
                  on {S}oftware {E}ngineering and {F}ormal {M}ethods
                  ({SEFM} 2005)},
  year =	 2005
}

@Article{Klein2006MachineCheckedModel,
  author =	 {Gerwin Klein and Tobias Nipkow},
  title =	 {A Machine-Checked Model for a Java-Like Language,
                  Virtual Machine, and Compiler},
  journal =	 {ACM Transactions on Programming Languages and
                  Systems},
  year =	 2006,
  volume =	 28,
  number =	 4,
  pages =	 {619--695},
  month =	 jul
}

@inproceedings{Gesellensetter2006OnlyTheBest,
  author =	 {Lars Gesellensetter and Sabine Glesner},
  title =	 {Only the best can make it: optimal component
                  selection},
  booktitle =	 {Formal Foundations of Embedded Software and
                  Component-Based Software Architectures (FESCA)},
  year =	 2006,
  month =	 Mar,
  publisher =	 {Electronic Notes in Theoretical Computer Science
                  (ENTCS)},
  address =	 {Vienna, Austria},
  postnote =	 {(to appear)},
}


@InProceedings{Derrin2006RunningTheManual,
  author =	 {Philip Derrin and Kevin Elphinstone and Gerwin Klein
                  and David Cock and Manuel M. T. Chakravarty},
  title =	 {Running the Manual: An Approach to High-Assurance
                  Microkernel Development},
  booktitle =	 {ACM SIGPLAN 2006 Haskell Workshop},
  year =	 2006,
  publisher =	 ACM
}

@Article{Huet1997TheZipper,
  author =	 {G{\'e}rard Huet},
  title =	 {Function {Pearl}: The {Zipper}},
  journal =	 JFP,
  year =	 1997,
  volume =	 7,
  number =	 5,
  pages =	 {549--554},
  month =	 sep
}

@InProceedings{Chakravarty2005TypesWithClass,
  author =	 {Manuel Chakravarty and Gabrielle Keller and Simon
                  {Peyton Jones} and Simon Marlow},
  title =	 {Associated Types with Class},
  booktitle =	 {Proceedings of The 32nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL'05)},
  year =	 2005,
  pages =        {1--13},
  publisher =    ACM
}

@InProceedings{Chakravarty2005AssociatedTypeSynonyms,
  author =	 {Manuel Chakravarty and Gabrielle Keller and Simon
                  {Peyton Jones}},
  title =	 {Associated Type Synonyms},
  booktitle =	 {Proceedings of The Tenth ACM SIGPLAN International
                  Conference on Functional Programming},
  pages =	 {241--253},
  year =	 2005,
  publisher =	 ACM
}

@TechReport{Sulzmann2006SystemFTypeEqualityCoercions,
  author =	 {Martin Sulzmann and Manuel M. T. Chakravarty and
                  Simon {Peyton Jones} and Kevin Donnelly},
  title =	 {System {F} with Type Equality Coercions},
  institution =	 {University of New South Wales},
  year =	 2006,
  number =	 {NSW-CSE-TR-0614},
  month =	 aug
}

@InProceedings{Jones1992TheoryQualifiedTypes,
  author =	 {Mark P. Jones},
  title =	 {A theory of qualified types},
  booktitle =	 {ESOP '92: European Symposium on Programming},
  year =	 1992,
  volume =	 582,
  series =	 LNCS,
  address =	 {Rennes, France},
  month =	 feb,
  publisher =	 SV
}

@inproceedings{Dybvig2006DevelopmentChezScheme,
  author =	 {R. Kent Dybvig},
  title =	 {The development of Chez Scheme},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {1--12},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159805},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Coutts2007RewritingHaskellStrings,
  author =	 {Duncan Coutts and Don Stewart and Roman
                  Leshchinskiy},
  title =	 {Rewriting Haskell Strings},
  booktitle =	 {PADL 2007},
  year =	 2007,
  note =	 {Submitted}
}

@InProceedings{Blum1989Designing,
  Author =	 {M. Blum and S. Kanna},
  Title =	 {Designing Programs That Check Their Work},
  BookTitle =	 {{STOC '89: Proceedings of the twenty-first annual
                  ACM symposium on Theory of Computing}},
  Pages =	 {86--97},
  Address =	 {New York, NY, USA},
  Publisher =	 ACM,
  doi =		 {http://doi.acm.org/10.1145/73007.73015},
  isbn =	 {0-89791-307-8},
  location =	 {Seattle, Washington, United States},
  year =	 1989
}

@Article{Glesner2005LexicalResultChecker,
  author =	 {Sabine Glesner and Simone Forster and Matthias
                  J{\"a}ger},
  title =	 {A Program Result Checker for the Lexical Analysis of
                  the GNU C Compiler},
  journal =	 {Electronic Notes in Theoretical Computer Science},
  year =	 2005,
  volume =	 132,
  pages =	 {19--35}
}

@InProceedings{Ghuloum2006Incremental,
  author =	 {Abdulaziz Ghuloum},
  title =	 {An Incremental Approach to Compiler Construction},
  booktitle =	 {Scheme Workshop 2006},
  year =	 2006
}

@inproceedings{Nogueira2006PolykindedTypes,
  author =	 {Pablo Nogueira},
  title =	 {Context-parametric polykinded types},
  booktitle =	 {WGP '06: Proceedings of the 2006 ACM SIGPLAN
                  workshop on Generic programming},
  year =	 2006,
  isbn =	 {1-59593-492-6},
  pages =	 {45--54},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159861.1159868},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Proceedings{Hughes1995HaskellWorkshop,
  title =	 {Haskell Workshop 1995},
  year =	 1995,
  editor =	 {John Hughes}
}

@InProceedings{Gaul2000Practical,
  Author =	 {Thilo Gaul and Wolf Zimmermann and Wolfgang Goerigk},
  Title =	 {Practical {C}onstruction of {C}orrect {C}ompiler
                  {I}mplementations by {R}untime {R}esult
                  {V}erification},
  BookTitle =	 {Conference Proceedings of SCI'2000},
  Pages =	 {406--411},
  Address =	 {Orlando, Florida},
  month =	 {Jul},
  url =
                  {http://www.info.uni-karlsruhe.de/papers/SCI2000.ps.gz},
  year =	 2000
}

@InProceedings{Goerigk1996Verifix,
  Author =	 {Wolfgang Goerigk and Axel Dold and Thilo Gaul and
                  Gerhard Goos and Andreas Heberle and Heinrich von
                  Henke and Ulrich Hoffmann and Hans Langmaack and
                  Wolf Zimmermann},
  Title =	 {Compiler {C}orrectness and {I}mplementation
                  {V}erification: {T}he {V}erifix {A}pproach},
  BookTitle =	 {Proceedings of the {P}oster {S}ession of {CC}'96 --
                  {I}nternational {C}onference on {C}ompiler
                  {C}onstruction},
  Editor =	 {P. Fritzson},
  Number =	 {TR-Nr.: R-96-12},
  Organization = {Technische Univerität Kalrsruhe},
  Publisher =	 {IDA},
  month =	 jan,
  url =
                  {http://www.info.uni-karlsruhe.de/papers/internal/CC96.ps.gz},
  year =	 1996
}

@InProceedings{Jones1995DictionaryFree,
  author =	 {Mark P. Jones},
  title =	 {Dictionary-free Overloading by Partial Evaluation},
  booktitle =	 {Proceedings of PEPM'95},
  year =	 1995
}

@article{Guttman1995VLISPVerifiedImplementation,
  author =	 {Joshua D. Guttman and John D. Ramsdell and Mitchell
                  Wand},
  title =	 {VLISP: A Verified Implementation of Scheme.},
  journal =	 {Lisp and Symbolic Computation},
  volume =	 8,
  number =	 {1-2},
  year =	 1995,
  pages =	 {5-32},
  bibsource =	 {DBLP, http://dblp.uni-trier.de}
}


@InProceedings{Boyer1992Automated,
  author =	 {Robert S. Boyer and Yuan Yu},
  title =	 {Automated Correctness Proofs of Machine Code
                  Programs for a Commercial Microprocessor},
  booktitle =	 {Automated Deduction -- CADE-11, 11th International
                  Conference on Automated Deduction},
  pages =	 {416--430},
  year =	 1992,
  editor =	 {D. Kapur},
  publisher =	 SV
}

@Unpublished{Grabmueller2006MonadTransformers,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Monad Transformers Step by Step}},
  note =	 {Draft paper},
  month =	 oct,
  year =	 2006,
  abstract =	 {In this tutorial, we describe how to use monad
                  transformers in order to incrementally add
                  functionality to Haskell programs. It is not a paper
                  about implementing transformers, but about using
                  them to write elegant, clean and powerful programs
                  in Haskell. Starting from an evaluation function for
                  simple expressions, we convert it to monadic style
                  and incrementally add error handling, environment
                  passing, state, logging and input/output by
                  composing monad transformers.}
}

@Unpublished{Grabmueller2004MonadicScheme,
  author =	 {Martin Grabm{\"u}ller},
  title =	 {{Purely Functional Monadic Scheme}},
  note =	 {Draft paper},
  month =	 jun,
  year =	 2004,
  abstract =	 {This paper describes a purely functional dialect of
                  the algorithmic programming language Scheme. Mutable
                  variables, assignment operations and impure control
                  operations (call-with-current-continuation) have
                  been omitted, while side effecting input and output
                  operations are incorporated into the purely
                  functional language using monads, similar to the
                  approach taken in the lazy programming language
                  Haskell. }
}

@Unpublished{Grabmueller2007AlgorithmW,
  author =       {Martin Grabm{\"u}ller},
  title =        {{Algorithm W Step by Step}},
  note =         {Draft paper},
  month =        sep,
  year =         2007,
  abstract =     {In this paper we develop a complete implementation
                  of the classic algorithm W for Hindley-Milner
                  polymorphic type inference in Haskell. }
}

@InProceedings{Grabmueller2007HarpyDemo,
  author =       {Martin Grabm{\"u}ller and Dirk Kleeblatt},
  title =        {Harpy: Run-time Code Generation in {Haskell}},
  booktitle =    {Haskell Workshop 2007},
  year =         2007,
  month =        sep,
  publisher =    ACM,
  abstract =     {We present Harpy, a Haskell library for run-time
                  code generation of x86 machine code. Harpy provides
                  efficient generation of machine code, a convenient
                  domain specific language for generating code and a
                  collection of code generation combinators.}
}

@InProceedings{Rohloff2007Annotationssprache,
  author =       {Judith Rohloff and Martin Grabm{\"u}ller},
  title =        {{Verbesserung statischer Programmanalysen mit Hilfe
                  einer Annotationssprache}},
  booktitle =    {14. Kolloquium Programmiersprachen und Grundlagen
                  der Programmierung (KPS'07)},
  year =         2007,
  month =        oct,
  abstract =     {Mit Hilfe der statischen Programmanlyse werden
                  Informationen {\"u}ber ein Programm zur
                  {\"U}bersetzungszeit ermittelt. Diese Informationen
                  k{\"o}nnen zum einen fur Compileroptimierungen
                  genutzt werden und konnen zum anderen dem
                  Programmierer Auskunft uber sein Programm geben. Die
                  meisten Analysen sind nicht vollst{\"a}ndig
                  berechenbar. Aus diesem Grund wird im Allgemeinen
                  nur eine Approximation der Ergebnisse berechnet. Es
                  wird gezeigt, wie diese Approximationen mit Hilfe
                  von Annotationen verbessert werden k{\"o}nnen. Diese
                  Verbesserungen werden am Beispiel der Striktheits-
                  und der Zeitkomplexit{\"a}tsanalyse vorgestellt und
                  erl{\"a}utert.}
}

@Book{Aho1977PrinciplesOfCompilerDesign,
  author =	 {Alfred V. Aho and Jeffrey D. Ullman},
  title =	 {Principles of Compiler Design},
  publisher =	 AW,
  year =	 1977
}

@Book{Pape1973ProgrammierenInAlgol60,
  author =	 {Uwe Pape},
  title =	 {Programmieren in ALGOL 60},
  publisher =	 {Carl Hanser Verlag},
  year =	 1973,
  address =	 {M{\"u}nchen}
}

@Book{Wirth1983AlgorithmenDatenstrukturen,
  author =	 {Niklaus Wirth},
  title =	 {Algorithmen und Datenstrukturen},
  publisher =	 {B.\@ G.\@ Teubner},
  year =	 1983,
  address =	 {Stuttgart},
  edition =	 {3., {\"u}berarbeitete}
}

@article{Wasserman1997ResultChecking,
  author =	 {Hal Wasserman and Manuel Blum},
  title =	 {Software reliability via run-time result-checking},
  journal =	 {J. ACM},
  volume =	 44,
  number =	 6,
  year =	 1997,
  issn =	 {0004-5411},
  pages =	 {826--849},
  doi =		 {http://doi.acm.org/10.1145/268999.269003},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{Gaul1995ASMAlpha,
  author =	 {Thilo S. Gaul},
  title =	 {An Abstract State Machine Specification of the
                  DEC-Alpha Processor Family},
  institution =	 {University of Karlsruhe},
  year =	 1995,
  type =	 {Verifix Working Paper},
  number =	 {Verifix/UKA/4}
}

@Misc{Appel2006ModalModel,
  author =	 {Andrew W. Appel and Paul-Andr{\'e} Melli{\`e}s and
                  Christopher D. Richards and J{\'e}r{\^o}me Vouillon},
  title =	 {A Very Modal Model of a Modern, Modal, General Type
                  System},
  howpublished = {Available from: \url{http://www.cs.princeton.edu/~appel/papers/modalmodel.pdf}},
  month =	 oct,
  year =	 2006
}

@inproceedings{Odersky2001ColoredLocalTypeInference,
  author =	 {Martin Odersky and Christoph Zenger and Matthias
                  Zenger},
  title =	 {Colored local type inference},
  booktitle =	 {POPL '01: Proceedings of the 28th ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 2001,
  isbn =	 {1-58113-336-7},
  pages =	 {41--53},
  location =	 {London, United Kingdom},
  doi =		 {http://doi.acm.org/10.1145/360204.360207},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Article{Wirth2006GoodIdeas,
  author =	 {Niklaus Wirth},
  title =	 {Good Ideas, Through the Looking Glass},
  journal =	 {IEEE Computer},
  year =	 2006,
  pages =	 {56--68},
  month =	 jan
}

@article{Earley1970ParsingAlgorithm,
  author =	 {Jay Earley},
  title =	 {An efficient context-free parsing algorithm},
  journal =	 {Communications of the ACM},
  volume =	 13,
  number =	 2,
  year =	 1970,
  issn =	 {0001-0782},
  pages =	 {94--102},
  doi =		 {http://doi.acm.org/10.1145/362007.362035},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{Heeren2002GeneralizingHM,
  author =	 {Bastiaan Heeren and Jurriaan Hage and Doaitse
                  Swierstra},
  title =	 {Generalizing {Hindley}-{Milner} Type Inference
                  Algorithms},
  institution =	 {Institute of Information and Computing Sciences,
                  Utrecht University},
  year =	 2002,
  number =	 {UU-CS-2002-031}
}

@Article{Milner1978Theory,
  author =	 {Robin Milner},
  title =	 {A theory of type polymorphism in programming},
  journal =	 {Journal of Computer and System Sciences},
  year =	 1978,
  volume =	 17,
  pages =	 {348--375}
}

@InProceedings{Guillemette2006StaticallyVerified,
  author =	 {Louis-Julien Guillemette and Stefan Monnier},
  title =	 {Statically Verified Type-Preserving Code
                  Transformations in Haskell},
  booktitle =	 {Proceedings of the Workshop Programming Languages
                  meets Program Verification},
  year =	 2006
}

@article{Blum1993SelfTestingCorrecting,
  author =	 "Manuel Blum and Michael Luby and Ronitt Rubinfeld",
  title =	 "Self-Testing/Correcting with Applications to
                  Numerical Problems",
  journal =	 "{Journal of Computer and System Sciences}",
  volume =	 47,
  number =	 3,
  pages =	 "549--595",
  year =	 1993,
  url =
                  "citeseer.ist.psu.edu/article/blum90selftestingcorrecting.html"
}

@Article{Lee1998FolkloreLetPolymorphic,
  author =	 {Oukseh Lee and Kwangkeun Yi},
  title =	 {Proofs about a Folklore Let-Polymorphic Type
                  Inference Algorithm},
  journal =	 TOPLAS,
  year =	 1998,
  volume =	 20,
  number =	 4,
  pages =	 {707--723},
  month =	 jul
}

@InProceedings{Sulzmann2001GeneralTypeInference,
  author =	 {Martin Sulzmann},
  title =	 {A General Type Inference Framework for
                  Hindley/Milner Style Systems},
  booktitle =	 { Proceedings of Functional and Logic Programming:
                  5th International Symposium, FLOPS 2001},
  pages =	 {248--263},
  year =	 2001,
  editor =	 {H. Kuchen and K Ueda},
  address =	 {Tokyo, Japan},
  month =	 mar,
  publisher =	 SV
}

@TechReport{Lee2000GeneralizedTypeInference,
  author =	 {Oukseh Lee and Kwangkeun Yi},
  title =	 {A Generalized Let-Polymorphic Type Inference
                  Algorithm},
  institution =	 {Korea Advanced Institute of Science and Technology},
  year =	 2000,
  type =	 {ROPAS Memo},
  number =	 {2000-5},
  month =	 mar
}

@Book{PeytonJones1987ImplementationofFPL,
  author =	 {Simpon L. {Peyton Jones}},
  title =	 {The Implementation of Functional Programming
                  Languages},
  publisher =	 PH,
  year =	 1987
}


@InBook{Wadler1987EfficientPatternMatching,
  author =	 {Philip Wadler},
  title =	 {The Implementation of Functional Programming
                  Languages},
  chapter =	 {Efficient compilation of pattern matching},
  publisher =	 PH,
  year =	 1987,
  pages =	 {78--103}
}

@Techreport{Leijen2003Parsec,
  author =	 {Daan Leijen and Erik Meijer},
  title =	 {Parsec: Direct Style Monadic Parser Combinators for
                  the Real World},
  institution =	 {Department of Computer Science, Universiteit
                  Utrecht},
  number =	 {UU-CS-2001-27},
  year =	 2001
}

@Misc{Leijen2005ParsecHomepage,
  OPTkey =	 {},
  author =	 {Dann Leijen},
  title =	 {Parsec},
  url =		 {\url{http://www.cs.uu.nl/~daan/parsec.html}},
  OPTmonth =	 {},
  year =	 {2005},
  note =	 {Last checked: 2006-11-10},
  OPTannote =	 {}
}

@InProceedings{Mycroft1992Incremental,
  author =	 {Alan Mycroft},
  title =	 {Incremental polymorphic type checking with update},
  booktitle =	 {Proc. LFCS'92},
  year =	 1992,
  volume =	 620,
  series =	 LNCS,
  publisher =	 SV
}

@article{Henglein1993TypeInferencePolymorphicRecursion,
  author =	 {Fritz Henglein},
  title =	 {Type inference with polymorphic recursion},
  journal =	 {ACM Trans. Program. Lang. Syst.},
  volume =	 15,
  number =	 2,
  year =	 1993,
  issn =	 {0164-0925},
  pages =	 {253--289},
  doi =		 {http://doi.acm.org/10.1145/169701.169692},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{PeytonJones2004WobblyTypes,
  author =	 {Simon {Peyton Jones} and Geoffrey Washburn and
                  Stephanie Weirich},
  title =	 {Wobbly types: type inference for generalised
                  algebraic data types},
  institution =	 {Computer and Information Science Department,
                  University of Pennsylvania},
  year =	 2004,
  number =	 {MS-CIS-05-26},
  month =	 jul
}

@InProceedings{Xi2004AppliedTypeSystem,
  author =	 {Hongwei Xi},
  title =	 {Applied Type System},
  booktitle =	 {Proceedings of Types 2003},
  pages =	 {394--408},
  year =	 2004,
  volume =	 3085,
  series =	 LNCS,
  publisher =	 SV
}

@PhdThesis{Xi1998PhD,
  author =	 {Hongwei Xi},
  title =	 {Dependent Types in Practical Programming},
  school =	 {Carnegie Mellon University},
  year =	 1998
}

@Unpublished{PeytonJones2002LexicallyScopedTypeVariables,
  author =	 {Simon {Peyton Jones} and Mark Shields},
  title =	 {Lexically scoped type variables},
  month =	 apr,
  year =	 2004,
  url =
                  {http://research.microsoft.com/Users/simonpj/papers/scoped-tyvars/scoped.ps}
}

@TechReport{Jones1994Simplifying,
  author =	 {Mark P. Jones},
  title =	 {Simplifying and Improving Qualified Types},
  number =	 {YALEU/DCS/RR-1040"},
  type =	 {Research Report},
  institution =	 {Yale University},
  month =	 jun,
  year =	 1994
}

@InProceedings{Jones1995Simplifying,
  author =	 {Mark P. Jones},
  title =	 {Simplifying and Improving Qualified Types},
  booktitle =	 {FPCA'95: Conference on Functional Programming
                  Languages and Computer Architecture},
  year =	 1995,
  month =	 jun,
  publisher =	 ACM
}

@PhdThesis{Smith1992PhD,
  author =	 {Geoffrey Seward Smith},
  title =	 {Polymorphic type inference for languages with
                  overloading and subtyping},
  year =	 1992,
  publisher =	 {Cornell University},
  address =	 {Ithaca, NY, USA}
}

@Misc{CooperSearchingCompilationSequences,
  author =	 {Keith D. Cooper and Alexander Gosul and Timothy
                  J. Harvey and Steve Reeves and Devika Subramanian
                  and Linda Torczon and Todd Waterman},
  title =	 {Searching for Compilation Sequences},
  howpublished = {Available from:
                  \url{http://www.cs.rice.edu/~keith/Adapt/SearchPrelim.pdf}}
}

@PhdThesis{Fischbach2005PhD,
  author =	 {Joseph Adam Fischbach},
  title =	 {Reasoning About Higher-Order Functions and
                  Parameters},
  school =	 {Pennsylvania State University},
  year =	 2005,
  month =	 aug,
  abstract =	 {The compilation of functional programming languages
                  such as Standard ML and Haskell rely on a number of
                  program transformations/optimizations in order to
                  generate efficient code. In this thesis, I present
                  formal, type-based specifications of three such
                  transformations: useless-variable elimination,
                  lambda-lifting and unCurrying. These three
                  transformations have in common the fact that they
                  all involve the analysis and manipulation of
                  function parameters. Useless-variable elimination
                  identifies function parameters whose corresponding
                  arguments contribute nothing to the observable
                  behavior of the program, and eliminates those
                  arguments. Lambda-lifting introduces additional
                  parameters to functions in order to eliminate
                  occurrences of non-local, non-global
                  variables. UnCurrying transforms Curried functions
                  and applications so that functions are applied to
                  multiple arguments in a single application. The
                  conciseness and simplicity of type-based analyses
                  provide a convenient platform for reasoning about
                  program transformation. Using straightforward
                  induction techniques, we can prove properties such
                  as type preservation and operational correctness. We
                  can guarantee the correctness of specific algorithms
                  by proving via induction that these algorithms are
                  sound with respect to the formal specification. I
                  present a number of these proofs in this thesis.},
  keywords =	 {programming languages, functional programming,
                  program transformation, type-based analysis }
}

@article{Duggan2002TypeCheckingMultiParameter,
  author =	 {Dominic Duggan and John Ophel},
  title =	 {Type-checking multi-parameter type classes},
  journal =	 {J. Funct. Program.},
  volume =	 12,
  number =	 2,
  year =	 2002,
  issn =	 {0956-7968},
  pages =	 {133--158},
  doi =		 {http://dx.doi.org/10.1017/S0956796801004233},
  publisher =	 {Cambridge University Press},
  address =	 {New York, NY, USA},
}

@Article{Duggan2005TypeBasedHotSwapping,
  author =	 {Dominic Duggan and John Ophel},
  title =	 {Type-Based Hot Swapping of Running Modules},
  journal =	 {Acta Informatica},
  year =	 2005,
  volume =	 41,
  number =	 {4--5},
  pages =	 {181--220},
  month =	 mar
}

@article{Bray1983ImplementationImplications,
  author =	 {Gary Bray},
  title =	 {Implementation implications of {Ada} generics},
  journal =	 {Ada Letters},
  volume =	 {III},
  number =	 2,
  year =	 1983,
  issn =	 {1094-3641},
  pages =	 {62--71},
  doi =		 {http://doi.acm.org/10.1145/989971.989974},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{Adams1992ImplementingSets,
  author =	 {Stephen Adams},
  title =	 {Implementing sets efficiently in a functional
                  language},
  institution =	 {University of Southampton},
  year =	 1992,
  number =	 {CSTR 92-10}
}

@article{Wakeling1999CompilingLazyFunctional,
  author =	 {David Wakeling},
  title =	 {Compiling lazy functional programs for the Java
                  Virtual Machine},
  journal =	 {J. Funct. Program.},
  volume =	 9,
  number =	 6,
  year =	 1999,
  issn =	 {0956-7968},
  pages =	 {579--603},
  doi =		 {http://dx.doi.org/10.1017/S0956796899003603},
  publisher =	 {Cambridge University Press},
  address =	 {New York, NY, USA},
}

@article{Meehan1999CompilingLazyFunctional,
  author =	 "Gary Meehan and Mike Joy",
  title =	 "Compiling lazy functional programs to {Java}
                  bytecode",
  journal =	 "Software Practice and Experience",
  volume =	 29,
  number =	 7,
  pages =	 "617--645",
  year =	 1999,
  url =		 "citeseer.ist.psu.edu/meehan98compiling.html"
}

@InProceedings{Wakeling1998MobileHaskell,
  author =	 {David Wakeling},
  title =	 {Mobile {Haskell}: Compiling lazy functional programs
                  for the {Java} Virtual Machine},
  booktitle =	 {Proceedings of the 1998 Conference on Programming
                  Languages, Implementations, Logics and Programs
                  (PLILP'98)},
  pages =	 {335--352},
  year =	 1998,
  volume =	 1490,
  series =	 LNCS,
  month =	 sep
}

@inproceedings{ Liang1995MonadTransformers,
  author =	 "Sheng Liang and Paul Hudak and Mark Jones",
  title =	 "Monad transformers and modular interpreters",
  booktitle =	 "Conference record of {POPL} '95, 22nd {ACM}
                  {SIGPLAN}-{SIGACT} Symposium on Principles of
                  Programming Languages: San Francisco, California,
                  January 22--25, 1995",
  publisher =	 ACM,
  address =	 "New York, NY, USA",
  editor =	 "{ACM}",
  isbn =	 "0-89791-692-1",
  pages =	 "333--343",
  year =	 1995,
  url =		 "citeseer.ist.psu.edu/liang95monad.html"
}

@TechReport{Zhang2003AdaptiveCodeUnloading,
  author =	 {Lingli Zhang and Chandra Krintz},
  title =	 {Adaptive Code Unloading for Efficient Dynamic
                  Compilation in Resource-Constrained Environments},
  institution =	 {University of California, Santa Barbara},
  year =	 2003,
  number =	 {2003-14},
  month =	 jun
}

@Article{Sulzmann2006UnderstandingFD,
  author =	 {Martin Sulzmann and Gregory J. Duck and Simon
                  {Peyton Jones} and and Peter J. Stuckey},
  title =	 {Understanding functional dependencies via Constraint
                  Handling Rules},
  journal =	 JFP,
  year =	 2006,
  note =	 {to appear}
}

@InProceedings{Duck2004TypeInferenceFD,
  author =	 {Gregory J. Duck and Simon {Peyton Jones} and Peter
                  J. Stuckey and Martin Sulzmann},
  title =	 {Sound and Decidable Type Inference for Functional
                  Dependencies},
  booktitle =	 {European Symposium on Programming 2004 (ESOP'04)},
  year =	 2004
}

@InProceedings{Glynn2000TypeClassesCHR,
  author =	 {Kevin Glynn and Martin Sulzmann and Peter
                  J. Stuckey},
  title =	 {Type Classes and Constraint Handling Rules},
  booktitle =	 {Workshop on Rule-Based Constraint Reasoning and
                  Programming},
  year =	 2000
}

@inproceedings{Chlipala2005StrictBidirectionalTypeChecking,
  author =	 {Adam Chlipala and Leaf Petersen and Robert Harper},
  title =	 {Strict bidirectional type checking},
  booktitle =	 {TLDI '05: Proceedings of the 2005 ACM SIGPLAN
                  international workshop on Types in languages design
                  and implementation},
  year =	 2005,
  isbn =	 {1-58113-999-3},
  pages =	 {71--78},
  location =	 {Long Beach, California, USA},
  doi =		 {http://doi.acm.org/10.1145/1040294.1040301},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Article{PeytonJones1991LambdaLifter,
  author =	 {SL {Peyton Jones} and D Lester},
  title =	 {A modular fully-lazy lambda lifter in Haskell},
  journal =	 {Software Practice and Experience},
  year =	 1991,
  volume =	 21,
  number =	 5,
  pages =	 {479--506},
  month =	 may
}

@InProceedings{Hinze2000DerivableTupeClasses,
  author =	 {Ralf Hinze and Simon {Peyton Jones}},
  title =	 {Derivable type classes},
  booktitle =	 {Haskell Workshop},
  year =	 2000,
  note =	 {To appear in Electronic Notes in Computer Science,
                  Elsevier}
}

@InProceedings{Chen2003JRPM,
  author =	 {Michael K. Chen and Kunle Olukotun},
  title =	 {The {JRPM} system for dynamically parallelizing Java
                  programs},
  booktitle =	 {Proceedings. 30th Annual International Symposium on
                  Computer Architecture},
  year =	 2003,
  month =	 jun
}

@Unpublished{Pottier2005ModernEye,
  author =	 {Fran{\c c}ois Pottier},
  title =	 {A modern eye on {ML} type inference -- Old
                  techniques and recent developments},
  note =	 {Available from:
                  \url{http://cristal.inria.fr/~fpottier/publis/fpottier-appsem-2005.pdf}},
  month =	 sep,
  year =	 2005
}

@unpublished{Wehr2006JavaGI,
  author =	 "Stefan Wehr and Ralf L{\"a}mmel and Peter Thiemann",
  title =	 "{JavaGI: Generalized Interfaces for Java}",
  year =	 2006,
  month =	 "20~" # dec,
  note =	 {Draft; 25 pages}
}

@phdthesis{Glesner1999NatuerlicheSemantik,
  author =	 {Sabine Glesner},
  title =	 {Nat{\"u}rliche Semantik f{\"u}r imperative und
                  objektorientierte Programmiersprachen},
  year =	 1999,
  month =	 Feb,
  publisher =	 {Shaker Verlag},
  school =	 {Universit{\"a}t Karlsruhe},
  address =	 {Aachen, Germany},
}

@InBook{Pottier2005EssenceMLTypeInference,
  author =	 {Fran{\c c}ois Pottier and Didier R{\'e}my},
  editor =	 {Benjamin C. Pierce},
  title =	 {Advanced Topics in Types and Programming Languages},
  chapter =	 {The essence of ML type inference},
  publisher =	 MIT,
  year =	 2005
}

@InProceedings{Marlow2006Exceptions,
  author =	 {Simon Marlow},
  title =	 {An Extensible Dynamically-Typed Hierarchy of
                  Exceptions},
  booktitle =	 {Haskell '06: Proceedings of the 2006 ACM SIGPLAN
                  workshop on Haskell},
  year =	 2006,
  month =	 {September},
  abstract =	 {In this paper we address the lack of extensibility
                  of the exception type in Haskell. We propose a
                  lightweight solution involving the use of
                  existential types and the Typeable class only, and
                  show how our solution allows a fully extensible
                  hierarchy of exception types to be declared, in
                  which a single overloaded catch operator can be used
                  to catch either specific exception types, or
                  exceptions belonging to any subclass in the
                  hierarchy. We also show how to combine the existing
                  object-oriented framework OOHaskell with our design,
                  such that OOHaskell objects can be thrown and caught
                  as exceptions, with full support for implicit
                  OOHaskell subtyping in the @catch@ operator. },
  url =
                  {http://www.haskell.org/~simonmar/papers/ext-exceptions.pdf},
  location =	 {Portland, Oregon},
  publisher =	 ACM
}

@inproceedings{Eeckhout2003VMMicroarchitecture,
  author =	 {Lieven Eeckhout and Andy Georges and Koen De
                  Bosschere},
  title =	 {How java programs interact with virtual machines at
                  the microarchitectural level},
  booktitle =	 {OOPSLA '03: Proceedings of the 18th annual ACM
                  SIGPLAN conference on Object-oriented programing,
                  systems, languages, and applications},
  year =	 2003,
  isbn =	 {1-58113-712-5},
  pages =	 {169--186},
  location =	 {Anaheim, California, USA},
  doi =		 {http://doi.acm.org/10.1145/949305.949321},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{Sun2006MemoryManagement,
  author =	 {{Sun Microsystems}},
  title =	 {Memory Management in the Java HotSpot\texttrademark{}
                  Virtual machine },
  institution =	 {Sun Microsystems},
  year =	 2006,
  type =	 {Whitepaper},
  month =	 apr
}

@Misc{Swierstra2006BeautyInTheBeast,
  author =	 {Wouter Swierstra and Thorsten Altenkirch},
  title =	 {Beauty in the Beast},
  howpublished = {submitted for publication},
  month =	 jun,
  year =	 2006,
}

@inproceedings{Ohori2007LightweightFusion ,
  author =	 "Atsushi Ohori and Isao Sasano",
  title =	 "Lightweight Fusion by Fixed Point Promotion",
  booktitle =	 "Conference record of {POPL} '07, 34th {ACM}
                  {SIGPLAN}-{SIGACT} Symposium on Principles of
                  Programming Languages: Nice, France, January 17--19,
                  2007",
  publisher =	 ACM,
  address =	 "New York, NY, USA",
  editor =	 "{ACM}",
  year =	 2007
}

@MastersThesis{Spinellis1990MastersThesis,
  author =	 {Diomidis Spinellis},
  title =	 {An Implementation of the {Haskell} Language},
  school =	 {Imperial College},
  year =	 1990,
  month =	 jun
}

@article{Bentley1985AssociativeArrays,
  author =	 {Jon Bentley},
  title =	 {Programming pearls: associative arrays},
  journal =	 {Communications of the ACM},
  volume =	 28,
  number =	 6,
  year =	 1985,
  issn =	 {0001-0782},
  pages =	 {570--576},
  doi =		 {http://doi.acm.org/10.1145/3812.315108},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Bentley1986LittleLanguages,
  author =	 {Jon Bentley},
  title =	 {Programming pearls: little languages},
  journal =	 {Communications of the ACM},
  volume =	 29,
  number =	 8,
  year =	 1986,
  issn =	 {0001-0782},
  pages =	 {711--721},
  doi =		 {http://doi.acm.org/10.1145/6424.315691},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{PeytonJones1986Distfix,
  author =	 {Simon L. {Peyton Jones}},
  title =	 {Parsing distfix operators},
  journal =	 {Communications of the ACM},
  volume =	 29,
  number =	 2,
  year =	 1986,
  issn =	 {0001-0782},
  pages =	 {118--122},
  doi =		 {http://doi.acm.org/10.1145/5657.5659},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Matthews2004PLTRedex,
  author =	 {Jacob Matthews and Robert Bruce Findler and Matthew
                  Flatt and Matthias Felleisen},
  title =	 {A Visual Environment for Developing
                  Context-Sensitive Term Rewriting Systems},
  booktitle =	 {International Conference on Rewriting Techniques and
                  Applications (RTA)},
  year =	 2004
}

@InProceedings{Matthews2005OperationalSemanticsR5RSScheme,
  author =	 {Jacob Matthews and Robert Bruce Finder},
  title =	 {An operational Semantics for {R${}^5$RS} Scheme},
  booktitle =	 {Sixth Workshop on Scheme and Functional Programming},
  year =	 2005,
  address =	 {Tallin, Estonia},
  month =	 sep
}

@Unpublished{Kollmansberger2006HaskellRules,
  author =	 {Steve Kollmansberger and Martin Erwig},
  title =	 {Haskell Rules: Embedding Rule Systems in Haskell},
  note =	 {Draft Paper},
  month =	 jun,
  year =	 2006
}

@Article{Robson1987ThrowAway,
  author =	 {D. J. Robson},
  title =	 {An evaluation of throw-away compiling},
  journal =	 SPE,
  year =	 1987,
  volume =	 13,
  pages =	 {241--249}
}

@Article{McDonald1983fsh,
  author =	 {Chris S. McDonald},
  title =	 {fsh -- a functional UNIX command interpreter},
  journal =	 SPE,
  year =	 1983,
  volume =	 17,
  number =	 10,
  pages =	 {685--700},
  month =	 oct
}

@inproceedings{Rossberg2006MissingLink,
  author =	 {Andreas Rossberg},
  title =	 {The missing link: dynamic components for {ML}},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  International Conference on Functional Programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {99--110},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159816},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Blume2006ExtensibleProgramming,
  author =	 {Matthias Blume and Umut A. Acar and Wonseok Chae},
  title =	 {Extensible programming with first-class cases},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  International Conference on Functional Programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {239--250},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159836},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Bringert2006AlmostCompositional,
  author =	 {Bj{\o}rn Bringert and Aarne Ranta},
  title =	 {A pattern for almost compositional functions},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {216--226},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159834},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Diatchki2005HighLevelViews,
  author =	 {Iavor S. Diatchki and Mark P. Jones and Rebekah
                  Leslie},
  title =	 {High-level views on low-level representations},
  booktitle =	 {ICFP '05: Proceedings of the tenth ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2005,
  isbn =	 {1-59593-064-7},
  pages =	 {168--179},
  location =	 {Tallinn, Estonia},
  doi =		 {http://doi.acm.org/10.1145/1086365.1086387},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Morrison1991AdHocPolymorphism,
  author =	 {R. Morrison and A. Dearle and R. C. H. Connor and
                  A. L. Brown},
  title =	 {An ad hoc approach to the implementation of
                  polymorphism},
  journal =	 TOPLAS,
  volume =	 13,
  number =	 3,
  year =	 1991,
  issn =	 {0164-0925},
  pages =	 {342--371},
  doi =		 {http://doi.acm.org/10.1145/117009.117017},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Henglein1994FormallyOptimalBoxing,
  author =	 {Fritz Henglein and Jesper J{\o}rgensen},
  title =	 {Formally optimal boxing},
  booktitle =	 {POPL '94: Proceedings of the 21st ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 1994,
  isbn =	 {0-89791-636-0},
  pages =	 {213--226},
  location =	 {Portland, Oregon, United States},
  doi =		 {http://doi.acm.org/10.1145/174675.177874},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Leroy1992UnboxedObjects,
  author =	 {Xavier Leroy},
  title =	 {Unboxed objects and polymorphic typing},
  booktitle =	 {POPL '92: Proceedings of the 19th ACM SIGPLAN-SIGACT
                  Symposium on Principles of Programming Languages},
  year =	 1992,
  isbn =	 {0-89791-453-8},
  pages =	 {177--188},
  location =	 {Albuquerque, New Mexico, United States},
  doi =		 {http://doi.acm.org/10.1145/143165.143205},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Article{Wright1994SyntacticApproach,
  author =	 {Andrew Wright and Matthias Felleisen},
  title =	 {A syntactic approach to type soundness},
  journal =	 {Information and Computation},
  year =	 1995,
  pages =	 {38--94}
}

@PhdThesis{Surana2006PhD,
  author =	 {Pankaj Surana},
  title =	 {Meta-Compilation of Language Abstractions},
  school =	 {Northwestern University},
  year =	 2006,
  month =	 jun
}

@inproceedings{Odersky1996PuttingTypeAnnotations,
  author =	 {Martin Odersky and Konstantin L{\"u}fer},
  title =	 {Putting type annotations to work},
  booktitle =	 {POPL '96: Proceedings of the 23rd ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 1996,
  isbn =	 {0-89791-769-3},
  pages =	 {54--67},
  location =	 {St. Petersburg Beach, Florida, United States},
  doi =		 {http://doi.acm.org/10.1145/237721.237729},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Gries1977SomeIdeas,
  author =	 {David Gries and Narain Gehani},
  title =	 {Some ideas on data types in high-level languages},
  journal =	 {Communications of the ACM},
  volume =	 20,
  number =	 6,
  year =	 1977,
  issn =	 {0001-0782},
  pages =	 {414--420},
  doi =		 {http://doi.acm.org/10.1145/359605.359624},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@MastersThesis{Chevalier2004MastersThesis,
  author =	 {Marie-Christine (Kirsten) Chevalier},
  title =	 {Implementing Type-Based Deforestation},
  school =	 {University of California at Berkeley},
  year =	 2004
}

@inproceedings{Bacon2003RealTimeGC,
  author =	 {David F. Bacon and Perry Cheng and V. T. Rajan},
  title =	 {A real-time garbage collector with low overhead and
                  consistent utilization},
  booktitle =	 {POPL '03: Proceedings of the 30th ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 2003,
  isbn =	 {1-58113-628-5},
  pages =	 {285--298},
  location =	 {New Orleans, Louisiana, USA},
  doi =		 {http://doi.acm.org/10.1145/604131.604155},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Crary1998IntensionalPolymorphism,
  author =	 {Karl Crary and Stephanie Weirich and Greg Morrisett},
  title =	 {Intensional polymorphism in type-erasure semantics},
  booktitle =	 {ICFP '98: Proceedings of the third ACM SIGPLAN
                  International Conference on Functional Programming},
  year =	 1998,
  isbn =	 {1-58113-024-4},
  pages =	 {301--312},
  location =	 {Baltimore, Maryland, United States},
  doi =		 {http://doi.acm.org/10.1145/289423.289459},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Harper1995CompilingPolymorphism,
  author =	 {Robert Harper and Greg Morrisett},
  title =	 {Compiling polymorphism using intensional type
                  analysis},
  booktitle =	 {POPL '95: Proceedings of the 22nd ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =	 1995,
  isbn =	 {0-89791-692-1},
  pages =	 {130--141},
  location =	 {San Francisco, California, United States},
  doi =		 {http://doi.acm.org/10.1145/199448.199475},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Mauny1986CAM,
  author =	 {Michel Mauny and Asc{\'a}nder Su{\'a}rez},
  title =	 {Implementing functional languages in the Categorical
                  Abstract Machine},
  booktitle =	 {LFP '86: Proceedings of the 1986 ACM conference on
                  LISP and functional programming},
  year =	 1986,
  isbn =	 {0-89791-200-4},
  pages =	 {266--278},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/319838.319869},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Fairbairn1986CodeGeneration,
  author =	 {Jon Fairbairn and Stuart C. Wray},
  title =	 {Code generation techniques for functional languages},
  booktitle =	 {LFP '86: Proceedings of the 1986 ACM conference on
                  LISP and functional programming},
  year =	 1986,
  isbn =	 {0-89791-200-4},
  pages =	 {94--104},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/319838.319853},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Clack1986FourStroke,
  author =	 {Chris Clack and Simon L. {Peyton Jones}},
  title =	 {The four-stroke reduction engine},
  booktitle =	 {LFP '86: Proceedings of the 1986 ACM conference on
                  LISP and functional programming},
  year =	 1986,
  isbn =	 {0-89791-200-4},
  pages =	 {220--232},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/319838.319865},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Nielson1986SemanticsDirected,
  author =	 {Hanne R. Nielson and Flemming Nielson},
  title =	 {Semantics directed compiling for functional
                  languages},
  booktitle =	 {LFP '86: Proceedings of the 1986 ACM conference on
                  LISP and functional programming},
  year =	 1986,
  isbn =	 {0-89791-200-4},
  pages =	 {249--257},
  location =	 {Cambridge, Massachusetts, United States},
  doi =		 {http://doi.acm.org/10.1145/319838.319867},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@TechReport{Dockins2007BytecodeVerification,
  author =	 {Robert Dockins and Samuel Z. Guyer},
  title =	 {Bytecode Verification for {Haskell}},
  institution =	 {Tufts University},
  year =	 2007,
  month =	 feb
}

@InProceedings{Meijer1991BananasLenses,
  author =	 {Erik Meijer and Maarten Fokkinga and Ross Paterson},
  title =	 {Functional Programming with Bananas, Lenses,
                  Envelopes and Barbed Wire},
  booktitle =	 {FPCA'91},
  year =	 1991
}

@InProceedings{PeytonJones1997Henk,
  author =	 {Simon L. {Peyton Jones} and Erik Meijer},
  title =	 {Henk: a typed intermediate language},
  booktitle =	 {Proc. First Int'l Workshop on Types in Compilation},
  year =	 1997,
  month =	 jun
}

@misc{ Hammond1992DynamicSemanticsforHaskell,
  author =	 "Kevin Hammond and Cordelia Hall",
  title =	 "A Dynamic Semantics for Haskell",
  url =		 "citeseer.ist.psu.edu/hammond92dynamic.html"
}

@InProceedings{Ford2002PackratParsing,
  author =	 {Bryan Ford},
  title =	 {Packrat Parsing: Simple, Powerful, Lazy, Linear
                  Time},
  booktitle =	 {International Conference on Functional Programming},
  year =	 2002,
  address =	 {Pittsburgh},
  month =	 oct,
  publisher =	 ACM
}

@unpublished{ baudinet85tree,
    author = "Marianne Baudinet and David MacQueen",
    title = "Tree Pattern Matching for {ML}",
    year = "1985",
    url = "citeseer.ist.psu.edu/baudinet85tree.html" 
}

@MastersThesis{Roorda2000PTSforFP,
  author =	 {Jan-Willem Roorda},
  title =	 {Pure Type Systems for Functional Programming},
  school =	 {University of Utrecht},
  year =	 2000
}

@incollection{Barendregt1992LambdaCalculiWithTypes,
  author =	 {Henk Barendregt},
  title =	 {Lambda Calculi with Types},
  editor =	 {Abramsky and Gabbay and Maibaum},
  booktitle =	 {Handbook of Logic in Computer Science, (Background:
                  Computational Structures)},
  publisher =	 {Oxford University Press},
  volume =	 2,
  year =	 1992
}

@MastersThesis{RosendahlAutomaticProgramAnalysis,
  author =	 {Mads Rosendahl},
  title =	 {Automatic Program Analysis},
  school =	 {University of Copenhagen},
  year =	 {???}
}

@Unpublished{RosendahlSimpleDriving,
  author =	 {Mads Rosendahl},
  title =	 {Simple Driving Techniques},
  note =	 {www:
                  \url{http://akira.ruc.dk/~madsr/webpub/driv.pdf}}
}

@Book{Bertot2004InteractiveTheoremProving,
  author =	 {Yves Bertot and Pierre Cast{\'e}ran},
  title =	 {Interactive Theorem Proving and Program Development
                  -- Coq'Art: The Calculus of Inductive Constructions},
  publisher =	 SV,
  year =	 2004
}

@inproceedings{Walker2006FaultyLambda,
  author =	 {David Walker and Lester Mackey and Jay Ligatti and
                  George A. Reis and David I. August},
  title =	 {Static typing for a faulty lambda calculus},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {38--49},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159809},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Might2006GammaCFA,
  author =	 {Matthew Might and Olin Shivers},
  title =	 {Improving flow analyses via $\Gamma$CFA: abstract
                  garbage collection and counting},
  booktitle =	 {ICFP '06: Proceedings of the eleventh ACM SIGPLAN
                  international conference on Functional programming},
  year =	 2006,
  isbn =	 {1-59593-309-3},
  pages =	 {13--25},
  location =	 {Portland, Oregon, USA},
  doi =		 {http://doi.acm.org/10.1145/1159803.1159807},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Misc{Meacham2007JHCHomepage,
  author =	 {John Meacham},
  title =	 {jhc},
  howpublished = {Available from: \url{http://repetae.net/john/computer/jhc/}},
  year =	 2007,
  note =	 {Last visited: 2008-10-07}
}

@InProceedings{Rossberg2006AliceThrough,
  author =	 {Andreas Rossberg and Didier Le Botlan and Guido Tack and
                  Thorsten Brunklaus and Gert Smolka},
  title =	 {Alice Through the Looking Glass},
  booktitle =	 {Trends in Functional Programming},
  year =	 2006,
  volume =	 5,
  pages =	 {79-96},
  publisher =	 {Intellect}
}

@inproceedings{Hawblitzel2007GarbageCollectingTAL,
  author =	 {Chris Hawblitzel and Heng Huang and Lea Wittie and
                  Juan Chen},
  title =	 {A garbage-collecting typed assembly language},
  booktitle =	 {TLDI '07: Proceedings of the 2007 ACM SIGPLAN
                  international workshop on Types in languages design
                  and implementation},
  year =	 2007,
  isbn =	 {1-59593-393-X},
  pages =	 {41--52},
  location =	 {Nice, Nice, France},
  doi =		 {http://doi.acm.org/10.1145/1190315.1190323},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{ Coquand1996TypeCheckingDependentTypes,
  author =	 "Thierry Coquand",
  title =	 "An Algorithm for Type-Checking Dependent Types",
  journal =	 "Science of Computer Programming",
  volume =	 26,
  number =	 "1-3",
  pages =	 "167-177",
  year =	 1996,
  url =		 "citeseer.ist.psu.edu/coquand96algorithm.html"
}

@InProceedings{Wadler2003PrettierPrinter,
  author =	 {Philip Wadler},
  title =	 {A prettier printer},
  booktitle =	 {The Fun of Programming. A symposium in honour of
                  Professor Richard Bird's 60th birthday},
  year =	 2003,
  address =	 {Examination Schools, Oxford},
  month =	 mar
}

@MastersThesis{Lindgren1996SoftTypeErlang,
  author =	 {Anders Lindgren},
  title =	 {A Prototype of a Soft Type System for Erlang},
  school =	 {Computer Science Department, Uppsala University},
  year =	 1996
}

@PhdThesis{Gast2003GeneratorTypeCheckers,
  author =	 {Holger Gast},
  title =	 {A Generator for Type Checkers},
  school =	 {Universit{\"a}t T{\"u}bingen},
  year =	 2004
}

@inproceedings{Bell1997TypeDrivenDefunctionalization,
  author =	 {Jeffrey M. Bell and Fran{\c c}oise Bellegarde and
                  James Hook},
  title =	 {Type-driven defunctionalization},
  booktitle =	 {ICFP '97: Proceedings of the second ACM SIGPLAN
                  international conference on Functional programming},
  year =	 1997,
  isbn =	 {0-89791-918-1},
  pages =	 {25--37},
  location =	 {Amsterdam, The Netherlands},
  doi =		 {http://doi.acm.org/10.1145/258948.258953},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@PhdThesis{Abrams1970AnAPLMachine,
  author =	 {Philip S. Abrams},
  title =	 {An {APL} machine},
  school =	 {Stanford University},
  year =	 1970,
  note =	 {Also, Stanford Linear Accelerator Center (SLAC)
                  Rep.~114}
}

@MastersThesis{BelangerMasters06,
    author = "David B{\'e}langer",
    title = "{SableJIT}: A Retargetable Just-In-Time Compiler",
    school = "McGill University",
    year = "2004",
    month = "August"
}

@InProceedings{Cierniak1997Briki,
  author =	 {Michal Cierniak and Wei Li},
  title =	 {Briki: an optimizing Java compiler},
  booktitle =	 {Compcon '97. Proceedings},
  pages =	 {23--26},
  year =	 1997,
  month =	 feb,
  publisher =	 {IEEE}
}

@inproceedings{Johansson2000ErlangSystem,
  author =	 {Erik Johansson and Mikael Pettersson and
                  Konstantinos Sagonas},
  title =	 {A high performance Erlang system},
  booktitle =	 {PPDP '00: Proceedings of the 2nd ACM SIGPLAN
                  international conference on Principles and practice
                  of declarative programming},
  year =	 2000,
  isbn =	 {1-58113-265-4},
  pages =	 {32--43},
  location =	 {Montreal, Quebec, Canada},
  doi =		 {http://doi.acm.org/10.1145/351268.351273},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Sarkar2005Nanopass,
  author =	 {Dipanwita Sarkar and Oscar Waddell and R. Kent
                  Dybvig},
  title =	 {A Nanopass Framework for Compiler Education},
  journal =	 {Journal of Functional Programming},
  volume =	 15,
  number =	 5,
  month =	 sep,
  year =	 2005,
  texturl =	 "http://www.cs.indiana.edu/~dyb/pubs/nano-jfp.pdf",
  note =	 "Educational Pearl"
}

@article{Leroy2003BytecodeVerification,
  author =	 {Xavier Leroy},
  title =	 {{Java} bytecode verification: algorithms and
                  formalizations},
  journal =	 {Journal of Automated Reasoning},
  year =	 2003,
  volume =	 30,
  number =	 {3--4},
  pages =	 {235--269},
  abstract =	 {Bytecode verification is a crucial security
                  component for Java applets, on the Web and on
                  embedded devices such as smart cards. This paper
                  reviews the various bytecode verification algorithms
                  that have been proposed, recasts them in a common
                  framework of dataflow analysis, and surveys the use
                  of proof assistants to specify bytecode verification
                  and prove its correctness. (Extended and revised
                  version of \cite{Leroy-survey-verif}.)},
}

@InProceedings{Okasaki2005Alternatives,
  author =	 {Chris Okasaki},
  title =	 {Alternatives to Two Classic Data Structures},
  booktitle =	 {Symposium on Computer Science Education (SIGCSE)},
  pages =	 {162--165},
  year =	 2005,
  month =	 feb
}

@Article{Okasaki1994CallByNeedAndCPS,
  author =	 {Call-by-need and Continuation-passing Style},
  title =	 {Chris Okasaki Peter Lee and David Tarditi},
  journal =	 {Lisp and Symbolic Computation},
  year =	 1994,
  volume =	 7,
  number =	 1,
  pages =	 {57--81},
  month =	 jan
}

@Article{Wakeling2007SpreadsheedFP,
  author =	 {David Wakeling},
  title =	 {Spreadsheet functional programming},
  journal =	 JFP,
  year =	 2007,
  volume =	 17,
  number =	 1,
  pages =	 {131--143},
  month =	 jan
}

@inproceedings{Bondorf1990CompilingLaziness,
  author =	 {Anders Bondorf},
  title =	 {Compiling laziness by partial evaluation},
  booktitle =	 {Functional Programming, Glasgow 1990},
  year =	 1990
}

@inproceedings{Duggan1996MixinModules,
  author =	 {Dominic Duggan and Constantinos Sourelis},
  title =	 {Mixin modules},
  booktitle =	 {ICFP '96: Proceedings of the first ACM SIGPLAN
                  international conference on Functional programming},
  year =	 1996,
  isbn =	 {0-89791-770-7},
  pages =	 {262--273},
  location =	 {Philadelphia, Pennsylvania, United States},
  doi =		 {http://doi.acm.org/10.1145/232627.232654},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@Article{Appel1989RuntimeTags,
  author =	 {Andrew W. Appel},
  title =	 {Runtime Tags Aren't Necessary},
  journal =	 {Lisp and Symbolic Computation},
  year =	 1989,
  volume =	 19,
  number =	 7,
  pages =	 {703--705},
  month =	 jul
}

@TechReport{Appel1988ProfilingPresence,
  author =	 {Andrew W. Appel and Bruce Duba and David
                  B. MacQueen},
  title =	 {Profiling in the presence of optimization and
                  garbage collection},
  institution =	 {Princeton University},
  year =	 1988,
  number =	 {CS-TR-197-88},
  month =	 nov
}

@Article{Cardelli1983MLunderUnix,
  author =	 {Luca Cardelli},
  title =	 {ML under Unix},
  journal =	 {Polymorphism, The ML/LCF/Hope Newsletters},
  year =	 1983,
  volume =	 1,
  number =	 3,
  month =	 dec
}

@article{Ungar1984GenerationScavenging,
  author =	 {David Ungar},
  title =	 {Generation Scavenging: A non-disruptive high
                  performance storage reclamation algorithm},
  journal =	 {SIGPLAN Notices},
  volume =	 19,
  number =	 5,
  year =	 1984,
  issn =	 {0362-1340},
  pages =	 {157--167},
  doi =		 {http://doi.acm.org/10.1145/390011.808261},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@inproceedings{Kennedy2001DotNetGenerics,
  author =	 {Andrew Kennedy and Don Syme},
  title =	 {Design and implementation of generics for the .NET
                  Common language runtime},
  booktitle =	 {PLDI '01: Proceedings of the ACM SIGPLAN 2001
                  Conference on Programming Language Design and
                  Implementation},
  year =	 2001,
  isbn =	 {1-58113-414-2},
  pages =	 {1--12},
  location =	 {Snowbird, Utah, United States},
  doi =		 {http://doi.acm.org/10.1145/378795.378797},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@InProceedings{Benton1998CompilingSMLtoJavaBytecodes,
  author =	 {N. Benton and A. Kennedy and G. Russell},
  title =	 {Compiling Standard ML to Java Bytecodes},
  booktitle =	 {Proceedings of the 3rd ACM SIGPLAN Conference on
                  Functional Programming (ICFP)},
  year =	 1998,
  publisher =	 ACM
}

@PhdThesis{Connor1990TypesAndPolymorphism,
  author =	 {R.C.H. Connor},
  title =	 {Types and Polymorphism in Persistent Programming
                  Systems},
  school =	 {University of St. Andrews},
  year =	 1990
}

@TechReport{Minamide1997FullLifting,
  author =	 {Y. Minamide},
  title =	 {Full lifting of type parameters},
  institution =	 {RIMS, Kyoto University},
  year =	 1997
}

@Article{Heckmann1997TeXFormula,
  author =	 {Reinhold Heckmann and Reinhard Wilhelm},
  title =	 {A Functional Description of TeX's Formula Layout},
  journal =	 JFP,
  year =	 1997,
  volume =	 7,
  number =	 5,
  pages =	 {451--485},
  month =	 sep
}

@article{Ertl2002vmgen,
  author =	 "M. Anton Ertl and David Gregg and Andreas Krall and
                  Bernd Paysan",
  title =	 "{Vmgen} --- a generator of efficient virtual machine
                  interpreters",
  journal =	 "Soft\-ware --- Prac\-tice and Experience",
  volume =	 32,
  number =	 3,
  pages =	 "265--294",
  year =	 2002,
  url =		 "citeseer.ist.psu.edu/ertl01vmgen.html"
}

@InProceedings{Ertl2002BuildingInterpreter,
  author =	 {M. Anton Ertl and David Gregg},
  title =	 {Building an interpreter with \textsf{vmgen}},
  booktitle =	 {Compiler Construction (CC'02)},
  pages =	 {5--8},
  year =	 2002,
  publisher =	 {Springer LNCS~2304},
  note =	 {Tool Demonstration},
  url =
                  {http://www.complang.tuwien.ac.at/papers/ertl\%26gregg02.ps.gz},
  abstract =	 {\textsf{Vmgen} automates many of the tasks of
                  writing the virtual machine part of an interpreter,
                  resulting in less coding, debugging and maintenance
                  effort. This paper gives some quantitative data
                  about the source code and generated code for a
                  \textsf{vmgen}-based interpreter, and gives some
                  examples demonstrating the simplicity of using
                  \textsf{vmgen}.}
}

@InProceedings{Marlow2007PointerTagging,
  author =	 {Simon Marlow and Alexey Rodriguez Yakushev and Simon
                  {Peyton Jones}},
  title =	 {Faster laziness using dynamic pointer tagging},
  booktitle =	 {ICFP 2007},
  year =	 2007
}

@InProceedings{PeytonJones2007ConstructorSpecialisation,
  author =	 {Simon {Peyton Jones}},
  title =	 {Constructor specialisation for Haskell programs},
  booktitle =	 {ICFP 2007},
  year =	 2007
}

@phdthesis{Fax:Lic,
 author       = {Karl-Filip Fax{\'e}n},
 title        = {Flow Inference, Code Generation, 
                 and Garbage Collection for Lazy Functional Languages},
 school       = "Dept.\ of Teleinformatics, KTH",
 address      = {Stockholm},
 year         = {1996},
 type         = {Licentiate thesis},
 month        = jan
}


@article{Leone1998DynamicSpecializationFabius,
  author =	 {Mark Leone and Peter Lee},
  title =	 {Dynamic specialization in the Fabius system},
  journal =	 {ACM Computing Surveys},
  volume =	 30,
  number =	 {3es},
  year =	 1998,
  issn =	 {0360-0300},
  pages =	 23,
  doi =		 {http://doi.acm.org/10.1145/289121.289144},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}

@article{Johnsson2004EfficientCompilation2,
  author =	 {Thomas Johnsson},
  title =	 {Efficient compilation of lazy evaluation},
  journal =	 {SIGPLAN Notices},
  volume =	 39,
  number =	 4,
  year =	 2004,
  issn =	 {0362-1340},
  pages =	 {125--138},
  doi =		 {http://doi.acm.org/10.1145/989393.989409},
  publisher =	 ACM,
  address =	 {New York, NY, USA},
}


@Article{Johnsson2004EfficientCompilation,
  author =	 {Thomas Johnsson},
  title =	 {Efficient compilation of lazy evaluation},
  journal =	 {SIGPLAN Notices},
  year =	 1984,
  volume =	 19,
  number =	 6,
  month =	 {jun}
}

@misc{ johnsson-compiling,
  author =	 "Thomas Johnsson",
  title =	 "Compiling Lazy Functional Languages: An
                  introduction",
  url =		 "citeseer.ist.psu.edu/3555.html"
}

@InProceedings{Holyer1998BriskMachine,
  author =	 {Ian Holyer and Eleni Spiliopoulou},
  title =	 {The {Brisk} Machine: A Simplified {STG} Machine},
  booktitle =	 {Implementation of Functional Languages, IFL'97},
  pages =	 {20--38},
  year =	 1998,
  volume =	 1467,
  series =	 LNCS,
  publisher =	 SV
}

@inproceedings{DBLP:conf/inap/HofstedtK05,
  author    = {Petra Hofstedt and
               Olaf Krzikalla},
  title     = {TURTLE++ - A CIP-Library for C++.},
  booktitle = {INAP},
  year      = {2005},
  pages     = {12-24},
  ee        = {http://dx.doi.org/10.1007/11963578_2},
  crossref  = {DBLP:conf/inap/2005},
  bibsource = {DBLP, http://dblp.uni-trier.de}
}

@proceedings{DBLP:conf/inap/2005,
  editor    = {Masanobu Umeda and
               Armin Wolf and
               Oskar Bartenstein and
               Ulrich Geske and
               Dietmar Seipel and
               Osamu Takata},
  title     = {Declarative Programming for Knowledge Management, 16th International
               Conference on Applications of Declarative Programming and
               Knowledge Management, INAP 2005, Fukuoka, Japan, October
               22-24, 2005, Revised Selected Papers},
  booktitle = {INAP},
  publisher = {Springer},
  series    = {Lecture Notes in Computer Science},
  volume    = {4369},
  year      = {2006},
  isbn      = {3-540-69233-9},
  bibsource = {DBLP, http://dblp.uni-trier.de}
}

@Misc{Nguyen2007RecordUnboxing,
  author =       {Huu-Duc Nguyen and Atsushi Ohori},
  title =        {Record Unboxing},
  howpublished = {World Wide Web:
                  \url{http://www.pllab.riec.tohoku.ac.jp/~ohori/research/RecordUnboxing.pdf}},
  note =   {Last visited: 2008-10-07},
  month =        may,
  year =         2007
}

@InProceedings{Thiemann1994HigherOrderRedundancyElimination,
  author =	 {Peter Thiemann},
  title =	 {Higher-Order Redundancy Elimination},
  booktitle =	 {Proceedings of the ACM SIGPLAN Workshop on Partial
                  Evaluation and Semantics-Based Program Manipulation
                  PEPM '94},
  pages =	 {73--84},
  year =	 1994,
  editor =	 {Peter Sestoft and Harald S{\o}ndergaard},
  address =	 {Orlando, Florida},
  month =	 jun
}

@InProceedings{Li2007LightweightConcurrency,
  author =	 {Peng Li and Andrew Tolmach and Simon Marlow and
                  Simon {Peyton Jones}},
  title =	 {Lightweight concurrency primitives for {GHC}},
  booktitle =	 {Haskell Workshop 2007},
  year =	 2007,
  note =	 {submitted}
}

@InProceedings{Wadler2007Comprehensive,
  author =	 {Phil Wadler and Simon {Peyton Jones}},
  title =	 {Comprehensive comprehensions: comprehensions with
                  "Order by" and "Group by"},
  booktitle =	 {Haskell Workshop 2007},
  year =	 2007,
  note =	 {submitted}
}

@Misc{Gibbons2007EssenceIteratorPattern,
  author =	 {Jeremy Gibbons and Bruno C. d. S. Oliveira},
  title =	 {The Essence of the Iterator Pattern},
  howpublished = {Available from:
                  \url{http://web.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/#iterator}},
  year =	 2007,
  note =	 {A revision of the MSFP version, submitted for
                  publication.}
}

@Unpublished{McBride2001Derivative,
  author =	 {Conor McBride},
  title =	 {The {D}erivative of a {R}egular {T}ype is its {T}ype
                  of {O}ne-{H}ole {C}ontexts},
  note =	 {Available at
                  \url{http://www.cs.nott.ac.uk/~ctm/diff.ps.gz}},
  year =	 2001
}

@InProceedings{Seefried2007ExpressionProblem,
  author =	 {Sean Seefried and Manuel M.T. Chakravarty},
  title =	 {Solving the expression problem with true separate
                  compilation},
  booktitle =	 {Haskell Workshop 2007},
  year =	 2007,
  note =	 {Submitted}
}

@TechReport{Burrows1994BlockSorting,
  author =	 {M. Burrows and D. J. Wheeler},
  title =	 {A Block-sorting Lossless Data Compression Algorithm},
  institution =	 {Digital Systems Research Center},
  year =	 1994,
  type =	 {Research Report},
  number =	 {SRC-124},
  month =	 may
}

@TechReport{McAdam1997Fix,
  author =	 {Bruce J. McAdam},
  title =	 {That About Wraps it Up: Using FIX to Handle Errors
                  Without Exceptions, and Other Programming Tricks},
  institution =	 {Department of Computer Science, University of
                  Edinburgh},
  year =	 1997,
  number =	 {ECS-LFCS-97-375}
}

@inproceedings{Kennedy2007CwCC,
  author =       {Andrew Kennedy},
  title =        {Compiling with continuations, continued},
  booktitle =    {ICFP '07: Proceedings of the 12th ACM SIGPLAN
                  International Conference on Functional Programming},
  year =         2007,
  isbn =         {978-1-59593-815-2},
  pages =        {177--190},
  location =     {Freiburg, Germany},
  doi =          {http://doi.acm.org/10.1145/1291151.1291179},
  publisher =    {ACM},
  address =      {New York, NY, USA},
}

@InProceedings{Danvy2002FirstOrderOnePassCPS,
  author =	 {Olivier Danvy, Lasse R. Nielsen},
  title =	 {A First-Order One-Pass CPS Transformation},
  booktitle =	 {Foundations of Software Science and Computation
                  Structures : 5th International Conference, FOSSACS
                  2002},
  pages =	 {367--393},
  year =	 2002,
  volume =	 2303,
  series =	 LNCS
}

@article{ Hatcliff1997ThunksAndLambdaCalculus,
  author =	 "John Hatcliff and Olivier Danvy",
  title =	 "Thunks and the lambda-Calculus",
  journal =	 "Journal of Functional Programming",
  volume =	 7,
  number =	 3,
  pages =	 "303-319",
  year =	 1997,
  url =		 "citeseer.ist.psu.edu/article/hatcliff95thunks.html"
}

@InProceedings{Guillemette2007TypePreserving,
  author =	 {Louis-Julien Guillemette and Stefan Monnier},
  title =	 {A Type-Preserving Closure Conversion in {Haskell}},
  booktitle =	 {Haskell Workshop 2007},
  year =	 2007
}

@PhdThesis{Veldhuizen2004PhD,
  author =       {Todd L. Veldhuizen},
  title =        {Active Libraries and Universal Languages},
  school =       {Indiana University Computer Science},
  year =         2004
}

@inproceedings{Chlipala2007CertifiedCompiler,
  author =       {Adam Chlipala},
  title =        {A certified type-preserving compiler from lambda
                  calculus to assembly language},
  booktitle =    {PLDI '07: Proceedings of the 2007 ACM SIGPLAN
                  conference on Programming language design and
                  implementation},
  year =         2007,
  isbn =         {978-1-59593-633-2},
  pages =        {54--65},
  location =     {San Diego, California, USA},
  doi =          {http://doi.acm.org/10.1145/1250734.1250742},
  publisher =    {ACM Press},
  address =      {New York, NY, USA},
}

@article{ Danvy1992RepresentingControl,
  author =       "Olivier Danvy and Andrzej Filinski",
  title =        "Representing Control: {A} study of the {CPS}
                  transformation",
  journal =      "Mathematical Structures in Computer Science",
  volume =       2,
  number =       4,
  pages =        "361--391",
  year =         1992
}

@TechReport{Kim1998AssessingOverhead,
  author =       {Jung-taek Kim and Kwangkeun Yi and Olivier Danvy},
  title =        {Assessing the Overhead of ML Exceptions by Selective CPS Transformation},
  institution =  {BRICS},
  year =         1998,
  number =       {RS-98-15},
  month =        sep
}

@TechReport{Appel2000OptimalSpilling,
  author =       {Andrew W. Appel and Lal George},
  title =        {Optimal Spilling for {CISC} Machines with Few
                  Registers},
  institution =  {Princeton University},
  year =         2000,
  number =       {TR-630-00},
  month =        nov
}

@InProceedings{Tolmach1997CombiningClosureConversion,
  author =       {Andrew Tolmach},
  title =        {Combining Closure Conversion with Closure Analysis
                  using Algebraic Types},
  booktitle =    {Types in Compilation workshop},
  year =         1997,
  month =        jun
}

@InProceedings{Tolmach1998OptimizingML,
  author =       {Andrew Tolmach},
  title =        {Optimizing ML Using a Hierarchy of Monadic Types},
  booktitle =    {Types in Compilation '98},
  pages =        {97--113},
  year =         1998,
  volume =       1473,
  series =       LNCS
}

@InProceedings{Ramsey2005ApplicativeCFG,
  author =       {Norman Ramsey and Jo{\~a}o Dias},
  title =        {An Applicative Control-Flow Graph Based on Huet's
                  Zipper},
  booktitle =    {ACM SIGPLAN Workshop on ML},
  pages =        {101--122},
  year =         2005,
  month =        sep
}

@InProceedings{Dias2006ConvertingIntermediate,
  author =       {Jo{\~a}o Dias and Norman Ramsey},
  title =        {Converting Intermediate Code to Assembly Code Using
                  Declarative Machine Descriptions},
  booktitle =    {15th International Conference on Compiler
                  Construction (CC 2006)},
  pages =        {217--231},
  year =         2006,
  volume =       3923,
  series =       LNCS,
  month =        mar
}

@InProceedings{Smith2004GeneralizedAlgorithm,
  author =       {Michael D. Smith and Norman Ramsey and Glenn
                  Holloway},
  title =        {A Generalized Algorithm for Graph-Coloring Register
                  Allocation},
  booktitle =    {ACM SIGPLAN '04 Conference on Programming Language
                  Design and Implementation},
  pages =        {277--288},
  year =         2004,
  volume =       39,
  number =       6,
  series =       {SIGPLAN Notices},
  month =        jun
}

@InProceedings{Kahl1999BeyondPrettyPrinting,
  author =       {Wolfram Kahl},
  title =        {Beyond Pretty-Printing: Galley Concepts in Document
                  Formatting Combinators},
  year =         1999,
  series =       LNCS,
  publisher =    SV,
  volume =       1551,
  pages =        {76--90},
  editor =       {Gopal Gupta},
  booktitle =    {Practical Aspects of Declarative Languages, First
                  International Workshop, {PADL '99, San Antonio,
                  Texas, USA, January 1999, Proceedings}},
  abstract =     {Galleys have been introduced by Jeff Kingston as one
                  of the key concepts underlying his advanced document
                  formatting system Lout. Although Lout is built on a
                  lazy functional programming language, galley
                  concepts are implemented as part of that language
                  and defined only informally. In this paper we
                  present a first formalisation of document formatting
                  combinators using galley concepts in the purely
                  functional programming language Haskell.}
}

@InProceedings{Mueller2006ExpressionAndLoop,
  author =       {Christopher Mueller and Andrew Lumsdaine},
  title =        {Expression and Loop Libraries for High-Performance
                  Code Synthesis},
  booktitle =    {The 19th International Workshop on Languages and
                  Compilers for Parallel Computing (LCPC 2006)},
  year =         2007,
  series =       LNCS,
  volume =       4382
}

@Book{Asperti1991Categories,
  author =       {Andrea Asperti and Giuseppe Longo},
  title =        {Categories, Types and Structures. Category Theory
                  for the working computer scientist},
  publisher =    MIT,
  year =         1991
}

@PhdThesis{Uh1997PhD,
  author =       {Gang-Ryung Uh},
  title =        {Effectively Exploiting Indirect Jumps},
  school =       {Florida State University},
  year =         1997
}

@inproceedings{Balat1998Strong,
  author =       {Vincent Balat and Olivier Danvy},
  title =        {Strong Normalization by Type-Directed Partial
                  Evaluation and Run-Time Code Generation},
  booktitle =    {TIC '98: Proceedings of the Second International
                  Workshop on Types in Compilation},
  year =         1998,
  isbn =         {3-540-64925-5},
  pages =        {240--252},
  publisher =    {Springer-Verlag},
  address =      {London, UK},
}

@inproceedings{Vechev2005DerivationEvaluation,
  title =        {Derivation and Evaluation of Concurrent Collectors.},
  author =       {Martin T. Vechev and David F. Bacon and Perry Cheng
                  and David Grove},
  booktitle =    {ECOOP},
  editor =       {Andrew P. Black},
  pages =        {577-601},
  publisher =    {Springer},
  series =       {Lecture Notes in Computer Science},
  url =
                  {http://dblp.uni-trier.de/db/conf/ecoop/ecoop2005.html#VechevBCG05},
  volume =       3586,
  year =         2005,
  biburl =
                  {http://www.bibsonomy.org/bibtex/2b5ccfd5c3d61b385c4638bb94469e8f8/dblp},
  description =  {dblp},
  ee =           {http://dx.doi.org/10.1007/11531142_25},
  isbn =         {3-540-27992-X},
  date =         {2005-10-05},
  keywords =     {dblp }
}

@inproceedings{Fluet2007ManticoreStatus,
  author =       {Matthew Fluet and Nic Ford and Mike Rainey and John
                  Reppy and Adam Shaw and Yingqi Xiao},
  title =        {Status Report: The {Manticore} Project},
  booktitle =    {Proceedings of the 2007 ACM SIGPLAN Workshop on
                  {ML}},
  year =         2007,
  month =        oct,
  abstract =     { The Manticore project is an effort to design and
                  implement a new functional language for parallel
                  programming. Unlike many earlier parallel languages,
                  Manticore is a \emph{heterogeneous} language that
                  supports parallelism at multiple
                  levels. Specifically, we combine CML-style explicit
                  concurrency with fine-grain, implicitly threaded,
                  parallel constructs. We have been working on an
                  implementation of Manticore for the past six months;
                  this paper gives an overview of our design and a
                  report on the status of the implementation effort. }
}

@InProceedings{Luna2005HiPEExperience,
  author =       {Daniel Luna and Mikael Pettersson and Konstantinos
                  Sagonas},
  title =        {Efficiently Compiling a Functional Language on
                  AMD64: The HiPE Experience},
  booktitle =    { 7th ACM SIGPLAN International Symposium on
                  Principles and Practice of Declarative Programming
                  (PPDP 2005)},
  year =         2005
}

@InProceedings{Lindahl2002UnboxedCompilation,
  author =       {Tobias Lindahl and Konstantinos Sagonas},
  title =        {Unboxed Compilation of Floating Point Arithmetic in
                  a Dynamically Typed Language Environment},
  booktitle =    {14th International Workshop on the Implementation of
                  Functional Languages (IFL'02)},
  year =         2002
}

@Article{Favero2007OperatorPrecedence,
  author =       {E. L. Favero},
  title =        {The simple and powerful yfx operator precedence
                  parser},
  journal =      SPE,
  year =         2007,
  volume =       37,
  number =       14,
  pages =        {1451-1474},
  month =        nov
}

@Article{Ramsey1998Unparsing,
  author =       {Norman Ramsey},
  title =        {Unparsing expressions with prefix and postfix
                  operators},
  journal =      SPE,
  year =         1998,
  volume =       28,
  number =       12,
  pages =        {1327-1356},
  month =        oct
}

@book{Backhouse2002AlgebraicMethods,
  title =        {Algebraic and coalgebraic methods in the mathematics
                  of program construction},
  publisher =    SV,
  year =         2002,
  editor =       {Roland Backhouse and Roy Crole and Jeremy Gibbons},
  address =      {New York, NY, USA}
} 

@InProceedings{Beckmann2004RunTimeCodeGeneration,
  author =       {Olav Beckmann and Alastair Houghton and Paul
                  H. J. Kelly and Michael Mellor},
  title =        {Run-time code generation in C++ as a foundation for
                  domain-specific optimisation},
  booktitle =    {Domain-Specific Program Generation International
                  Seminar},
  pages =        {291-306},
  year =         2004,
  volume =       3016,
  series =       LNCS
}

@phdthesis{Rhiger2001PhD,
  author =       {Morten Rhiger},
  title =        {Higher-Order Program Generation},
  school =       {Aarhus University},
  month =        aug,
  year =         2001
}

@InProceedings{Shapiro2004Towards,
  author =       {Jonathan S. Shapiro},
  title =        {Towards a Verified, General-Purpose Operating System
                  Kernel},
  booktitle =    {1st NICTA Workshop on Operating System Verification},
  year =         2004
}

@inproceedings{Sabry2005Quantum,
  author =       {Amr Sabry},
  title =        {Modeling quantum computing in Haskell},
  booktitle =    {Haskell '03: Proceedings of the 2003 ACM SIGPLAN
                  workshop on Haskell},
  year =         2003,
  isbn =         {1-58113-758-3},
  pages =        {39--49},
  location =     {Uppsala, Sweden},
  doi =          {http://doi.acm.org/10.1145/871895.871900},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@Book{Allen2001OptimizingCompilers,
  author =       {Randy Allen and Ken Kennedy},
  title =        {Optimizing Compilers for Modern Architectures. A
                  Dependence-based Approach},
  publisher =    MK,
  year =         2001
}

@Unpublished{Langford2001MRsync,
  author =       {John Langford},
  title =        {Multiround Rsync},
  note =         {World Wide Web:
                  \url{http://www-2.cs.cmu.edu/~jcl/research/mrsync/mrsync.ps}},
  year =         2001
}

@PhdThesis{Tridgell2001PhD,
  author =       {Andrew Tridgell},
  title =        {Efficient Algorithms for Sorting and
                  Synchronization},
  school =       {The Australian National University},
  year =         1999,
  month =        feb
}

@article{Ganapathi1982RetargetableCodeGeneration,
  author =       {Mahadevan Ganapathi and Charles N. Fischer and John
                  L. Hennessy},
  title =        {Retargetable Compiler Code Generation},
  journal =      {ACM Comput. Surv.},
  volume =       14,
  number =       4,
  year =         1982,
  issn =         {0360-0300},
  pages =        {573--592},
  doi =          {http://doi.acm.org/10.1145/356893.356897},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Johnston1979DynamicIncremental,
  author =       {Ronald L. Johnston},
  title =        {The Dynamic Incremental Compiler of {APL}$\backslash$3000},
  booktitle =    {APL '79: Proceedings of the International Conference
                  on APL: part 1},
  year =         1979,
  pages =        {82--87},
  location =     {New York, New York, United States},
  doi =          {http://doi.acm.org/10.1145/800136.804442},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@article{Schwartz1984IncrementalCompilation,
  author =       {Mayer D. Schwartz and Norman M. Delisle and Vimal
                  S. Begwani},
  title =        {Incremental compilation in Magpie},
  journal =      {SIGPLAN Notices},
  volume =       19,
  number =       6,
  year =         1984,
  issn =         {0362-1340},
  pages =        {122--131},
  doi =          {http://doi.acm.org/10.1145/502949.502887},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@article{DBLP:journals/spe/Ammann77,
  author    = {Urs Ammann},
  title     = {On Code Generation in a PASCAL Compiler},
  journal   = {Softw., Pract. Exper.},
  volume    = {7},
  number    = {3},
  year      = {1977},
  pages     = {391-423},
  bibsource = {DBLP, http://dblp.uni-trier.de}
}

@mastersthesis{Mun2005Functional3DGames,
  author =       {Mun Hon Cheong},
  title =        {Functional Programming and 3D Games},
  year =         2005,
  month =        {November},
  school =       {University of New South Wales},
  address =      {Sydney, Australia},
  abstract =     {Games are commonly programmed in imperative
                  languages. Functional languages have been known to
                  have benefits but have rarely been used to program
                  games. In this thesis we implement a first person
                  shooting game in Haskell and Yampa. The merits of
                  this approach are examined.}
}

@inproceedings{Parnas1976Response,
  author =       {D. L. Parnas and H. W{\"u}rges},
  title =        {Response to undesired events in software systems},
  booktitle =    {ICSE '76: Proceedings of the 2nd international
                  conference on Software engineering},
  year =         {1976},
  pages =        {437--446},
  location =     {San Francisco, California, United States},
  publisher =    {IEEE Computer Society Press},
  address =      {Los Alamitos, CA, USA},
}

@MastersThesis{Stewart2002MultiParadigmJITCompilation,
  author =       {Don Stewart},
  title =        {Multi-paradigm Just-In-Time Compilation},
  school =       {School of Computer Science and Engineering, The
                  University of New South Wales},
  year =         2002,
  month =        nov
}

@inproceedings{Longley1999WhenIsAFunctional,
  author =       "John Longley",
  title =        "When is a Functional Program Not a Functional
                  Program?",
  booktitle =    "International Conference on Functional Programming",
  pages =        "1-7",
  year =         1999,
  url =          "citeseer.ist.psu.edu/longley99when.html"
}

@Book{Gabriel1996PatternsOfSoftware,
  author =       {Richard P. Gabriel},
  title =        {Patterns of Software: Tales from the Software
                  Community},
  publisher =    {Oxford Press},
  year =         1996
}

@InProceedings{Hiser2007IndirectBranchHandling,
  author =       {Jason D. Hiser and Daniel Williams and Wei Hu and
                  Jack W. Davidson and Jason Mars and Bruce
                  R. Childers},
  title =        {Evaluating Indirect Branch Handling Mechanisms in
                  Software Dynamic Translation Systems},
  booktitle =    {CGO '07},
  year =         2007,
  month =        mar
}

@inproceedings{Bala2000Dynamo,
  author =       {Vasanth Bala and Evelyn Duesterwald and Sanjeev
                  Banerjia},
  title =        {Dynamo: a transparent dynamic optimization system},
  booktitle =    {PLDI '00: Proceedings of the ACM SIGPLAN 2000
                  Conference on Programming Language Design and
                  Implementation},
  year =         2000,
  isbn =         {1-58113-199-2},
  pages =        {1--12},
  location =     {Vancouver, British Columbia, Canada},
  doi =          {http://doi.acm.org/10.1145/349299.349303},
  publisher =    {ACM},
  address =      {New York, NY, USA},
}

@inproceedings{Lucco2000SplitStream,
  author =       {Steven Lucco},
  title =        {Transitive website},
  booktitle =    {PLDI '00: Proceedings of the ACM SIGPLAN 2000
                  conference on Programming language design and
                  implementation},
  year =         2000,
  isbn =         {1-58113-199-2},
  pages =        {27--34},
  location =     {Vancouver, British Columbia, Canada},
  doi =          {http://doi.acm.org/10.1145/349299.349307},
  publisher =    {ACM},
  address =      {New York, NY, USA},
}

@Misc{Transitive2008Website,
  author =       {Transitive Corporation},
  title =        {Transitive website},
  howpublished = {WWW: \url{http://www.transitive.com/}},
  month =        mar,
  year =         2008
}

@techreport{Scott2001Strata,
  author =       {Kevin Scott and Jack Davidson},
  title =        {Strata: A Software Dynamic Translation
                  Infrastructure},
  year =         2001,
  source =
                  {http://www.ncstrl.org:8900/ncstrl/servlet/search?formname=detail\&id=oai%3Ancstrlh%3Auva_cs%3Ancstrl.uva_cs%2F%2FCS-2001-17},
  publisher =    {University of Virginia},
  address =      {Charlottesville, VA, USA},
}

@techreport{Scott2000MatchCompilation,
  author =       {Kevin Scott and Norman Ramsey},
  title =        {When Do Match-compilation Heuristics Matter?},
  year =         2000,
  publisher =    {University of Virginia},
  address =      {Charlottesville, VA, USA},
}

@inproceedings{Minamide1996TypedClosureConversion,
  author =       {Y. Minamide and G. Morrisett and R. Harper},
  title =        {Typed closure conversion},
  booktitle =    {In Proc. 23rd Annual ACM SIGPLAN-SIGACT Symp. on
                  Principles of Programming Languages},
  year =         1996,
  pages =        {271--283},
  publisher =    {ACM Press}
}

@Article{Harper1993Polymorphic,
  author =       {Robert Harper and Mark Lillibridge},
  title =        {Polymorphic Type Assignment and {CPS} Conversion},
  journal =      {Lisp and Symbolic Computation},
  year =         1993,
  volume =       6,
  number =       {3--4},
  pages =        {361--379},
  month =        nov
}

@misc{ tolmach-from,
  author =       "A. Tolmach and D. Oliva",
  title =        "From ML to Ada: Strongly-typed language
                  interoperability via source translation",
  text =         "A. Tolmach and D. Oliva. From ML to Ada:
                  Strongly-typed language interoperability via source
                  translation. Journal of Functional Programming. (to
                  appear).",
  url =          "citeseer.ist.psu.edu/article/tolmach97from.html"
}

@misc{ bellegarde-notes,
  author =       "F. Bellegarde",
  title =        "Notes for pipelines of transformations for ML",
  url =          "citeseer.ist.psu.edu/bellegarde95notes.html"
}

@InProceedings{Wells1997TypedIL,
  author =       {J. B. Wells and Allyn Dimock and Robert Muller and
                  Franklyn Turbak},
  title =        { A typed intermediate language for flow-directed
                  compilation},
  booktitle =    {TAPSOFT '97: Theory and Practice of Software
                  Development},
  pages =        {757--771},
  year =         1997,
  volume =       1214,
  series =       LNCS,
  publisher =    SV
}

@article{Dimock1997Strongly,
  author =       {Allyn Dimock and Robert Muller and Franklyn Turbak
                  and J. B. Wells},
  title =        {Strongly typed flow-directed representation
                  transformations (extended abstract)},
  journal =      {SIGPLAN Notices},
  volume =       32,
  number =       8,
  year =         1997,
  issn =         {0362-1340},
  pages =        {11--24},
  doi =          {http://doi.acm.org/10.1145/258949.258952},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Benton2007RelationalSemantics,
  author =       {Nick Benton and Andrew Kennedy and Lennart Beringer
                  and Martin Hofmann},
  title =        {Relational semantics for effect-based program
                  transformations with dynamic allocation},
  booktitle =    {PPDP '07: Proceedings of the 9th ACM SIGPLAN
                  international conference on Principles and practice
                  of declarative programming},
  year =         2007,
  isbn =         {978-1-59593-769-8},
  pages =        {87--96},
  location =     {Wroclaw, Poland},
  doi =          {http://doi.acm.org/10.1145/1273920.1273932},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Benton2007SemanticsEffectAnalysis,
  author =       {Nick Benton and Peter Buchlovsky},
  title =        {Semantics of an effect analysis for exceptions},
  booktitle =    {TLDI '07: Proceedings of the 2007 ACM SIGPLAN
                  international workshop on Types in languages design
                  and implementation},
  year =         2007,
  isbn =         {1-59593-393-X},
  pages =        {15--26},
  location =     {Nice, Nice, France},
  doi =          {http://doi.acm.org/10.1145/1190315.1190320},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@InProceedings{Truong1998ImprovingCacheBehavior,
  author =       {D. N. Truong and F. Bodin and A. Seznec},
  title =        {Improving cache behavior of dynamically allocated
                  data structures},
  booktitle =    {1998 International Conference on Parallel
                  Architectures and Compilation Techniques},
  pages =        {322--329},
  year =         1998,
  month =        oct
}

@article{Kistler2000AutomatedDataMember,
  author =       {Thomas Kistler and Michael Franz},
  title =        {Automated data-member layout of heap objects to
                  improve memory-hierarchy performance},
  journal =      {ACM Trans. Program. Lang. Syst.},
  volume =       22,
  number =       3,
  year =         2000,
  issn =         {0164-0925},
  pages =        {490--505},
  doi =          {http://doi.acm.org/10.1145/353926.353937},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Calder1998CacheConscious,
  author =       {Brad Calder and Chandra Krintz and Simmi John and
                  Todd Austin},
  title =        {Cache-conscious data placement},
  booktitle =    {ASPLOS-VIII: Proceedings of the eighth international
                  conference on Architectural support for programming
                  languages and operating systems},
  year =         1998,
  isbn =         {1-58113-107-0},
  pages =        {139--149},
  location =     {San Jose, California, United States},
  doi =          {http://doi.acm.org/10.1145/291069.291036},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Luk1996CompilerBasedPrefetching,
  author =       {Chi-Keung Luk and Todd C. Mowry},
  title =        {Compiler-based prefetching for recursive data
                  structures},
  booktitle =    {ASPLOS-VII: Proceedings of the seventh international
                  conference on Architectural support for programming
                  languages and operating systems},
  year =         1996,
  isbn =         {0-89791-767-7},
  pages =        {222--233},
  location =     {Cambridge, Massachusetts, United States},
  doi =          {http://doi.acm.org/10.1145/237090.237190},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Stichnoth1999SupportGC,
  author =       {James M. Stichnoth and Guei-Yuan Lueh and Micha\l
                  Cierniak},
  title =        {Support for garbage collection at every instruction
                  in a Java compiler},
  booktitle =    {PLDI '99: Proceedings of the ACM SIGPLAN 1999
                  conference on Programming language design and
                  implementation},
  year =         1999,
  isbn =         {1-58113-094-5},
  pages =        {118--127},
  location =     {Atlanta, Georgia, United States},
  doi =          {http://doi.acm.org/10.1145/301618.301652},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Chilimbi1999CacheConsciousStructureLayout,
  author =       {Trishul M. Chilimbi and Mark D. Hill and James
                  R. Larus},
  title =        {Cache-conscious structure layout},
  booktitle =    {PLDI '99: Proceedings of the ACM SIGPLAN 1999
                  conference on Programming language design and
                  implementation},
  year =         1999,
  isbn =         {1-58113-094-5},
  pages =        {1--12},
  location =     {Atlanta, Georgia, United States},
  doi =          {http://doi.acm.org/10.1145/301618.301633},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@article{Chilimbi1999CacheConsciousStructureDefinition,
  author =       {Trishul M. Chilimbi and Bob Davidson and James
                  R. Larus},
  title =        {Cache-conscious structure definition},
  journal =      {SIGPLAN Notices},
  volume =       34,
  number =       5,
  year =         1999,
  issn =         {0362-1340},
  pages =        {13--24},
  doi =          {http://doi.acm.org/10.1145/301631.301635},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@InProceedings{Vytiniotis2008FPH,
  author =       {Dimitrios Vytiniotis and Stephanie Weirich and Simon
                  {Peyton Jones}},
  title =        {FPH : First-class Polymorphism for Haskell},
  booktitle =    {ICFP 2008},
  year =         2008,
  note =         {Submitted}
}

@InProceedings{Bansal2006Superoptimizers,
  author =       {Sorav Bansal and Alex Aiken},
  title =        {Automatic Generation of Peephole Superoptimizers},
  booktitle =    {ASPLOS 2006},
  year =         2006
}

@inproceedings{Partain1993Nofib,
  author =       {Will Partain},
  title =        {The nofib Benchmark Suite of Haskell Programs},
  booktitle =    {Proceedings of the 1992 Glasgow Workshop on
                  Functional Programming},
  year =         1993,
  isbn =         {3-540-19820-2},
  pages =        {195--202},
  publisher =    {Springer-Verlag},
  address =      {London, UK},
}

@Book{Kernighan1988CProgrammingLanguage,
  author =       {Brian W. Kernighan and Dennis M. Ritchie},
  title =        {The {C} Programming Language},
  publisher =    PH,
  year =         1988,
  edition =      {2nd}
}

@PhdThesis{Nemeth2000PhD,
  author =       {L{\'a}szl{\'o} N{\'e}meth},
  title =        {Catamorphism-based program transformations for
                  non-strict functional languages},
  school =       {University of Glasgow},
  year =         2000,
  month =        nov
}

@inproceedings{Hage2008HeapRecycling,
  author =       {Jurriaan Hage and Stefan Holdermans},
  title =        {Heap recycling for lazy languages},
  booktitle =    {PEPM '08: Proceedings of the 2008 ACM SIGPLAN
                  symposium on Partial evaluation and semantics-based
                  program manipulation},
  year =         2008,
  isbn =         {978-1-59593-977-7},
  pages =        {189--197},
  location =     {San Francisco, California, USA},
  doi =          {http://doi.acm.org/10.1145/1328408.1328436},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@Misc{Grabmueller2008RdtscHomepage,
  author =       {Martin Grabm{\"u}ller},
  title =        {rdtsc -- Binding for the rdtsc machine instruction},
  howpublished = {Available on the World Wide Web:
                  \url{http://uebb.cs.tu-berlin.de/~magr/projects/rdtsc/doc/}},
  note =         {Last visited: 2008-10-07},
  month =        jun,
  year =         2008
}

@INPROCEEDINGS{Bohannon2008Boomerang,
  AUTHOR =       {Aaron Bohannon and J. Nathan Foster and Benjamin
                  C. Pierce and Alexandre Pilkiewicz and Alan Schmitt},
  TITLE =        {Boomerang: Resourceful Lenses for String Data},
  BOOKTITLE =    {{ACM} {SIGPLAN--SIGACT} {S}ymposium on {P}rinciples
                  of {P}rogramming {L}anguages ({POPL}), San
                  Francisco, California},
  YEAR =         2008,
  MONTH =        JAN,
  BCP =          {Yes},
  KEYS =         {harmony},
  PLCLUB =       {Yes},
  SHORT =
                  {http://www.cis.upenn.edu/~bcpierce/papers/boomerang.pdf},
  TR =
                  {http://www.cis.upenn.edu/~bcpierce/papers/boomerang-tr.pdf}
}

@inproceedings{ Veldhuizen2002GuaranteedOptimization,
  author =       "Todd L. Veldhuizen and Andrew Lumsdaine",
  title =        "Guaranteed Optimization: Proving Nullspace
                  Properties of Compilers",
  url =          "citeseer.ist.psu.edu/veldhuizen02guaranteed.html",
  url =          "http://osl.iu.edu/~tveldhui/papers/",
  booktitle =    "Proceedings of the 2002 Static Analysis Symposium
                  (SAS'02)",
  publisher =    "Springer-Verlag",
  year =         2002,
  pages =        "263-277",
  volume =       2477,
  conflocation = "Madrid, Spain",
  conftitle =    "Static Analysis Symposium",
  series =       "Lecture Notes in Computer Science",
  abstract =     "Writing performance-critical programs can be
                  frustrating because optimizing compilers for
                  imperative languages tend to be unpredictable. For a
                  subset of optimizations - those that simplify rather
                  than reorder code - it would be useful to prove that
                  a compiler reliably performs optimizations. We show
                  that adopting a ``superanalysis'' approach to
                  optimization enables such a proof. By analogy with
                  linear algebra, we define the nullspace of an
                  optimizer as those programs it reduces to the empty
                  program. To span the nullspace, we define rewrite
                  rules that de-optimize programs by introducing
                  abstraction. For a model compiler we prove that any
                  sequence of de-optimizing rewrite rule applications
                  is undone by the optimizer. Thus, we are able to
                  give programmers a clear mental model of what
                  simplifications the compiler is guaranteed to
                  perform, and make progress on the problem of
                  ``abstraction penalty'' in imperative languages."
}

@Article{Ershov1977PartialComputation,
  author =       {Andrei Ershov},
  title =        { On the partial computation principle},
  journal =      {Information Processing Letters},
  year =         1977,
  volume =       6,
  number =       2,
  pages =        {38--41}
}

@mastersthesis{ Whaley1999Thesis,
  author =       "John Whaley",
  title =        "Dynamic Optimization through the use of Automatic
                  Runtime Specialization",
  school =       "Massachusetts Institute of Technology",
  month =        may,
  year =         1999,
}

@phdthesis{Ljunglof2002licthesis,
  author =       {Peter Ljungl{\"o}f},
  month =        apr,
  school =       {Department of Computer Science, Gothenburg
                  University and Chalmers University of Technology},
  title =        {Pure Functional Parsing -- an advanced tutorial},
  type =         {Licenciate Thesis},
  year =         2002
}

@Article{Erwig2001InductiveGraphs,
  author =       {Martin Erwig},
  title =        {Inductive Graphs and Functional Graph Algorithms},
  journal =      {Journal of Functional Programming},
  year =         2001,
  volume =       11,
  number =       5,
  pages =        {467--492}
}

@MastersThesis{Boehm2007AutomaticCodeGeneration,
  author =       {Igor B{\"o}hm},
  title =        {Automatic Code Generation using Dynamic Programming
                  Techniques},
  school =       {Johannes Kepler Universit{\"a}t Linz},
  year =         2007
}

@article{Poletto1999LinScanRegAlloc,
 author = {Massimiliano Poletto and Vivek Sarkar},
 title = {Linear scan register allocation},
 journal = {ACM Trans. Program. Lang. Syst.},
 volume = {21},
 number = {5},
 year = {1999},
 issn = {0164-0925},
 pages = {895--913},
 doi = {http://doi.acm.org/10.1145/330249.330250},
 publisher = {ACM},
 address = {New York, NY, USA},
 }

@Article{Sagonas2003LinScanRegAlloc,
  author =       {Konstantinos Sagonas and Erik Stenman},
  title =        {Experimental evaluation and improvements to linear
                  scan register allocation},
  journal =      {Software: Practice and Experience},
  year =         2003,
  volume =       33,
  number =       11,
  pages =        {1003--1034}
}

@InProceedings{Moessenboeck2002LinScanRegAllocSSA,
  author =       {Hanspeter M{\"o}ssenb{\"o}ck and Michael Pfeiffer},
  title =        {Linear Scan Register Allocation in the Context of
                  SSA Form and Register Constraints},
  booktitle =    {Compiler Construction},
  pages =        {153-206},
  year =         2002,
  volume =       2304,
  series =       LNCS,
  publisher =    SV
}


@article{Fraser1992BURG,
  author =       {Christopher W. Fraser and Robert R. Henry and Todd
                  A. Proebsting},
  title =        {BURG: fast optimal instruction selection and tree
                  parsing},
  journal =      {SIGPLAN Notices},
  volume =       27,
  number =       4,
  year =         1992,
  issn =         {0362-1340},
  pages =        {68--76},
  doi =          {http://doi.acm.org/10.1145/131080.131089},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Chaitin1982RegisterAllocation,
  author =       {G. J. Chaitin},
  title =        {Register allocation \& spilling via graph coloring},
  booktitle =    {SIGPLAN '82: Proceedings of the 1982 SIGPLAN
                  Symposium on Compiler Construction},
  year =         1982,
  isbn =         {0-89791-074-5},
  pages =        {98--105},
  location =     {Boston, Massachusetts, United States},
  doi =          {http://doi.acm.org/10.1145/800230.806984},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@article{Proebsting1995BURSAutomataGeneration,
  author =       {Todd A. Proebsting},
  title =        {BURS automata generation},
  journal =      {ACM Trans. Program. Lang. Syst.},
  volume =       17,
  number =       3,
  year =         1995,
  issn =         {0164-0925},
  pages =        {461--486},
  doi =          {http://doi.acm.org/10.1145/203095.203098},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@article{Fraser1992EngineeringCodeGenGen,
  author =       {Christopher W. Fraser and David R. Hanson and Todd
                  A. Proebsting},
  title =        {Engineering a simple, efficient code-generator
                  generator},
  journal =      {ACM Lett. Program. Lang. Syst.},
  volume =       1,
  number =       3,
  year =         1992,
  issn =         {1057-4514},
  pages =        {213--226},
  doi =          {http://doi.acm.org/10.1145/151640.151642},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@incollection{Malmqvist1996RTCG,
  author =       "Markus Malmqvist and Tero Hasu",
  title =        "Runtime Code Generation",
  booktitle =    {Seminar on Mobile Code},
  publisher =    {Helsinki University of Technology, Department of
                  Computer Science},
  month =        May,
  year =         1996,
  series =       {TKO-C79}
}

@phdthesis{Heeren2005TopQualityTypeErrorMessages,
  author =       {Bastiaan J. Heeren},
  school =       {Universiteit Utrecht, The Netherlands},
  title =        {Top Quality Type Error Messages},
  year =         2005,
  month =        sep,
  url =          {\url{http://www.cs.uu.nl/people/bastiaan/phdthesis}},
}

@InProceedings{Hallet2005ExPolyRec,
  author =       {J.J. Hallett and A.J. Kfoury},
  title =        {Programming Examples Needing Polymorphic Recursion},
  booktitle =    {Proceedings of the Third International Workshop on
                  Intersection Types and Related Systems (ITRS 2004)},
  pages =        {57-102},
  year =         2005,
  volume =       136,
  series =       {Electronic Notes in Theoretical Computer Science}
}

@InProceedings{Leermakers1991RecursiveAscent,
  author =       {Renee Leermakers},
  title =        {Non-Deterministic Recursive Ascent Parsing},
  booktitle =    {1991 conference on European chapter of the
                  Association for Computational Linguistics},
  year =         1991
}

@TechReport{Gal2006Incremental,
  author =       {A. Gal and M. Franz},
  title =        {Incremental Dynamic Code Generation with Trace
                  Trees},
  institution =  {Donald Bren School of Information and Computer
                  Science, University of California, Irvine},
  year =         2006,
  number =       {06-16}
}

@inproceedings{Ronne2004InterpretingSSA,
  author =       {{Jeffery von} Ronne and Ning Wang and Michael Franz},
  title =        {Interpreting programs in static single assignment
                  form},
  booktitle =    {IVME '04: Proceedings of the 2004 workshop on
                  Interpreters, virtual machines and emulators},
  year =         2004,
  isbn =         {1-58113-909-8},
  pages =        {23--30},
  location =     {Washington, D.C.},
  doi =          {http://doi.acm.org/10.1145/1059579.1059585},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Zhou2005PlanningCodeBuffer,
  author =       {Shukang Zhou and Bruce R. Childers and Mary Lou
                  Soffa},
  title =        {Planning for code buffer management in distributed
                  virtual execution environments},
  booktitle =    {VEE '05: Proceedings of the 1st ACM/USENIX
                  international conference on Virtual execution
                  environments},
  year =         2005,
  isbn =         {1-59593-047-7},
  pages =        {100--109},
  location =     {Chicago, IL, USA},
  doi =          {http://doi.acm.org/10.1145/1064979.1064994},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@inproceedings{Lerner2002ComposingDataflow,
  author =       {Sorin Lerner and David Grove and Craig Chambers},
  title =        {Composing dataflow analyses and transformations},
  booktitle =    {POPL '02: Proceedings of the 29th ACM SIGPLAN-SIGACT
                  symposium on Principles of programming languages},
  year =         2002,
  isbn =         {1-58113-450-9},
  pages =        {270--282},
  location =     {Portland, Oregon},
  doi =          {http://doi.acm.org/10.1145/503272.503298},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@article{Click1993SimpleGraphBased,
  author =       {Cliff Click and Michael Paleczny},
  title =        {A simple graph-based intermediate representation},
  journal =      {SIGPLAN Not.},
  volume =       30,
  number =       3,
  year =         1993,
  issn =         {0362-1340},
  pages =        {35--49},
  doi =          {http://doi.acm.org/10.1145/202530.202534},
  publisher =    ACM,
  address =      {New York, NY, USA},
}

@InProceedings{Chakravarty2008PartialVectorisation,
  author =       {Manuel M. T. Chakravarty and Roman Leshchinskiy and
                  Simon {Peyton Jones} and Gabriele Keller},
  title =        {Partial vectorisation of Haskell programs},
  booktitle =    {Proc ACM Workshop on Declarative Aspects of
                  Multicore Programming},
  year =         2008,
  month =        jan
}

@article{McCarthy1960RecursiveFunctions,
  author =       {John McCarthy},
  title =        {Recursive functions of symbolic expressions and
                  their computation by machine, {Part I}},
  journal =      CACM,
  volume =       3,
  number =       4,
  year =         1960,
  issn =         {0001-0782},
  pages =        {184--195},
  doi =          {http://doi.acm.org/10.1145/367177.367199},
  publisher =    ACM,
  address =      {New York, NY, USA},
}