InfoQ

Presentation

   Good News: We have re-worked our video infrastructure to provide more reliable service. Please email bugs at infoq.com with any problems.

Recorded at:
Recorded at

Introduction to Domain Specific Languages

Posted by Martin Fowler on Oct 31, 2006 09:22 AM

Community
.NET,
Ruby,
Java
Topics
Domain Specific Languages
Tags
JAOO Conference,
ThoughtWorks,
Languages
Summary
Domain Specific Languages (DSLs) are limited forms of computer language designed for a specific class of problems. In this JAOO conference talk, Martin Fowler introduces a simple example of DSL, bringing out the difference between external and internal DSLs, and talking through the trade-offs in using both forms. The talk is based on Martin's language workbench article on martinfowler.com.

Bio
Martin Fowler is one of our industry's most well known thought leaders having had an influence in the adoption of OO, refactoring, patterns, agile methodologies, domain modeling, UML, and XP. Martin is Chief Scientist at ThoughtWorks, and writes regularly at www.martinfowler.com.

8 comments

Reply

Smalltalk and DSLs by Carl Gundel Posted Nov 6, 2006 4:20 PM
use youtube instead by amir nagri Posted Dec 4, 2006 1:11 AM
Re: use youtube instead by Thomas Otten Posted Dec 14, 2006 11:41 PM
Re: use youtube instead by koen maes Posted Sep 24, 2007 1:40 PM
DSL or not by Jonas Ekstrom Posted Dec 19, 2006 7:36 AM
Choppy streaming by Johan Tibell Posted Jan 1, 2007 8:25 AM
Re: Choppy streaming by Jason Kikel Posted Feb 1, 2007 11:52 AM
Streaming the video problem by Jure Srsen Posted Feb 7, 2008 1:25 PM
  1. Back to top

    Smalltalk and DSLs

    Nov 6, 2006 4:20 PM by Carl Gundel

    Mr. Fowler rightly mentioned Lisp as a language for creating DSLs, but I was surprised that he did not mention Smalltalk. Those interested in DSLs certainly owe it to themselves to take a close look at Smalltalk.

  2. Back to top

    use youtube instead

    Dec 4, 2006 1:11 AM by amir nagri

    your content streaming system sucks, kindly use youtube/google videos or other free streaming systems PLEASE ...

  3. Back to top

    Re: use youtube instead

    Dec 14, 2006 11:41 PM by Thomas Otten

    Why YouTube? I only hear a voice and see a black screen :( So, i wouldn't say that the system sucks, it just protects the content very well :)

  4. Back to top

    DSL or not

    Dec 19, 2006 7:36 AM by Jonas Ekstrom

    Let's say the problem domain is specific to process patterns. Is it better to use a well known language (such as C#) together with a domain specific framework (such as CCR) to solve a problem, or should one use a DSL (such as BPEL)?

  5. Back to top

    Choppy streaming

    Jan 1, 2007 8:25 AM by Johan Tibell

    The feed is simply unwatchable for me. I get about 20 seconds or so of content before it needs to rebuffer. Please use youtube or something instead.

  6. Back to top

    Re: Choppy streaming

    Feb 1, 2007 11:52 AM by Jason Kikel

    What browser are you using? I've never seen an issue with Firefox 2.0.0.1

  7. Back to top

    Re: use youtube instead

    Sep 24, 2007 1:40 PM by koen maes

    streaming this vid is indeed total horror...

  8. Back to top

    Streaming the video problem

    Feb 7, 2008 1:25 PM by Jure Srsen

    I like it, but sometimes video just doesn't start. It does so after a few refreshes. And yes... I DO use Firefox 2x Nice presentation though :) Hoornet http://www.scarlet-studio.net

Exclusive Content

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.

Fine Grained Versioning with ClickOnce

David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.

Implementing Manual Activities in Windows Workflow

Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.

Markus Voelter about Software Architecture Documentation

In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.

Voca, UK's largest payment processing engine running Spring

William Soo and Meeraj Kunnumpurath discuss the Voca transaction processing system, architectural challenges and requirements, Voca's Spring/J2EE architecture, and the future SEPA architecture.

Patterns for securing architectures

Security is about trade-offs. Only a few have the expertise to design good security. This talk focuses on Security Patterns, such as Role-based Access Control, Single Access Point, and Front Door.