Unison

Data & Analytics

A Programming Language That Makes Distributed Computing, Refactoring, and Dependency Management Fundamentally Simpler

Story

Archaic Code Storage and Management

Software development has changed dramatically over the past two decades, but the fundamental way code is stored and managed has remained largely the same — code lives in text files, gets compiled into builds, and is referenced by name across a patchwork of dependencies that frequently conflict with each other. As software systems have grown more complex and distributed computing has become the norm, the limitations of this approach have become increasingly painful. Deploying code across distributed systems requires writing repetitive serialization and network boundary code. Refactoring a codebase produces cascading type errors that make the process slow and error-prone. Dependency management is a constant source of conflicts, broken builds, and version mismatches. These are problems that every software team deals with on every project, and they represent a significant amount of wasted engineering time.

Unison: A Programming Language That Makes Distributed Computing, Refactoring, and Dependency Management Simpler

Unison is a statically-typed, functional programming language that takes a fundamentally different approach to how code is stored and executed. Rather than storing code as text files that get parsed and compiled, Unison stores code in a structured database and references every definition by its content hash rather than its name. This single architectural decision eliminates many problems: dependency conflicts disappear, builds become unnecessary, and renames are instant and never break anything. For distributed computing, Unison's ability system lets developers simply say where they want a computation to run and it happens automatically — no serialization code or manual deployment of dependencies. Refactoring sessions are structured and guided which means the codebase remains live and type-correct throughout the process rather than producing a long list of errors. Unison also offers a managed cloud platform for running Unison services and a shared library repository for the community.

Why We Invested

We invested in Unison because they are rethinking programming from first principles in a way that addresses problems that every developer experiences but that no existing language has solved. The insight that storing code as a content-addressed database rather than text files unlocks improvements across distributed computing, dependency management, refactoring, and tooling. Unison is a public benefit corporation with a strong community, an active open source presence, and a growing ecosystem of libraries and contributors. The managed cloud platform provides a commercial foundation, and as distributed computing becomes more important, the case for a language purpose-built for that environment becomes stronger.