@@ -5,12 +5,13 @@ import Prelude
5
5
import Control.Comonad (class Comonad )
6
6
import Control.Extend (class Extend )
7
7
import Control.Lazy as CL
8
+ import Data.Eq (class Eq1 )
8
9
import Data.Foldable (class Foldable , foldMap , foldl , foldr )
9
10
import Data.FoldableWithIndex (class FoldableWithIndex )
10
11
import Data.Functor.Invariant (class Invariant , imapF )
11
12
import Data.FunctorWithIndex (class FunctorWithIndex )
12
13
import Data.HeytingAlgebra (implies , ff , tt )
13
- import Data.Monoid (class Monoid , mempty )
14
+ import Data.Ord (class Ord1 )
14
15
import Data.Semigroup.Foldable (class Foldable1 , fold1Default )
15
16
import Data.Semigroup.Traversable (class Traversable1 )
16
17
import Data.Traversable (class Traversable , traverse )
@@ -55,9 +56,13 @@ instance fieldLazy :: Field a => Field (Lazy a)
55
56
instance eqLazy :: Eq a => Eq (Lazy a ) where
56
57
eq x y = (force x) == (force y)
57
58
59
+ derive instance eq1Lazy :: Eq1 Lazy
60
+
58
61
instance ordLazy :: Ord a => Ord (Lazy a ) where
59
62
compare x y = compare (force x) (force y)
60
63
64
+ derive instance ord1Lazy :: Ord1 Lazy
65
+
61
66
instance boundedLazy :: Bounded a => Bounded (Lazy a ) where
62
67
top = defer \_ -> top
63
68
bottom = defer \_ -> bottom
0 commit comments