Purescript: Haskell + Javascript


Elm is a great language, as we cover in our Elm Series. It has great, intuitive primitives for building a web UI. But it lacks a lot of important features that we as Haskell developers are used to, most notably typeclasses.

Purescript offers another alternative in the realm of functional "javascript-like" languages. Its feature set more closely resembles that of Haskell. In this series we'll explore Purescript, from the absolute basics of the language to building full web UI's.

Part 1: Basics of Purescript

Part 1 gives a basic introduction to the Purescript language. We'll learn about installation procedurs and basic syntax. We'll also solve some simple problems with the language.

Part 2: Typeclasses and Monads

In part 2 we explore some of the finer elements of Purescript. We'll explore similarities and differences between Purescript and Haskell when it comes to things like typeclasses and monads.

Part 3: Simple UI's

We'll finally get around to building some UI elements in part 3 of the series. We'll build a couple basic web pages with the Halogen library, which mimics elements of React.js.

Part 4: Web Requests and Navigation

In the final part of this series, we'll add a couple more important pieces to our knowledge of Purescript web applications. We'll see how to send HTTP requests from our app and interpret the responses. We'll also learn how to set up a router so we can navigate to different pages.