|
Aim of the Project
|
The aim of the project is to explore direct-call I/O in lazy functional programming
languages, particularly Haskell. Therefore, as a semantic basis, the calculus
FUNDIO
has been developed, a non-deterministic call-by-need lambda calculus with a contextual equivalence.
Furthermore, with HasFuse there exists a modified implementation of the
Glasgow Haskell Compiler which compiles Haskell programs using unsafePerformIO in a 'safe' way,
i.e. deploys only those optimizations that have been proven correct w.r.t. FUNDIO.
Ongoing work is, beside others, devoted to the proof of correctness of further program transformations.
Information on the current state of the project can also be found in the
Haskell Communities and Activities Report
Hence the name of the project: Here, the word Diamond is used as an acronym for a
Direct-Call I/O Approach modelled using Non-Determinism.
|
|
Publications
|
Manfred Schmidt-Schauß,
"FUNDIO: A Lambda-Calculus with a letrec, case,
Constructors, and an IO-Interface:
Approaching a Theory of unsafePerformIO"
Institut für Informatik, J.W. Goethe-Universität Frankfurt am
Main, Frank-report-16, 2003
PDF,
PostScript,
compressed PostScript,
BibTeX entry
David Sabel,
"Realising nondeterministic I/O in the Glasgow Haskell Compiler"
Institut für Informatik, J.W. Goethe-Universität Frankfurt am Main,
Frank-report-17, 2003
PDF,
PostScript,
compressed PostScript,
BibTeX entry
David Sabel,
"Realisierung der Ein-/Ausgabe in einem Compiler für Haskell bei
Verwendung einer nichtdeterministischen Semantik",
Institut für Informatik, J.W. Goethe-Universität Frankfurt am Main,
Diplomarbeit (in german), 2003
PDF,
compressed PostScript
Matthias Mann,
"Towards Sharing in Lazy Computation Systems"
Institut für Informatik, J.W. Goethe-Universität Frankfurt am
Main, Frank-report-18, 2004
PDF,
PostScript,
BibTeX entry
Arne Kutzner,
"Ein nichtdeterministischer call-by-need Lambda-Kalkül mit
erratic Choice: Operationale Semantik, Programmtransformationen und
Anwendungen",
(A Non-Deterministic Call-by-Need Lambda Calculus with Erratic Choice:
Operational Semantics, Program Transformations and Applications),
PhD thesis, 1999
PostScript,
compressed PostScript
Arne Kutzner,
Manfred Schmidt-Schauß,
"A Non-Deterministic Call-by-Need Lambda Calculus",
Proc. ICFP'98, ACM Press, September 1998, pp. 324--335
PostScript,
compressed PostScript
|