Commit | Line | Data |
---|---|---|
a2271d4a KT |
1 | #include "apl.h" |
2 | ||
3 | #ifdef FULLD | |
4 | ||
5 | char *opname[] | |
6 | { | |
7 | "eol", /* 0 */ | |
8 | "add", /* 1 */ | |
9 | "plus", /* 2 */ | |
10 | "sub", /* 3 */ | |
11 | "minus", /* 4 */ | |
12 | "mul", /* 5 */ | |
13 | "sgn", /* 6 */ | |
14 | "div", /* 7 */ | |
15 | "recip", /* 8 */ | |
16 | "mod", /* 9 */ | |
17 | "abs", /* 10 */ | |
18 | "min", /* 11 */ | |
19 | "floor", /* 12 */ | |
20 | "max", /* 13 */ | |
21 | "ceil", /* 14 */ | |
22 | "pwr", /* 15 */ | |
23 | "exp", /* 16 */ | |
24 | "log", /* 17 */ | |
25 | "loge", /* 18 */ | |
26 | "cir", /* 19 */ | |
27 | "pi", /* 20 */ | |
28 | "comb", /* 21 */ | |
29 | "fac", /* 22 */ | |
30 | "deal", /* 23 */ | |
31 | "rand", /* 24 */ | |
32 | "drho", /* 25 */ | |
33 | "mrho", /* 26 */ | |
34 | "diot", /* 27 */ | |
35 | "miot", /* 28 */ | |
36 | "rot0", /* 29 */ | |
37 | "rev0", /* 30 */ | |
38 | "dtrn", /* 31 */ | |
39 | "mtrn", /* 32 */ | |
40 | "dibm", /* 33 */ | |
41 | "mibm", /* 34 */ | |
42 | "gdu", /* 35 */ | |
43 | "gduk", /* 36 */ | |
44 | "gdd", /* 37 */ | |
45 | "gddk", /* 38 */ | |
46 | "exd", /* 39 */ | |
47 | "scan", /* 40 */ | |
48 | "exdk", /* 41 */ | |
49 | "scank", /* 42 */ | |
50 | "iprod", /* 43 */ | |
51 | "oprod", /* 44 */ | |
52 | "quad", /* 45 */ | |
53 | "qquad", /* 46 */ | |
54 | "br0", /* 47 */ | |
55 | "br", /* 48 */ | |
56 | "ddom", /* 49 */ | |
57 | "mdom", /* 50 */ | |
58 | "com", /* 51 */ | |
59 | "red", /* 52 */ | |
60 | "comk", /* 53 */ | |
61 | "redk", /* 54 */ | |
62 | "rot", /* 55 */ | |
63 | "rev", /* 56 */ | |
64 | "rotk", /* 57 */ | |
65 | "revk", /* 58 */ | |
66 | "cat", /* 59 */ | |
67 | "rav", /* 60 */ | |
68 | "catk", /* 61 */ | |
69 | "ravk", /* 62 */ | |
70 | "print", /* 63 */ | |
71 | "quot", /* 64 */ | |
72 | "elid", /* 65 */ | |
73 | "cquad", /* 66 */ | |
74 | "comnt", /* 67 */ | |
75 | "index", /* 68 */ | |
76 | "hprint", /* 69 */ | |
77 | 0, /* 70 */ | |
78 | "lt", /* 71 */ | |
79 | "le", /* 72 */ | |
80 | "gt", /* 73 */ | |
81 | "ge", /* 74 */ | |
82 | "eq", /* 75 */ | |
83 | "ne", /* 76 */ | |
84 | "and", /* 77 */ | |
85 | "or", /* 78 */ | |
86 | "nand", /* 79 */ | |
87 | "nor", /* 80 */ | |
88 | "not", /* 81 */ | |
89 | "eps", /* 82 */ | |
90 | "meps", /* 83 */ | |
91 | "rep", /* 84 */ | |
92 | "take", /* 85 */ | |
93 | "drop", /* 86 */ | |
94 | "exd0", /* 87 */ | |
95 | "asgn", /* 88 */ | |
96 | "immed", /* 89 */ | |
97 | "name", /* 90 */ | |
98 | "const", /* 91 */ | |
99 | "fun", /* 92 */ | |
100 | "arg1", /* 93 */ | |
101 | "arg2", /* 94 */ | |
102 | "auto", /* 95 */ | |
103 | "rest", /* 96 */ | |
104 | "com0", /* 97 */ | |
105 | "red0", /* 98 */ | |
106 | "exd0", /* 99 */ | |
107 | "scan0", /*100 */ | |
108 | "base", /*101 */ | |
109 | "menc", /*102 */ /* monadic encode */ | |
110 | "label", /*103 */ | |
111 | }; | |
112 | ||
113 | #endif | |
114 | ||
115 | #ifdef SOMED | |
116 | ||
117 | dump(cp) | |
118 | char *cp; | |
119 | { | |
120 | register char *s, *t; | |
121 | register i; | |
122 | ||
123 | s = cp; | |
124 | ||
125 | loop: | |
126 | putchar(' '); | |
127 | if(column > 50) | |
128 | putchar('\n'); | |
129 | i = *s++; | |
130 | #ifdef FULLD | |
131 | if(i >= 0 && i <= 103 && opname[i]) { | |
132 | t = opname[i]; | |
133 | while(*t) | |
134 | putchar(*t++); | |
135 | } else | |
136 | #endif | |
137 | printf("%d", i); | |
138 | switch(i) { | |
139 | ||
140 | case EOL: | |
141 | if(*s != EOL) | |
142 | break; | |
143 | case EOF: | |
144 | putchar('\n'); | |
145 | return; | |
146 | ||
147 | case QUOT: | |
148 | i = *s++; | |
149 | s =+ i; | |
150 | break; | |
151 | ||
152 | case CONST: | |
153 | i = *s++; | |
154 | s =+ i*SDAT; | |
155 | break; | |
156 | ||
157 | case NAME: | |
158 | case FUN: | |
159 | case ARG1: | |
160 | case ARG2: | |
161 | case AUTO: | |
162 | case REST: | |
163 | s =+ copy(IN, s, &cp, 1); | |
164 | putchar('-'); | |
165 | t = cp->namep; | |
166 | while(*t) | |
167 | putchar(*t++); | |
168 | break; | |
169 | ||
170 | case INDEX: | |
171 | case IMMED: | |
172 | s++; | |
173 | break; | |
174 | } | |
175 | goto loop; | |
176 | } | |
177 | #endif |