next-generation programming platform, currently in development
help fund the project

Twitter . GitHub . RSS

Starting a company based around Unison

Exciting news everyone! I am going to be starting a company based around Unison. What form that company takes is still somewhat TBD, but the idea is to have a sustainable business that can fund at least a core group of developers to further build out and improve upon Unison. If you’re reading this and are interested in partnering up to help build something revolutionary, check out the official job posting at

full post

Bugfixes, safer abstract binding trees, and a typechecker rewrite

Haven’t posted in a while. I’ve been working on squashing bugs in the editor and trying to get it to a less embarassing state before posting it online for folks to try. (Though the brave can try it now just by building the project yourself! See the GitHub page for instructions.)

full post

Creating lambdas in the editor, calling higher-order functions

I’ve been doing some more work on the editor again. Here’s a video showing a call to map:

full post

Easy snapshot isolation and PCBT merges

This post has some notes on how to implement database inserts and deletes for the indexing data structure discussed in the last post, the Prioritized Critical Bit Tree (PCBT).

full post

How laziness brings good query performance without an insane black box optimizer

I did a writeup of the Unison persistent data API last time. After writing that I was feeling inspired and decided to do some implementation work to convince myself the API was implementable and could be made efficient. A lot has come out of that, and this is a writeup. This post has three parts:

full post