|
<<< Previous speaker
|
next speaker >>>
|
Chief Scientist Martin Fowler, ThoughtWorks
Martin Fowler is an author, speaker, consultant and general loud-mouth on software development.
He concentrates on designing enterprise software - looking at what makes a good design and what practices are needed to come up with good design. He has pioneered object-oriented technology, refactoring, patterns, agile methodologies, domain modeling, the Unified Modeling Language (UML), and Extreme Programming.
He's the Chief Scientist at ThoughtWorks - an international application development company, and has written five books on software development: Analysis Patterns, UML Distilled (now in its 3rd edition), Refactoring, Planning Extreme Programming (with Kent Beck), and Patterns of Enterprise Application Architecture. I also write articles regularly on my site at Martin Fowler.
|
Presentation: "Patterns of Internal DSLs"
Time:
Wednesday 14:40 - 15:30
Location:
Lille Sal
Abstract: For the past couple of years, I've been working on a book on Domain Specific Languages . In this talk I'm going to go through the patterns I've identified for internal DSLs. Many articles you read about internal DSLs seem to think that internal DSLs are just about Method Chaining, but I think that a good internal DSL uses a mix of different techniques. This talk will go through the way I've chunked up the internal DSL world into patterns and cover the things to think about when you are deciding which ones to use.
Workshop: "Domain Specific Languages"
Time:
Sunday 09:00 - 16:00
Location:
Kammermusik
Abstract:
Domain Specific Languages (DSLs) are an old technique in software
development that's getting a recent resurgence in interest. Most
developers run into them regularly - as XML
configuration files, regular expressions, query languages or build
scripts. However they haven't been given the attention they deserve and
there is very little information out there to help developers build them
effectively. We find that few people have done much to build their own
DSLs and even fewer have a broad appreciation of the various techniques
involved.
This tutorial is a step towards closing this gap. We'll begin by
introducing the three main categories of DSLs: External, Internal, and
Language Workbenches. We'll talk about the advantages of DSLs and the
problems in using them, so that you'll appreciate what the different
styles look like and when you might want to build them. In the second
part we'll go into more details on techniques of working with each of
the three styles, to get you started on your own work.
We are currently working to develop a coherent pedagogic framework (if
you'll forgive a pretentious name) for DSLs, this tutorial is an
opportunity to catch up with our work. However it does come with a
caveat: we are still very much in the middle of the process of capturing
and organizing this knowledge. As a result we won't be describing a
finished body of knowledge, but rather one that is still evolving.
|
|
|