#define INCLUDES APLCB+APLMAIN+STDIO #include "includes.h" main() { Aplmsg; Endoper; Execute; Getchrv; Aplcb out; extern int aplerr; char *cp; int i; #include "aplinit.h" for (;;) { /* loop until break */ aplerr = 0; /* reset any prior error */ out = getchrv("APL> "); /* get APL statement */ if (aplerr) { fprintf(stderr,"%s\n",aplmsg(aplerr)); exit(aplerr); } cp = out -> aplptr.aplchar; /* Point to input line. */ for (i = out->aplcount; i; i--) putchar(*cp++); /* Echo. */ printf("\n"); /* skip to a new line */ if (out->aplcount == 0) break; /* An empty line signals end of file. */ if (out->aplcount == 1 && *out->aplptr.aplchar == '$') break; /* '$' also indicates end of file. */ endoper(execute(out)); } endoper(out); /* free $ APL variable */ }