[other] Greg, sorry, this is maybe too philosophical. but, reading your thoughts, what strikes me is, from the 1980s/90s (by [another] Greg[or] Kiczales) a model of things (software modules, say, or programs, or computing systems), where each "thing" has two sorts of interfaces: a *using* interface and a *managing* interface. envisioned as two sides of "the box" holding the thing:
using | V /***************/ /* */ managing -> /* */ /* */ /***************/ then, what i vaguely see from your thought is that the "using" interface for your terminal translator is transparent, as you describe. but, there is *some* path that accesses the "managing" interface, that either sets parameters controlling the behavior (what, iirc, Kiczales was thinking), or causes some momentary, transient, action by the thing itself (terminal translator) or ?maybe? the emulator on top of which, below which, the terminal is running. anyway, those are the neurons that fired. good luck figuring this out! cheers, [third time's the charm] Greg