alloy-proxy-fd-1.0.0: Some add-on instances for the Alloy library

Data.Generics.Alloy.PureProxy

Description

A module providing an Alloy instance in terms of AlloyA.

The contents of this module appear blank because it contains only class instances. The Alloy and AlloyA class instances have nearly identical definitions for any given type, and running AlloyA with an identity functor/monad has the same behaviour as the pure class. Therefore, it is possible to define a single Alloy instance in terms of AlloyA. That is what this module does.

To use this module, you should generate only AlloyA instances with the Data.Generics.Alloy.GenInstances module, and import this module. If you import this alongside any other Alloy instances you'll have incoherent instances. Alternatively, you can generate only AlloyARoute instances and use this module along with Data.Generics.Alloy.EffectProxy.