Refactoring toward DRY
Revisiting grammar generation.