%term lex0, lex1, lex2, lex3, lex4, lex5, lex6
%term lpar, rpar, lbkt, rbkt, eol, unk
%term com, com0, strng, null, dot, cln
%term quad, semi, comnt, tran, asg
%term nam, numb, nfun, mfun, dfun
%term comexpr, comnam, comnull
* line-at-a-time APL compiler.
* first lexical character gives context.
if(integ != ASGN && integ != PRINT)
lex0 bcomand comand eol =
anyname anyname anyname =
* transfers (in functions)
for(integ=0; integ<SDAT; integ++)
*ccharp++ = datum.c[integ];
* optional expressions separated by semi
* return a string of a monadic operator.
* return a string of a dyadic operator.
* single expression subscript
* as found on operators to select
mondya | dscal | d | com0 | asg | com ;
nam | nfun | mfun | dfun ;