The Riverbed Blog (testing)

A blog in search of a tagline

D programming language showcased at Riverbed

Posted by bobegilbert on May 6, 2011

Riverbed Engineering had a special technical guest speaker this Tuesday:  Andrei Alexandrescu, a widely recognized computer language expert.  Andrei coined the colloquial term “modern C++ design”, which is used today to describe a collection of important C++ language styles and idioms.  Andrei wrote an eponymous book on these methods, “Modern C++ Design” (Addison-Wesley, 2001), which made them famous to the programming world. 

His talk covered his current project: the D programming language [], where he acts has a second-in-command to Walter Bright (the D language inventor and initial implementer) and an expert member of the growing D programming community. 

Although he was peppered with questions throughout, we did manage to let him get through an overview of the language.  His talk started with the prototypical “Hello, world” example found in C and C++ books, and then proceeded to show how they are terrible examples:  they ignore error codes and let failures proceed without any warning, or don’t meet the specification for the language.  He contrasted that to the D example – in the same lines of code, the D “Hello, correctness!” program was used to illustrate how the D exception, type, and memory management system allows classes of D programs to not only be more easily written correctly, but to even be proven­ correct.

Because we kept asking him questions (we’re big on error checking here, hence a lot of questions on what correctness really means), we only let him get partway through his next topic:  generic programming.  Andrei’s “Modern C++ Design” book is famous because of the novel uses it illustrated for the C++ generic programming facility, templates.  C++ templates are both loved and hated:  they form the backbone of the C++ standard library, but when you use them, you occasionally feel like you’re having a heated argument with the compiler.  A lot has been learned in the language world since C++ templates were first designed, and that experience clearly made its way into D generics facility.

We ran out of time far too soon.  The focus for D, as Andrei concluded, is to make a systems level language that is usable and fast for large teams of programmers working together.  It should deliver functionality that makes it easy to write correct programs, but still let you drop to C’s tried-and-true low overhead when you need the speed.

Thanks to Al Landrum for covering this awesome event!



One Response to “D programming language showcased at Riverbed”

  1. Thanks very much for having me!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: