Skip to content

X Control Structures

John McClean edited this page Jul 5, 2018 · 1 revision

Control Structures

  1. Option : a safe optional API
  2. Maybe : a lazy and potentially reactive (asynchronous) optional type
  3. Either : a sum type representing one of two values
  4. Eval : a lazily evaluated expression, with built in memoization and stack-safe recursion (implemented via Trampoline)
  5. 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)
  6. Validated : an either / sum type that represents Valid and Invalid states, Invalid states can be accumulated
  7. Unrestricted : a simplified Free Monad implementation for Java
  8. LazyEither/3/4/5 - a suite of lazy and potentially reactive sum types
  9. 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.
  10. Future - asynchronous control type
Clone this wiki locally