constrained-normal: Normalised Deep Embeddings for Constrained Type-Class Instances
The package provides normal forms for monads and related structures, similarly to the Operational package. The difference is that we parameterise the normal forms on a constraint, and apply that constraint to all existential types within the normal form. This allows monad (and other) instances to be generated for underlying types that require constraints on their return-like and bind-like operations, e.g. Set.
This is documented in the following paper:
The Constrained-Monad Problem. Neil Sculthorpe and Jan Bracker and George Giorgidze and Andy Gill. International Conference on Functional Programming, pages 287-298. ACM, 2013. http://dx.doi.org/10.1145/2500365.2500602
The functionality exposed by this library is also used internally by the Set-Monad and RMonad packages.
Versions [faq] | 1.0.0, 1.0.1, 1.0.2 |
---|---|
Dependencies | base (>=4.5 && <5) [details] |
License | BSD-3-Clause |
Copyright | (c) 2013 The University of Kansas |
Author | Neil Sculthorpe |
Maintainer | Neil Sculthorpe <neil.sculthorpe@ntu.ac.uk> |
Revised | Revision 1 made by NeilSculthorpe at 2018-02-28T09:28:44Z |
Category | Control |
Home page | http://dx.doi.org/10.1145/2500365.2500602 |
Uploaded | by NeilSculthorpe at 2014-06-09T14:46:00Z |
Distributions | NixOS:1.0.2 |
Downloads | 2766 total (4 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Successful builds reported [all 1 reports] |
Downloads
- constrained-normal-1.0.2.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.