constrained-normal: Normalised Deep Embeddings for Constrained Type-Class Instances

[ bsd3, control, library ] [ Propose Tags ]

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 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 Wed Feb 28 09:28:44 UTC 2018
Category Control
Home page http://dx.doi.org/10.1145/2500365.2500602
Uploaded by NeilSculthorpe at Mon Jun 9 14:46:00 UTC 2014
Distributions NixOS:1.0.2
Downloads 1467 total (18 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

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'.

Maintainer's Corner

For package maintainers and hackage trustees