@@ -1,3856 +0,0 @@
1−@inproceedings{res-dsl-padl12,
2− title = {Resource-safe Systems Programming with Embedded Domain Specific Languages},
4− booktitle = {Practical Applications of Declarative Languages 2012},
5− author = {Edwin Brady and Kevin Hammond},
7− publisher = {Springer},
12− author = {Andres L\"{o}h and Conor McBride and Wouter Swierstra},
13− title = {A tutorial implementation of a dependently typed lambda calculus},
15− journal = {Fundamenta Informaticae},
21− author = {McBride, Conor and Paterson, Ross},
22− title = {Applicative programming with effects},
23− journal = {J. Funct. Program.},
31− url = {http://portal.acm.org/citation.cfm?id=1348940.1348941},
32− doi = {10.1017/S0956796807006326},
34− publisher = {Cambridge University Press},
35− address = {New York, NY, USA},
39− author = {Bjesse, Per and Claessen, Koen and Sheeran, Mary and Singh, Satnam},
40− title = {Lava: hardware design in {Haskell}},
41− booktitle = {Proceedings of the third ACM SIGPLAN international conference on Functional programming},
44− isbn = {1-58113-024-4},
45− location = {Baltimore, Maryland, United States},
48− url = {http://doi.acm.org/10.1145/289423.289440},
49− doi = {http://doi.acm.org/10.1145/289423.289440},
52− address = {New York, NY, USA},
55−@inproceedings{plpv11,
56− author = {Edwin Brady},
57− title = {Idris --- Systems programming meets full dependent types},
58− booktitle = {Programming Languages meets Program Verification {(PLPV 2011)}},
61− ee = {http://doi.acm.org/10.1145/1929529.1929536},
62− bibsource = {DBLP, http://dblp.uni-trier.de}
65−@inproceedings{epic-tfp,
66− author = {Edwin Brady},
67− title = {Epic --- a library for generating compilers},
69− booktitle = {{Trends in Functional Programming} ({TFP} '11)},
73−@inproceedings{ynot08,
74− author = {Nanevski,, Aleksandar and Morrisett,, Greg and
75− Shinnar,, Avraham and Govereau,, Paul and Birkedal,,
77− title = {Ynot: reasoning with the awkward squad},
78− booktitle = {{ICFP} '08: Proceeding of the 13th {ACM SIGPLAN}
79− international conference on Functional programming},
81− isbn = {978-1-59593-919-7},
83− location = {Victoria, BC, Canada},
84− doi = {http://doi.acm.org/10.1145/1411204.1411237},
86− address = {New York, NY, USA},
90− author = {Edwin Brady and Kevin Hammond},
91− title = {Correct-by-Construction Concurrency: Using Dependent Types to Verify Implementations of Effectful Resource Usage Protocols},
93− journal = {Fundamenta Informaticae},
99−@inproceedings{devil-osdi00,
100− author = {Fabrice M{\'e}rillon and
101− Laurent R{\'e}veill{\`e}re and
105− title = {Devil: An IDL for Hardware Programming},
106− booktitle = {4th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2000)},
111−@INPROCEEDINGS{device-osdi08,
112− author = {Dan Williams and Patrick Reynolds and Kevin Walsh and Emin Gün Sirer and Fred B. Schneider},
113− title = {Device driver safety through a reference validation mechanism},
114− booktitle = {8th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2008)},
118−@inproceedings{sozeau-equations,
119− author = {Matthieu Sozeau},
120− title = {Equations: A Dependent Pattern-Matching Compiler},
121− booktitle = {First International Conference on Interactive Theorem Proving (ITP 2010)},
124− ee = {http://dx.doi.org/10.1007/978-3-642-14052-5_29},
125− crossref = {DBLP:conf/itp/2010},
126− bibsource = {DBLP, http://dblp.uni-trier.de}
130−@inproceedings{packet-type,
131− author = "Peter J. McCann and Satish Chandra",
132− title = "Packet Types: Abstract Specification of Network Protocol Messages",
134− booktitle = "SIGCOMM '00",
138−@inproceedings{qs-types,
139− author = {Eelis {van der Weegen} and James McKinna},
141− title={A Machine-checked Proof of the Average-case Complexity of Quicksort in Coq},
144− series = {Lecture Notes in Computer Science},
145− publisher = {Springer}
149−@inproceedings{totalparser,
150− author = {Nils Anders Danielsson},
151− title = {Total Parser Combinators},
152− booktitle = {{ICFP} '10: Proceedings of the 15th {ACM} {SIGPLAN} International Conference on Functional Programming},
154− isbn = {978-1-60558-794-3},
156− location = {Baltimore, Maryland, USA},
157− doi = {http://doi.{ACM}.org/10.1145/1863543.1863587},
158− publisher = {{ACM}},
159− address = {New York, NY, USA},
164− title="{Internet Protocol}",
165− series="Request for Comments",
167− howpublished="RFC 791 (Standard)",
169− organization="Internet Engineering Task Force",
172− note="Updated by RFC 1349",
173− url="http://www.ietf.org/rfc/rfc791.txt",
179− title="{Internet Control Message Protocol}",
180− series="Request for Comments",
182− howpublished="RFC 792 (Standard)",
184− organization="Internet Engineering Task Force",
187− note="Updated by RFCs 950, 4884",
188− url="http://www.ietf.org/rfc/rfc792.txt",
191−@INPROCEEDINGS{Dybjer-indrec,
192− author = {Peter Dybjer and Anton Setzer},
193− title = {A Finite Axiomatization of Inductive-Recursive Definitions},
194− booktitle = {Tyed Lambda Calculi and Applications},
196− series = {Lecture Notes in Computer Science},
199− publisher = {Springer}
203− author = {W. Richard Stevens},
204− title = {{TCP/IP} Illustrated Volume 1: The Protocols},
206− publisher = {Addison Wesley},
207− isbn = {0-201-63346-9}
210−@inproceedings{coqtypeclasses,
211− author = {Sozeau, Matthieu and Oury, Nicolas},
212− title = {First-Class Type Classes},
213− booktitle = {TPHOLs '08: Proceedings of the 21st International Conference on Theorem Proving in Higher Order Logics},
215− isbn = {978-3-540-71065-3},
217− location = {Montreal, P.Q., Canada},
218− doi = {http://dx.doi.org/10.1007/978-3-540-71067-7_23},
219− publisher = {Springer-Verlag},
220− address = {Berlin, Heidelberg},
224−@inproceedings{kipling,
225− author = {McBride, Conor},
226− title = {Outrageous but meaningful coincidences: dependent type-safe syntax and evaluation},
227− booktitle = {WGP '10: Proceedings of the 6th {ACM} {SIGPLAN} workshop on Generic programming},
229− isbn = {978-1-4503-0251-7},
231− location = {Baltimore, Maryland, USA},
232− doi = {http://doi.{ACM}.org/10.1145/1863495.1863497},
233− publisher = {{ACM}},
234− address = {New York, NY, USA},
237−@inproceedings{padsml,
238− author = {Yitzhak Mandelbaum and
241− Mary F. Fern{\'a}ndez and
243− title = {{PADS/ML}: a functional data description language},
244− booktitle = {POPL '07: Proceedings of the 34th {ACM} {SIGPLAN}-SIGACT Symposium on
245− Principles of Programming Languages, POPL 2007, Nice, France,
246− January 17-19, 2007},
249− ee = {http://doi.{ACM}.org/10.1145/1190216.1190231},
250− crossref = {DBLP:conf/popl/2007},
251− bibsource = {DBLP, http://dblp.uni-trier.de}
254−@proceedings{DBLP:conf/popl/2007,
255− editor = {Martin Hofmann and
256− Matthias Felleisen},
257− title = {Proceedings of the 34th {ACM} {SIGPLAN}-SIGACT Symposium on
258− Principles of Programming Languages, POPL 2007, Nice, France,
259− January 17-19, 2007},
261− publisher = {{ACM}},
263− isbn = {1-59593-575-4},
264− bibsource = {DBLP, http://dblp.uni-trier.de}
267−@inproceedings{melange,
268− author = {Madhavapeddy, Anil and Ho, Alex and Deegan, Tim and Scott, David and Sohan, Ripduman},
269− title = {Melange: creating a "functional" internet},
270− booktitle = {EuroSys '07: Proceedings of the 2nd {ACM} SIGOPS/EuroSys European Conference on Computer Systems 2007},
272− isbn = {978-1-59593-636-3},
273− location = {Lisbon, Portugal},
274− doi = {http://doi.{ACM}.org/10.1145/1272996.1273009},
275− publisher = {{ACM}},
276− address = {New York, NY, USA},
281−@article{next700data,
282− author = {Fisher, Kathleen and Mandelbaum, Yitzhak and Walker, David},
283− title = {The next 700 data description languages},
284− journal = {{SIGPLAN} Not.},
290− doi = {http://doi.{ACM}.org/10.1145/1111320.1111039},
291− publisher = {{ACM}},
292− address = {New York, NY, USA},
296−@INPROCEEDINGS{xi-ats,
297− author = {Hongwei Xi},
298− title = {{Applied Type System} (extended abstract)},
299− booktitle = {Types for Proofs and Programs 2003},
300− editor = {Stefano Berardi and Mario Coppo and Ferruccio Damiani},
301− publisher = {Springer},
302− series = {Lecture Notes in Computer Science},
308−@inproceedings{powerpi,
309− author = {Nicolas Oury and
311− title = {The power of {Pi}},
312− booktitle = {{ICFP} '08: Proceedings of the 13th {ACM} {SIGPLAN} International Conference
313− on Functional Programming, {ICFP} 2008, Victoria, BC, Canada,
314− September 20-28, 2008},
317− ee = {http://doi.{ACM}.org/10.1145/1411204.1411213},
318− crossref = {DBLP:conf/{ICFP}/2008},
319− bibsource = {DBLP, http://dblp.uni-trier.de}
322−@proceedings{DBLP:conf/{ICFP}/2008,
323− editor = {James Hook and
325− title = {Proceeding of the 13th {ACM} {SIGPLAN} international conference
326− on Functional programming, {ICFP} 2008, Victoria, BC, Canada,
327− September 20-28, 2008},
328− booktitle = {{ICFP}},
329− publisher = {{ACM}},
331− isbn = {978-1-59593-919-7},
332− bibsource = {DBLP, http://dblp.uni-trier.de}
336−@inproceedings{security-types,
337− author = {Morgenstern, Jamie and Licata, Daniel R.},
338− title = {Security-typed programming within dependently typed programming},
339− booktitle = {{ICFP} '10: Proceedings of the 15th {ACM} {SIGPLAN} International Conference on Functional Programming},
341− isbn = {978-1-60558-794-3},
343− location = {Baltimore, Maryland, USA},
344− doi = {http://doi.{ACM}.org/10.1145/1863543.1863569},
345− publisher = {{ACM}},
346− address = {New York, NY, USA},
349−@inproceedings{levitation,
350− author = {Chapman, James and Dagand, Pierre-\'{E}variste and McBride, Conor and Morris, Peter},
351− title = {The gentle art of levitation},
352− booktitle = {{ICFP} '10: Proceedings of the 15th {ACM} {SIGPLAN} International Conference on Functional Programming},
354− isbn = {978-1-60558-794-3},
356− location = {Baltimore, Maryland, USA},
357− doi = {http://doi.{ACM}.org/10.1145/1863543.1863547},
358− publisher = {{ACM}},
359− address = {New York, NY, USA},
364−@INPROCEEDINGS{awkward,
365− author = {Simon {Peyton Jones}},
366− title = {Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in {Haskell}},
367− booktitle = {Engineering theories of software construction},
372−@inproceedings{scrap-engine,
373− author = {Brady, Edwin and Hammond, Kevin},
374− title = {Scrapping your inefficient engine: using partial evaluation to improve domain-specific language implementation},
375− booktitle = {{ICFP} '10: Proceedings of the 15th {ACM} {SIGPLAN} International Conference on Functional Programming},
377− isbn = {978-1-60558-794-3},
379− location = {Baltimore, Maryland, USA},
380− doi = {http://doi.{ACM}.org/10.1145/1863543.1863587},
381− publisher = {{ACM}},
382− address = {New York, NY, USA},
386− author = {Chlipala, Adam},
387− title = {Ur: statically-typed metaprogramming with type-level record computation},
388− journal = {{SIGPLAN} Not.},
394− doi = {http://doi.{ACM}.org/10.1145/1809028.1806612},
395− publisher = {{ACM}},
396− address = {New York, NY, USA},
401−@phdthesis{norell-thesis,
402− author = {Ulf Norell},
403− title = {Towards a practical programming language based on dependent type
405− school = {Chalmers University of Technology},
407− month = {September},
410−@inproceedings{open-type,
411− author = {Schrijvers, Tom and Peyton Jones, Simon and Chakravarty, Manuel and Sulzmann, Martin},
412− title = {Type checking with open type functions},
413− booktitle = {International Conf. on Functional Programming ({ICFP} 2008)},
416− doi = {http://doi.{ACM}.org/10.1145/1411203.1411215},
417− publisher = {{ACM}},
418− address = {New York, NY, USA},
421−@inproceedings{ngna-dsl,
422− title = {Domain Specific Languages ({DSL}s) for Network Protocols},
423− author = {Saleem Bhatti and Edwin Brady and Kevin Hammond and James McKinna},
425− booktitle = {International Workshop on Next Generation Network Architecture ({NGNA} 2009)}
428−@phdthesis{gill-thesis,
429− title = {Cheap deforestation for non-strict functional languages},
431− institution = {University of Glasgow},
437− title = {Low Level Virtual Machine for {Glasgow Haskell Compiler}},
438− author = {David Terei},
440− howpublished = {Bachelor's Thesis, Computer Science and Engineering Dept., The University of New South Wales, Sydney, Australia}
444− title = {{LLVM}: An Infrastructure for Multi-Stage Optimization},
445− author = {Chris Lattner},
448− institution = {Computer Science Dept., University of Illinois at Urbana-Champaign}
451−@inproceedings{gpu-arrays,
452− title = {GPU Kernels as Data-Parallel Array Computations in Haskell},
453− author = {Sean Lee and Manuel M. T. Chakravarty and Vinod Grover and Gabriele Keller.},
455− booktitle = {Workshop on Exploiting Parallelism using GPUs and other Hardware-Assisted Methods (EPAHM 2009)}
459− author = {Galois, Inc.},
462− howpublished = {\url{http://cryptol.net/}}
465−@inproceedings{paradise-dsl,
466− author = {Lennart Augustsson and Howard Mansell and Ganesh Sittampalam},
467− title = {{Paradise: a two-stage DSL embedded in Haskell}},
468− booktitle = {International Conf. on Functional Programming ({ICFP} 2008)},
470− publisher = {{ACM}},
475− author = {Arie {van Deursen} and Paul Klint and Joost Visser},
476− title = {Domain-Specific Languages --- an annotated bibliography},
478− howpublished = {\url{http://homepages.cwi.nl/~arie/papers/dslbib/}}
481−@inproceedings{imperative-pe,
482− author = {Debois, S{\o}ren},
483− title = {Imperative program optimization by partial evaluation},
484− booktitle = {PEPM '04: Proceedings of the 2004 {ACM} {SIGPLAN} symposium on Partial evaluation and semantics-based program manipulation},
486− isbn = {1-58113-835-0},
488− location = {Verona, Italy},
489− doi = {http://doi.{ACM}.org/10.1145/1014007.1014019},
490− publisher = {{ACM}},
491− address = {New York, NY, USA},
495−@inproceedings{offline-pe-termination,
496− author = {Andersen, Peter Holst and Holst, Carsten Kehler},
497− title = {Termination Analysis for Offline Partial Evaluation of a Higher Order Functional Language},
498− booktitle = {Proc. SAS '96: Intl. Symp. on Static Analysis},
500− isbn = {3-540-61739-6},
502− publisher = {Springer},
503− notaddress = {London, UK},
507−@inproceedings{stage-duplication,
508− author = {Swadi, Kedar and Taha, Walid and Kiselyov, Oleg and Pasalic, Emir},
509− title = {A monadic approach for avoiding code duplication when staging memoized functions},
510− notbooktitle = {PEPM '06: Proceedings of the 2006 {ACM} {SIGPLAN} symposium on Partial evaluation and semantics-based program manipulation},
511− booktitle = {Proc. PEPM '06:{ACM} Symp. on Partial Evaluation and Semantics-based Program Manipulation},
513− isbn = {1-59593-196-1},
515− location = {Charleston, South Carolina},
516− doi = {http://doi.{ACM}.org/10.1145/1111542.1111570},
517− notpublisher = {{ACM}},
518− notaddress = {New York, NY, USA},
522−@inproceedings{concoqtion,
523− author = {Fogarty, Seth and Pasalic, Emir and Siek, Jeremy and Taha, Walid},
524− title = {Concoqtion: indexed types now!},
525− booktitle = {PEPM '07: Proceedings of the 2007 {ACM} {SIGPLAN} symposium on Partial evaluation and semantics-based program manipulation},
527− isbn = {978-1-59593-620-2},
529− location = {Nice, France},
530− doi = {http://doi.{ACM}.org/10.1145/1244381.1244400},
531− publisher = {{ACM}},
532− address = {New York, NY, USA},
535−@inproceedings{metahaskell,
536− author = "Tim Sheard and Simon {Peyton Jones}",
537− title = "Template metaprogramming for {Haskell}",
538− booktitle = "{ACM} Haskell Workshop",
542− noteditor = "Manuel M. T. Chakravarty",
543− notpublisher = "{ACM} Press"
546−@misc{shark-profiler,
547− title = {Optimizing your application with {Shark 4}},
549− howpublished = {\url{http://developer.apple.com/tools/sharkoptimize.html}}
553− title = {The Computer Language Benchmark Game},
555− howpublished = {\url{http://shootout.alioth.debian.org/}}
559− author = {Yoshihiko Futamura},
561− title = "Partial Evaluation of Computation Process --– An Approach to a Compiler-Compiler",
562− journal = {Systems, Comps., Controls},
569− title = {Partial Evaluation and Automatic Program Generation},
570− author = {N.D. Jones and C.K. Gomard and P. Sestoft},
572− publisher = {Prentice Hall International}
575−@inproceedings{pantheon,
576− author = {Sean Seefried and Manuel Chakravarty and Gabriele Keller},
577− title = {Optimising Embedded {DSLs} using {Template Haskell}},
579− booktitle = {{Proc. GPCE~'04: Conf. Generative Prog. and Component Eng.}},
580− publisher = {Springer},
585− author = {Elliott, Conal and Finne, Sigbj\orn and De Moor, Oege},
586− title = {Compiling embedded languages},
587− journal = {J. Funct. Program.},
593− doi = {http://dx.doi.org/10.1017/S0956796802004574},
594− publisher = {Cambridge University Press},
595− address = {New York, NY, USA},
599−@inproceedings{russell,
600− author = {Sozeau, Matthieu},
601− title = {Program-ing finger trees in Coq},
602− booktitle = {{ICFP} '07: Proceedings of the 12th {ACM} {SIGPLAN} international conference on Functional programming},
604− isbn = {978-1-59593-815-2},
606− location = {Freiburg, Germany},
607− doi = {http://doi.{ACM}.org/10.1145/1291151.1291156},
608− publisher = {{ACM}},
609− address = {New York, NY, USA},
612−@inproceedings{turner-total,
613− author = {D. A. Turner},
614− title = {Elementary Strong Functional Programming},
616− booktitle = "First International Symposium on Functional Programming Languages in Education",
617− publisher = {Springer},
623−@incollection{free-theorems,
624− author = "P. Wadler",
625− title = "Theorems for Free!",
626− booktitle = "{Proc. 4th Int.\ Conf.\ on Funct.\ Prog.\ Languages and Computer Arch., {FPCA}'89, London, {UK}, 11--13 Sept 1989}",
627− publisher = "{ACM} Press",
628− address = "New York",
631− url = "citeseer.ist.psu.edu/wadler89theorems.html"
634−@inproceedings{TrulyConcurrent,
635− author = {Naiyong Jin and Jifeng He},
636− title = {Towards A Truly Concurrent Model for Processes Sharing Resources},
637− booktitle = {Proc. 3rd {IEEE} International Conf. on Soft. Eng. and Formal Methods},
639− isbn = {0-7695-2435-4},
641− doi = {http://dx.doi.org/10.1109/SEFM.2005.50},
642− publisher = {{IEEE} Computer Society},
643− address = {Washington, DC, USA},
647− note = {Omitted to preserve anonymity, contact PC chair for details}
651− note = {Omitted to preserve anonymity, contact PC chair for details}
655− note = {Omitted to preserve anonymity, contact PC chair for details}
658−@inproceedings{HaskellIO,
659− author = {Simon L. {Peyton Jones} and Philip Wadler},
660− title = {Imperative functional programming},
661− booktitle = {Proc. 20th {ACM} Symposium on Principles of programming languages},
663− isbn = {0-89791-560-7},
665− location = {Charleston, South Carolina, United States},
666− doi = {http://doi.{ACM}.org/10.1145/158511.158524},
667− publisher = {{ACM}},
668− address = {New York, NY, USA},
671−@article{CorrectnessConstruction,
673−title = "{Correctness by Construction: Better can also be Cheaper}",
674−journal = "{CrossTalk: the Journal of Defense Software Engineering}",
682−@INPROCEEDINGS{hj:popl03,
683− AUTHOR = {M. Hofmann and S. Jost},
684− TITLE = {Static Prediction of Heap Space Usage for First-Order Function
686−booktitle = "Proc. {POPL 2003 --- 2003 {ACM} Symp. on Principles of Programming La
691− ORGANIZATION = {{ACM}}
695−@article{kobayashi-lock,
696− author = {Naoki Kobayashi},
697− title = {A type system for lock-free processes},
698− journal = {Inf. Comput.},
704− doi = {http://dx.doi.org/10.1016/S0890-5401(02)93171-8},
705− publisher = {Academic Press, Inc.},
706− address = {Duluth, MN, USA},
709−@techreport{linear-alias,
710− title = {Linear types for aliased resources},
711− author = {Chris Hawblitzel},
713− institution = {Microsoft Research},
714− number = {MSR-TR-2005-141}
717−@article{kobayashi-esop,
718− title = {Type-Based Analysis of Deadlock fora Concurrent Calculus with Interrupts},
719− author = {Kohei Suenaga and Naoki Kobayashi},
724−@inproceedings{res-c,
725− title = {A Path Sensitive Type System for Resource Usage Verification of C Like Languages},
726− author = {Hyun-Goo Kang and Youil Kim and Taisook Han and Hwansoo Han},
728− publisher = {Springer-Verlag},
729− booktitle = {Programming Languages and Systems},
736− title = {Lightweight static resources: Sexy types for embedded and systems programming},
737− author = {Oleg Kiselyov and Chung-Chieh Shan},
742−@inproceedings{scoped-res,
743− title = {Resource Usage Analysis Via Scoped Methods},
744− author = {Gang Tan and Xinming Ou and David Walker},
745− booktitle = {Foundations of Object-Oriented Languages},
749−@article{igarashi-res,
750− author = {Igarashi, Atsushi and Kobayashi, Naoki},
751− title = {Resource usage analysis},
752− journal = {ACM Trans. Program. Lang. Syst.},
760− url = {http://doi.acm.org/10.1145/1057387.1057390},
761− doi = {http://doi.acm.org/10.1145/1057387.1057390},
764− address = {New York, NY, USA},
765− keywords = {Resource usage, type inference},
768−@phdthesis{monitoring,
769− title = {Policy Enforcement via Program Monitoring},
770− author = {Jarred Adam Ligatti},
775−@inproceedings{sec-policy,
776− title = {A Type System for Expressive Security Policies},
777− author = {David Walker},
778− booktitle = {Twenty-Seventh {ACM} {SIGPLAN} Symposium on Principles of Programming Languages},
782−@inproceedings{res-dfa,
783− author = {K. Marriott and P.J. Stuckey and M. Sulzmann},
784− title = {Resource Usage Verification},
786− booktitle = {In Proc. of First Asian Symposium, APLAS 2003},
788− publisher = {Springer-Verlag}
791−@incollection{ hancock-interactive,
792− author = "Peter Hancock and Anton Setzer",
793− title = "Interactive Programs in Dependent Type Theory",
794− booktitle = "Proc.\ of 14th Ann.\ Conf.\ of {EACSL}, {CSL}'00, Fischbau, Germany, 21--26 Aug 2000",
796− publisher = "Springer-Verlag",
798− editor = "P. Clote and H. Schwichtenberg",
801− url = "citeseer.ist.psu.edu/hancock00interactive.html" }
803−@inproceedings{popeea-resources,
804− author = {Corneliu Popeea and Wei-Ngan Chin},
805− title = {A type system for resource protocol verification and its correctness proof},
806− booktitle = {PEPM '04: Proceedings of the 2004 {ACM} {SIGPLAN} symposium on Partial evaluation and semantics-based program manipulation},
808− isbn = {1-58113-835-0},
810− location = {Verona, Italy},
811− doi = {http://doi.{ACM}.org/10.1145/1014007.1014021},
812− publisher = {{ACM} Press},
813− address = {New York, NY, USA},
816−@inproceedings{sheard-langfuture,
817− author = {Tim Sheard},
818− title = "Languages of the future",
819− booktitle = "{ACM} Conference on Object Orientated Programming Systems, Languages and Applicatioons (OOPSLA'04)",
824− author = {Edwin Brady},
825− title = {{Ivor}, a proof engine},
827− publisher = {Springer-Verlag},
829− booktitle = {Implementation and Application of Functional Languages 2006}
833− author = {Bruno Barras and Benjamin Werner},
835− title = {{Coq} in {Coq}}
839− author = {Paul Hudak},
840− title = {Building Domain-Specific Embedded Languages},
843− journal = {{ACM} Computing Surveys},
848−@inproceedings{concon,
849− author = {Conor McBride and Healfdene Goguen and James McKinna},
850− title = {Some Constructions On Constructors},
852− booktitle = {TYPES 2004},
853− publisher = {Springer},
858−@InProceedings{Hume-GPCE,
859−author = {K. Hammond and G.J. Michaelson},
860−title = {{Hume: a Domain-Specific Language for Real-Time Embedded Systems}},
861−booktitle = {{Proc. Conf. Generative Programming and Component Engineering (GPCE~'03)}},
862−publisher = {Springer-Verlag},
863−series = {Lecture Notes in Computer Science},
867−@inproceedings{lcf-milner,
868− author = {Robin Milner},
869− title = {{LCF}: A Way of Doing Proofs with a Machine},
870− booktitle = {Mathematical Foundations of Computer Science 1978},
878−@inproceedings{epireloaded,
879− title = {Epigram Reloaded: A Standalone Typechecker for {ETT}},
880− author = {James Chapman and Thorsten Altenkirch and Conor McBride},
882− booktitle = {Trends in Functional Programming 2005},
886−@TECHREPORT{why-tool,
887− AUTHOR = {J.-C. Filli\^atre},
888− TITLE = {{Why: a multi-language multi-prover verification tool}},
889− INSTITUTION = {{LRI, Universit\'e Paris Sud}},
890− TYPE = {{Research Report}},
894− URL = {http://www.lri.fr/~filliatr/ftp/publis/why-tool.ps.gz}
897−@misc{ large-extraction,
898− author = "Lu\'iz Cruz-Filipe and Bas Spitters",
899− title = "Program Extraction from Large Proof Developments",
901− url = "citeseer.ist.psu.edu/cruz-filipe03program.html" }
904− author = "Herman Geuvers and Freek Wiedijk and Jan Zwanenburg",
905− title = "A Constructive Proof of the Fundamental Theorem of Algebra without Using the Rationals",
906− booktitle = "{TYPES 2000}",
909− url = "citeseer.ist.psu.edu/geuvers01constructive.html" }
911−@article{mckinna-expr,
912− title = {A type-correct, stack-safe, provably correct, expression compiler in {Epigram}},
913− author = {James McKinna and Joel Wright},
915− journal = {Journal of Functional Programming},
920− title = "The {Omega} {Test}: a fast and practical integer programming algorithm for dependence analysis",
921− author = "William Pugh",
922− journal = "Communication of the {ACM}",
928− author = "Georges Gonthier",
929− title = "A computer-checked proof of the {Four Colour Theorem}",
931− howpublished = {\url{http://research.microsoft.com/~gonthier/4colproof.pdf}}}
933−@inproceedings{sparkle,
934− author = "Maarten {de Mol} and Marko {van Eekelen} and Rinus Plasmeijer",
935− title = "Theorem Proving for Functional Programmers",
936− url = "citeseer.ist.psu.edu/654423.html",
937− BOOKTITLE = {Proc. Implementation of Functional Languages (IFL 2002)},
938− publisher = {Springer},
946− author = {Catarina Coquand},
947− howpublished= {\url{http://agda.sourceforge.net/}},
952− title = {Cover Translator},
953− howpublished = {\url{http://coverproject.org/CoverTranslator/}}
957− title = {Parsec, a fast combinator parser},
958− author = {Daan Leijen},
960− howpublished = {\url{http://www.cs.uu.nl/~daan/parsec.html}}
963−@inproceedings{dtpmsp-gpce,
964− author = {Edwin Brady and Kevin Hammond},
965− title = {A Verified Staged Interpreter is a Verified Compiler},
966− booktitle = {{Proc. Conf. Generative Programming and Component Engineering (GPCE~'06)}},
971− title = {Haddock: A {Haskell} Documentation Tool},
972− howpublished = {\url{http://www.haskell.org/haddock/}}
975−@inproceedings{offshoring,
976− title = {Implicitly Heterogeneous Multi-Stage Programming},
977− author = {Jason Eckhardt and Roumen Kaibachev and Emir Pa\v{s}al\'{i}c and Kedar Swadi and Walid Taha},
978− booktitle = {Proc. 2005 Conf. on Generative Programming and Component Engineering (GPCE 2005)},
979− publisher = {Springer},
986− title = {Stop thinking about bottoms when writing programs},
987− author = {Thorsten Altenkirch},
989− note = {Talk at BCTCS 2006}
993− title = {Partiality is an Effect},
994− author = {Tarmo Uustalu},
996− note = {Talk at Dagstuhl workshop on Dependently Typed Progamming}
999−@inproceedings{McKinnaPOPL06,
1000− author = {James McKinna},
1001− title = {Why dependent types matter},
1002− booktitle = {Proc. {ACM} Symp. on Principles of Programming Languages (POPL 2006)},
1004− issn = {0362-1340},
1006− doi = {http://doi.{ACM}.org/10.1145/1111320.1111038},
1010−@inproceedings{leroy-compiler,
1011− title = {Formal Certification of a Compiler Back-end},
1012− author = {Xavier Leroy},
1014− booktitle = {Principles of Programming Languages 2006},
1016− publisher = {{ACM} Press}
1019−@inproceedings{hutton-exceptions,
1020− title = {Compiling Exceptions Correctly},
1022− author = {Graham Hutton and Joel Wright},
1023− booktitle = {Mathematics of Program Construction},
1024− publisher = {Springer},
1029−@inproceedings{tagless-staged,
1030− title = {Tagless Staged Interpreters for Typed Languages},
1032− booktitle = {Proc. 2002 International Conf. on Functional Programming ({ICFP} 2002)},
1033− author = {Emir Pa\v{s}al\'{i}c and Walid Taha and Tim Sheard},
1034− publisher = {{ACM}}
1037−@inproceedings{env-classifiers,
1038− title = {Environment Classifiers},
1040− author = {Walid Taha},
1041− booktitle = {Proc. {ACM} Symp. on Principles of Programming Languages (POPL 2003)},
1045−@inproceedings{dsl-msp,
1046− title = {{DSL} Implementation in {MetaOCaml}, {Template Haskell}, {and C++}},
1047− booktitle = {Domain Specific Program Genearation 2004},
1048− author = {Krzysztof Czarnecki and John O'Donnell and J\"{o}rg Striegnitz and Walid Taha},
1049− publisher = {Springer},
1056− author = {Tim Sheard and James Hook and Nathan Linger},
1057− title = {{GADTs} + Extensible Kinds = Dependent Programming},
1059− misc = {Submitted to {ICFP} '05}
1062−@INPROCEEDINGS{dt-framework,
1063− TITLE = {A Dependently Typed Framework for Static Analysis of Program Execution Costs},
1065− BOOKTITLE = {Proc. Implementation of Functional Languages (IFL 2005)},
1066− AUTHOR = {Edwin Brady and Kevin Hammond},
1070− PUBLISHER = {Springer}
1073−@INPROCEEDINGS{step-counting,
1074− TITLE = {Accurate Step Counting},
1076− BOOKTITLE = {Proc. Implementation of Functional Languages (IFL 2005)},
1077− AUTHOR = {Catherine Hope and Graham Hutton},
1078− PUBLISHER = {Springer}
1082− author = {Walid Taha},
1083− title = {{A Gentle Introduction to Multi-stage Programming}},
1085− note = {Available from \url{http://www.cs.rice.edu/~taha}},
1086− notnote = {Available from \url{http://www.cs.rice.edu/~taha/publications/journal/dspg04a.pdf}}
1089−@misc{mckinnabrady-phase,
1090− title = {Phase Distinctions in the Compilation of {Epigram}},
1092− author = {James McKinna and Edwin Brady},
1096−@phdthesis{ brady-thesis,
1097− author = {Edwin Brady},
1098− title = {Practical Implementation of a Dependently Typed Functional Programming Language},
1100− school = {University of Durham}
1103−@phdthesis{ taha-thesis,
1104− author = {Walid Taha},
1105− title = {Multi-stage Programming: Its Theory and Applications},
1107− school = {Oregon Graduate Inst. of Science and Technology}
1110−@phdthesis{ pasalic-thesis,
1111− author = {Emir Pa\v{s}al\'{i}c},
1112− title = {The Role of Type-Equality in Meta-programming},
1114− school = {OGI School of Science and Engineering}
1118− author = {Thorsten Altenkirch and Conor McBride and James McKinna},
1119− title = {Why Dependent Types Matter},
1124−@inproceedings { wadler-listless,
1125− author = {Philip Wadler},
1126− title = {Listlessness is better than laziness: {Lazy} evaluation and garbage collection at compile-time},
1127− booktitle = {Proceedings of the 1984 {ACM} Symposium on LISP and functional programming},
1132−@techreport { gofer-impl,
1133− author = {Mark P. Jones},
1134− title = {The implementation of the Gofer functional programming system},
1137− number = {YALEU/DCS/RR-1030},
1138− institution = {Yale University}
1141−@techreport { pm-opt1,
1142− author = {Kevin Scott and Norman Ramsey},
1143− title = {When do match-compilation heuristics matter?},
1146− number = {CS-2000-13},
1147− institution = {Department of Computer Science, University of Virginia}
1150−@inproceedings{ pm-opt2,
1151− author = "Fabrice Le Fessant and Luc Maranget",
1152− title = "Optimizing Pattern Matching",
1153− booktitle = "International Conference on Functional Programming",
1156− url = "citeseer.ist.psu.edu/lefessant01optimizing.html" }
1158−@incollection{con-engine,
1159− author = {G\'{e}rard Huet},
1160− title = {The constructive engine},
1161− booktitle = {A Perspective in Theoreticak Computer Science},
1162− publisher = {World Scientific Publishing},
1164− editor = {R. Narasimhan},
1165− note = {Commemorative Volume for Gift Siromoney},
1169−@inproceedings{gadts,
1170− title = {Simple unification-based type inference for {GADTs}},
1171− author = {Simon {Peyton Jones} and Dimitrios Vytiniotis and Stephanie Weirich and Geoffrey Washburn},
1173− booktitle = {Proc. 2006 International Conf. on Functional Programming ({ICFP} 2006)}
1177− author = {Simon {Peyton Jones} and Geoffrey Washburn and Stephanie Weirich},
1178− title = {Wobbly types: type inference for generalised algebraic data types},
1180− note = {Submitted to POPL 2005}
1184− author = {Conor McBride},
1185− title = {Epigram: Practical Programming with Dependent Types},
1187− howpublished = {Lecture Notes, International Summer School on Advanced Functional Programming}
1191− author = {Per Martin-L\"{o}f},
1192− title = "Intuitionistic Type Theory",
1194− publisher = "Bibliopolis"
1197−@article{modular-fulllazy,
1198− title = {A Modular Fully Lazy Lambda Lifter in {Haskell}},
1199− author = {Simon {Peyton Jones} and David Lester},
1202− journal = {Software Practice and Experience},
1208−@article{ghani-jay95,
1209− author = {Barry Jay and Neil Ghani},
1210− title = {The Virtues of Eta-Expansion},
1211− journal = {Journal of Functional Programming},
1219− author = {Lennart Augustsson},
1220− title = {n+k patterns},
1222− howpublished = {Message to the haskell mailing list, Mon, 17 May 93}
1225−@article{ danvy98functional,
1226− author = "Olivier Danvy",
1227− title = "Functional Unparsing",
1228− journal = "Journal of Functional Programming",
1233− url = "citeseer.ist.psu.edu/danvy98functional.html" }
1235−@inproceedings{SeveriPoll94,
1236− author = {Paula Severi and Erik Poll},
1237− booktitle = {Logical Foundations of Computing Science, LFCS'94},
1238− editor = {A. Nerode and Yu. V. Matiyasevich},
1240− pages = {316--328},
1241− publisher = {Springer},
1243− title = {{P}ure {T}ype {S}ystems with {D}efinitions},
1247−@inproceedings{coinductive,
1248− title = {An Application of Co-Inductive Types in Coq: Verification of the Alternating Bit Protocol},
1249− booktitle = {Proceedings of the 1995 Workshop on Types for Proofs and Programs},
1254− publisher = {Springer-Verlag},
1255− author = {Eduardo Gim\'{e}nez}
1259− author = "Joe Armstrong and Robert Virding and Claes Wikstr{\"o}m and Mike Williams",
1260− title = "Concurrent Programming in Erlang",
1261− edition = "Second",
1262− publisher = "Prentice-Hall",
1264− url = "citeseer.ist.psu.edu/armstrong93concurrent.html"
1267−@PhdThesis{alti:phd93,
1268− author = "Thorsten Altenkirch",
1269− title = "Constructions, Inductive Types and Strong Normalization",
1270− school = "University of Edinburgh",
1272− month = "November",
1275−@inproceedings{coq-modules,
1276− author = "Jacek Chrzaszcz",
1277− title = "Modules in {Coq} Are and Will Be Correct",
1279− booktitle = {Types for Proofs and Programs 2003},
1280− editor = {Stefano Berardi and Mario Coppo and Ferruccio Damiani},
1281− publisher = {Springer},
1285−@inproceedings{comp-polymorphism,
1286− author = "Robert Harper and Greg Morrisett",
1287− title = "Compiling Polymorphism Using Intensional Type Analysis",
1289− booktitle = "Proceedings of the 22nd {ACM} {SIGPLAN}-SIGACT symposium on Principles of programming languages",
1290− pages = "130 -- 141"
1293−@misc{runtime-loader,
1294− author = "Andre Pang",
1295− title = "{GHC} Runtime Loading",
1297− howpublished = {Available from \verb+http://www.algorithm.com.au/wiki/hacking/haskell.ghc_runtime_loading+}
1300−@article{mccarthy-lisp,
1301− author = "John McCarthy",
1302− title = "Recursive Functions of Symbolic Expressions and Their Computation By Machine",
1304− journal = "Communications of the {ACM}",
1311− author = " David R. Musser and Atul Saini and Gillmer J. Derge",
1312− title= "The {STL} Tutorial and Reference Guide: {C++} Programming with the Standard Template Library",
1314− publisher = "Addison Wesley"
1317−@misc{ phase-distinction,
1318− author = "Luca Cardelli",
1319− title = "Phase Distinctions in Type Theory",
1320− howpublished = "Manuscript",
1322− url = "citeseer.ist.psu.edu/cardelli88phase.html" }
1324−@book {pierce-types,
1325− author = "Benjamin C. Pierce",
1326− title = "Type and Programming Languages",
1328− publisher = "MIT Press"
1332− Author = "Thierry Coquand and G\'{e}rard Huet",
1333− title = "The calculus of constructions",
1335− journal = "Information and Computation",
1340−@article{ miller91jlc,
1341− Author = "Dale Miller",
1342− Title = "A Logic Programming Language with Lambda-Abstraction,
1343− Function Variables, and Simple Unification",
1344− Journal = "Journal of Logic and Computation",
1349− URL = "citeseer.ist.psu.edu/miller91logic.html",
1350− URL = "file://ftp.cis.upenn.edu/pub/papers/miller/jlc91.dvi.Z" }
1352−@article{miller-unity,
1353− author = "Dale Miller",
1354− title = "Unification Under a Mixed Prefix",
1355− journal = "Journal of Symbolic Computation",
1357− pages = "321--358",
1361−@inproceedings{ cynthia,
1362− author = "Jon Whittle and Alan Bundy and Richard J. Boulton and Helen Lowe",
1363− title = "An {ML} Editor Based on Proofs-As-Programs",
1364− booktitle = "Automated Software Engineering",
1367− url = "citeseer.ist.psu.edu/whittle99ml.html" }
1371− title={The Humble Programmer},
1372− author={Edsger Dijkstra},
1374− note={Turing Award Lecture, EWD 340}
1378− title={Specifications for the {IBM} Mathematical FORmula TRANslating System, {FORTRAN}},
1379− author={{IBM Applied Science Division}},
1385−@inproceedings{quickcheck,
1386− title = {{QuickCheck}: A Lightweight Tool For Random Testing Of {Haskell} Programs},
1387− author = {Koen Claessen and John Hughes},
1389− booktitle = {International Conference on Functional Programming}
1392−@inproceedings{currylam,
1393− title = {Functionality in Combinatory Logic},
1394− author = {Haskell Curry},
1396− booktitle = {Proc. Nat. Acad. Sci, USA},
1401−@article{churchsimplelam1,
1402− title = {A set of postulates for the foundation of logic},
1403− author = {Alonzo Church},
1405− journal = {Annals of Mathematics},
1411−@article{churchsimplelam2,
1412− title = {A set of postulates for the foundation of logic},
1413− author = {Alonzo Church},
1415− journal = {Annals of Mathematics},
1422− title = {A Formulation of the Simple Theory of Types},
1423− author = {Alonzo Church},
1425− journal = {Journal of Symbolic Logic},
1431− title = {Concepts in Programming Languages},
1432− author = {John C. Mitchell},
1434− publisher = {Cambridge University Press}
1437−@inproceedings{harrison-hol99,
1438− title = {A Machine-Checked Theory of Floating Point Arithmetic},
1440− booktitle = {Theorem Proving in Higher Order Logics: 12th International Conference, TP},
1441− pages = {113--130},
1442− author = {John Harrison},
1447− title = {C--: A portable assembly language},
1449− booktitle = {Workshop on Implementing Functional Languages, St Andrews},
1450− author = {Simon {Peyton Jones} and Thomas Nordin and Dino Oliva},
1451− crossref = {func-imp97}
1454−@proceedings{func-imp97,
1455− title = {Workshop on Implementing Functional Languages, St Andrews},
1457− editor = {C Clack},
1458− publisher = {Springer-Verlag}
1463− title = {Theorem Proving in Higher Order Logics: 12th International Conference, TPHOLs'99},
1465− editor = {Yves Bertot and Gilles Dowek and Andr{\'e} Hirschowitz and Christine Paul},
1466− publisher = {Springer-Verlag},
1467− address = {Nice, France},
1472− title = {Mathematical Logic and Programming Languages},
1474− editor = {C.A.R. Hoare and J.C. Shepherdson},
1475− publisher = {Prentice-Hall}
1479− title = {Selected Papers on Automath},
1481− editor = {S. Abramsky and J. Barwise and K. Fine and H.J. Keisler and A.S. Troelstr},
1482− publisher = {North-Holland}
1486− howpublished = {http://www.mersenne.org/prime.htm},
1487− title = {Great Internet Mersenne Prime Search}
1490−@misc{haskell-report,
1491− title = {Haskell 98 Language and Libraries --- The Revised Report},
1493− month = {December},
1494− author = {Simon {Peyton Jones} and others},
1495− howpublished = {Available from \verb+http://www.haskell.org/+}
1498−@inproceedings{cayenne-{ICFP},
1499− author = "Lennart Augustsson",
1500− title = "Cayenne - a Language with Dependent Types",
1501− booktitle = "Proc. 1998 International Conf. on Functional Programming ({ICFP} '98)",
1502− pages = "239--250",
1504− url = "citeseer.nj.nec.com/augustsson98cayenne.html"
1508−@misc{equality-cayenne,
1509− howpublished = {\verb+http://www.cs.chalmers.se/~augustss/cayenne/+},
1510− title = {Equality Proofs in Cayenne},
1512− author = {Lennart Augustsson}
1515−@misc{interp-cayenne,
1516− title = {An exercise in dependent types: A well-typed interpreter},
1518− author = {Lennart Augustsson and Magnus Carlsson}
1521−@inproceedings{balaa00fixpoint,
1522− title = {Fix-Point Equations for Well-Founded Recursion in Type Theory},
1524− booktitle = {Theorem Proving in Higher Order Logics},
1526− author = {Antonia Balaa and Yves Bertot}
1529−@inproceedings{isabelle-maple,
1530− title = {Theorems and algorithms: An interface between Isabelle and Maple},
1532− booktitle = {International Symposium on Symbolic and Algebraic Computation},
1533− author = {Ballarin, C. and Homann, K., and Calmet, J.}
1536−@book{barendregt-num,
1537− title = {The Lambda Calculus, Its Syntax and Semantics},
1539− publisher = {North-Holland},
1540− author = {Henk Barendregt}
1544− title = {Recreations in the Theory of Numbers},
1546− publisher = {Dover},
1547− author = {Albert H. Beiler}
1550−@article{multidigit,
1551− journal = {Advances in Applied Mathematics},
1552− title = {Multidigit Multiplication for Mathematicians},
1554− author = {Daniel J. Bernstein}
1557−@article{buhler-fox,
1558− journal = {{ACM} Crossroads 2.1.},
1559− month = {September},
1560− title = {The Fox project: A language-structured approach to networking software.},
1562− author = {Buhler, J.},
1563− note = {Available at http://www.{ACM}.org/crossroads/xrds2-1/foxnet.html}
1566−@techreport{burstall91,
1567− title = {Computer Assisted Proof for Mathematics: an Introduction Using the \textsc{Lego} Proof System},
1569− institution = {University of Edinburgh},
1570− author = {Rod Burstall}
1574− title = {An Implementation of {LF} with Coercive Subtyping and Universes},
1575− author = {Paul Callaghan and Zhaohui Luo},
1576− journal = {Journal of Automated Reasoning},
1584− title = {Coercive subtyping},
1585− author = {Zhaohui Luo},
1586− journal = {J. Logic Comput.},
1593−@inproceedings{calmet-homann,
1594− title = {Classification of communication and cooperation mechanisms for logical and symbolic computation systems},
1596− booktitle = {Proceedings of the First International Workshop 'Frontiers of Combining S},
1598− publisher = {Kluwer},
1599− author = {J. Calmet and K. Homann}
1602−@techreport{comm-proofs,
1603− title = {On Communicating Proofs in Interactive Mathematical Documents},
1605− institution = {Eindhoven University of Technology},
1606− author = {Olga Caprotti and Martijn Oostdijk}
1610− title = {How to formally and efficiently prove Prime(2999)},
1612− author = {Olga Caprotti and Martijn Oostdijk},
1613− journal = {Symbolic Computation and Automated Reasoning},
1618− title = {The Calculi of Lambda-Conversion},
1620− publisher = {Princeton University Press},
1621− author = {Alonzo Church}
1625− title = {Implementing Mathematics with the NuPrl Proof Development System},
1627− publisher = {Prentice-Hall},
1629− author = {Constable, Robert L. and others}
1633− title = {On Numbers and Games},
1635− publisher = {Academic Press},
1636− author = {J.H. Conway}
1640− howpublished = {\verb+http://coq.inria.fr/+},
1641− title = {The {Coq} Proof Assistant --- Reference Manual},
1643− author = {{Coq Development Team}}
1648− title = {Type Theory and Programming},
1650− author = {Thierry Coquand and Bengt Nordstr\"{o}m and Jan M. Smith and Bj\"{o}rn von Sydow}
1654− title = {The Functional Approach to Programming},
1656− publisher = {Cambridge University Press},
1657− author = {Guy Cousineau and Michel Mauny}
1661− howpublished = {http://www2.hursley.ibm.com/decimal/},
1663− title = {Standard Decimal Arithmetic Specification},
1665− author = {Mike Cowlishaw},
1666− note = {\copyright IBM Corporation 2001}
1670− title = {Elements of Intuitionism},
1673− publisher = {Oxford: Clarendon},
1674− author = {Michael A.E. Dummet}
1678− title = {Inductive Families},
1680− author = {Peter Dybjer},
1681− journal = {Formal Aspects Of Computing},
1687− howpublished = {http://www.octave.org/},
1688− month = {February},
1689− title = {GNU Octave -- A high-level interactive language for numerical computations},
1691− author = {John W. Eaton}
1695− title = {Computing methods for scientists and engineers},
1697− publisher = {Oxford : Clarendon Press},
1698− author = {L. Fox and D.F. Mayers}
1702− howpublished = {http://www.gnu.org/software/guile/guile.html},
1703− title = {Guile -- Project GNU's extension language},
1705− author = {{Free Software Foundation}}
1709− journal = {Journal of Functional Programming},
1712− title = {Do we need dependent types?},
1715− author = {Daniel Fridlender and Mia Indrika}
1718−@book{primes-programming,
1719− title = {Primes and Programming -- An Introduction to Number Theory with Computing},
1721− publisher = {Cambridge University Press},
1722− author = {Peter Giblin}
1727− title = {A Tutorial on Recursive Types in \textsc{Coq}},
1729− author = {Eduardo Gim\'{e}nez}
1732−@article{goldberg91,
1733− journal = {{ACM} Computing Surveys},
1736− title = {What every computer scientist should know about floating point arithmetic},
1739− author = {D. Goldberg}
1742−@article{binary-lambda,
1743− journal = {Journal of Functional Programming},
1746− title = {An adequate and efficient left associated binary numeral system in the $\lambda$-calculus},
1748− author = {Mayer Goldberg}
1752− title = {Introduction to HOL},
1754− publisher = {Cambridge University Press},
1755− author = {M. Gordon and T. Melham}
1759− howpublished = {Available from \verb+http://www.swox.com/gmp/manual/+},
1760− title = {The {GNU Multiple Precision} Arithmetic Library 4.1.3 --- Manual},
1762− author = {Torbj\"{o}rn Granlund and others}
1765−@article{harrison-fmsd94,
1766− journal = {Formal Methods in System Design},
1768− title = {Constructing the Real Numbers in {HOL}},
1771− author = {John Harrison}
1774−@book{harrison-thesis,
1775− title = {Theorem Proving with the Real Numbers},
1777− publisher = {Springer-Verlag},
1778− author = {John Harrison}
1781−@techreport{hol-maple,
1782− title = {Reasing about the Reals: the marriage of HOL and Maple},
1784− institution = {University of Cambridge Computer Laboratory},
1785− author = {John Harrison and Laurent Th\'{e}ry}
1789− howpublished = {http://pauillac.inria.fr/coq},
1790− title = {The \textsc{Coq} Proof Assistant - A Tutorial},
1791− author = {G\'{e}rard Huet and Gilles Kahn and Christine Paulin-Mohring}
1794−@misc{restr-haskell,
1795− howpublished = {http://citeseer.nj.nec.com/253599.html},
1796− month = {September},
1797− title = {Restricted Data Types in Haskell},
1799− author = {John Hughes}
1803− howpublished = {http://www2.hursley.ibm.com/decimalj/decimald.html},
1804− month = {September},
1805− title = {Decimal Arithmetic for Java -- a Proposal},
1807− author = {{IBM Corporation}}
1811− title = {{IEEE} Standard for Binary Floating Point Arithmetic},
1813− author = {{IEEE Standard 754}}
1817− title = {IEEE Standard for Radix-Independent Floating-Point Arithmetic},
1819− author = {{IEEE Standard 854}}
1822−@inproceedings{jon91,
1823− title = {Completing the Rational and Metric Spaces in \textsc{Lego}},
1825− booktitle = {Proceedings of the Second Workshop on Logical Frameworks},
1826− author = {Claire Jones}
1829−@misc{ typinghaskell,
1830− author = "Mark Jones",
1831− title = "Typing {Haskell} in {Haskell}",
1832− howpublished = "In Haskell Workshop, September 1999.",
1834− url = "citeseer.ist.psu.edu/article/jones99typing.html" }
1837− journal = {Soviet Physics-Doklady},
1839− title = {Multiplication of multidigit numbers by automata},
1841− pages = {595--596},
1842− author = {A. Karatsuba and Y. Ofman}
1847− title = {The Art of Computer Programming - Seminumerical Algorithms},
1849− publisher = {Addison Wesley},
1850− author = {Donald E. Knuth}
1854− journal = {Communications of the {ACM}},
1858− title = {The next 700 programming languages},
1860− author = {P.J. Landin}
1863−@techreport{luo-spec,
1865− title = {Program Specification and Data Refinement in Type Theory},
1867− institution = {Department of Computer Science, University of Edinburgh},
1868− author = {Zhaohui Luo}
1872− school = {University of Edinburgh},
1873− title = {An Extended Calculus Of Constructions},
1875− author = {Zhaohui Luo}
1878−@techreport{lego-manual,
1879− title = {\textsc{Lego} Proof Development System: User's Manual},
1881− institution = {Department of Computer Science, University of Edinburgh},
1882− author = {Zhaohui Luo and Robert Pollack}
1886− title = {The {ALF} proof editor and its proof engine},
1888− booktitle = {Formal Proceeding of the 1993 Workshop on Types for Proofs and Programs},
1889− author = {Lena Magnusson and Bengt N\"{o}rdstrom}
1893− howpublished = {http://www.haskell.org/happy/},
1894− title = {Happy User Guide},
1896− author = {Simon Marlow and Andy Gill}
1899−@inproceedings{generic-haskell,
1900− title = {Generic Haskell, Specifically},
1901− author = {Dave Clarke and Andres L\"{o}h},
1902− editor = {Jeremy Gibbons and Johan Jeuring},
1903− booktitle = {Proceedings of the IFIP TC2 Working Conference on Generic Programming},
1905− publisher = {Kluwer Academic Publishers},
1910− title = {Faking It -- Simulating Dependent Types in {Haskell}},
1912− author = {Conor McBride},
1913− journal = {Journal of Functional Programming},
1919−@misc{mcbride-inverting,
1920− title = {Inverting Inductively Defined Relations in \textsc{Lego}},
1922− author = {Conor McBride}
1925−@phdthesis{mcbride-thesis,
1927− school = {University of Edinburgh},
1928− title = {Dependently Typed Functional Programs and their proofs},
1930− author = {Conor McBride}
1933−@article{mcbride-unification,
1934− title = {First-Order Unification by Structural Recursion},
1936− author = {Conor McBride},
1937− journal = {Journal of Functional Programming},
1940− pages = {1061--1075}
1943−@misc{mckinna-pollack,
1944− howpublished = {Kluwer Academic Publishers},
1945− title = {Some Lambda Calculus and Type Theory formalized},
1947− author = {James McKinna and Robert Pollack}
1951− title = {An Introduction to the Theory of Numbers},
1953− publisher = {John Wiley and Sons},
1954− author = {Ivan Niven and Herbert S. Zuckerman}
1958− title = {Programming in Martin-L\"{o}f's Type Theory -- An Introduction},
1960− publisher = {Oxford University Press},
1961− author = {Bengt Nordstr\"{o}m and Kent Petersson and Jan M. Smith},
1962− note = {Out of print. Available from http://www.cs.chalmers.se/Cs/Research/Logic}
1966− title = {Purely Functional Data Structures},
1968− publisher = {Cambridge University Press},
1969− author = {Chris Okasaki}
1972−@book{arith-systems,
1973− title = {Computer Arithmetic Systems},
1975− publisher = {Prentice-Hall},
1976− author = {Amos R. Omondi}
1980− title = {The Implementation of Functional Programming Languages},
1982− publisher = {Prentice-Hall},
1983− author = {Simon {Peyton Jones}}
1987− title = {Computational Numerical Methods},
1989− publisher = {John Wiley and Sons},
1990− author = {C. Phillips and B. Cornelius}
1994− title = {The NAG Library: a beginner's guide},
1996− publisher = {Oxford : Clarendon Press},
1997− author = {Jen Phillips}
2001− month = {September},
2002− title = {How to Believe a Machine-Checked Proof},
2004− author = {Robert Pollack}
2007−@phdthesis{pollack94,
2008− school = {University of Edinburgh},
2009− title = {The Theory of LEGO -- A Proof Checker for the Extended Calculus of Constructions},
2011− author = {Robert Pollack}
2014−@inproceedings{intel-bug,
2017− title = {Anatomy of the Pentium Bug},
2018− publisher = {Springer-Verlag},
2021− author = {V.R. Pratt}
2025− title = {The Maple Handbook: Maple V Release 4},
2027− publisher = {Springer},
2028− author = {Darren Redfern}
2032− title = {Applied Cryptography: protocols, algorithms and source code in C.},
2034− publisher = {Wiley},
2035− author = {Bruce Schneier}
2039− journal = {Mathematical Structures in Computer Science},
2042− title = {On lists and other abstract data types in the calculus of construction},
2045− author = {Jonathan P. Seldin}
2049− journal = {Annals of Pure and Applied Logic},
2053− title = {On the proof theory of Coquand's calculus of constructions},
2056− author = {Jonathan P. Seldin}
2060− journal = {The Computer Journal},
2062− title = {Towards a Formal Specification of Floating Point},
2065− author = {B.A. Wichmann}
2069− title = {Mathematica : a system for doing mathematics by computer},
2071− publisher = {Addison Wesley},
2072− author = {Stephen Wolfram}
2075−@inproceedings{xi-imp,
2076−author = "Hongwei Xi",
2077−title = {{Imperative Programming with Dependent Types}},
2078−booktitle = "Proceedings of 15th {IEEE} Symposium on Logic in Computer Science",
2081−address = "Santa Barbara",
2085−@phdthesis{xi-thesis,
2086− month = {December},
2087− school = {Department of Mathematical Sciences, Carnegie Mellon University},
2088− title = {Dependent Types in Practical Programming},
2090− author = {Hongwei Xi}
2095−author = {Hongwei Xi and Robert Harper},
2096−title = {A Dependently Typed Assembly Language},
2097−institution = {Computer Science and Engineering Department, Oregon Graduate Institute},
2099−number = {OGI-CSE-99-008},
2104− month = {February},
2105− title = {Comparison of three public-domain multiprecision libraries: BigNum, Gmp and Pari},
2107− author = {Paul Zimmerman}
2111− title = {Programming Perl},
2112− author = {Larry Wall and Tom Christiansen and Jon Orwant},
2115− publisher = {O'Reilly}
2119− howpublished = {http://www.python.org/doc/current/tut/tut.html},
2121− title = {Python Tutorial},
2123− author = {Guido van {Rossum} and Fred L. {Drake, Jr}}
2127− title = {The Language of First Order Logic},
2129− publisher = {CSLI Lecture Notes},
2130− author = {Jon Barwise and John Etchemendy}
2134− title = {Haskell -- The Craft of Functional Programming},
2136− publisher = {Addison Wesley},
2137− author = {Simon Thompson}
2140−@inproceedings{coq-hol,
2141− title = {A Comparative Study of Coq and HOL},
2143− booktitle = {Theorem Proving in Higher Order Logics},
2145− author = {Vincent Zammit}
2149− month = {November},
2150− title = {Correctly Rounded Binary-Decimal and Decimal-Binary Conversions},
2152− author = {David M. Gay},
2153− note = {AT&T Bell Laboratories, Numerical Analysis Manuscript 90-10}
2156−@article{hughes-matters,
2157− journal = {Computer Journal},
2160− title = {Why Functional Programming Matters},
2163− author = {J. Hughes}
2166−@inproceedings{proofpointing,
2167− title = {Proof by Pointing},
2169− booktitle = {Proceedings of the International Symposium on Theoretical Aspects of Computer So},
2170− pages = {141--160},
2171− editor = {M. Hagiya and J. C. Mitchell},
2172− publisher = {Springer-Verlag},
2175− address = {Sendai, Japan},
2176− author = {Yves Bertot and Gilles Kahn and Laurent Th{\'e}ry}
2179−@misc{inductive-coq,
2180− month = {December},
2181− title = {Inductive Definitions in the System Coq -- Rules and Properties},
2183− author = {Christine Paulin-Mohring}
2188− title = {Using de Bruijn Sequences to Index a 1 in a Computer Word},
2190− author = {{Charles E. Leiserson} and {Harald Prokop} and {Keith H. Randall}}
2193−@inproceedings{proofchecking,
2194− title = {A two-level approach towards lean proof-checking},
2196− booktitle = {TYPES},
2198− author = {G. Barthe and M.P.J. Ruys and H.P. Barendregt}
2201−@inproceedings{congruence,
2202− title = {Congruence Types},
2206− author = {Gilles Barthe and Herman Geuvers}
2209−@phdthesis{geuvers-thesis,
2210− title = {Logic and Type Systems},
2211− author = {Herman Geuvers},
2213− school = {Katholieke Universiteit Nijmegen}
2216−@techreport{multiple-values,
2217− title = {Multiple Values in {Standard ML}},
2220− institution = {LFCS, Dept of Computer Science, University of Edinburgh},
2221− author = {Kevin Mitchell}
2224−@inproceedings{oracle-checking,
2226− title = {Oracle-Based Checking of Untrusted Software},
2228− booktitle = {Proceedings of the 28th {ACM} Symposium on Principles of Programming Languages},
2229− pages = {142--154},
2230− author = {{George C. Necula} and {S.P. Rahul}}
2233−@article{adams93jfp,
2234− journal = {Journal of Functional Programming},
2237− title = {Efficient Sets -- A Balancing Act},
2239− pages = {553--561},
2240− author = {Stephen Adams}
2243−@inproceedings{hughes-sized,
2244− title = {Proving the Correctness of Reactive Systems Using Sized Types},
2246− booktitle = {Proceedings of the 23rd {ACM} {SIGPLAN}-SIGACT symposium on Principles of programmin},
2247− pages = {410--423},
2248− author = {John Hughes and Lars Pareto and Amr Sabry}
2251−@inproceedings{whittle99ml,
2252− title = {An {ML} Editor Based on Proofs-As-Programs},
2254− booktitle = {Automated Software Engineering},
2255− pages = {166--173},
2256− author = {Jon Whittle and Alan Bundy and Richard J. Boulton and Helen Lowe}
2260− title = {Elements of Functional Programming},
2262− publisher = {Addison-Wesley},
2263− author = {Chris Reade},
2264− series = {International Computer Science Series}
2267−@incollection{ wadler-views,
2268− author = "Philip Wadler",
2269− title = "Views: {A} Way for Pattern Matching to Cohabit with Data Abstraction",
2270− booktitle = "Proceedings, 14th Symposium on Principles of Programming Languages",
2271− publisher = "Association for Computing Machinery",
2272− editor = "Steve Munchnik",
2273− pages = "307--312",
2275− url = "citeseer.nj.nec.com/wadler87views.html" }
2277−@article{ coquand-checking,
2278− author = "Thierry Coquand",
2279− title = "An Algorithm for Type-Checking Dependent Types",
2280− journal = "Science of Computer Programming",
2285− url = "citeseer.nj.nec.com/coquand96algorithm.html" }
2288− author = "Thierry Coquand",
2289− title = "Pattern Matching with Dependent Types",
2291− howpublished = "Available from \verb+http://www.cs.chalmers.se/~coquand/type.html+"
2294−@misc{pollack-records,
2296− title = {Dependently Typed Records for Representing Mathematical Structure},
2298− author = {Robert Pollack}
2301−@article{checking-betarte,
2302− journal = {Journal of Functional Programming},
2306− title = {Type checking dependent (record) types and subtyping},
2308− pages = {137--166},
2309− author = {Gustavo Betarte}
2314− author = "Thomas Johnsson",
2315− title = "Efficient Compilation of Lazy Evaluation",
2316− booktitle = "Proceedings of the {{ACM}} {{SIGPLAN}}'84 Symposium on Compiler Con struction",
2317− journal = "{SIGPLAN} Notices",
2321− publisher = "{ACM} Press",
2324− url = "citeseer.nj.nec.com/johnsson84efficient.html" }
2326−@misc{kamareddine01,
2327− month = {February},
2328− title = {Reviewing the classical and the de Bruijn notation for $\lambda$-calculus and pure type systems},
2330− author = {Fairouz Kamareddine}
2334− title = {Basic Proof Theory},
2336− publisher = {Cambridge University Press},
2337− author = {A.S. Troelstra and H. Schwichtenberg},
2338− series = {Cambridge Tracts in Theoretical Computer Science}
2342− title = {Integrating Normalization-by-Evaluation into a Staged Programming Language},
2344− author = {Tim Sheard}
2347−@inproceedings{nbe2,
2348− title = {Normalization by evaluation},
2350− author = {Ulrich Berger and Matthias Eberl and Helmut Schwichtenberg},
2351− booktitle = {Prospects for Hardware Foundations 1998},
2352− pages = {117--137},
2359− title = {Compiling for Run-time Code Generation},
2361− author = {Frederick Smith and Dan Grossman and Greg Morrisett and Luke Hornof and Trevor J},
2362− note = {Under consideration for J. Functional Programming}
2365−@phdthesis{fredsmith_thesis,
2367− school = {Cornell University},
2368− title = {Certified Run-time Code Generation},
2370− author = {Frederick Smith}
2373−@inproceedings{xi_arraybounds,
2374−author = "Hongwei Xi and Frank Pfenning",
2375−title = {Eliminating Array Bound Checking through Dependent Types},
2376−booktitle = "Proceedings of {ACM} {SIGPLAN} Conference on Programming Language Design and Implementation",
2379−address = "Montreal",
2383−@inproceedings{xi_deadcode,
2384−author = "Hongwei Xi",
2385−title = {Dead Code Elimination through Dependent Types},
2386−booktitle = "The First International Workshop on Practical Aspects of Declarative Languages",
2389−address = "San Antonio",
2394− title = {Compilers --- Principles, Techniques and Tools},
2396− publisher = {Addison-Wesley},
2397− author = {Alfred Aho and Ravi Sethi and Jeffrey Ullman}
2401− title = {Highlights from nhc: A space efficient {Haskell} Compiler},
2403− author = "Niklas R{\"o}jemo",
2404− booktitle = "Functional Programming Languages and Computer Architecture",
2410− title = {SML/NJ Match Compiler Notes},
2412− author = {William Aitken}
2415−@misc{mlmatch_sestoft,
2416− title = {ML pattern match compilation and partial evaluation},
2418− author = {Peter Sestoft}
2421−@inproceedings{compiledstrongreduction,
2422− title = {A Compiled Implementation of Strong Reduction},
2424− author = {Benjamin Gr\'{e}goire and Xavier Leroy},
2425− booktitle = {Proc. 2002 International Conf. on Functional Programming ({ICFP} 2002)},
2430− howpublished = {http://www.dcs.gla.ac.uk/~meurig/TclHaskell/usermanual.html},
2432− title = {TclHaskell - User Manual},
2434− author = {Meurig Sage}
2438−@InProceedings{nbe-cat,
2439− author = "Thorsten Altenkirch and Martin Hofmann and Thomas Streicher",
2440− title = "Categorical reconstruction of a reduction free
2441− normalization proof",
2443− booktitle = "Category Theory and Computer Science",
2444− editor = {David Pitt and David E. Rydeheard and Peter Johnstone},
2450−@inproceedings{presburgerEFSM,
2451− title = {A Comparison of Presburger Engines for EFSM Reachability},
2453− booktitle = {Computer Aided Verification '98},
2454− pages = {280--292},
2455− author = {Thomas R. Shiple and James H. Kukula and Rajeev K. Ranjan}
2459− title = {Type-Safe Cast},
2461− author = {Stephanie Weirich}
2464−@phdthesis{grobauer-thesis,
2465− school = {University of Aarhus},
2466− title = {Topics in Semantics Based Program Manipulation},
2468− author = {Bernd Grobauer}
2472− title = {Computational Lambda Calculus and Monads},
2474− author = {Eugenio Moggi}
2478− title = {A proof of {GMP} square root},
2480− journal = {Journal of Automated Reasoning},
2482− pages = {225--252},
2483− author = {Yves Bertot and Nicolas Magaud and Paul Zimmerman}
2487− journal = {{ACM} Transactions on Programming Languages and Systems},
2491− title = {From {System F} to Typed Assembly Language},
2493− pages = {528--569},
2494− author = {Greg Morrisett and David Walker and Karl Crary and Neal Glew}
2497−@techreport{nbe-rtcg,
2498− month = {December},
2499− title = {Strong Normalization by Type-Directed Partial Evaluation and Run-Time Code Generation},
2501− institution = {BRICS},
2502− author = {Vincent Balat and Oliver Danvy}
2505−@misc{yong-schemata,
2506− howpublished = {http://www.dur.ac.uk/yong.luo/},
2507− title = {A Methodology for Implementing Inductive Schemata},
2509− author = {Yong Luo and Zhaohui Luo}
2512−@inproceedings{harper93,
2513− title = {Explicit Polymorphism and CPS Conversion},
2515− booktitle = {20th {ACM} {SIGPLAN}-SIGACT Symposium on Principles of Programming Languages},
2516− pages = {206--219},
2517− publisher = {{ACM} Press, New York, NY, USA},
2518− author = {Robert Harper and Mark Lillibridge}
2521−@techreport{backends,
2522− month = {November},
2523− title = {Functional Back-Ends within the Lambda-Sigma Calculus},
2525− institution = {INRIA},
2526− author = {Th\'{e}r\`{e}se Hardin and Luc Maranget and Bruno Pagano}
2530− title = {Implementing lazy functional languages on stock hardware -- the {Spineless Tagless G-machine}},
2532− journal = {Journal of Functional Programming},
2535− pages = {127--202},
2537− author = {Simon {Peyton Jones}}
2541− journal = {Indagationes Mathematicae},
2543− title = {Lambda calculus notation with nameless dummies},
2545− pages = {381--392},
2546− author = {N.G. de Bruijn}
2551− title = {PC Assembly Language},
2553− publisher = {http://www.drpaulcarter.com/},
2554− author = {Paul A. Carter}
2557−@inproceedings{poly99,
2558− title = {Once Upon A Polymorphic Type},
2560− booktitle = {26th {ACM} {SIGPLAN}-SIGACT Symposium on Principles of Programming Languages},
2561− publisher = {{ACM}},
2562− author = {Keith Wansbrough and Simon {Peyton Jones}}
2566− title = {Compiling Lazy Functional Languages: An introduction},
2568− author = {Thomas Johnsson}
2571−@inproceedings{unboxed-fp,
2573− title = {Unboxed Values as First Class Citizens in a Non-Strict Functional Language},
2575− author = {Simon {Peyton Jones} and John Launchbury},
2576− booktitle = {Functional Programming Languages and Computer Architecture (FPCA'91)},
2577− crossref = {fplca91},
2581−@inproceedings{abc-machine,
2582− author = {Sjaak Smetsers and Eric N{\"{o}}cker and John {van Groningen} and Rinus Plasmeijer},
2583− title = {Generating efficient code for lazy functional languages},
2584− booktitle = {Functional programming Languages and Computer Architecture},
2586− pages = {592--617},
2587− crossref = {fplca91}
2590−@proceedings{fplca91,
2591− title = {Functional programming Languages and Computer Architecture},
2595− publisher = {Springer-Verlag},
2596− editor = {John Hughes}
2602− title = {An inverse of the evaluation functional for typed $\lambda$-calculus},
2604− booktitle = {Proc. 1991 {IEEE} Symp. on Logic in Comp. Sci.},
2605− pages = {203--211},
2606− editor = {R. Vemuri},
2607− author = {Ulrich Berger and Helmut Schwichtenberg}
2610−@inproceedings{typed-closure,
2611− title = {Typed Closure Conversion},
2613− booktitle = {Symposium on Principles of Programming Languages},
2614− pages = {271--283},
2615− author = {Yasuhiko Minamide and J. Gregory Morrisett and Robert Harper}
2618−@misc{ghc-commentary,
2619− howpublished = {http://www.cse.unsw.edu.au/~chak/haskell/ghc/comm/},
2620− title = {The Glasgow Haskell Compiler (GHC) Commentary},
2622− author = {Manuel M. T. Chakravarty and Sigbjorn Finne and Simon Marlow and Simon {Peyton Jones} and Julian Seward and Reuben Thomas},
2623− note = {Available from GHC CVS repository}
2626−@inproceedings{lambdalift,
2627− month = {September},
2628− title = {Lambda Lifting: Transforming Programs to Recursive Equations},
2630− booktitle = {Functional Programming Languages and Computer Architecture},
2631− pages = {190--203},
2632− editor = {Jean-Pierre Jouannaud},
2633− publisher = {Springer-Verlag},
2634− author = {Thomas Johnsson}
2638− title = {TIL: A Type-Directed Optimizing Compiler for ML},
2640− booktitle = {Proc. {{ACM}} {{SIGPLAN}} '96 Conference on Programming Language Design and Implementation},
2641− pages = {181--192},
2642− author = {D. Tarditi and G. Morrisett and P. Cheng and C. Stone and R. Harper and P. Lee}
2646− school = {Princeton University},
2647− title = {Compiling Standard {ML} for Efficient Execution on Modern Machines},
2649− author = {Zhong Shao}
2652−@inproceedings{gmachine,
2653− month = {September},
2654− title = {The {G-Machine}: A fast, graph-reduction evaluator},
2656− booktitle = {Functional Programming Languages and Computer Architecture},
2657− pages = {400--413},
2658− editor = {Jean-Pierre Jouannaud},
2659− publisher = {Springer-Verlag},
2660− author = {R.B. Kieburtz}
2663−@inproceedings{strictness,
2664− month = {September},
2665− title = {Strictness Analysis - A practical approach},
2667− booktitle = {Functional Programming Languages and Computer Hardware},
2669− editor = {Jean-Pierre Jouannaud},
2670− publisher = {Springer-Verlag},
2671− author = {Chris Clack and Simon {Peyton Jones}}
2675− title = {Implementing Functional Languages - A Tutorial},
2677− publisher = {Prentice Hall International},
2678− author = {Simon {Peyton Jones} and David Lester}
2681−@phdthesis{capretta-thesis,
2682− school = {Katholieke Universiteit Nijmegen},
2683− title = {Abstraction and Computation},
2685− author = {Venanzio Capretta}
2688−@article{bird-pointer,
2689− journal = {Journal of Functional Programming},
2693− title = {Unfolding Pointer Algorithms},
2695− pages = {347--358},
2696− author = {Richard S. Bird}
2700− journal = {Journal of Functional Programming},
2704− title = {Implementing Theorem Provers in a Purely Functional Style},
2706− pages = {147--166},
2707− author = {Keith Hanna}
2710−@article{shrink-lambda,
2711− journal = {Journal of Functional Programming},
2713− month = {September},
2715− title = {Shrinking Lambda Expressions in Linear Time},
2717− pages = {515--540},
2718− author = {Andrew W. Appel and Trevor Jim}
2722− journal = {Journal of Functional Programming},
2726− title = {Stack-based Typed Assembly Language},
2729− author = {Greg Morrisset and Karl Crart and Neal Glew and David Walker}
2732−@article{runtime-lamsig,
2733− journal = {Journal of Functional Programming},
2737− title = {Functional Runtime Systems within the lambda-sigma Calculus},
2739− pages = {131--176},
2740− author = {Th\'{e}r\`{e}se Hardin and Luc Maranget and Bruno Pagano}
2744− journal = {Journal of Functional Programming},
2746− month = {November},
2748− title = {How to look busy while being as lazy as ever: the Implementation of a lazy functional debugger},
2750− pages = {629--671},
2751− author = {Henrik Nilsson}
2754−@article{lazyveager,
2755− journal = {Journal of Functional Programming},
2757− month = {September},
2759− title = {More haste, less speed: lazy versus eager evaluation},
2761− pages = {541--547},
2762− author = {Richard Bird and Geraint Jones and Oege {de Moor}}
2766− journal = {Journal of Functional Programming},
2768− month = {November},
2770− title = {Compiling lazy functional programs for the Java Virtual Machine},
2772− pages = {579--603},
2773− author = {David Wakeling}
2777− publisher = {Springer-Verlag},
2781− title = {Isabelle/HOL - A proof assistant for higher order logic},
2783− author = {Tobias Nipkow and Lawrence C. Paulson and Markus Wenzel}
2786−@article{ghc-inliner,
2787− journal = {Journal of Functional Programming},
2789− month = {September},
2791− title = {Secrets of the {Glasgow Haskell Compiler} inliner},
2793− pages = {393--434},
2794− author = {Simon {Peyton Jones} and Simon Marlow}
2797−@article{dynamic-fp,
2798− journal = {Journal of Functional Programming},
2802− title = {The dynamic compiliation of lazy functional programs},
2805− author = {David Wakeling}
2810− title = {Isabelle Reference Manual},
2812− author = {Lawrence C. Paulson}
2815−@article{debruijn-nested,
2816− journal = {Journal of Functional Programming},
2820− title = {de Bruijn notation as a nested datatype},
2823− author = {Richard S. Bird and Ross Paterson}
2826−@article{perfect-trees,
2827− journal = {Journal of Functional Programming},
2831− title = {Perfect trees and bit-reversal permutations},
2833− pages = {305--317},
2834− author = {Ralf Hinze}
2837−@phdthesis{paulin-extraction,
2838− school = {Paris 7},
2839− title = {Extraction de programmes dans le Calcul des Constructions},
2841− author = {Christine Paulin-Mohring}
2844−@phdthesis{santos95,
2845− school = {University of Glasgow},
2846− title = {Compilation By Transformation In Non-Strict Functional Languages},
2848− author = {{Andr\'{e} Lu\'{i}s de Medeiros} Santos}
2852− title = {Compiling With Continuations},
2854− publisher = {Cambridge University Press},
2855− author = {Andrew W. Appel}
2860− title = {The {SKIM} microprogrammer's guide},
2862− institution = {University of Cambridge},
2863− author = {W.R. Stoye}
2867− title = {An Overview of Burroughs {NORMA}},
2869− author = {H. Richards}
2873− title = {The Definition of Standard ML --- Revised},
2875− publisher = {MIT Press},
2876− author = {Robin Milner and Mads Tofte and Robert Harper and David MacQueen}
2880− title = {An intuitionistic theory of types},
2882− author = {Per Martin-L\"{o}f}
2885−@phdthesis{girard-thesis,
2886− school = {Universit\'{e} Paris VII},
2887− title = {Interpr\'{e}tation fonctionelle et \'{e}limination des coupures de l'arithm\'{e}tique d'ordre sup\'{e}rieur},
2889− author = {Jean-Yves Girard}
2892−@inproceedings{ml75,
2893− title = {An intuitionistic theory of types: predicative part},
2895− booktitle = {Logic Colloquium '73},
2896− editor = {H. Rose and J.C. Shepherdson},
2897− publisher = {North-Holland},
2898− author = {Per Martin-L\"{o}f}
2901−@inproceedings{cpm90,
2902− title = {Inductively defined types},
2904− author = {Thierry Coquand and Christine Paulin-Mohring},
2907− publusher = {Springer-Verlag}
2910−@phdthesis{fpcustom,
2912− school = {Computer Lab, University of Cambridge},
2913− title = {The Implementation of Functional Languages using Custom Hardware},
2915− author = {W.R. Stoye}
2918−@phdthesis{hughesthesis,
2919− month = {September},
2920− school = {Programming Research Group, Oxford},
2921− title = {The design and implementation of programming languages},
2923− author = {John Hughes}
2928− title = {{TIM} -- A simple lazy abstract machine to execute supercombinators},
2930− booktitle = {Functional Programming Languages and Computer Architecture},
2931− publisher = {Springer-Verlag},
2932− author = {John Fairbairn and Stuart Wray},
2938− title = {The {ABC} machine -- A Sequential Stack-based Abstract Machine For Graph Rewriting},
2940− institution = {University of Nijmegen},
2941− author = {P.W.M. Koopman and M.C.J.D. van {Eekelen} and E.G.J.M.H. Ncker and J.E.W. Smetsers and M.J. Plasmeijer}
2944−@techreport{implicit,
2945− title = {On Implicit Arguments},
2947− institution = {Faculty of Science, University of Tokyo},
2948− author = {Masami Hagiya and Yozo Toda}
2952− title = {Denotational Semantics},
2954− publisher = {Wm. C. Brown},
2955− author = {David A. Schmidt}
2958−@inproceedings{lazyml,
2960− title = {A compiler for {Lazy} {ML}},
2962− booktitle = {Proceedings of the {{ACM}} Symposium on Lisp and Functional Programming},
2963− pages = {218--227},
2964− author = {Lennart Augustsson}
2967−@inproceedings{nu-g,
2968− title = {Parallel graph reduction with the $\langle\nu,G\rangle$-machine},
2970− booktitle = {Functional Programming Languages and Computer Architecture},
2971− publisher = {{ACM} Press},
2972− author = {Lennart Augustsson and Thomas Johnsson}
2976− title = {The C programming language},
2978− publisher = {Prentice-Hall},
2979− author = {Brian W. Kernighan and Dennis M. Ritchie}
2983− title = {C--: a portable assembly language that supports garbage collection},
2985− author = {Simon {Peyton Jones} and Norman Ramsey and Fermin Reig},
2986− note = {Invited talk at PPDP'99}
2990− howpublished = {http://www.dur.ac.uk/CARG/epigram.html},
2991− title = {Project Proposal: {Epigram}: Innovative Programming via Inductive Families},
2993− author = {Zhaohui Luo and James McKinna and Paul Callaghan and Conor McBride}
2997− title = {Playing by the Rules: Rewriting as a practical optimisation technique in {GHC}},
2999− author = {Simon {Peyton Jones} and Andrew Tolmach and Tony Hoare}
3002−@UNPUBLISHED{implicit-pollack,
3003− AUTHOR = {Robert Pollack},
3004− TITLE = {Implicit Syntax},
3005− NOTE = {Informal Proceedings of First Workshop on
3006− Logical Frameworks, Antibes},
3012−@article{transform-haskell,
3013− journal = {Science of Computer Programming},
3015− title = {A transformation-based optimiser for {Haskell}},
3018− author = {Simon {Peyton Jones} and Andr\'{e} L. M. Santos}
3021−@inproceedings{knuth-bendix,
3022− title = {Simple Word Problems in Universal Algebras},
3024− booktitle = {Computational Problems in Abstract Algebra},
3025− pages = {263--298},
3026− editor = {John Leech},
3027− publisher = {Pergamon Press},
3028− author = {Donald E. Knuth and Peter B. Bendix}
3031−@inproceedings{phantomfun,
3032− title = {Fun With Phantom Types},
3033− author = {Ralf Hinze},
3034− pages = {245--262},
3036− crossref = {funprogramming},
3037− booktitle = {The Fun Of Programming},
3038− publisher = {Palgrave}
3041−@book{funprogramming,
3043− title = {The Fun Of Programming},
3045− editor = {Jeremy Gibbons and Oege {de Moor}},
3046− publisher = {Palgrave},
3047− series = {Cornerstones of Computing}
3050−@inproceedings{anderson-proof,
3051− title = {Representing Proof Transformations For Program Optimization},
3053− booktitle = {International Conference On Automated Deduction},
3054− publisher = {Springer Verlag},
3055− author = {Penny Anderson}
3058−@phdthesis{daria-thesis,
3060− school = {Institute of Informatics, Warsaw University},
3061− title = {Termination of Rewriting in the Calculus of Constructions},
3063− author = {Daria Walukiewicz-Chrzaszcz}
3066−@inproceedings{change-data,
3067− title = {Changing Data Structures In Type Theory: A Study Of Natural Numbers},
3069− booktitle = {Types For Proofs And Programs 2000},
3070− pages = {181--196},
3071− editor = {Paul Callaghan and Zhaohui Luo and James McKinna and Robert Pollack},
3072− publisher = {Springer},
3073− author = {Nicolas Magaud and Yves Bertot}
3076−@phdthesis{nico-thesis,
3077− title = {Changement de Representation des donn\'{e}es dans le Calcul de Constructions},
3078− author = {Nicolas Magaud},
3081− school = {Universit\'{e} de Nice - Sophia Antipolis}
3086− title = {Design Patterns},
3088− publisher = {Addison Wesley},
3089− author = {Erich Gamma and Richard Helm and Ralph Johnson and John Vlissides}
3094− title = {The New {GHC}/{Hugs} Runtime System},
3096− author = {Simon Marlow and Simon {Peyton Jones}}
3100− month = {February},
3101− title = {The {STG} runtime system (revised)},
3103− author = {Simon {Peyton Jones} and Simon Marlow and Alastair Reid},
3104− howpublished = {Available from \verb+http://www.haskell.org/ghc/documentation.html+}
3107−@inproceedings{optimistic,
3109− title = {Optimistic Evaluation --- an adaptive evaluation strategy for non-strict programs},
3111− author = {Robert Ennals and Simon {Peyton Jones}},
3112− booktitle = {International Conference on Functional Programming},
3116−@phdthesis{ennals-thesis,
3117− title = {Adaptive Evaluation of Non-Strict Programs},
3118− author = {Robert Ennals},
3120− month = {December},
3121− school = {King's College, University of Cambridge}
3125− journal = {{ACM} Computing Surveys},
3128− title = {Garbage Collection of Linked Data Structures},
3130− pages = {341--367},
3131− author = {Jacques Cohen}
3135− journal = {Communications of the {ACM}},
3139− title = {List Processing In Real Time On A Serial Computer},
3141− pages = {280--294},
3142− author = {Henry G. {Baker Jr}}
3146− month = {February},
3147− title = {Modelling General Recursion in Type Theory},
3149− note = {Under consideration for publication in Math. Struct. in Comp. Science. Draft, DCS, CTH --- INRIA, Sophia Antipolis, France},
3150− author = {Ana Bove and Venanzio Capretta}
3154− title = {Global Tagging Optimization by Type Inference},
3156− author = {Fritz Henglein}
3161− title = {The Cathedral And The Bazaar},
3163− publisher = {O'Reilly},
3164− author = {Eric Raymond}
3168− title = {The Mythical Man-month: Essays on Software Engineering},
3170− publisher = {Addison Wesley},
3171− author = {Frederick P. Brooks}
3174−@inproceedings{evalpush,
3175− title = {How to make a fast curry: push/enter vs eval/apply},
3177− author = {Simon Marlow and Simon {Peyton Jones}},
3178− booktitle = {International Conference on Functional Programming, Snowbird},
3182−@phdthesis{boquist-thesis,
3184− school = {Chalmers University of Technology},
3185− title = {Code Optimisation Techniques for Lazy Functional Languages},
3187− author = {Urban Boquist}
3191− title = {Formal Specification Of Programming Languages},
3193− publisher = {Prentice-Hall},
3194− author = {Frank G. Pagan}
3197−@inproceedings{elim-motive,
3198− title = {Elimination With A Motive},
3200− booktitle = {Types for Proofs and Programs},
3201− pages = {197--216},
3202− editor = {Paul Callaghan and Zhaohui Luo and James McKinna and Robert Pollack},
3203− publisher = {Springer},
3204− author = {Conor McBride}
3208− journal = {Information and Computation},
3212− title = {Telescoping Mappings in Typed Lambda Calculus},
3214− pages = {189--204},
3215− author = {N.G. de Bruijn}
3219− title = {Typechecking is undecidable when 'type' is a type},
3221− author = {Mark B. Reinhold}
3225− month = {September},
3226− title = {An External Representation for the {GHC} Core Language},
3228− author = {Andrew Tolmach and {The GHC Team}}
3231−@article{deforestation,
3232− journal = {Theoretical Computer Science},
3234− title = {Deforestation: Transforming programs to eliminate trees},
3236− pages = {231--248},
3237− author = {Philip Wadler}
3242− title = {Architecture of the {Haskell} Execution Platform},
3244− author = {Julian Seward and Simon Marlow and Andy Gill and Sigbjorn Finne and Simon {Peyton Jones} },
3245− note = {Version 6},
3246− howpublished = {Available from \verb+http://www.haskell.org/ghc/documentation.html+}
3249−@mastersthesis{wahlstedt-thesis,
3251− school = {Chalmers University Of Technology},
3252− title = {Detecting Termination Using Size Change In Parameter Values},
3254− author = {David Wahlstedt}
3257−@inproceedings{size-change,
3258− title = {The size-change principle for program termination},
3260− booktitle = {Proceedings of the 28th Annual {ACM} {SIGPLAN}-SIGACT Symposium on Principles of Programming Languages},
3261− author = {Chin Soon Lee and Neil D. Jones and Amir Ben-Amram. }
3264−@article{ski-turner,
3265− journal = {Software -- Practice and Experience},
3267− title = {A new implementation technique for applicative languages},
3270− author = {David Turner}
3273−@inproceedings{turner-strong,
3275− title = {Elementary Strong Functional Programming},
3277− booktitle = {First International Symposium on Functional Programming Languages in Education, Nijmegen, Netherlands, December 1995.},
3279− publisher = {Springer},
3280− author = {David Turner},
3285− title = {The {Concurrent CLEAN} Language Report (draft)},
3287− author = {Rinus Plasmeijer and Marko van Eekelen},
3288− howpublished = {Available from \verb+http://www.cs.kun.nl/~clean/+}
3291−@article{burstall-struct,
3292− journal = {Computer Journal},
3295− title = {Proving Properties of Programs By Structural Induction},
3298− author = {Rod Burstall}
3301−@incollection{ barendregt-types,
3302− author = "Henk Barendregt",
3303− title = "Lambda Calculi with Types",
3304− booktitle = "Handbook of Logic in Computer Science, Volumes 1 (Background: Mathematical Structures) and 2 (Background: Computational Structures), Abramsky \& Gabbay \& Maibaum (Eds.)",
3305− publisher = "Clarendon",
3308− url = "citeseer.nj.nec.com/barendregt92lambda.html" }
3311− title = {Combinatory Logic, volume 1},
3313− publisher = {North Holland},
3314− author = {Haskell B. Curry and Robert Feys}
3317−@phdthesis{bove-thesis,
3318− month = {November},
3319− school = {Chalmers University of Technology},
3320− title = {General Recursion in Type Theory},
3322− author = {Ana Bove}
3326− title = {Constructive Mathematics and Computer Programming},
3328− booktitle = {Mathematical Logic and Programming Languages},
3329− publisher = {Prentice Hall},
3330− author = {Per Martin-L\"{o}f}
3333−@inproceedings{howard,
3334− title = {The formulae-as-types notion of construction},
3336− booktitle = {To H.B.Curry: Essays on combinatory logic, lambda calculus and formalism},
3337− editor = {Jonathan P. Seldin and J. Roger Hindley},
3338− publisher = {Academic Press},
3339− author = {William A. Howard},
3340− note = {A reprint of an unpublished manuscript from 1969}
3343−@inproceedings{talx86,
3344− title = {TALx86: A Realistic Typed Assembly Language},
3346− booktitle = {{ACM} {SIGPLAN} Workshop on Compiler Support for System Software},
3348− author = {Greg Morrisett and Karl Crary and Neal Glew and Dan Grossman and Richard Samuels and Frederick Smith and David Walker and Stephanie Weirich and Steve Zdancewic}
3351−@inproceedings{bove-capretta,
3353− title = {Nested General Recursion and Partiality in Type Theory},
3355− booktitle = {Theorem Proving in Higher Order Logics, 14th International Conference, TPHOLS 2001},
3356− pages = {121--135},
3357− editor = {Richard J. Boulton and Paul B. Jackson},
3358− publisher = {Springer-Verlag},
3359− author = {Ana Bove and Venanzio Capretta},
3364− month = {November},
3365− title = {LVM, the lazy virtual machine},
3367− author = {Daan Leijen}
3371− howpublished = {\verb+http://caml.inria.fr/ocaml/htmlman/+},
3373− title = {The {Objective Caml} system release 3.06},
3375− author = {Xavier Leroy}
3379− title = {Lambda : The Ultimate Goto},
3381− author = {Guy L. {Steele Jr}},
3382− note = {MIT AI Memo 443}
3385−@inproceedings{ liu-tail,
3386− author = "Yanhong A. Liu and Scott D. Stoller",
3387− title = "From Recursion to Iteration: What are the Optimizations?",
3388− booktitle = "Partial Evaluation and Semantic-Based Program Manipulation",
3391− url = "citeseer.nj.nec.com/liu00from.html" }
3393−@inproceedings{aczel77,
3394− title = {An Introduction To Inductive Definitions},
3396− booktitle = {Handbook of Mathematical Logic},
3397− editor = {J. Barwise},
3398− publisher = {North Holland},
3399− author = {Peter Aczel}
3402−@inproceedings{inductive-plastic,
3404− title = {Implementation Techniques for Inductive Types in {Plastic}},
3406− booktitle = {Types for Proofs and Programs},
3408− editor = {Thierry Coquand and Peter Dybjer and Bengt Nordstr\"{o}m and Jan Smith},
3409− publisher = {Springer-Verlag},
3410− author = {Paul Callaghan and Zhaohui Luo},
3415− howpublished = {Available from \verb+http://www.paulgraham.com/+},
3417− title = {The Hundred Year Language},
3419− author = {Paul Graham},
3420− note = {Keynote address at PyCon 2003}
3423−@inproceedings{gimenez98,
3425− title = {Structural Recursive Definitions in Type Theory},
3427− booktitle = {Proceedings of ICALP '98},
3428− publisher = {Springer-Verlag},
3429− author = {Eduardo Gim\'{e}nez},
3434− journal = {Computer Journal},
3437− title = {Quicksort},
3440− author = {C.A.R. Hoare}
3443−@phdthesis{goguen-thesis,
3444− school = {University of Edinburgh},
3445− title = {A Typed Operational Semantics for Type Theory},
3447− author = {Healfdene Goguen}
3450−@article{ph-universes,
3451− journal = {Theoretical Computer Science},
3454− title = {Type Checking With Universes},
3456− pages = {107--136},
3457− author = {Robert Harper and Randy Pollack}
3460−@inproceedings{pm-compile,
3461− month = {September},
3462− title = {Compiling Pattern Matching},
3464− booktitle = {Functional Programming Languages and Computer Architecture},
3465− pages = {368--381},
3466− editor = {Jean-Pierre Jouannaud},
3467− publisher = {Springer-Verlag},
3468− author = {Lennart Augustsson}
3471−@phdthesis{lena-thesis,
3472− school = {Chalmers University of Technology, G\"{o}teborg},
3473− title = {The implementation of {ALF} -- A Proof Editor based on {Martin-L\"{o}f}'s Monomorphic Type Theory with Explicit Substitutions},
3475− author = {Lena Magnusson}
3479− journal = {Journal of Functional Programming},
3482− title = {The View From The Left},
3484− author = {Conor McBride and James McKinna},
3488−@inproceedings{not-a-number,
3489− author = {Conor McBride and James McKinna},
3490− title = {I am not a number, {I} am a free variable},
3492− booktitle = {Proceedings of the {ACM} {SIGPLAN} Haskell Workshop}
3497− title = {Time and Space Profiling for Non-Strict, Higher Order Functional Languages},
3499− author = {Patrick M. Sansom and Simon {Peyton Jones}}
3502−@inbook{pattern-matching,
3503− title = {The Implementation of Functional Programming Languages},
3505− booktitle = {The Implementation of Functional Programming Languages},
3507− editor = {Simon {Peyton Jones}},
3509− publisher = {Prentice Hall},
3510− author = {Philip Wadler},
3511− crossref = {pj-imp}
3514−@article{pe-problems,
3515− author = {Jones, N. D.},
3516− title = {Challenging problems in partial evaluation and mixed computation},
3517− journal = {New Gen. Comput.},
3521− issn = {0288-3635},
3522− pages = {291--302},
3523− doi = {http://dx.doi.org/10.1007/BF03037143},
3524− publisher = {Ohmsha},
3525− address = {Tokyo, Japan, Japan},
3528−@inproceedings{tag-elim,
3529− title = {Tag Elimination -- or -- Type Specialisation is a Type Indexed Effect},
3531− booktitle = {Subtyping and Dependent Types in Programming, APPSEM Workshop},
3532− author = {Walid Taha and Henning Makholm}
3535−@inproceedings{extraction-coq,
3536− title = {A New Extraction for {Coq}},
3538− booktitle = {Types for proofs and programs},
3539− editor = {Herman Geuvers and Freek Wiedijk},
3540− publisher = {Springer},
3541− author = {Pierre Letouzey},
3545−@phdthesis{mcbride-snr-thesis,
3546− school = {Queen's University of Belfast},
3547− title = {Computer Aided Manipulation of Symbols},
3549− author = {Fred McBride}
3552−@article{ho-strictness,
3553− journal = {Science of Computer Programming},
3555− title = {Strictness analysis for higher-order functions},
3557− pages = {249--278},
3558− author = { Geoffrey L. Burn and Chris Hankin and Samson Abramsky}
3561−@phdthesis{mycroft-thesis,
3562− school = {Dept Computer Science, University of Edinburgh},
3563− title = {Abstract interpretation and optimising transformations for applicative programs},
3565− author = {A. Mycroft}
3568−@inproceedings{bc-nested,
3569− month = {September},
3571− title = {Nested General Recursion and Partiality in Type Theory},
3573− booktitle = {Theorem Proving In Higher Order Logics: 14th International Conferences, TPHOLS 2001},
3574− pages = {121--135},
3575− publisher = {Springer--Verlag},
3576− author = {Ana Bove and Venanzio Capretta},
3580−@techreport{bove-mutual,
3582− title = {Mutual General Recursion in Type Theory},
3584− institution = {Department of Computing Science, Chalmers University of Technology},
3585− author = {Ana Bove}
3588−@article{berardi-pruning,
3589− journal = {Journal of Logic and Computation},
3592− title = {Pruning Simply Typed Lambda Terms},
3594− pages = {663--681},
3595− author = {Stefano Berardi}
3599− journal = {Journal of Computer and System Science},
3601− title = {A Theory of Type Polymorphism in Programming},
3604− author = {R. Milner}
3607−@inproceedings{extt,
3608− title = {Inductive Families Need Not Store Their Indices},
3610− booktitle = {Types for Proofs and Programs 2003},
3611− author = {Edwin Brady and Conor McBride and James McKinna},
3612− editor = {Stefano Berardi and Mario Coppo and Ferruccio Damiani},
3613− series = {Lecture Notes in Computer Science},
3614− publisher = {Springer},
3620− title = {Computation and Reasoning -- A Type Theory for Computer Science},
3623− author = {Zhaohui Luo},
3624− series = {Intl. Series of Monographs on Comp. Sci.}
3628− journal = {Communications of the {ACM}},
3631− title = {Can Programming Be Liberated From the {Von Neumann} Style?},
3633− pages = {280--294},
3634− author = {John Backus}
3639− title = {Henk: A Typed Intermediate Language},
3641− author = {Simon {Peyton Jones} and Erik Meijer}
3645− journal = {Journal of Functional Programming},
3649− title = {Thunks and the $\lambda$-calculus},
3651− pages = {303--319},
3652− author = {John Hatcliff and Olivier Danvy}
3655−@inproceedings{grin-project,
3656− author = "Urban Boquist and Thomas Johnsson",
3657− title = "The {GRIN} Project: A Highly Optimising Back End for Lazy Functional Languages",
3658− booktitle = "Implementation of Functional Languages",
3661− url = "citeseer.ist.psu.edu/boquist96grin.html" }
3664− nothowpublished = {\url{http://www.hpl.hp.com/personal/Hans_Boehm/gc/}},
3665− title = {A garbage collector for {C} and {C++}},
3667− author = {Hans-J. Boehm and Alan J. Demers and {Xerox Corporation Silicon Graphic} and {Hewlett-Packard Company}}
3670−@misc{art-interpreter,
3672− title = {The Art of the Interpreter or, the Modularity Complex (Parts Zero, One, and Two)},
3674− author = {Guy Lewis {Steele, Jr.} and Gerald Jay Sussman},
3675− note = {MIT AI Lab. AI Lab Memo AIM-453}
3678−@inproceedings{gimenez,
3679− title = {Codifying Guarded Definitions With Recursive Schemes},
3681− booktitle = {Proceedings of TYPES 1994},
3683− author = {Eduardo Gim\'{e}nez}
3687− title = {The Glasgow Haskell Compiler User's Guide, Version 6.0},
3689− author = {The {GHC Team}}
3693− journal = {Journal of Functional Programming},
3697− title = {Red-Black Trees In A Functional Setting},
3699− pages = {471--477},
3700− author = {Chris Okasaki}
3703−@inproceedings{dt-data,
3704−author = "Hongwei Xi",
3705−title = {{Dependently Typed Data Structures}},
3706−booktitle = "Proceedings of Workshop of Algorithmic Aspects of Advanced Programming Languages (WAAAPL '99)",
3708−month = "September",
3714− title = {On the Correctness and Efficiency of the {Krivine} Machine},
3717− author = {Mitchell Wand and Daniel P. Friedman},
3718− howpublished = {Submitted for publication}
3721−@inproceedings{nbe-filinski,
3722− title = {Normalization by Evaluation for the Computational Lambda-Calculus},
3725− booktitle = {Typed Lambda Calculi and Applications: 5th International Conference, TLCA 2001},
3726− author = {Andrzej Filinski},
3727− pages = {151--165},
3728− publisher = {Springer-Verlag},
3733−@inproceedings{filinski-nbesem,
3734− title = {A semantic account of type-directed partial evaluation},
3736− author = {Andrzej Filinski},
3737− editor = {G. Nadathur},
3738− booktitle = {International Conference on Principles and Practice of Declarative Programming},
3741− pages = {378--395},
3742− publisher = {Springer-Verlag}
3746− title = {The mechanical evaluation of expressions},
3747− author = {P.J. Landin},
3749− journal = {Computer Journal},
3755− title = {The {LispKit} Manual},
3756− author = {Peter Henderson and Geraint Jones and Simon Jones},
3758− howpublished = {Oxford University Computing Laboratory}
3761−@inproceedings{wells-undecidable,
3762− title = {Typability and Type Checking in the Second-order $\lambda$-calculus are equivalent and undecidable},
3763− author = {J. Wells},
3766− booktitle = {Proc. 9th Ann. {IEEE} Symp. Logic Comput. Sci.}
3770− title = {Pattern Guards and Transformational Patterns},
3771− author = {Martin Erwig and Simon {Peyton Jones}},
3773− howpublished = {Haskell Workshop}
3777− title = {Alfa Users' Guide},
3778− author = {Thomas Hallgren},
3780− howpublished = {Available from \verb+http://www.cs.chalmers.se/~hallgren/Alfa/+}
3783−@inproceedings{nofib,
3784− title = {The nofib Benchmark Suite of {Haskell} Programs},
3785− author = {Will Partain},
3787− booktitle = {Functional Programming},
3788− editor = {J. Launchbury and P.L. Sansom},
3789− series = {Workshops in Computing},
3790− publisher = {Springer Verlag}
3794− title = {Shape in Computing},
3795− author = {Barry Jay},
3796− journal = "{{ACM}} Computing Surveys",
3800− pages = "355--357",
3804− title = {The {Haskell 98} Foreign Function Interface 1.0: An Addendum to the {Haskell 98} Report},
3805− editor = {Manuel Chakravarty},
3808− month = {December},
3809− howpublished = {Available from \verb+http://www.haskell.org/+}
3813− title = {Perl {XS} Reference Manual},
3814− author = {Dean Roehrich and {The Perl Porters}},
3816− howpublished = {\verb+http://www.perldoc.com/perl5.6/pod/perlxs.html+}
3820− title = {{SWIG} : An Easy to Use Tool for Integrating Scripting Languages with {C} and {C++}},
3821− author = {David M. Beazley},
3823− howpublished = {\verb+http://www.swig.org/papers/Tcl96/tcl96.html+}
3826−@inproceedings{types-prog,
3827− title = {Type Systems for Programming Languages},
3828− booktitle = {Handbook of Theoretical Computer Science},
3829− author = {John C. Mitchell},
3830− pages = {365--458},
3836− title = {Handbook of Theoretical Computer Science},
3837− editor = {J. van Leeuwen},
3838− publisher = {Elsevier Science},
3843− title = {Revised$^5$ Report on the Algorithmic Language Scheme},
3844− author = {Richard Kelsey and William Clinger and Jonathan Rees},
3846− month = {February},
3847− howpublished = {Available from \verb+http://www.schemers.org/+}
3851− title = {Update on today's {Gmail} Outage},
3852− author = {{Official Gmail Blog}},
3853− howpublished = {\url{http://gmailblog.blogspot.com/2009/02/update-on-todays-gmail-outage.html}},
3854− note = {Retrieved 26th February 2009},