Declaring instances of the Default type class has always
been pretty mechanical. This package makes the compiler do
the mechanical bit. This has the benefit that even less
thought is required, and the instance will automatically
be corrected when the definition of the data type changes
(say, to add more arguments to the constructor). Usage
looks like this, for example:
This example results in the following instance: