Ownership and Borrowing in D

Posted on

Nearly all non-trivial programs allocate and manage memory. Getting it right is becoming increasingly important, as programs get ever more complex and mistakes get ever more costly. The usual problems are: memory leaks (failure to free memory when no longer in use) double frees (freeing memory more than once) use-after-free (continuing to refer to memory … Continue reading Ownership and Borrowing in D

Read more...

DMD 2.087.0 Released

Posted on

The latest release of the Digital Mars D compiler (DMD) is now available. Version 2.087.0 marks 44 closed Bugzilla issues and 22 major changes courtesy of 63 contributors. See the changelog for the details and related links. Visit the Digital Mars Downloads page to get the release package for your platform(s). One of the changes … Continue reading DMD 2.087.0 Released

Read more...

Get Ready for Symmetry Autumn of Code 2019

Posted on

Last year, Symmetry Investments sponsored three programmers to work on projects in the D community. Two completed successfully. Francesco Gallà worked on adding support for HTTP/2 to vibe.d and got the grand prize of a bonus payment and a free trip to DConf 2019, where he gave a talk about the experience and his project. … Continue reading Get Ready for Symmetry Autumn of Code 2019

Read more...

Fuzzing Your D Application with LDC and AFL

Posted on

Fuzzing, or fuzz testing, is a powerful method to find hidden bugs in your application. The basic idea is to present random input to your application and monitor how it behaves. If it crashes or shows some other unusual behavior then you have found a bug. The use of true random input is not very … Continue reading Fuzzing Your D Application with LDC and AFL

Read more...

DConf T-Shirts and the Human Resource Fund

Posted on

I announced the Human Resource Fund back in April as part of an initiative we’re working on with companies using D in production. It was seeded by WekaIO. Now we need to see it grow. We always have an excess of t-shirts after DConf. Often, they are given away. This year, we intentionally ordered many … Continue reading DConf T-Shirts and the Human Resource Fund

Read more...

DConf 2019 Recap

Posted on

In late November of last year, Laeeth Isharc of Symmetry Investments expressed interest in hosting DConf 2019 in London. On a personal note, I had been looking for an excuse to get back to London since my brief visit at the end of the first Berlin DConf in 2016, so as my inbox filled with … Continue reading DConf 2019 Recap

Read more...

Revisions to the DIP Process

Posted on

At the AGM that was held prior to the Hackathon at DConf 2019 in London, I announced that I would be making revisions to the DIP progress aimed at shortening the length of time required to go from the Community  Review to a final verdict. I also, in response to Joseph Rushton Wakeling’s feedback about … Continue reading Revisions to the DIP Process

Read more...

Flexible Default Function Parameters via structs with Nullable Fields

Posted on

The problem Sometimes we need to combine an aggregate of a set of values with an aggregate of the corresponding set of default values to create a combined result. The result for each member is either the explicitly specified value or, where no value is specified, the default value. This is similar to default function … Continue reading Flexible Default Function Parameters via structs with Nullable Fields

Read more...

DStep 1.0.0

Posted on

DStep is a tool for automatically generating D bindings for C and Objective-C libraries. This is implemented by processing C or Objective-C header files and outputting D modules. DStep uses the Clang compiler as a library (libclang) to process the header files. Background The first version of DStep was released on the 7th of July, … Continue reading DStep 1.0.0

Read more...

Human Resources in the D Ecosystem (or Resources, Resources, Resources)

Posted on

There’s lots of work in the D ecosystem waiting for someone to complete it. This blog post introduces two initiatives, the Human Resource Share and the Human Resource Fund, aimed at making that happen!

Read more...