You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
John McClean edited this page Jul 5, 2018
·
1 revision
Control Structures
Option : a safe optional API
Maybe : a lazy and potentially reactive (asynchronous) optional type
Either : a sum type representing one of two values
Eval : a lazily evaluated expression, with built in memoization and stack-safe recursion (implemented via Trampoline)
Try : a type-safe either/sum type that represents a success state or Exceptional state (for a more direct / powerful equivalent of Scala's Try see cyclops.reactive.IO)
Validated : an either / sum type that represents Valid and Invalid states, Invalid states can be accumulated
Unrestricted : a simplified Free Monad implementation for Java
LazyEither/3/4/5 - a suite of lazy and potentially reactive sum types
Ior - can be product of arity 2 (e.g. Tuple2 equivalent) with two values present or an either /sum type of arity two with only one of the defined types present.