|
|
|
![]() |
![]() |
||
| Chap. 1 | Chap. 2 | Chap. 3 | Chap. 4 | Chap. 5 | Chap. 6 | App |
A.0: Syntax |
Following is a list of rules for interpreting the TMCALGO Input Grammar specification followed by the TMCALGO Input Grammar specification itself. Don't confuse these rules with the rules for interpreting a TMCALGO program, which is what the grammar defines. Since we're using a grammar to define a program which is used to define other grammars, there is a heavy dose of self-referentiation. If you lose your bearings, get outside and walk fast enough to double your heartrate for at least 20 minutes.
program
: [ prog-item ... ]
prog-item
: <QUOTED-C-CODE>
: untimed-command
: STATE <NAME> [ file-spec ] [ NoLog ] state-cmds
: PARTITION
file-spec
: <QUOTED-STRING> [ <PARENSTAT> ]
state-cmds
: '{' untimed-commands timed-commands '}'
untimed-commands
: [ untimed-command ... ]
timed-commands
: [ [ [ '+' ] time ] timed-command ... ]
time
: <INTEGER> [ ':' <INTEGER> ... ]
untimed-command
: <TMC-STATEMENT>
: DEPENDING ON <PARENSTAT> <TMC-STATEMENT>
timed-command
: <TEXT-COMMAND>
: <QUOTED-STRING> ';'
: VALIDATE <NAME> ';'
: HOLD UNTIL [ VALID ] <PARENSTAT> timeout
: HOLD [ AND VALIDATE <NAME> ] timeout
: RESUME <NAME> ';'
: untimed-command
timeout
: ';'
: OR time ';'
: OR time ELSE timed-command
> Lamp Onwith the exception that the command text can be prefixed with an underscore character to suppress logging:
> _Lamp On
{ msg( 0, "Having Fun, wish you were here!"; }
At the top level, the braces are removed before sending the statement on to TMC, making top-level TMC definitions possible.
| Chap. 1 | Chap. 2 | Chap. 3 | Chap. 4 | Chap. 5 | Chap. 6 | App |
Return to Manuals Guide. Written by Norton T. Allen
| last updated: Thu Jan 2 10:51:49 2003 | webmaster@huarp.harvard.edu |
| Copyright 2002 by the President and Fellows of Harvard College | |
| [Home] [News] [People] [More Info] [Research Areas] [Field Missions] [Engineering] | |