On Fri, Jan 04, 2008 at 09:12:20AM +0000, Simon Peyton-Jones wrote: > The trouble is that 'error' calls an I/O function to print its message, and > the I/O functions in turn depend on a *lot* of stuff. So 'error' can be > defined only when a lot of other functions have been defined. > > But 'error' is *needed* very early; e.g. to define 'head'.
Why is this necessary in post-exceptions Haskell? Can we not just have error be: error str = throw# (ErrorCall str) ? The exception is only printed if the exception reaches the top level; but it seems that the most logical place to handle that is in the RTS uncaught-exception handler. Stefan
signature.asc
Description: Digital signature
_______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
