> list

Introducing git-revise

(Aug. 6, 2019): Added the "What git-revise is not" section.

At Mozilla I often end up building my changes in a patch stack, and used git rebase -i1 to make changes to commits in response to review comments etc. Unfortunately, with a repository as large as mozilla-central2, git …

Fission Engineering Newsletter #1

TL;DR Fission is happening and our first "Milestone" is targeted at the end of February. Please file bugs related to fission and mark them as "Fission Milestone: ?" so we can triage them into the correct milestone.

A little than more a year ago, a serious security flaw affecting almost …

Partially Generated Classes in C++

An interesting problem which I've seen come up decently often in C++ code generators is how to deal with what I'm calling "partially generated classes". We want to generate methods and members for a class which call other methods on that class added by the implementation.

Potential Solutions

I'm not …

Cleaning up XPConnect

Recently I was working on some patches to clean up and improve the code in Gecko's XPConnect module. As they ended up being somewhat complex & required me obtaining a lot of information about how XPConnect works, I ended up writing some pretty in-depth commit messages.

I figured that they were …

"Wouldn't it be neat if you could write C++ inline in Rust?"

In June of 2015, I had an idea. At the time, I was obsessed with compilers, and what was possible to do at compile time. For one of the languages which I was working on, I got excited by the idea that I could have flawless C++ interop by embedding …

ClojureScript + Meteor

A few weeks ago, I released a plugin for Meteor, meteor-clojurescript. The goal of this plugin was to make developing with Meteor in ClojureScript as easy as with any of the other languages which Meteor supports. The plugin certainly isn't at that state yet, but it's getting closer.

Meteor has …