alastair> There's a second problem with "pseudoconstant" that no-one's mentioned
    alastair> yet - it breaks the Haskell type system (when used in conjunction with
    alastair> mutable variables).  

You tacitly imply that pseudoconstants are let-bound. The problem
disappears if you simply treat them as lambda-bound variables. That
is, you treat 

> pseudoconstant x m 

like prepending

> m >>= \x -> ...

to main and everything works fine.

-Peter




Reply via email to