famine
v1.0.1
Published
Functors, Applicatives, Monads, Etc.
Downloads
2
Maintainers
Readme
famine
Functors, Applicatives, Monads, etc. (For node.js)
Right now, famine is two things:
- An experiment on how close I can emulate Haskell's wonderful data types in Javascript, and
- A tool for Haskell developers (or other functional programmers) to use what they already know* in a programming language not equipped with the same constructs.
* As it stands, famine imposes a lot of trust in the user. I'm working to rectify this, but due to Javascript being untyped, much of famine will only be useful if the user already understands the concepts of famine's data types. If you're unfamiliar with these types, or need to brush up on Functors/Applicatives/Monads, check out the Haskell typeclassopedia.
To use: Check out the Examples
folder for various usage of famine
.
Famine currently exports "the usual suspects" as data types, each implementing Functor, Applicative and Monad:
- Identity (The trivial Functor/Monad, also a Comonad)
- Maybe
- List
- Either
- Writer
- State
Famine also exports some common Monoids and 2-Tuples.
All data types lie in accordance with the Fantasy Land specification.
Update 1.0.0
- Function names moved to the Fantasy Land specification. Code written for famine < 1.0.0 will not be supported any longer!