-
Notifications
You must be signed in to change notification settings - Fork 62
I chose the D programming language because it fulfilled my requirements for a systems language very well, while also providing the convenience of a powerful template engine and a modern build system. What I wanted was largely a "better C++", and I've found that D fulfills that role very well. I touched on more reasons behind this choice in my presentation at DConf 2013. I should also mention that Higgs is not entirely written in D. Some parts, such as the runtime library, are written in extended JavaScript.
Basic block versioning is a technique used by the Higgs backend to specialize code on-the-fly by generating multiple type-specialized versions of basic blocks. It is described in detail in this paper and summarized in Maxime's Strange Loop 2013 talk.
Higgs is the successor to another compiler I had named Tachyon. I decided to follow the particle theme and go with Higgs, like the Higgs boson. It sounded just cool enough.