14 lines
409 B
Racket
14 lines
409 B
Racket
|
#lang brag
|
||
|
|
||
|
tA-program : tA-start tA-blank tA-accept tA-state-set
|
||
|
tA-start : "@" tA-state-id
|
||
|
tA-blank : "%" tA-symbol
|
||
|
tA-accept : "!" tA-state-id
|
||
|
tA-state-set : tA-state (tA-state)*
|
||
|
tA-state : ":" tA-state-id tA-tran-set
|
||
|
tA-tran-set : (tA-tran)* (NL)*
|
||
|
tA-tran : tA-symbol "~" tA-symbol tA-dir tA-state-id (NL)*
|
||
|
tA-symbol : TA-STRING
|
||
|
tA-state-id : TA-STRING
|
||
|
tA-dir : "<" | ">"
|