A Pattern for Head-mutable Structures

When Andrei Alexandrescu introduced ranges to the D programming language, the gap between built-in and user-defined types (UDTs) narrowed, enabling new abstractions and greater composability. Even today, though, UDTs are still second-class citizens in D. One example of this is support for head mutability—the ability to manipulate a reference without changing the referenced value(s). This… Continue reading A Pattern for Head-mutable Structures

std.variant Is Everything Cool About D

I recently read a great article by Matt Kline on how std::visit is everything wrong with modern C++. I was dubious that std::visit could be much harder to use than std.variant.visit, if at all. For the record, my intuition was completely and utterly wrong.

Categorized as Code, Phobos

Testing In The D Standard Library

Jack Stouffer is a member of the Phobos team and a contributor to dlang.org. You can check out more of his writing on his blog. In the D standard library, colloquially named Phobos, we take a multi-pronged approach to testing and code review. Currently, there are five different services any addition has to go through:… Continue reading Testing In The D Standard Library

Big Performance Improvement for std.regex

Dmitry Olshansky has been a frequent contributor to the D programming language. Perhaps his best known work is his overhaul of the std.regex module, which he architected as part of Google Summer of Code 2011. In this post, he describes an algorithmic optimization he implemented this past summer that resulted in a big performance win.… Continue reading Big Performance Improvement for std.regex

GSoC Report: std.experimental.xml

Lodovico Giaretta is currently pursuing a Bachelor Degree in Computer Science at the University of Trento, Italy. He participated in Google Summer of Code 2016, working on a new XML module for D’s standard library, Phobos. I started coding in high school with Pascal. I immediately fell in love with programming, so I started studying… Continue reading GSoC Report: std.experimental.xml

Find Was Too Damn Slow, So We Fixed It

This is a guest post from Andreas Zwinkau, a problem solving thinker, working as a doctoral researcher at the IPD Snelting within the InvasIC project on compiler and language perfection. He manages and teaches students at the KIT. With a beautiful wife and two jolly kids, he lives in Karlsruhe, Germany. Please throw this hat… Continue reading Find Was Too Damn Slow, So We Fixed It