Library proposal: Add System.Info.isWindows
Isaac Dupree
isaacdupree at charter.net
Wed Aug 15 18:42:50 EDT 2007
Aaron Denney wrote:
>> None of the existing OSes get subtypes... what if "Other" is also
>> standalone, not having a String argument (and whenever someone wants to
>> detect some other OS, I guess they petition to have the enumeration
>> expanded and it will be promptly) - how is that on the problem scale??
>
> It looks like a problem to me. If nothing else, as it expands, old
> packages get nasty warnings about incomplete pattern matches on old
> systems, and still don't work on new systems, as the package doesn't
> know how to handle this case.
One should never have a case for "Other" anyway. Either
case ... of
Windows -> ...
Linux -> ...
_ -> ... --default behavior
or
case ... of
Windows -> ...
Linux -> ...
--intentionally broken on unimplemented platforms
--or _ -> error "not implemented on unknown platforms"
should be used, anyway. That's good practice for anything like this,
not just in Haskell, that is not inherently a fixed set: "isOther" is
nonsensical to check for. (I am recalling that anti-"other" conclusion
for file/directory/... information flags in C++ Boost.)
Isaac
More information about the Libraries
mailing list