HasFuse Version 1.1 ===================
HasFuse is a modification of the Glasgow Haskell Compiler which has built-in some precautions for the execution of unsafePerformIO, hence the name "HasFuse". This means the user does not have to undertake the proof obligation that the timing of an I/O-operation wrapped by unsafePerformIO is independent from each other I/O-operation. HasFuse is available as a patch of the GHC 5.04.3 source code from http://www.ki.informatik.uni-frankfurt.de/~sabel/hasfuse On the same location, building instructions and further documentation can be found. The semantics of programs which make use of unsafePerformIO is given by the nondeterministic call-by-need calculus FUNDIO. This calculus provides an I/O-interface, which can be used to model direct-call I/O within Haskell. The FUNDIO-calculus is published in the technical report "Frank-16", see http://www.ki.informatik.uni-frankfurt.de/papers/articles.html#Frank-16 The results of applying the FUNDIO semantics to Haskell and the (FUNDIO-) correctness of those program transformations which are performed by the GHC are available as "Technical Report Frank-17" through http://www.ki.informatik.uni-frankfurt.de/papers/articles.html#Frank-17 Changes from version 1.0 to 1.1: -------------------------------- HasFuse provides a new flag -fno-hasfuse, which runs the GHC in GHC mode, i.e. all optimisations performed by the original GHC are turned on. _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell