A pure function is a function that only relies on its inputs, and always returns the same output given the same input.
A function that causes a change somewhere outside the function has triggered a side effect, and is no longer pure.
How do you survive in this environment? Test, test, test!
$ yarn global add purescript pulp purescript-psa pscid
Add some scripts to your package.json:
Add a Webpack config:
Import PureScript!
Run a side effect!
src/Main.purs:
src/Main.js:
src/Components/Index.js:
With purescript-vue:
With purescript-express:
With purescript-d3:
Yep, that's PureScript!
.. is an alias for >>= (monad bind)