pull-monad
Monadic functions for pull-streams
These are the methods that make something "monadic." These functions and their interactions with each other satisfy the laws laid out in fantasy-land.
Usually these methods exist on the protytpe and are used like so:
const lift2 = (f, a, b) => b.ap(a.map(f))
Because these are simply through
's, though, they must be used as such:
const lift2 = (f, a, b) => pull(b, ap(pull(a, map(f))))
example
const pull =const map of ap chain } =const plus1 = x + 1 // takes a number and returns a numberconst times7 = x * 7 // takes a number and returns a numberconst triplicate = pull // takes a number and returns a stream// => [22, 22, 22]