deriving - 

Automatic derivable implementations of standard basic methods.

This module introduce Derivable as the main interface to implement (or auto-implement) and provides additional mixin-interfaces with specific default behavior of standard basic methods based on the services of this interface.

The name deriving is inspired from the deriving mechanism of Haskell.

This module also introduce a new annotation auto_derive. See Derivable for details.