Dynamic languages are becoming more popular than ever. Static runtimes (static type system is baked into the machine) like the CLR do not natively support languages that have no requirement for explicit types. Implementing languages of this class on the
CLR is a rather complicated and arduous task. Some very clever folks like Program Manager, RubyCLR creator and IronRuby team member
and Senior Software Developer
(creator of the LOLCode
programming language implementation that runs on the DLR, but more importantly one of the devs who writes the DLR) are on the team that makes implementing dynamic languages that can run on top of the CLR not only possible but easier than one might expect.
This is made possible with a new managed virtual machine called the
Dynamic Language Runtime
). The DLR runs on top of the CLR, but you can think of the DLR as it's own managed runtime (or virtual machine). For this interview, it is assumed that you
have working knowledge of what the CLR does.
This interview focuses deeply on one core question: How does the DLR work
. Of course, we talk about the history and future of the DLR, but primarily we find out about DLR nuts and bolts and architecure.
This interview is whiteboard heavy and compelling. It was really fun to chat with John and Martin and geek out on the DLR. It is a great technology with a very bright future.
Low res file here