Welcome to D

Welcome to the interactive tour of the D Programming language.

The tour gives an overview of this powerful and expressive language which compiles directly to efficient, native machine code.

What is D?

D is the culmination of decades of experience implementing compilers for many diverse languages and has a unique set of features:

  • high level constructs for great modeling power
  • high performance, compiled language
  • static typing
  • direct interface to the operating system API's and hardware
  • blazingly fast compile-times
  • memory-safe subset (SafeD)
  • maintainable, easy to understand code
  • gradual learning curve (C-like syntax, similar to Java and others)
  • compatible with C application binary interface
  • limited compatibility with C++ application binary interface
  • multi-paradigm (imperative, structured, object oriented, generic, functional programming purity, and even assembly)
  • built-in error detection (contracts, unittests)

... and many more features.

About the tour

Each section comes with a source code example that can be modified and used to experiment with D's language features. Click the run button (or Ctrl-enter) to compile and run it.

To navigate this tour, either use the "< previous" and "next >" links at the bottom (or left and right arrow keys), or else go straight to particular sections using the menus at the top.

Contributing

This tour is open source and we welcome pull requests making this tour even better.

rdmd playground.d