Join Exercism’s Unison Track for access to 52 exercises with automatic analysis of your code and personal mentoring, all 100% free.
helloWorld : '{IO, Exception} ()
helloWorld = 'let
use Text ++
name = !console.getLine
printLine ("Hello " ++ name)
Get better at programming through fun, rewarding coding exercises that test your understanding of concepts with Exercism.
Determine if a number is an Armstrong number.
Find the color of candy in a bag which represents the majority element
Implement basic Stream operations with ability handlers.
A Unison definition is identified by a hash of its syntax tree. Your code is not just mutable text.
A Unison codebase is stored in an immutable, append only database.
Unison is a statically typed, general purpose functional programming language.
Describe entire distributed systems in one program. Easily communicate across network boundaries.
Capture effectful computations in Unison's type system with algebraic effects
Programming should be joyful. Our tooling and community is here to help.
Every language has its own way of doing things. Unison is no different. Our mentors will help you learn to think like a Unison developer and how to write idiomatic code in Unison. Once you've solved an exercise, submit it to our volunteer team, and they'll give you hints, ideas, and feedback on how to make it feel more like what you'd normally see in Unison - they'll help you discover the things you don't know that you don't know.
Learn more about mentoringThe Unison track on Exercism has 52 exercises to help you write better code. Discover new exercises as you progress and get engrossed in learning new concepts and improving the way you currently write.
See all Unison exercisesThe best part, it’s 100% free for everyone.