DWIM means “Do What I Mean” and is one of the most evil thing existing in command line interfaces. (think about finding the disk erased because the DWIM decides that the typo means “delete every file”)
In IF its evilness is somewhat reduced, but in debugging a porting to adv3lite I have these issues:
example, in a game where is a die Dim-WItted-Meanie decides that “dix” refer to it, with this result:
push dix
(push die)
Pushing the testing die has no effect.
whose can easily turn typos in cheating/spoilers, considering the mass of synonyms (whose already caused mess in the adv3 version…)
I think that the annoyance (I never liked this type of artificial stupidity) lies in english/newbie.t, and if I’m correct, how I can exclude this component, my WIP is definitively not one for newbies, after all.
Incidentally, in newbie.t is a bodypart method, whose in presence of unimplemented bodypart gives this definitively misleading (and inappropriate for my IF, where the PC has a different body) reporting:
x nose
Generally speaking, there is no need to refer to your body parts individually in interactive fiction. WEAR SHOES ON FEET will not necessarily be implemented, for instance; WEAR SHOES is enough. And unless you get some hint to the contrary, you probably cannot OPEN DOOR WITH FOOT or PUT THE SAPPHIRE RING IN MY MOUTH.
I prefer not to touch the library directory itself, so I prefer not altering the *.tl files, so, how to exclude newbie.t without editing the relevant *.tl or worst, breaking the library dependencies ?
TIA and best regards from Italy,
dott. Piergiorgio.