This Week in D

Welcome to This Week in D! Each week, we'll summarize what's been going on in the D community and write brief advice columns to help you get the most out of the D Programming Language. The D Programming Language is a general purpose programming language that offers modern convenience, modeling power, and native efficiency with a familiar C-style syntax. This Week in D has an RSS feed. This Week in D is edited by Adam D. Ruppe. Contact me with any questions, comments, or contributions. Missed last week's issue? Find it here or use the RSS feed as an archive.

Statistics

Major Changes

DDMD just went green on all platforms for the first time. ddmd is a port of the dmd compiler from C++ to D. The port now passes automated testing. With this, D is likely to be fully bootstrapped into self-hosting very soon.

DIP25 was implemented. It adds a feature called return ref to function parameters, signifying that it takes a reference that may be returned from the function. This helps prevent reference escaping from sealed objects.

dmd 2.067 beta has been released.

In the community

DConf 2015

Early bird registration is open until the end of this week! For $250 in ($B February only), you can register to attend DConf 2015 which will be held May 27-29 at Utah Valley University in Orem, Utah, in the United States.

The talk submission deadline is this Saturday! If you have something to say about D at the conference, please submit ASAP!

Hope to see you there!

Community announcements

See more at digitalmars.D.announce.

Significant Forum Discussions

Apple's transition away from GC prompted a discussion on garbage collection vs reference counting. D got a new feature to help implement sealed references.

There was also a discussion on using exceptions with the @nogc annotation which was inconclusive, though refcounting came up again as well as preallocated exceptions.

See more at forum.dlang.org and keep up with community blogs at Planet D.

Tip of the week

When installing dmd, you may use premade packages or a generic zip download. Despite only showing the Ubuntu, Debian, Fedora, CentOS, and openSUSE logos, the Linux zip is fairly generic and works on most distros. I use it, for example, on Slackware Linux.

Installing the packages tends to do a full installation to system locations, but using the zip is done most easily in-place. That is, you simply unzip it and run the programs directly out of there without trying to copy or move the files to other folders.

You might make a script in your PATH that forwards the command to a zip location. Then, using a new version of dmd is as simple as unzipping the new version to the same place where you unzipped the old one.

If you'd like to submit a tip, email me.

Upcoming events

Learn more about D

To learn more about D and what's happening in D: