[project @ 2001-08-29 14:20:14 by rje]
authorrje <unknown>
Wed, 29 Aug 2001 14:20:14 +0000 (14:20 +0000)
committerrje <unknown>
Wed, 29 Aug 2001 14:20:14 +0000 (14:20 +0000)
commitc31a55d1d200e9d1d72d0f09fce5204c425b801d
tree98974800567eb9033f2decaf13970947f75ea76d
parent13350796d17620070d7cacce688072877aca6af4
[project @ 2001-08-29 14:20:14 by rje]
FCode/Code is now a monad, and thus now also a constructed type, rather than a
type synonym.

This requires quite a lot of changes in quite a lot of files, but none of these changes should have changed the behaviour of anything.

Being a Monad allows code that used FCode to be IMHO rather more readable
as it can use do notation, and other common Monad idioms.

In addition, state has been abstracted away with getter and setter
functions, so that functions mess with the innards of FCode as little as
possible - making it easier to change FCode in future.
ghc/compiler/codeGen/CgBindery.lhs
ghc/compiler/codeGen/CgMonad.lhs
ghc/compiler/codeGen/CgStackery.lhs
ghc/compiler/codeGen/CgUsages.lhs