PPMyLanguageGenerator class>>ignoredNames
^ super ignoredNames, #(model)
But it looks like #model is supposed to be the result of your generator?
If this is the case I think that you should not store it in an instance variable.
Parsers are supposed to be stateless.
Instead each production rule should return a part of your model (using ==> [ … ]) that you then compose progressively in other rules.
Terminal rules return the leaves of your model and non-terminal rules compose the results.
The start production rule then returns the full model.
Look at the other subclasses of PPCompositeParser for insight.
HTH,
Camille