In this talk Glenn Vanderburg discusses what the Ruby community has learned about building DSLs, and shows how to build state-of-the-art DSLs without going overboard.
RiCal is an implementation of RFC2445, better known as the iCalendar format. We talked to its creator Rick DeNatale to learn why Ruby needed a new library for parsing and generating the iCalendar format.
After many years in development, Intentional Software has finally released their Intentional Domain Workbench (IDW). JetBrains has open sourced their Meta Programming System (MPS), currently in Beta 2.
In this article Vaughn Vernon explains the difference between internal and external DSLs and shows the steps involved in developing a complex external DSL.
In this panel recorded during OOPSLA 2008, the panelists, Jeff Gray (moderator), Kathleen Fisher, Charles Consel, Gabor Karsai, Marjan Mernik, Juha-Pekka Tolvanen, talk about the benefits and drawbacks of using DSLs.
MountainWest RubyConf took place from 13-14 March in Salt Lake City. All talks are available from Confreaks; we picked some interesting ones – Rails 3 and Merb, DSL design, usability on Rails, Vertebra – and give a coarse summary and some pointers into the talks.
Did you know the last 15 regular expressions are cached? Or that the .NET engine uses a form of machine code? You can learn this and more from Jeff Moser's in-depth study of how regular expressions work in .NET.
In this presentation recoded during QCon London 2008, Magnus Christerson discusses about the importance of using DSLs which allow business experts to freely express their knowledge about their domain using familiar tools. Henk Kolk presents a concrete example addressing pension fund issues and based on a DSL.
This article introduces RGen, a modeling framework inspired by openArchitectureWare and technologies like the Eclipse's EMF. RGen uses internal DSLs for defining metamodels and offers a full modeling stack for Ruby.
In this article, Andreas Kaltenbach explains how Model-Driven Software Development (MSDS) can help solving backward compatibility problems when creating a newer version of a software which can mean a new API or a new database schema that old clients cannot use. MSDS is used to negotiate the differences between versions to ease the upgrading process.
In this interview filmed at QCon SF 2008, Lennart Augustsson talks about writing DSLs in Haskell, presenting the advantages offered by the language. In that context, he talks about embedded DSLs, static and dynamic languages, syntax and semantics, monads and many other related topics.
This article proposes a new Message Type Architecture to help manage the message formats in a SOA. The approach based on two related DSLs, one for the Enterprise Data Model and one for the Message Types, promotes reuse and helps aligning the Data and SOA governance processes.
In this presentation filmed during OOPSLA 2008, Janos Sztipanovits attempts to tackle the complexity of large scale systems integration. Software, systems and control engineering converge in such systems, raising the integration challenges and demanding a new approach to model-based design.
In this presentation filmed during QCon London 2008, Markus Voelter tried to convince the audience that writing a textual external DSL is fairly straightforward and simple. He took them through the steps needed to create a textual DSL from defining the grammar to processing a domain model.
In this interview recorded at RubyFringe, Jay Phillips talks about VoIP, Asterisk and how his framework Adhearsion makes it easy to write voice applications.