A Postmortem of Game Programming with Digital Mars’ D Programming Language
PrologueOne thing I find very interesting is different computer languages, their development and their differences. I spend most of my time in C++, but the little exposure I’ve had to LISP or to other languages always leaves me wishing that C’s macros were cleaner, or that C++ had a way to implement a nice multi-variable for-each. This past month I’ve been on vacation and since my wife would be bringing her laptop, since I didn’t feel like bringing the MSVC++ CDs or backing up my projects directory, and since I didn’t really have any current project I wanted to work on, I decided to break out Digital Mars’ D Programming Language and try to learn it. I had read through some of the first pages of Digital Mars’ D’s documentation and propaganda, but I had never taken the time to actually work with the language. After a few weeks of fiddling with it when not at the pool, I have to say I really like the language. Two major design philosophies that I feel when working in D are: 1) Things that you do a lot should be simple and 2) A language should be clean, simple and consistent. This diary is about the specific joys and difficulties of working with D. D is billed as a ground up rewrite of C – a new version of a good language, or everything that C++ wishes it could be but never will be. Complaint #0: “D” is horrible to search for. “C++” is a distinct string. I ended up having to use “D Programming language” or “Digital Mars D” every time I wanted results. Searching from within DigitalMars.com and then forcing Google to use the within domain and the “-archive” flag helped when I wanted language specific answers. |
|