Control table: Difference between revisions

Content deleted Content added
Interpreter: the table does not _define_ operations; it maps input to operations
Interpreter: execution-ready means nothing (is fluff) without definition of that term; changing handlers is _not_ changing the interpreter; it might mean changing the same codebase as the interpreter, but not the interpreter itself
Line 68:
 
==Interpreter==
A control table interpreter executes the operations as selected by input parameters. ControlThe table entriesand shouldresulting beruntime designedbehavior tocan be execution ready,modified requiringwithout onlymodifying the plugging-ininterpreter. ofAn variablesinterpreter fromcan therequire appropriate[[software columnsmaintenance |maintenance]] to thechange alreadyits compiledbehavior, genericbut code ofhopefully the interpreter. Theis programdesigned instructionsto aresupport [[extensible]].future Oncefunctionality complete,via an interpreter would require [[software maintenance |maintenance]] only for newtable customchanges subroutinesinstead.
 
The handler subroutines often are coded in the same language as the interpreter, but could be in another language provided a suitable inter-language call-linkage mechanisms exists. The choice of language for the interpreter and subroutines usually depends on how portable it needs to be across various [[Platform (computing)|platform]]s. There may be several versions of the interpreter to support [[Porting |portability]]. A subordinate control table pointer may optionally substitute for a subroutine pointer in the action column if the interpreter supports this construct; representing a conditional drop to a lower logical level, mimicking [[structured programming]].