Upcoming Events
Gen Con UK
8/28 - 8/31  

Penny Arcade Expo
8/29 - 8/31 @ Seattle, WA

Virtual Worlds Conference and Expo
9/3 - 9/4 @ Los Angeles, CA

Women In Games
9/10 - 9/12 @ Coventry, United Kingdom

More events...


Quick Stats
4909 people currently visiting GDNet.
2207 articles in the reference section.

Help us fight cancer!
Join SETI Team GDNet!



Link to us

  search:   

A Postmortem of Game Programming with Digital Mars’ D Programming Language



Contents
  Prologue
  Installing
  Getting work done
  My experiences
  Beginning work: Dir2
  DERELICT game library
  Various Notes on D
  Wrapup

  Source code
  Printable version
  Discuss this article

Wrapup

I really liked Digital Mars’ D Programming Language. There are some rough edges, but these are getting ground off as more people use the language. It felt easier to do what I want to do. I’m just learning it, but even with looking things up in the help, working in D felt good. When I wanted to write a function or move a block of code around, there was less boiler plate and fewer interruptions to getting the work done. The Computer Language Benchmarks Game puts D very close to C/C++ in performance, while most of the irritations which would drive people to Java/C# are removed. D is a simple clean language with all the features you’ve been dying to have. D is what C has always wanted to become and what C++ should have been from the start.

References

Installing

  • DMD.ZIP - The D Programming Language
  • DMC.ZIP - Digital Mars C (compiler backend)
  • BUD - A nice auto builder (Required by Derelict)
  • Derelict - OpenGL / SDL / * linkage wrapper library
  • SDL - Popular gaming library
  • CandyDoc - Documentation prettifier for D

Useful Sites

Other Tools Used

  • Textpad - My favorite text editor
  • Inkscape - A pretty cool vector graphics program
  • Windows XP Pro / Home
  • Wordpad / Word
  • Perforce - Free for the hobbyist. Use source control.
  • ExamDiff - Good for reviewing your changes.
  • Beyond Compare - Another diff tool. I use this at work and really like it.

My Source Files

  • Der - My game (in D)
  • Dir2 - My directory diff / sync tool (in D)
  • Upgraded D.SYN - Syntax file for Textpad, revised
  • Broken D macros - In-depth discussion of what macro should do.
Download the source file here.

About the Author

Jonathan has been programming since 1992. He saw a friend programming Hangman in GWBASIC, became addicted to the idea of global domination through control of computers, and hasn't stopped programming games yet. He has a BS-Computer Science from the University of Missouri - Rolla. Jonathan currently works for Volition writing video games for the Xbox 360. His interests include computers, computer programming, programming languages, game programming, computer games, space elevators and nursery rhymes. He is married and has 4 children who have a guinea pig.