packages feed

constraints 0.3.3 → 0.3.4

raw patch · 2 files changed

+19/−2 lines, 2 filesdep ~basedep ~ghc-prim

Dependency ranges changed: base, ghc-prim

Files

Data/Constraint.hs view
@@ -37,7 +37,7 @@   , weaken1, weaken2, contract   , (&&&), (***)   , trans, refl-  , top+  , top, bottom   -- * Reflection   , Class(..)   , (:=>)(..)@@ -130,6 +130,22 @@ top :: a :- () top = Sub Dict +type family Ex (a :: *) (c :: Constraint) :: Constraint+type instance Ex () c = ()+type instance Ex Bool c = c++falso :: (() ~ a) :- Ex a c+falso = Sub Dict++-- |+-- A bad type coercion lets you derive any type you want.+--+-- These are the initial arrows of the category and (() ~ Bool) is the initial object+--+-- This demonstrates the law of classical logical <http://en.wikipedia.org/wiki/Principle_of_explosion ex falso quodlibet>+bottom :: (() ~ Bool) :- c+bottom = thing+ -- | Reify the relationship between a class and its superclass constraints as a class class Class b h | h -> b where   cls :: h :- b@@ -326,3 +342,4 @@ instance a => Monoid (Dict a) where   mappend Dict Dict = Dict   mempty = Dict+
constraints.cabal view
@@ -1,6 +1,6 @@ name:          constraints category:      Constraints-version:       0.3.3+version:       0.3.4 license:       BSD3 cabal-version: >= 1.10 license-file:  LICENSE