I am completing one more pass through @aaronius book Creating Interactive Fiction with Inform 7. This time, I’m slowing down and taking more time with the exercises while documenting the experience in a GitHub repository.
I’ve been able to make small adjustments to some of the extensions he mentions in the book so they will function in the latest version of Inform. Still, editing Disambiguation Control by Jon Ingold is a bit beyond my current skillset. I have no familiarity with Inform 6.
The version in the 9.3 branch doesn’t compile, but it looks like the issues are due to updated syntax that might be relatively easy to address.
I was hoping it would just be a matter of changing “instead of” to “replacing”, but I was woefully naïve. Maybe someone can verify my thoughts – the latest I6 inclusion syntax can only select functions and not sections? And therefore modifying the parser is a pretty hefty job – you’d have to copy all kinds of code you’re not modifying in order to just modify “Parser Letter A” for instance.
One can replace the declaration for anything with a named identifier in the global namespace, not just functions (e.g., arrays, constants, variables). Otherwise, everything you say is true: it’s a big nuisance to modify Parser__parse.