Proposal: die to System.Exit (and/or Prelude)

Evan Laforge qdunkan at
Mon Dec 16 06:51:10 UTC 2013

On Sun, Dec 15, 2013 at 6:16 PM, Roman Cheplyaka <roma at> wrote:
> * Evan Laforge <qdunkan at> [2013-12-15 17:54:14-0800]
>> I always thought it was kind of bizarre how other languages (even
>> wordy old java) have "exit :: Int -> IO ()", but haskell has
>> "System.Exit.exitSuccess" and "System.Exit.exitWith (ExitFailure 42)".
>>  Yes it's higher level to say "success" and "failure" than "0" and
>> ">0", but wow that's a lot of bureaucracy for something trivial.  And
>> it still lets you write (ExitFailure 0).
> System.Exit.exitFailure :: IO a has existed for a long time, FWIW.

Yeah, that's what I was saying.  One module, one type, two
constructors, and three functions, just to do what everyone else does
with one 'exit' function.  It's the windows vista shutdown menu of
exit functions.  It's almost as if haskell doesn't want to let us out.

Um.  Anyway.  Ignore me and carry on.

More information about the Libraries mailing list