QCon London 2007: Rich Kilmer on Ruby and the Art of DSL
March 16, 2007
Apart from the Mongrel one, this was the only Ruby talk I managed to attend — too bad, but at least it was a good one. Rich Kilmer showed multiple examples of internal DSLs he has built in Ruby, with a wide range of different domains. The first example, which he spent the most time on, was from a air force scenario — the domain was the rules for scheduling and managing the refueling of planes in the air. I think he made a good case for how his DSL, designed practically on the spot when talking to a domain expert, helped him understand the domain very quickly (and enabled him to solve the actual problem much quicker). One pretty cool example was the Java Debugging protocol: he has built a library for Ruby that enables access to a running JVM, and specified the protocol in a Ruby DSL which was then used to generate the code that actually sends the right packets over the net. Pretty neat — apparently, some Scheme folks used his executable definition to generate a protocol implementation for Scheme.
Another very good talk, and the last one for me.
About
This page contains a single entry from Stefan Tilkov's Random Stuff posted on March 16, 2007 6:50 PM. The previous post in this blog was QCon 2007: Mark Nottingham on the Web for Services at Yahoo!. The next post in this blog is QCon Summary. Many more can be found on the main index page or by looking through the archives.
