haskell/network — pull request #53 by benmachine (2012-09-06 00:32:37+00:00)
Title: Reduce API variability due to system configuration

Now all constructors of SocketOption, Family, and SocketType will always
be declared, but using ones not supported on your system will lead to
runtime errors. To guard against these, new functions isSupportedFamily
etc. are introduced.

As a side effect, DummySocketOption__ goes away, so this is strictly
speaking a major API revision.

This partially, but not completely, addresses issue #40.