There are two approaches to writing DLSs, Internal and External to the implementation language.
With internal DSLs the ruby parser is used (eg. ActiveRecord). It is surprising just how much you can personalise your language and still remain within the syntax of ruby.
see 'Creating DLSs In Ruby'
External languages require you to write a parser. This sounds hard, but there are a few libraries available that simplify the process. Check out multi and sexp gems.
see 'If It's Not Nailed Down, Steal It'
- ► 2009 (15)
- ► 2008 (30)
- ► 2007 (22)
- Another Rails Conf Talk Released
- DSLs in Ruby
- More on BDD
- Introduction to BDD (Behaviour Driven Development)...
- SVN Berkley DB Lock
- xUnit with a twist
- Now there is no excuse not to try Ruby!
- Buildix: Development Infastructure in an instant
- IDEA: Bleeping Media Player
- OSX keyboard shortcuts
- New MacBook
- Rails Hint: Database changes from script/console
- ▼ July (12)
- ► 2005 (40)