cvs commit: hugs98/src Makefile.in MkDepend.in array.c builtin.c iomonad.c observe.c prelude.h printer.c stmonad.c hugs98/src/unix convert_libraries hugs98/src/bcc32 Makefile hugs98/src/djgpp2 Makefile hugs98/src/dotnet Makefile hugs98/src/msc Makefile ...

ross 2003/05/12 01:48:16 PDT Modified files: src Makefile.in MkDepend.in array.c builtin.c iomonad.c observe.c prelude.h printer.c src/unix convert_libraries src/bcc32 Makefile src/djgpp2 Makefile src/dotnet Makefile src/msc Makefile src/winhugs Makefile libraries/Hugs IOExts.hs LazyST.hs Memo.hs ST.hs Removed files: src stmonad.c Log: Change the representation of the strict ST monad to newtype ST s a = ST (forall r. (a -> r) -> r) which is a generalization of the new representation of IO monad: newtype IO a = IO ((a -> IOResult) -> IOResult) This simplifies conversion between these monads, and enables them to share monad and state primitives, so that stmonad.c is no longer required (except for a couple of primitives to support Hugs.Memo, which have moved to iomonad.c). The lazy ST monad has the same representation as before, but is now defined in Hugs.LazyST, with conversions to and from the strict ST monad. We now use the fptools/libraries definitions of the operations on this monad, using the corresponding operations on the strict monad and these conversions. The resulting interface matches that of GHC. Revision Changes Path 1.56 +1 -1 hugs98/src/Makefile.in 1.4 +38 -39 hugs98/src/MkDepend.in 1.8 +2 -58 hugs98/src/array.c 1.59 +2 -13 hugs98/src/builtin.c 1.49 +60 -2 hugs98/src/iomonad.c 1.2 +2 -2 hugs98/src/observe.c 1.45 +2 -4 hugs98/src/prelude.h 1.10 +3 -3 hugs98/src/printer.c 1.69 +2 -2 hugs98/src/unix/convert_libraries 1.11 +2 -2 hugs98/src/bcc32/Makefile 1.10 +2 -2 hugs98/src/djgpp2/Makefile 1.10 +39 -40 hugs98/src/dotnet/Makefile 1.35 +39 -40 hugs98/src/msc/Makefile 1.24 +39 -40 hugs98/src/winhugs/Makefile 1.14 +0 -4 hugs98/libraries/Hugs/IOExts.hs 1.8 +25 -98 hugs98/libraries/Hugs/LazyST.hs 1.3 +4 -11 hugs98/libraries/Hugs/Memo.hs 1.10 +43 -40 hugs98/libraries/Hugs/ST.hs
participants (1)
-
ross@glass.cse.ogi.edu