This Week in D February 15, 2015

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.

Last week's issue was cancelled due to the editor taking a sick day. This issue of This Week in D will cover major events from the preceding two weeks.


In the community

DConf 2015

Early bird registration is open! For $250 in 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 month! If you have something to say about D at the conference, please submit soon!

A second call for proposals has been issued, let's make it a great conference together.

Hope to see you there!

Community announcements

See more at digitalmars.D.announce.

Significant Forum Discussions

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

Tip of the week

Don't use the ~ operator in a call to writeln. Instead, pass the arguments separately:

	writeln("hello " ~ yourname); // don't do this

	writeln("hello ", yourname); // instead, do this.

The ~ operator (not to be confused with the ~= operator, which works differently) allocates an intermediate to hold the concatenated result. This is often very convenient, but also somewhat wasteful. writeln offers an alternative with more convenience and efficiency: its variadic argument list.

writeln (and similar functions like writefln, std.conv.text, and std.string.format) can take any number of arguments of any type. It will convert them to string automatically and write them out, generating a minimal number of intermediates. With most arguments, writeln will not allocate at all.

Simply changing your ~ to , in writeln calls can make your code more efficient at small cost.

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: