GSoC/GCI Archive
Google Summer of Code 2012

Digital Mars

Web Page:

Mailing List:

We are working on the D programming language and its ecosystem (such as libraries, tools, and frameworks). The thrust of our work is threefold: 1. Improving the compiler (fixing bugs, improving performance of the generated code, improving the performance of the compilier itself, and occasionally implementing new features). 2. Improving the D standard library (mostly adding new modules, but also fixing bugs and improving existing code). 3. Improving the D core runtime (such as the garbage collector, the core types, reflection, and such). We are interested in getting help in any or all of these areas; there is plenty of interesting work in each.


  • Extended unicode support Make complex Unicode stuff a piece of cake in the D programming language. Major points are: normalization; faster and always up to date implementation of common isXXX character properties; a proper case insensitive comparators for strings; grapheme clusters. Possible extras: support for legacy encodings, generic mutli-level lookup tables, i.e. Trie for std.container.
  • Mono-D A "D" language binding addin for the MonoDevelop IDE
  • Removing the global gc lock from common allocations in D. "I want to make the memory allocator of D fast for threaded loads." Right now, allocating memory in D starts with grabbing a global lock. This is a major performance roadblock. I want to make it go away.