Tuesday, October 24, 2006

Ruby Sig: How To Design A Domain Specific Language

Google Tech Talks
October 5, 2006

David Pollak has been developing commercial software for 28 years. He founded Athena Design and wrote Mesa, the first real-time spreadsheet. David wrote Integer, the first online, collaborative spreadsheet. Since 2000, David has been developing domain specific languages for security and general web development.

ABSTRACT
David will describe a framework for developing DSLs which includes:

* Identifying the constituents in a development project;
* Determining the costs and benefits of a DSL for a particular constituency vs. hand-coding functionality for that constituency based on interviews and specs;
* Identifying the 'thought leader' in a given constituency and interviewing him or her to determine the semantics of the domain;
* Determining syntax of the DSL;
* Mocking up the DSL and 'test driving' it with the thought leader;
* Finding appropriate integration points for the DSL into the application;
* Defining the process by with the Domain Experts will update code in the DSL (e.g., they have a web page where they can change tax calculation rules vs. they make a change to particular Ruby files as part of a development/staging/production cycle.); and
* Iterate over the semantics, syntax, and process to fully integrate Domain Experts into the development process.

0 Comments:

Post a Comment

<< Home