Proposal: System.Environment.getEnv should return Maybe

Jon Fairbairn jon.fairbairn at cl.cam.ac.uk
Thu Feb 23 10:07:56 CET 2012


Brandon Allbery <allbery.b at gmail.com> writes:

> On Wed, Feb 22, 2012 at 18:51, John Meacham <john at repetae.net> wrote:
>
>> On Wed, Feb 22, 2012 at 3:05 PM, Evan Laforge <qdunkan at gmail.com> wrote:
>> > It's awkward and surprising how getEnv throws an exception when an env
>> > var is not set, since it's very common for env vars to be optional,
>> > and it's not convenient to catch exceptions in haskell (I have to look
>>
>> For true IO exceptions, you should be using the Prelude.catch mechanism.
>>
>
> This still assumes that it's an exceptional condition that is being
> modeled.  It is not; it is correctly modeled as a Maybe.

+1. And it’s always irritated me that read at EOF raises an
exception. Files having ends is not exceptional! (This is partly
addressed by iteratees, I imagine, but I haven’t found time to
get my head round those yet.)

-- 
Jón Fairbairn                                 Jon.Fairbairn at cl.cam.ac.uk





More information about the Libraries mailing list