TY - UNPD A1 - Sabel, David T1 - Realising nondeterministic I/O in the Glasgow Haskell Compiler T2 - Technical report Frank / Johann-Wolfgang-Goethe-Universität, Fachbereich Informatik und Mathematik, Institut für Informatik ; 17 N2 - In this paper we demonstrate how to relate the semantics given by the nondeterministic call-by-need calculus FUNDIO [SS03] to Haskell. After introducing new correct program transformations for FUNDIO, we translate the core language used in the Glasgow Haskell Compiler into the FUNDIO language, where the IO construct of FUNDIO corresponds to direct-call IO-actions in Haskell. We sketch the investigations of [Sab03b] where a lot of program transformations performed by the compiler have been shown to be correct w.r.t. the FUNDIO semantics. This enabled us to achieve a FUNDIO-compatible Haskell-compiler, by turning o not yet investigated transformations and the small set of incompatible transformations. With this compiler, Haskell programs which use the extension unsafePerformIO in arbitrary contexts, can be compiled in a "safe" manner. T3 - Technical report Frank / Johann-Wolfgang-Goethe-Universität, Fachbereich Informatik und Mathematik, Institut für Informatik - 17 Y1 - 2003 UR - http://publikationen.ub.uni-frankfurt.de/frontdoor/index/index/docId/4591 UR - https://nbn-resolving.org/urn:nbn:de:hebis:30-9053 UR - http://www.ki.informatik.uni-frankfurt.de/papers/sabel/nondetIOinGHC.pdf IS - Version: December 3, 2003 PB - Johann Wolfgang Goethe-Univ., Fachbereich Informatik und Mathematik, Inst. für Informatik, Research group for Artificial Intelligence and Software Technology CY - Frankfurt [am Main] ER -