builtin
The types the language answers with itself: every other module imports this one without writing it.
Bool
data Bool = True | Falsewhat a comparison answers, and what if, && and || take
Unit
data Unit = MkUnitwhat a thunk is forced with
List
data List a = Nil | Cons a (List a)what [a, b] is, and what an array is made from and turned into
Lazy
data Lazy awhat ~A is: an A computed only where it is forced, force, and
once, kept for the next time; ~e delays e. Its tag is no one
else’s: a Lazy is made by ~e alone
force
force : {a : Type} -> ~a -> athe value, computed the first time it is forced and kept: where an
a is expected, a Lazy a given is forced without saying so (the
prelude’s Coe (Lazy a) a)
int8Eq
int8Eq : Int8 -> Int8 -> Boolthe equalities of the fixed-width types: what a literal pattern of
one is matched by (as one of an Int is by the prelude’s intEq),
and what their modules (int32 and the others) name
int16Eq
int16Eq : Int16 -> Int16 -> Boolint32Eq
int32Eq : Int32 -> Int32 -> Boolint64Eq
int64Eq : Int64 -> Int64 -> Booluint8Eq
uint8Eq : UInt8 -> UInt8 -> Booluint16Eq
uint16Eq : UInt16 -> UInt16 -> Booluint32Eq
uint32Eq : UInt32 -> UInt32 -> Booluint64Eq
uint64Eq : UInt64 -> UInt64 -> Boolfloat32Eq
float32Eq : Float32 -> Float32 -> BoolruneEq
runeEq : Rune -> Rune -> Boolthe equality of runes, by code point: what a rune literal pattern is matched by, and what rune names