HaRe-0.6: tools/interp/HaskellWorkshop/body.bib
@InProceedings{Haskell::Jones1999,
title = "Typing Haskell in Haskell",
author = "Mark P. Jones",
pages = "68--78",
booktitle = "Proceedings of the 1999 Haskell Workshop",
month = "21--24 " # oct,
year = "1999",
address = "Paris, France",
note = "Published in Technical Report UU-CS-1999-28, Department of
Computer Science, University of Utrecht"
}
@TechReport{Steele-Sussman78b,
key = "Steele \& Sussman",
author = "Guy Lewis {Steele Jr.} and Gerald Jay Sussman",
title = "The Art of the Interpreter or, The Modularity Complex
(Parts Zero, One, and Two)",
institution = "Massachusetts Institute of Technology, Artificial
Intelligence Laboratory",
year = "1978",
month = may,
type = "AI Memo",
number = "453",
annote = "Several metacircular interpreters for different
variants of LISP. Discussion of how the language design
decisions affect the programming styles available to
the user of the language. 24 references.",
}
@Book{Abelson-Sussman-Sussman96,
key = "Abelson \& Sussman \& Sussman",
author = "Harold Abelson and Gerald Jay Sussman and Julie
Sussman",
title = "Structure and Interpretation of Computer Programs",
publisher = "McGraw Hill",
address = "Cambridge, Mass.",
year = "1996",
edition = "second",
ISBN = "0-07-000484-6",
annote = "Introductory programming text using the Scheme dialect
of Lisp. Many references.",
}
@InProceedings{LiangHudak,
author = "Sheng Liang and Paul Hudak and Mark Jones",
title = "Monad transformers and modular interpreters",
editor = "{ACM}",
booktitle = "Conference record of {POPL} '95, 22nd {ACM}
{SIGPLAN-SIGACT} Symposium on Principles of Programming
Languages: papers presented at the Symposium: San
Francisco, California, January 22--25, 1995",
publisher = "ACM Press",
address = "New York, NY, USA",
year = "1995",
ISBN = "0-89791-692-1",
pages = "333--343",
bibdate = "Mon May 3 12:52:30 MDT 1999",
OPTurl = "http://www.acm.org:80/pubs/citations/proceedings/plan/199448/p333-liang/",
abstract = "We show how a set of {\em building blocks\/} can be
used to construct programming language interpreters,
and present implementations of such building blocks
capable of supporting many commonly known features,
including simple expressions, three different function
call mechanisms (call-by-name, call-by-value and lazy
evaluation), references and assignment, nondeterminism,
first-class continuations, and program tracing. The
underlying mechanism of our system is {\em monad
transformers\/}, a simple form of abstraction for
introducing a wide range of computational behaviors,
such as state, I/O, continuations, and exceptions. Our
work is significant in the following respects. First,
we have succeeded in designing a fully modular
interpreter based on monad transformers that incudes
features missing from Steele's, Espinosa's, and
Wadler's earlier efforts. Second, we have found new
ways to lift monad operations through monad
transformers, in particular difficult cases not
achieved in Moggi's original work. Third, we have
demonstrated that interactions between features are
reflected in liftings and that semantics can be changed
by reordering monad transformers. Finally, we have
implemented our interpreter in Gofer, whose constructor
classes provide just the added power over Haskell's
type classes to allow precise and convenient expression
of our ideas. This implementation includes a method for
constructing extensible unions and a form of subtyping
that is interesting in its own right.",
acknowledgement = ack-nhfb,
keywords = "algorithms; design; languages",
subject = "{\bf D.3.4} Software, PROGRAMMING LANGUAGES,
Processors, Interpreters. {\bf F.3.2} Theory of
Computation, LOGICS AND MEANINGS OF PROGRAMS, Semantics
of Programming Languages, Denotational semantics. {\bf
D.3.3} Software, PROGRAMMING LANGUAGES, Language
Constructs and Features, Data types and structures.",
}
@Book{Stoy,
author = "J. E. Stoy",
title = "{Denotational Semantics: The Scott-Strachey Approach
to Programming Language Semantics}",
publisher = "MIT Press",
address = "Cambridge, Massachusetts",
year = "1977",
}
@Book{Gunter,
author = "Carl A. Gunter",
title = "Semantics of Programming Languages: Programming
Techniques",
publisher = "The {MIT} Press",
year = "1992",
address = "Cambridge, Massachusetts",
topic = "semantics-of-programming-languages;",
}
@InCollection{Mog:meta,
author = "Eugenio Moggi",
title = "Metalanguages and Applications",
editor = "A. M. Pitts and P. Dybjer",
booktitle = "Semantics and Logics of Computation",
series = "Publications of the Newton Institute",
volume = "14",
pages = "185--239",
publisher = "Cambridge University Press",
address = "Cambridge",
year = "1997",
}
@Article{Moggi,
author = "E. Moggi",
title = "Functor Categories and Two-Level Languages",
journal = "Lecture Notes in Computer Science",
volume = "1378",
pages = "211--??",
year = "1998",
coden = "LNCSD9",
ISSN = "0302-9743",
bibdate = "Tue Apr 28 08:51:33 MDT 1998",
acknowledgement = ack-nhfb,
}
@InProceedings{Pitts00,
author = "A. M. Pitts and M. J. Gabbay",
title = "A Metalanguage for Programming with Bound Names Modulo Renaming",
booktitle = "Mathematics of Programme Construction",
pages = "230-255",
year = 2000,
volume = 1837,
series = "LNCS",
publisher = "Springer-Verlag",
}
@Article{JFP::Sabry1998,
title = "What is a purely functional language?",
author = "Amr Sabry",
pages = "1--22",
journal = "Journal of Functional Programming",
month = jan,
year = "1998",
volume = "8",
number = "1",
references = "\cite{JFP::AriolaF1997} \cite{POPL::AriolaFMOW1995}
\cite{POPL::CartwrightF1992} \cite{TCS::FelleisenH1992}
\cite{POPL::Filinski1994} \cite{POPL::OderskyRH1993}
\cite{JFP::OHearn1996} \cite{POPL::PeytonJonesW1993}
\cite{TCS::Plotkin1975} \cite{TCS::Plotkin1977}
\cite{POPL::WeeksF1993}",
}
@Article{Reynolds,
author = "John Reynolds",
year = "1972",
publisher = "ACM",
journal = "ACM Conference Proceedings",
pages = "717--740",
title = "Definitional Interpreters for Higher Order Programming
Languages",
}
@PhdThesis{Espinosa95PHD,
author = "David Espinosa",
title = "Semantic {Lego}",
year = "1995",
school = "Columbia University",
url = "http://www-swiss.ai.mit.edu/ftpdir/users/dae/home.html",
keywords = "action semantics, monads",
}
@Article{Wad92:monads,
author = "P. Wadler",
title = "Comprehending monads",
journal = "Mathematical Structures in Computer Science",
pages = "461--493",
year = "1992",
volume = "2",
OPTnote = "Category theorists invented {\em monads\/} in the
1960's to concisely express certain aspects of
universal algebra. Functional programmers invented {\em
list comprehensions\/} in the 1970's to concisely
express certain programs involving lists. This paper
shows how list comprehensions may be generalised to an
arbitrary monad, and how the resulting programming
feature can concisely express in a pure functional
language some programs that manipulate state, handle
exceptions, parse text, or invoke continuations. A new
solution to the old problem of destructive array update
is also presented. No knowledge of category theory is
assumed.",
}
@Article{Wadler:1995:MFP,
author = "P. Wadler",
title = "Monads for functional programming",
journal = "Lecture Notes in Computer Science",
volume = "925",
pages = "24--52",
year = "1995",
coden = "LNCSD9",
ISSN = "0302-9743",
bibdate = "Sat May 11 13:45:32 MDT 1996",
acknowledgement = ack-nhfb,
}
@InProceedings{DSL99*81,
author = "Tim Sheard and Zine-el-abidine Benaissa and Emir
Pasalic",
title = "{DSL} Implementation Using Staging and Monads",
pages = "81--94",
booktitle = "Proceedings of the 2nd Conference on Domain-Specific
Languages",
month = oct # "~3--5",
publisher = "USENIX Association",
address = "Berkeley, CA",
year = "1999",
}
@Book{PeytonJones86,
author = "Simon L. Peyton Jones",
title = "The Implementation of Functional Programming
Languages",
publisher = "Prentice-Hall",
year = "1987",
ISBN = "0-13-453325-9",
series = "Computer Science",
}
@Book{Kamin,
author = "Samuel N. Kamin",
title = "Programming Languages, An Interpreter-Based Approach",
publisher = "Addison Wesley",
year = "1990",
ISBN = "0-201-06824-9",
}
@Book{Friedman,
author = "Daniel P. Friedman and Mitchell Wand and Christopher
T. Haynes",
title = "Essentials of Programming Languages",
publisher = "McGraw-Hill Book Co.",
edition = "second",
year = "2001",
address = "New York, N.Y.",
annote = "Graduate text on programming languages, concentrating
on semantics of imperative languages using
interpreters. Also some disucssion of compilation. 59
references.",
source = "Leavens bib",
}
@InProceedings{Gabbay99lics,
author = "Murdoch Gabbay and Andrew Pitts",
title = "A New Approach to Abstract Syntax Involving Binders",
editor = "G. Longo",
pages = "214--224",
booktitle = "Proceedings of the 14th Annual Symposium on Logic in
Computer Science (LICS'99)",
year = "1999",
publisher = "IEEE Computer Society Press",
address = "Trento, Italy",
month = jul,
keywords = "misc",
}
@TechReport{Haskell98,
author = "Simon Peyton Jones and John Hughes, editors",
title = "Report on the Programming Language {Haskell 98}",
institution = "Yale University, CS Dept.",
type = "Technical Report",
number = "YALEU/DCS/RR-1106",
month = feb,
year = "1999",
}
@PhdThesis{LiangThesis,
author = {Sheng Liang},
title = {Modular Monadic Semantics and Compilation},
school = {Yale University},
year = {1997},
OPTkey = {},
OPTtype = {},
OPTaddress = {},
OPTmonth = {},
OPTnote = {},
OPTannote = {}
}
@Article{PeytonJone92a,
author = "Simon L. Peyton Jones",
journal = "Journal of Functional Programming",
title = "Implementing lazy functional languages on stock
hardware: the Spineless Tagless {G}-machine",
year = "92",
document-size = "211.2 kbytes",
OPTurl = "ftp://ftp.dcs.gla.ac.uk/pub/glasgow-fp/papers/spineless-tagless-gmachine.ps.Z",
month = jul,
number = "2",
pages = "127--202",
volume = "2",
scope = "implemen",
}
@Article{PeytonJones:1998:TBO,
author = "Simon L. {Peyton Jones} and Andr{\'e} L. M. Santos",
title = "A transformation-based optimiser for {Haskell}",
journal = "Science of Computer Programming",
volume = "32",
number = "1--3",
pages = "3--47",
day = "1",
month = sep,
year = "1998",
coden = "SCPGD4",
ISSN = "0167-6423",
bibdate = "Mon Oct 11 18:07:09 MDT 1999",
OPTurl = "http://www.elsevier.com/cas/tree/store/scico/sub/1998/32/1-3/538.pdf",
acknowledgement = ack-nhfb,
affiliation = "Univ of Glasgow",
affiliationaddress = "Glasgow, UK",
classification = "723.1; 723.1.1; 921.3; 921.5",
journalabr = "Sci Comput Program",
keywords = "Computer programming languages; Glasgow Haskell
compiler (ghc); Mathematical transformations;
Optimization; Program compilers; Second-order lambda
calculus",
xxtitle = "Transformation-based optimizer for {Haskell}",
}
@Article{SCP::JonesS1998,
title = "A transformation-based optimiser for~{Haskell}",
author = "Simon L. Peyton Jones and Andr{\'e} L. M. Santos",
pages = "3--47",
journal = "Science of Computer Programming",
month = sep,
year = "1998",
volume = "32",
number = "1--3",
preliminary = "ESOP::Jones1996:18",
}
@Article{Wadler92,
author = "P. Wadler",
title = "The essence of functional programming.",
journal = "19th POPL",
pages = "1--14",
publisher = "ACM",
month = jan,
year = "1992",
keywords = "FP, functional programming, monad, monads, exception,
state, continuations, type, types, POPL, POPL19,
POPL92",
}
@Misc{programatica,
OPTcrossref = "http://www.cse.ogi.edu/PacSoft/projects/programatica/default.htm",
key = "Programatica, a Pacific Software Research Center Project",
author = "{James Hook, Prinicpal Investigator}",
title = "Programatica Home Page",
howpublished = "http://www.cse.ogi.edu/PacSoft/projects/programatica/default.htm",
year = "2001"
}
@InProceedings{JonesMark93,
author = "Mark P. Jones",
booktitle = "FPCA '93: Conference on Functional Programming and
Computer Architecture, Copenhagen, Denmark",
title = "{A} system of constructor classes: overloading and
implicit higher-order polymorphism",
year = "1993",
publisher = "ACM Press",
address = "New York, N.Y.",
OPTurl = "ftp://nebula.cs.yale.edu/pub/yale-fp/papers/fpca93.dvi.Z",
month = jun,
pages = "52--61",
}
@Article{Hall:1994:TCH,
author = "C. Hall and K. Hammond and S. Peyton Jones and P.
Wadler",
title = "Type classes in Haskell",
journal = "Lecture Notes in Computer Science",
volume = "788",
pages = "241--??",
year = "1994",
coden = "LNCSD9",
ISSN = "0302-9743",
bibdate = "Mon May 13 11:52:14 MDT 1996",
acknowledgement = ack-nhfb,
}
@Article{newcore,
author = "Simon L. Peyton-Jones and Simon Marlowe",
title = "Secrets of the Glasgow Haskell Compiler Inliner",
journal = "IDL'99",
note = "http://research.microsoft.com/Users/simonpj/papers/inline.ps.gz"
}
@TechReport{Danvy,
author = "O Danvy and J Koslowski and K Malmkjaer",
institution = "Kansas State University",
title = "Compiling Monads",
year = "91",
address = "Manhattan, Kansas",
document-size = "34.1 kbytes",
url = "ftp://ftp.diku.dk/pub/diku/semantics/papers/D-154.dvi.Z",
keywords = "computational monads, lambda-interpreters, partial
evaluation",
month = dec,
number = "CIS-92-3",
scope = "monads",
}
@TechReport{MoggiE90a,
author = "E Moggi",
institution = "Dept. of Computer Science, Edinburgh Univ.",
title = "An Abstract View of Programming Languages",
year = "90",
document-size = "63.3 kbytes",
url = "http://theory.doc.ic.ac.uk/papers/MoggiE/abs-view.dvi.gz",
number = "ECS-LFCS-90-113",
scope = "monads",
}