# Prelude

while : (test : IO' l Bool) -> (body : IO' l ()) -> IO' l ()

  Loop while some test is true

  test

    the condition of the loop

  body

    the loop body

uncurry : (a -> b -> c) -> (a, b) -> c
shiftR : Int -> Int -> Int
shiftL : Int -> Int -> Int
pow : Num a => a -> Nat -> a
num_error : Err -> Maybe (List ErrorReportPart)
natRange : Nat -> List Nat
natEnumFromTo : Nat -> Nat -> List Nat
natEnumFromThenTo' : Nat -> Nat -> Nat -> List Nat
natEnumFromThenTo : Nat -> Nat -> Nat -> List Nat
natEnumFromThen : Nat -> Nat -> Stream Nat
eqPtr : Ptr -> Ptr -> IO Bool

  Pointer equality

default#succ : Enum a => a -> a
default#enumFromTo : Enum a => a -> a -> List a
default#enumFromThenTo : Enum a => a -> a -> a -> List a
default#enumFromThen : Enum a => a -> a -> Stream a
default#enumFrom : Enum a => a -> Stream a
decAsBool : Dec p -> Bool
curry : ((a, b) -> c) -> a -> b -> c
countFrom : Num n => n -> n -> Stream n
cast_error : Err -> Maybe (List ErrorReportPart)
interface Enum
  pred : Enum a => a -> a
  succ : Enum a => a -> a
  toNat : Enum a => a -> Nat
  fromNat : Enum a => Nat -> a
  enumFrom : Enum a => a -> Stream a
  enumFromThen : Enum a => a -> a -> Stream a
  enumFromTo : Enum a => a -> a -> List a
  enumFromThenTo : Enum a => a -> a -> a -> List a