@@ -7,45 +7,242 @@ Module Prelude
10Type Classes
17Type Classes
11~~~~~~~~~~~~
18~~~~~~~~~~~~
22+ class Alternative f where
23+ empty :: forall a. f a
24+ (<|>) :: forall a. f a -> f a -> f a
26+ class Applicative f where
27+ pure :: forall a. a -> f a
28+ (<*>) :: forall a b. f (a -> b) -> f a -> f b
34+ shl :: b -> Prim.Number -> b
35+ shr :: b -> Prim.Number -> b
36+ zshr :: b -> Prim.Number -> b
39+ class BoolLike b where
44+ class Category a where
45+ id :: forall t. a t t
46+ (<<<) :: forall b c d. a c d -> a b c -> a b d
49+ (==) :: a -> a -> Prim.Boolean
50+ (/=) :: a -> a -> Prim.Boolean
52+ class Functor f where
53+ (<$>) :: forall a b. (a -> b) -> f a -> f b
56+ return :: forall a. a -> m a
57+ (>>=) :: forall a b. m a -> (a -> m b) -> m b
68+ compare :: a -> a -> Ordering
71+ show :: a -> Prim.String
13Type Class Instances
73Type Class Instances
14~~~~~~~~~~~~~~~~~~~~
74~~~~~~~~~~~~~~~~~~~~
78+ instance applicativeFromMonad :: (Monad m) => Applicative m
80+ instance bitsNumber :: Bits Prim.Number
82+ instance boolLikeBoolean :: BoolLike Prim.Boolean
84+ instance categoryArr :: Category Prim.Function
86+ instance eqArray :: (Eq a) => Eq [a]
88+ instance eqBoolean :: Eq Prim.Boolean
90+ instance eqNumber :: Eq Prim.Number
92+ instance eqString :: Eq Prim.String
94+ instance functorFromApplicative :: (Applicative f) => Functor f
96+ instance numNumber :: Num Prim.Number
98+ instance ordNumber :: Ord Prim.Number
100+ instance showBoolean :: Show Prim.Boolean
102+ instance showNumber :: Show Prim.Number
104+ instance showOrdering :: Show Ordering
106+ instance showString :: Show Prim.String
113+ (!!) :: forall a. [a] -> Prim.Number -> a
115+ (#) :: forall a b. a -> (a -> b) -> b
117+ ($) :: forall a b. (a -> b) -> a -> b
119+ (++) :: Prim.String -> Prim.String -> Prim.String
121+ (<) :: forall a. (Ord a) => a -> a -> Prim.Boolean
123+ (<=) :: forall a. (Ord a) => a -> a -> Prim.Boolean
125+ (>) :: forall a. (Ord a) => a -> a -> Prim.Boolean
127+ (>=) :: forall a. (Ord a) => a -> a -> Prim.Boolean
129+ (>>>) :: forall a b c d. (Category a) => a b c -> a c d -> a b d
131+ boolAnd :: Prim.Boolean -> Prim.Boolean -> Prim.Boolean
133+ boolNot :: Prim.Boolean -> Prim.Boolean
135+ boolOr :: Prim.Boolean -> Prim.Boolean -> Prim.Boolean
137+ const :: forall a b. a -> b -> a
139+ flip :: forall a b c. (a -> b -> c) -> b -> a -> c
141+ numAdd :: Prim.Number -> Prim.Number -> Prim.Number
143+ numAnd :: Prim.Number -> Prim.Number -> Prim.Number
145+ numCompare :: Prim.Number -> Prim.Number -> Ordering
147+ numComplement :: Prim.Number -> Prim.Number
149+ numDiv :: Prim.Number -> Prim.Number -> Prim.Number
151+ numMod :: Prim.Number -> Prim.Number -> Prim.Number
153+ numMul :: Prim.Number -> Prim.Number -> Prim.Number
155+ numNegate :: Prim.Number -> Prim.Number
157+ numOr :: Prim.Number -> Prim.Number -> Prim.Number
159+ numShl :: Prim.Number -> Prim.Number -> Prim.Number
161+ numShr :: Prim.Number -> Prim.Number -> Prim.Number
163+ numSub :: Prim.Number -> Prim.Number -> Prim.Number
165+ numXor :: Prim.Number -> Prim.Number -> Prim.Number
167+ numZshr :: Prim.Number -> Prim.Number -> Prim.Number
169+ on :: forall a b c. (b -> b -> c) -> (a -> b) -> a -> a -> c
171+ refEq :: forall a. a -> a -> Prim.Boolean
173+ refIneq :: forall a. a -> a -> Prim.Boolean
175+ showNumberImpl :: Prim.Number -> Prim.String
19Module Data.Eq
177Module Data.Eq
20--------------
178--------------
25Type Classes
188Type Classes
26~~~~~~~~~~~~
189~~~~~~~~~~~~
28Type Class Instances
191Type Class Instances
29~~~~~~~~~~~~~~~~~~~~
192~~~~~~~~~~~~~~~~~~~~
196+ instance eqRef :: Eq (Ref a)
203+ liftRef :: forall a b. (a -> a -> b) -> Ref a -> Ref a -> b
34Module Control.Monad.Eff
205Module Control.Monad.Eff
35------------------------
206------------------------
213+ data Eff :: # ! -> * -> *
215+ type Pure a = forall e. Eff e a
40Type Classes
217Type Classes
41~~~~~~~~~~~~
218~~~~~~~~~~~~
43Type Class Instances
220Type Class Instances
44~~~~~~~~~~~~~~~~~~~~
221~~~~~~~~~~~~~~~~~~~~
225+ instance monadEff :: Monad (Eff e)
232+ bindEff :: forall e a b. Eff e a -> (a -> Eff e b) -> Eff e b
234+ forE :: forall e. Prim.Number -> Prim.Number -> (Prim.Number -> Eff e { }) -> Eff e { }
236+ foreachE :: forall e a. [a] -> (a -> Eff e { }) -> Eff e { }
238+ retEff :: forall e a. a -> Eff e a
240+ runPure :: forall a. Pure a -> a
242+ untilE :: forall e. Eff e Prim.Boolean -> Eff e { }
244+ whileE :: forall e a. Eff e Prim.Boolean -> Eff e a -> Eff e { }
49Module Control.Monad.Eff.Unsafe
246Module Control.Monad.Eff.Unsafe
50-------------------------------
247-------------------------------
@@ -61,12 +258,20 @@ Type Class Instances
263+ unsafeInterleaveEff :: forall eff1 eff2 a. Eff eff1 a -> Eff eff2 a
64Module Debug.Trace
265Module Debug.Trace
65------------------
266------------------
70Type Classes
275Type Classes
71~~~~~~~~~~~~
276~~~~~~~~~~~~
@@ -76,12 +281,26 @@ Type Class Instances
286+ print :: forall a r. (Show a) => a -> Eff (trace :: Trace | r) { }
288+ trace :: forall r. Prim.String -> Eff (trace :: Trace | r) { }
79Module Control.Monad.ST
290Module Control.Monad.ST
80-----------------------
291-----------------------
300+ data STArray :: * -> * -> *
302+ data STRef :: * -> * -> *
85Type Classes
304Type Classes
86~~~~~~~~~~~~
305~~~~~~~~~~~~
@@ -91,3 +310,23 @@ Type Class Instances
315+ modifySTRef :: forall a h r. STRef h a -> (a -> a) -> Eff (st :: ST h | r) a
317+ newSTArray :: forall a h r. Prim.Number -> a -> Eff (st :: ST h | r) (STArray h a)
319+ newSTRef :: forall a h r. a -> Eff (st :: ST h | r) (STRef h a)
321+ peekSTArray :: forall a h r. STArray h a -> Eff (st :: ST h | r) a
323+ pokeSTArray :: forall a h r. STArray h a -> Prim.Number -> a -> Eff (st :: ST h | r) a
325+ readSTRef :: forall a h r. STRef h a -> Eff (st :: ST h | r) a
327+ runST :: forall a r. (forall h. Eff (st :: ST h | r) a) -> Eff r a
329+ runSTArray :: forall a r. (forall h. Eff (st :: ST h | r) (STArray h a)) -> Eff r [a]
331+ writeSTRef :: forall a h r. STRef h a -> a -> Eff (st :: ST h | r) a