Phil Freeman

Full-stack developer working with functional programming languages, living in Los Angeles, CA. I enjoy applying the techniques of pure functional programming to real-world problems.


PureScript Compiler

I am the original designer of the PureScript programming language and compiler. I implemented many of the compiler features and core libraries, and continue to work on new features.

PureScript By Example

I wrote this book as an introduction to functional programming for Javascript developers. It covers many core FP concepts, providing real-world examples as motivation, including callback-based programming, canvas graphics and DOM templating.


This teaching tool allows developers to step through the evaluation of a MicroKanren program, observing values as unifications happen, for debugging purposes.

24 Days of PureScript

I wrote this blog series to highlight some of the activity in the PureScript developer community.

Try PureScript!

This web application allows developers to try the PureScript programming language without installing the compiler. It compiles the user's code on the server, and executes it in an iframe.


Pursuit is a searchable database of PureScript library documentation. I implemented the original version of Pursuit, and continue to add features.


Personal Blog

Articles on Haskell, C#, type theory and functional programming can be found at my blog.

Upcoming Talks

LambdaConf 2015

Purely-Functional Web Apps using React and PureScript

React has popularized the idea of user interfaces as pure functions of application state, an approach which is perfectly suited for a language like PureScript. In this workshop, we'll learn how to use React and PureScript to create clean, well-factored web applications.

Previous Talks


PureScript and Type Classes

Type classes enable a style of programming in which we reason about correctness using laws and equational reasoning. In this talk, I will give an introduction to programming with type classes in PureScript, using real-world examples as motiviation.

LambdaConf 2014

Learn Front-End Programming with PureScript

I led a 90-minute workshop in which attendees learned to solve common problems in web programming using the PureScript programming language.

Strange Loop 2014

PureScript Unsession

I led an unsession at Strange Loop 2014, covering some of the major features in PureScript, and future directions for PureScript and AltJS more generally.

LA Haskell Meetup


I have given various Haskell talks at the Los Angeles and Santa Monica Haskell user groups, including talks on monad transformers, constraint programming, generic programming and parser combinators.

© Phil Freeman 2015