Skip to content
Paul Louth edited this page Oct 6, 2015 · 17 revisions
Feature Description
Lst<T> Immutable list
Map<K,V> Immutable map
Set<T> Immutable set
Que<T> Immutable queue
Stck<T> Immutable stack
Option<T> Option monad that can't be used with null values
OptionUnsafe<T> Option monad that can be used with null values
Either<L,R> Right/Left choice monad that won't accept null values
EitherUnsafe<L,R> Right/Left choice monad that can be used with null values
Try<T> Exception catching monad
TryOption<T> Option monad with third state 'Fail' that catches exceptions
Reader<E,T> Reader monad
Writer<O,T> Writer monad
State<S,T> State monad
Rws<E,O,S,T> Reader/Writer/State monad
Monad transformers A higher kinded type (ish)
Process library Actor system. The same as Erlang processes for massive concurrency with state management.
Redis persistence Persistence of the Process system message-queues and state, for robustness and inter-app communication.
Currying https://en.wikipedia.org/wiki/Currying
Partial application https://en.wikipedia.org/wiki/Partial_application
Memoization https://en.wikipedia.org/wiki/Memoization
Improved lambda type inference var add = fun( (int x, int y) => x + y)
IObservable<T> extensions
Clone this wiki locally