A Whirlwind Tour of PureScript • Rob Howard • YOW! 2016

Explore PureScript, a Haskell-inspired functional language for JavaScript. Learn about type safety, pattern matching, FFI, and building maintainable web apps with Pux.

Key takeaways
  • PureScript is a strictly evaluated, strongly typed functional language inspired by Haskell that compiles to JavaScript

  • Key language features include:

    • Row types for flexible record typing
    • FFI (Foreign Function Interface) for easy JavaScript interop
    • Effect tracking through the Eff type
    • Pattern matching
    • Type aliases and type safety
  • The Pux framework provides UI architecture similar to Elm:

    • State management through pure update functions
    • Actions trigger state changes
    • Views are pure functions of state
    • Supports side effects through Eff
  • Development workflow uses:

    • Bower for package management
    • CommonJS modules for JavaScript integration
    • PSCI for REPL development
    • Property-based testing through QuickCheck
  • PureScript emphasizes:

    • Pure functions without side effects
    • Composition of functions
    • Strong type safety
    • JavaScript interoperability
    • Partial functions must be explicitly marked
  • Learning resources available:

    • PureScript book (free online)
    • Documentation site with tutorials
    • Workshop materials
    • Example applications