static char *sccsid
= "@(#)lisp.c 34.1 10/3/80";
/* main *****************************************************************/
/* Execution of the lisp system begins here. This is the top level */
/* executor which is an infinite loop. The structure is similar to */
extern int holbeg
,holend
,usehole
;
/* printf("poport = 0%o\n",poport); */
while(retval
= setexit())
case BRGOTO
: error("GOTO LABEL NOT FOUND",FALSE
);
case BRRETN
: error("NO PROG TO RETURN FROM",FALSE
);
default: popnames(orgbnp
);
clearerr(piport
= stdin
);
clearerr(poport
= stdout
);
np
++->val
= matom("top-level");
lispval
Lread(),Istsrch();
fputs(Istsrch(matom("version"))->d
.cdr
->d
.cdr
->d
.cdr
,poport
);
if(vtemp
== eofa
) exit(0);
printr(eval(vtemp
),stdout
);
if(!fvirgin
) unlink(stabf
);