packages feed

AlgorithmW 0.1.0.0 → 0.1.0.1

raw patch · 3 files changed

+16685/−4 lines, 3 files

Files

AlgorithmW.cabal view
@@ -1,8 +1,5 @@--- Initial AlgorithmW.cabal generated by cabal init.  For further --- documentation, see http://haskell.org/cabal/users-guide/- name:                AlgorithmW-version:             0.1.0.0+version:             0.1.0.1 synopsis:            Example implementation of Algorithm W for Hindley-Milner  		     type inference. description:         Complete implementation of the classic@@ -16,6 +13,8 @@ category:            Development build-type:          Simple cabal-version:       >=1.10++extra-source-files:  bibliography.bib changelog.txt  executable AlgorithmW   main-is:             AlgorithmW.lhs
+ bibliography.bib view
@@ -0,0 +1,16677 @@+% 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},+}+
+ changelog.txt view
@@ -0,0 +1,5 @@+0.1.0.1+- Added bibliography.bib and changelog.txt to the tarball.++0.1.0.0+- Initial version.