In which I try to teach DSL driven design by guiding you through a PEG parser interpreter in Ruby.