//@NO-IMPLICIT-PRELUDE //! Definition of standard types separate from the prelude to allow primitives to use them /// `Bool` represents a value which can only be `True` or `False` type Bool = | False | True /// `Option` represents a value which may not exist. type Option a = | None | Some a /// `Result` represents either success (`Ok`) or an error (`Err`) type Result e t = | Err e | Ok t /// `Ordering` represents the result of comparing two values type Ordering = | LT | EQ | GT { Bool, Option, Result, Ordering }