Join Exercism’s D Track for access to 69 exercises with automatic analysis of your code and personal mentoring, all 100% free.
module helloworld;
import std.format;
string hello(const char[] s = "World") {
return format("Hello, %s!", s);
}
Get better at programming through fun, rewarding coding exercises that test your understanding of concepts with Exercism.
To try and encourage more sales of different books from a popular 5 book series, a bookshop has decided to offer discounts of multiple-book purchases.
Determine if a number is perfect, abundant, or deficient based on Nicomachus' (60 - 120 CE) classification scheme for positive integers.
Implement run-length encoding and decoding.
Support for multiple programming paradigms, with strong metaprogramming capabilities.
D programs are compiled, leading to faster execution times than interpreted languages.
Functions tagged as @safe restrict them to a memory-safe subset of D.
Seamlessly embed C and C++ into your D projects, giving you access to millions of libraries.
Integrate D into C projects using the -betterC compilation flag.
Leave it enabled when it's needed, and disable it when it's not.
Every language has its own way of doing things. D is no different. Our mentors will help you learn to think like a D developer and how to write idiomatic code in D. 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 D - they'll help you discover the things you don't know that you don't know.
Learn more about mentoringThe D track on Exercism has 69 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 D exercisesThe best part, it’s 100% free for everyone.