I disagree with this (at least as far as Inform 7 goes; I’m not familiar with TADS). There’s things I’d theoretically like to do with Inform 7 that are pretty hard to do in I7 as it stands. For instance:
Write rules that dynamically generate new descriptions of objects based on a variety of factors. (Doable!) Allow the player to refer to the objects using those descriptions. (Less doable!
Have several NPCs in one location doing things. Report those actions in one summary paragraph, so that if Alice, Bob, and Casey are digging, the game prints “Alice, Bob, and Casey are digging.” This seems hard because it would essentially involve trapping every NPC action before it hits the report stage.
Routinely retain memory of the string a player typed to refer to an object, so that when doing action involving Lord Carnarvon we can have different things happen depending on whether the player typed “Lord Carnarvon” or “Carnarvon” or “That guy.” (Something over and above a simple test for whether the player’s command includes one of these strings.)
And maybe toss in this mishegas about Threaded Conversation – you can’t figure out who the first noun refers to and adjust your understanding of the second noun based on that, without a truly heroic parser hack.
Apparently big things are afoot for the next I7 update, mostly involving the handling of default text (which might help with my NPC reporting issue). And maybe Curveship would allow some of this, if anyone understood Curveship. But it doesn’t seem to me that the parser has reached its apex, or at least it’s not that I can’t think of anything more there is to be done, if I had infinite programming skill.