0, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
,
CRAP
, '\t', '\n', CRAP
, CRAP
, CRAP
, CRAP
, CRAP
,
CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
,
CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
, CRAP
,
' ', '!', '"', '#', '$', '%', '&', '\'',
'(', ')', '*', '+', ',', '-', '.', '/',
DIG
, DIG
, DIG
, DIG
, DIG
, DIG
, DIG
, DIG
,
DIG
, DIG
, ':', ';', '<', '=', '>', '?',
'@', LET
, LET
, LET
, LET
, LET
, LET
, LET
,
LET
, LET
, LET
, LET
, LET
, LET
, LET
, LET
,
LET
, LET
, LET
, LET
, LET
, LET
, LET
, LET
,
LET
, LET
, LET
, '[', '\\', ']', '^', '_',
'`', LET
, LET
, LET
, LET
, LET
, LET
, LET
,
LET
, LET
, LET
, LET
, LET
, LET
, LET
, LET
,
LET
, LET
, LET
, LET
, LET
, LET
, LET
, LET
,
LET
, LET
, LET
, '{', '|', '}', '~', 0,
gtok(s
) char *s
; { /* get token into s */
if (infile
[infptr
] != stdin
)
if( (infile
[infptr
] = fopen(*svargv
,"r")) == NULL
)
curfile
[infptr
] = *svargv
;
return(EOF
); /* real eof */
while ((c
= getchr()) == ' ' || c
== '\t')
if (c
== COMMENT
|| c
== '_') {
while ((c
= getchr()) == ' ' || c
== '\t')
while ((t
=type
[*p
= getchr()]) == LET
|| t
== DIG
)
if ((q
= lookup(s
))->name
!= NULL
&& q
->ydef
== 0) { /* found but not keyword */
if (q
->def
!= fcnloc
) { /* not "function" */
getfname(); /* recursive gtok */
if (*p
< '0' || *p
> '9')
if ((*p
= getchr()) == '(' || *p
== ')') {
putbak(*p
=='(' ? '{' : '}');
if (*p
== '"' || *p
== '\'')
while ((comment
[comptr
++] = getchr()) != '\n')
for (; (*p
= getchr()) != c
; p
++) {
while ((*p
= getchr()) != '\n')
case '>': case '<': case '=': case '!': case '^':
while ((c
= gtok(s
)) == ' ' || c
== '\t')
while (gtok(fcname
) == ' ')
peek(p
, c1
) char *p
, c1
; {
if ((*p
= getchr()) == c1
)
if (ip
>= &ibuf
[BUFSIZE
]) {
error("pushback overflow");
c
= getc(infile
[infptr
]);