B.1 Pervasives
The pervasive definitions are those modules, types, and values that are
available to an Moby program without explicit importing.
B.1.1 Pervasive types
B.1.2 Overloaded operators
B.1.3 Pervasive functions
val ignore : [t] t -> ()
val ! : Bool -> Bool
val == : (Bool, Bool) -> Bool // overloaded
val != : (Bool, Bool) -> Bool // overloaded
val < : (Bool, Bool) -> Bool // overloaded
val <= : (Bool, Bool) -> Bool // overloaded
val > : (Bool, Bool) -> Bool // overloaded
val >= : (Bool, Bool) -> Bool // overloaded
val str : Char -> String
val ord : Char -> Int
val chr : Int -> Char
val succ : Char -> Char // overloaded
val pred : Char -> Char // overloaded
val == : (Char, Char) -> Bool // overloaded
val != : (Char, Char) -> Bool // overloaded
val < : (Char, Char) -> Bool // overloaded
val <= : (Char, Char) -> Bool // overloaded
val > : (Char, Char) -> Bool // overloaded
val >= : (Char, Char) -> Bool // overloaded
val + : (String, String) -> String // overloaded
val concat : List(String) -> String
val length : String -> Int // overloaded
val == : (String, String) -> Bool // overloaded
val != : (String, String) -> Bool // overloaded
val < : (String, String) -> Bool // overloaded
val <= : (String, String) -> Bool // overloaded
val > : (String, String) -> Bool // overloaded
val >= : (String, String) -> Bool // overloaded
val require : [t] Option(t) -> t
val optional : [t] (Option(t), t) -> t
Figure B.1: Pervasive functions
val << : (Int, Int) -> Int // overloaded
val >> : (Int, Int) -> Int // overloaded
val >>> : (Int, Int) -> Int // overloaded
val | : (Int, Int) -> Int // overloaded
val & : (Int, Int) -> Int // overloaded
val + : (Int, Int) -> Int // overloaded
val - : (Int, Int) -> Int // overloaded
val * : (Int, Int) -> Int // overloaded
val / : (Int, Int) -> Int // overloaded
val % : (Int, Int) -> Int // overloaded
val - : Int -> Int // overloaded
val ~ : Int -> Int // overloaded
val == : (Int, Int) -> Bool // overloaded
val != : (Int, Int) -> Bool // overloaded
val < : (Int, Int) -> Bool // overloaded
val <= : (Int, Int) -> Bool // overloaded
val > : (Int, Int) -> Bool // overloaded
val >= : (Int, Int) -> Bool // overloaded
val abs : Int -> Int // overloaded
val min : (Int, Int) -> Int // overloaded
val max : (Int, Int) -> Int // overloaded
val isNeg : Int -> Bool // overloaded
val sign : Int -> Int // overloaded
Figure B.2: Pervasive integer operations
val + : (Flt, Flt) -> Flt // overloaded
val - : (Flt, Flt) -> Flt // overloaded
val * : (Flt, Flt) -> Flt // overloaded
val / : (Flt, Flt) -> Flt // overloaded
val % : (Flt, Flt) -> Flt // overloaded
val - : Flt -> Flt // overloaded
val ~ : Flt -> Flt // overloaded
val == : (Flt, Flt) -> Bool // overloaded
val != : (Flt, Flt) -> Bool // overloaded
val < : (Flt, Flt) -> Bool // overloaded
val <= : (Flt, Flt) -> Bool // overloaded
val > : (Flt, Flt) -> Bool // overloaded
val >= : (Flt, Flt) -> Bool // overloaded
val abs : Flt -> Flt // overloaded
val min : (Flt, Flt) -> Flt // overloaded
val max : (Flt, Flt) -> Flt // overloaded
val isNeg : Flt -> Bool // overloaded
val sign : Flt -> Int // overloaded
val isNAN : Flt -> Bool
val isInf : Flt -> Bool
val ordered : (Flt, Flt) -> Bool
val copySign : (Flt, Flt) -> Flt
val scalb : (Flt, Int) -> Flt
val logb : Flt -> Int
val nextAfter : (Flt, Flt) -> Flt
Figure B.3: Pervasive floating-point operations
B.2 Standard modules