PureScript is small strongly, statically typed compile-to-JS language, inspired by (and written in) Haskell.
- #purescript on Twitter
- #purescript on Freenode
- PureScript Blog
- Try PureScript!
- Compiler Docs
- Getting Started
- Why PureScript?
- PureScript Overview
- Tutorials
- Functional Graphics with HTML 5 Canvas
- Property-Based Testing with QuickCheck
- Declarative UIs with
reactive-jquery
Install the Haskell Platform:
apt-get install haskell-platform
Install purescript
from Hackage:
cabal install purescript
Ensure the compiler works:
psc
Try the interactive mode:
psci
Clone the starter kit project and follow the instructions in the README file:
git clone git@github.com:purescript/starter-kit.git
If you can't install via Hackage for any reason, you can follow along by using the Try PureScript! website or use a pre-prepared Vagrant box.
- Universal
- Libraries
- Functions
- Grunt / Gulp
- Bower
- Browserify
- NPM
JavaScript is ...
- Verbose
- Callback Hell
- Classes / Inheritance
- Type System
- Generate simple readable efficient Javascript
- A simple, hackable core language with a minimal feature set
- Use the simple parts of Haskell
- Trade-off between a theoretical ideal and generating high performance code
- TypeScript
- Fay, GHCJS, Haste
- Elm, Roy
- End-to-end Javascript application development
- Functional application logic, JS interface to the real world via FFI
- Server-side or client-side Javascript
- Async
- Reactive UI
- FRP w/ websockets
- DSLs
- Parsing
- Type Inference
- An expressive type system
- Extensible records
- Extensible effects
- Type classes
- Rank N Types
- Pattern matching
- Simple FFI
- Type safe support for mutation