Unison 1.0
Recorded: Nov. 26, 2025, 1:03 a.m.
| Original | Summarized |
Announcing Unison 1.0 Unison Logo Unison Docs Libraries Cloud Blog Get regular updates from the Unison team Subscribe We won't send you spam. Unsubscribe at any time. Unison Discord Mastodon @unison Bluesky @unison-lang.org YouTube @unisonlanguage GitHub @unisonweb/unison Browse and host—public or private—libraries and projects on Unison Share Managed cloud platform for Unison services and batch jobs Unison 1.0 is here! We did it! Unison 1.0 marks a point where the language, distributed runtime, and developer workflow have stabilized. Over the past few years, we've refined the core language, optimized the programming workflow, built collaborative tooling, and created a deployment platform for your Unison apps and services. Get started with Unison 1.0 Collaborative tooling Streamlined tools for team workflows "Bring Your Own Cloud" Run our Cloud on any container-based infra Refined DX We've iterated on the high-friction parts of the dev experience Collaborative tooling Streamlined tools for team workflows "Bring Your Own Cloud" Run our Cloud on any container-based infra Refined DX We've iterated on the high-friction parts of the dev experience Runtime optimizations Vast improvements to our interpreter's speed and efficiency Distributed systems frameworks We provide the building blocks for scalable, fault-tolerant apps Unison Share A polished interface for browsing and discovering code Contributor ecosystem A growing community supporting the language and tooling Runtime optimizations Vast improvements to our interpreter's speed and efficiency Distributed systems frameworks We provide the building blocks for scalable, fault-tolerant apps Unison Share A polished interface for browsing and discovering code Contributor ecosystem A growing community supporting the language and tooling What is Unison? Unison is a programming language built around one big idea: let's identify a definition by its actual contents, not just by the human-friendly name that also referred to older versions of the definition. Our ecosystem leverages this core idea from the ground up. Some benefits: we never compile the same code twice; many versioning conflicts simply aren't; and we're able to build sophisticated self-deploying distributed systems within a single strongly-typed program. The Codebase Manager The Unison Codebase Manager (ucm) is a CLI tool used alongside your text editor to edit, rename, delete definitions; manage libraries; run your programs and test suites. ●●● factorial n = guessingGame = do Random.run do loop = do loop()
●●● scratch/main> Loading changes detected in ~/scratch.u. + factorial : Nat -> Nat Run `update` to apply these changes to your codebase.
UCM Desktop UCM Desktop is our GUI code browser for your local Unison Share Unison Share Unison Cloud Unison Cloud is ●●● deploy : '{IO, Exception} URI What does Unison code look like? Here's a Unison program that prompts the user to guess a random number from the command line. Abilities - for functional effect management Syntax overview ●●● guessingGame : '{IO, Exception} () loop = do loop() Our road to 1.0 The major milestones from 🥚 to 🐣 and 🐥. Feb 2018 The Unison triumvirate unites! Paul, Rúnar, and Arya found a public benefit corporation in Boston. Aug 2019 Unison calls for alpha testers for the first official release of the Unison language. Sep 2019 The tech world gets an intro to Unison at the storied Strangeloop conference. Watch video Apr 2021 Switched from git-style, filesystem-based database to new SQLite format for 100x codebase size reduction. GitHub issue Jul 2021 Unison's code hosting platform released. People start pushing and pulling code from their remote codebases. Unison Share Jun 2022 Our first community conference is an online affair featuring topics from CRDTs to the Cloud. Watch videos Aug 2022 The first appearance of the red-squiggly line for Unison appears in text editors. Read post Jun 2023 We added the ability to segment your codebase into discrete projects, with branches for different work-streams. Read post Oct 2023 Since their introduction, Unison's exhaustiveness and kind-checking features have prevented us from many headaches. Nov 2023 We added the ability to make pull-requests to Unison Share. Unison OSS maintainers rejoice. Read post Nov 2023 OrderedTable is a typed transactional storage API on the Cloud. It's built atop other storage primitives; proving that storage can be compositional. Unison Share Feb 2024 After much alpha testing, we release the Unison Cloud to the general public! Folks deploy hello-world in a few commands. Unison Cloud May 2024 🫶 Unison Share belongs to us all. Read post Jul 2024 Long-running services (daemons) were added as a new Cloud feature. Unison Share Aug 2024 Discover projects, terms, and types across the entire ecosystem in a few keystrokes. Read post Sep 2024 Our second online conference showcases Unison on the web and more! Watch videos Jan 2025 UCM Desktop offers visibility into your codebase structure with a rich, interactive UI. Read docs Mar 2025 We ship a high scale streaming framework with exactly-once processing and seamless, pain-free ops. Users write distributed stream transformations in an easy, declarative API. Jun 2025 The UCM compiler team delivers on an extended effort of improving Unison's runtime. Read post Aug 2025 Our MCP server supports AI coding agents in typechecking code, browsing docs, and inspecting dependencies. Oct 2025 We launched Unison Cloud BYOC - Unison Cloud can run on your own infrastructure anywhere you can launch containers. Oct 2025 We added a git-style code diff integration. View PRs and merges in a familiar format. Watch video Nov 2025 Annotate your branch history with helpful descriptions for yourself or collaborators. Watch video Nov 2025 A stable release with a rich feature set for getting things done. Get started with 1.0 2018 Metrics Our momentum is powered by a prolific team and a remarkable community. 26,558+ 3,490+ 6.2k 152,459 139,811+ 1,300+ Whats next? We're continuing to improve the core Unison language and tooling for a more streamlined and delightful development experience, as well as developing exciting new capabilities on top of Unison Cloud. Here are a few examples on our immediate horizon: C FFI support Follow our roadmap Join us today Unison couldn't be made without our amazing community. Join us and help shape the future of Unison. Join the community Share on Bluesky Share on Twitter/X Share on Mastodon Get started coding Use Unison at your org? Frequently asked questions Why make a whole new programming language? Couldn't you add Unison's features to another language? Unison's hash-based, database-backed representation changes how code is identified, versioned, and shared. As a consequence, the workflow, toolchain, and deployment model are not add-ons; they emerge naturally from the language's design. In theory, you could try to retrofit these ideas onto another language, but doing so might be fragile, difficult to make reliable in production, and would likely require rewriting major parts of the existing tooling while restricting language features. Is anyone using Unison in prod? Yes, we are! Our entire Cloud orchestration layer is written entirely in Unison, and it has powered Unison Cloud from day one. I'm concerned about vendor lock-in; do I have to use Unison Cloud to deploy my services? No, Unison is an open source, general programming language, and you can export a compiled binary and deploy it via Docker, or however you prefer. What does collaborating look like in Unison? Unison Share supports organizations, tickets, code contributions (pull requests), code review, and more. How does version control work in the absence of Git? Unison implements a native version control system: with projects, branches, clone, push, pull, merge, etc. Do I have to use a specific IDE? No, you can pick any IDE that you're familiar with. Unison exposes an LSP server and many community members have contributed their own editor setups here. What about interop with other languages? Work is underway today to add a C FFI! Without files, how do I see my codebase? Your codebase structure is viewable via the Unison Codebase Manager CLI with commands like ls and view, or with the Unison Desktop app GUI. The UCM Desktop app also features click-through to definition tooling and rich rendering of docs. © 2025 and |
Unison 1.0 represents a significant milestone for the Unison language and its ecosystem, driven by a talented team and a growing community. This release focuses on stabilizing the core language, deploying a managed cloud platform, and providing tools for collaborative development. Unison’s innovative approach centers around a database-backed codebase, shifting away from traditional file-based systems and offering unique advantages in version control, sharing, and deployment. The Unison ecosystem is built around several key components. Firstly, the language itself is designed around a hash-based, database-backed representation of code, fundamentally changing how code is identified and managed. This is intricately coupled with a dedicated runtime, optimized for speed and efficiency. Secondly, Unison provides a managed cloud platform, Unison Cloud, allowing for the deployment of applications and services with a simplified API. This “Bring Your Own Cloud” capability enables users to deploy Unison applications on their existing container-based infrastructure. Further enhancing developer productivity is Unison Share, a community hub for hosting and discovering open-source and closed-source projects. Unison Share leverages the central codebase to create a highly navigable and interconnected ecosystem. The Unison Codebase Manager (ucm) is a crucial CLI tool, working alongside text editors, for editing, renaming, and managing definitions and libraries. Crucially, Unison utilizes a dedicated runtime, built for high performance and optimized for handling the unique characteristics of the hash-based codebase. The system’s distributed frameworks are designed to facilitate scalable and fault-tolerant applications. The team has invested heavily in optimizing the interpreter to enhance speed and efficiency. Significant efforts have been made to improve the core language, streamline the development workflow, and build collaborative tooling. The release incorporates improvements to reduce friction in the development experience and facilitate team collaboration. The journey to 1.0 has been marked by key milestones, starting with the founding of Unison Computing in 2018 and culminating in the release of Unison 1.0 in November 2025. Early iterations leveraged SQLite for codebases, significantly reducing size and implementing features such as branch history comments. The support of kind-checking and exhaustiveness features have been developed, preventing numerous headaches. A growing contributor community has supported developments, including Unison Share's first deployment, the launch of Unison ForAll, significant improvements to the UCM tool, and the addition of C FFI support. Looking ahead, Unison’s roadmap includes further improvements to the language, introducing features like improved record types and enhanced library management, coupled with increased data sync speeds and supporting agentic computing frameworks. The development team is actively working on enabling interoperability with other languages and exploring new capabilities on Unison Cloud, including observability and integration with services like Kinesis integrated with S3. The ongoing development reflects the commitment to a more streamlined and delightful development experience—and Unison’s vision for the future of programming. |