Join Exercism’s Crystal Track for access to 133 exercises grouped into 26 Crystal Concepts, with automatic analysis of your code and personal mentoring, all 100% free.
class HelloWorld
def self.hello(name = "World")
"Hello, #{name}!"
end
end
Get better at programming through fun, rewarding coding exercises that test your understanding of concepts with Exercism.
Given the size, return a square matrix of numbers in spiral order.
Given a knapsack that can only carry a certain weight, determine which items to put in the knapsack in order to maximize their combined value.
Translate RNA sequences into proteins.
Crystal's syntax is heavily inspired by Ruby, so it is natural to read and easy to write.
Crystal is statically type checked with built-in type inference, so type errors are caught early.
All types are non-nilable in Crystal, so the compiler checks for null references at compile time.
Crystal has built in concurrency primitives, called fibers, to achieve concurrency.
Crystal has dedicated syntax to easily call native libraries, increasing code re-use.
Crystal's answer to metaprogramming is a powerful macro system.
Every language has its own way of doing things. Crystal is no different. Our mentors will help you learn to think like a Crystal developer and how to write idiomatic code in Crystal. 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 Crystal - they'll help you discover the things you don't know that you don't know.
Learn more about mentoringThe Crystal track on Exercism has 26 concepts and 133 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 Crystal exercisesThe best part, it’s 100% free for everyone.