Scot ALT.NET Event – Glasgow 6th August
14 July, 2009 Leave a comment
From Fluent Interfaces to HORN, Domain Specific Languages are making an impact on the Alt.Net ecosystem. With the arrival of Oslo, Microsoft’s take on how to create Dsls, could they become part of most developes toolkits? In the second Scot Alt.Net we will have a look at two different techniques to creating a Dsl and will take place in Glasgow on 6th August 7pm, Dell Corporation Limited, City Park, 368 Alexandra Parade, Glasgow, G31 3AU.
Domain Specific Languages is a topic that is very ‘in’ with developer buzz word popularity. Boo is a statically typed OO language with a Python based syntax. It supports Macros, an open compiler pipeline and has specific features that were explicitly designed to make DSL building easier. This overview will walk through the creation of an English like grammar that can be used to configure business rules for an application and can be reused across other applications with differing rules.
It could be argued that the most valuable aspect of Microsoft’s ‘Oslo’ framework is the tooling it provides to create external DSLs. This talk will cover the basics of what is required to create and implement a DSL using Oslo. These steps will include (1) creating the grammar (2) parsing an input (3) deserializing the output to an object graph (3) generating code from the object graph. I will use my own Oslo DSL project bdUnit as an example.
About the Speakers
Paul Cowan has recently started his own business Cutting-Edge Solutions. He is a keen advocate of iterative development, test driven development, continuous integration and modern techniques. Paul is a regular committer to the horn open source project. He recently gave a presentation on horn at the DSL at Microsoft in Seattle. You can follow his blog here.
James Lynch is a Web Developer working for an Edinburgh based company Storm ID for the past year. He follows Agile and Kaizen principles as well as being interested in OSS and functional programming. A relative newcomer to development, bdUnit was James’ first personal project.