summaryrefslogtreecommitdiff
path: root/gpgscm/opdefines.h
blob: 61f7971380e93207fd192783f8934b2a0b12a0c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
_OP_DEF("load",                           1,  1,       TST_STRING,                      OP_LOAD             )
_OP_DEF(0,                                0,  0,       0,                               OP_T0LVL            )
_OP_DEF(0,                                0,  0,       0,                               OP_T1LVL            )
_OP_DEF(0,                                0,  0,       0,                               OP_READ_INTERNAL    )
_OP_DEF("gensym",                         0,  0,       0,                               OP_GENSYM           )
_OP_DEF(0,                                0,  0,       0,                               OP_VALUEPRINT       )
_OP_DEF(0,                                0,  0,       0,                               OP_EVAL             )
#if USE_TRACING
_OP_DEF(0,                                0,  0,       0,                               OP_REAL_EVAL        )
#endif
_OP_DEF(0,                                0,  0,       0,                               OP_E0ARGS           )
_OP_DEF(0,                                0,  0,       0,                               OP_E1ARGS           )
#if USE_HISTORY
_OP_DEF(0,                                0,  0,       0,                               OP_CALLSTACK_POP    )
#endif
_OP_DEF(0,                                0,  0,       0,                               OP_APPLY_CODE       )
_OP_DEF(0,                                0,  0,       0,                               OP_APPLY            )
#if USE_TRACING
_OP_DEF(0,                                0,  0,       0,                               OP_REAL_APPLY       )
_OP_DEF("tracing",                        1,  1,       TST_NATURAL,                     OP_TRACING          )
#endif
_OP_DEF(0,                                0,  0,       0,                               OP_DOMACRO          )
_OP_DEF(0,                                0,  0,       0,                               OP_LAMBDA           )
_OP_DEF(0,                                0,  0,       0,                               OP_LAMBDA1          )
_OP_DEF("make-closure",                   1,  2,       TST_PAIR TST_ENVIRONMENT,        OP_MKCLOSURE        )
_OP_DEF(0,                                0,  0,       0,                               OP_QUOTE            )
_OP_DEF(0,                                0,  0,       0,                               OP_DEF0             )
_OP_DEF(0,                                0,  0,       0,                               OP_DEF1             )
_OP_DEF("defined?",                       1,  2,       TST_SYMBOL TST_ENVIRONMENT,      OP_DEFP             )
_OP_DEF(0,                                0,  0,       0,                               OP_BEGIN            )
_OP_DEF(0,                                0,  0,       0,                               OP_IF0              )
_OP_DEF(0,                                0,  0,       0,                               OP_IF1              )
_OP_DEF(0,                                0,  0,       0,                               OP_SET0             )
_OP_DEF(0,                                0,  0,       0,                               OP_SET1             )
_OP_DEF(0,                                0,  0,       0,                               OP_LET0             )
_OP_DEF(0,                                0,  0,       0,                               OP_LET1             )
_OP_DEF(0,                                0,  0,       0,                               OP_LET2             )
_OP_DEF(0,                                0,  0,       0,                               OP_LET0AST          )
_OP_DEF(0,                                0,  0,       0,                               OP_LET1AST          )
_OP_DEF(0,                                0,  0,       0,                               OP_LET2AST          )
_OP_DEF(0,                                0,  0,       0,                               OP_LET0REC          )
_OP_DEF(0,                                0,  0,       0,                               OP_LET1REC          )
_OP_DEF(0,                                0,  0,       0,                               OP_LET2REC          )
_OP_DEF(0,                                0,  0,       0,                               OP_COND0            )
_OP_DEF(0,                                0,  0,       0,                               OP_COND1            )
_OP_DEF(0,                                0,  0,       0,                               OP_DELAY            )
_OP_DEF(0,                                0,  0,       0,                               OP_AND0             )
_OP_DEF(0,                                0,  0,       0,                               OP_AND1             )
_OP_DEF(0,                                0,  0,       0,                               OP_OR0              )
_OP_DEF(0,                                0,  0,       0,                               OP_OR1              )
_OP_DEF(0,                                0,  0,       0,                               OP_C0STREAM         )
_OP_DEF(0,                                0,  0,       0,                               OP_C1STREAM         )
_OP_DEF(0,                                0,  0,       0,                               OP_MACRO0           )
_OP_DEF(0,                                0,  0,       0,                               OP_MACRO1           )
_OP_DEF(0,                                0,  0,       0,                               OP_CASE0            )
_OP_DEF(0,                                0,  0,       0,                               OP_CASE1            )
_OP_DEF(0,                                0,  0,       0,                               OP_CASE2            )
_OP_DEF("eval",                           1,  2,       TST_ANY TST_ENVIRONMENT,         OP_PEVAL            )
_OP_DEF("apply",                          1,  INF_ARG, TST_NONE,                        OP_PAPPLY           )
_OP_DEF("call-with-current-continuation", 1,  1,       TST_NONE,                        OP_CONTINUATION     )
#if USE_MATH
_OP_DEF("inexact->exact",                 1,  1,       TST_NUMBER,                      OP_INEX2EX          )
_OP_DEF("exp",                            1,  1,       TST_NUMBER,                      OP_EXP              )
_OP_DEF("log",                            1,  1,       TST_NUMBER,                      OP_LOG              )
_OP_DEF("sin",                            1,  1,       TST_NUMBER,                      OP_SIN              )
_OP_DEF("cos",                            1,  1,       TST_NUMBER,                      OP_COS              )
_OP_DEF("tan",                            1,  1,       TST_NUMBER,                      OP_TAN              )
_OP_DEF("asin",                           1,  1,       TST_NUMBER,                      OP_ASIN             )
_OP_DEF("acos",                           1,  1,       TST_NUMBER,                      OP_ACOS             )
_OP_DEF("atan",                           1,  2,       TST_NUMBER,                      OP_ATAN             )
_OP_DEF("sqrt",                           1,  1,       TST_NUMBER,                      OP_SQRT             )
_OP_DEF("expt",                           2,  2,       TST_NUMBER,                      OP_EXPT             )
_OP_DEF("floor",                          1,  1,       TST_NUMBER,                      OP_FLOOR            )
_OP_DEF("ceiling",                        1,  1,       TST_NUMBER,                      OP_CEILING          )
_OP_DEF("truncate",                       1,  1,       TST_NUMBER,                      OP_TRUNCATE         )
_OP_DEF("round",                          1,  1,       TST_NUMBER,                      OP_ROUND            )
#endif
_OP_DEF("+",                              0,  INF_ARG, TST_NUMBER,                      OP_ADD              )
_OP_DEF("-",                              1,  INF_ARG, TST_NUMBER,                      OP_SUB              )
_OP_DEF("*",                              0,  INF_ARG, TST_NUMBER,                      OP_MUL              )
_OP_DEF("/",                              1,  INF_ARG, TST_NUMBER,                      OP_DIV              )
_OP_DEF("quotient",                       1,  INF_ARG, TST_INTEGER,                     OP_INTDIV           )
_OP_DEF("remainder",                      2,  2,       TST_INTEGER,                     OP_REM              )
_OP_DEF("modulo",                         2,  2,       TST_INTEGER,                     OP_MOD              )
_OP_DEF("car",                            1,  1,       TST_PAIR,                        OP_CAR              )
_OP_DEF("cdr",                            1,  1,       TST_PAIR,                        OP_CDR              )
_OP_DEF("cons",                           2,  2,       TST_NONE,                        OP_CONS             )
_OP_DEF("set-car!",                       2,  2,       TST_PAIR TST_ANY,                OP_SETCAR           )
_OP_DEF("set-cdr!",                       2,  2,       TST_PAIR TST_ANY,                OP_SETCDR           )
_OP_DEF("char->integer",                  1,  1,       TST_CHAR,                        OP_CHAR2INT         )
_OP_DEF("integer->char",                  1,  1,       TST_NATURAL,                     OP_INT2CHAR         )
_OP_DEF("char-upcase",                    1,  1,       TST_CHAR,                        OP_CHARUPCASE       )
_OP_DEF("char-downcase",                  1,  1,       TST_CHAR,                        OP_CHARDNCASE       )
_OP_DEF("symbol->string",                 1,  1,       TST_SYMBOL,                      OP_SYM2STR          )
_OP_DEF("atom->string",                   1,  2,       TST_ANY TST_NATURAL,             OP_ATOM2STR         )
_OP_DEF("string->symbol",                 1,  1,       TST_STRING,                      OP_STR2SYM          )
_OP_DEF("string->atom",                   1,  2,       TST_STRING TST_NATURAL,          OP_STR2ATOM         )
_OP_DEF("make-string",                    1,  2,       TST_NATURAL TST_CHAR,            OP_MKSTRING         )
_OP_DEF("string-length",                  1,  1,       TST_STRING,                      OP_STRLEN           )
_OP_DEF("string-ref",                     2,  2,       TST_STRING TST_NATURAL,          OP_STRREF           )
_OP_DEF("string-set!",                    3,  3,       TST_STRING TST_NATURAL TST_CHAR, OP_STRSET           )
_OP_DEF("string-append",                  0,  INF_ARG, TST_STRING,                      OP_STRAPPEND        )
_OP_DEF("substring",                      2,  3,       TST_STRING TST_NATURAL,          OP_SUBSTR           )
_OP_DEF("vector",                         0,  INF_ARG, TST_NONE,                        OP_VECTOR           )
_OP_DEF("make-vector",                    1,  2,       TST_NATURAL TST_ANY,             OP_MKVECTOR         )
_OP_DEF("vector-length",                  1,  1,       TST_VECTOR,                      OP_VECLEN           )
_OP_DEF("vector-ref",                     2,  2,       TST_VECTOR TST_NATURAL,          OP_VECREF           )
_OP_DEF("vector-set!",                    3,  3,       TST_VECTOR TST_NATURAL TST_ANY,  OP_VECSET           )
_OP_DEF("not",                            1,  1,       TST_NONE,                        OP_NOT              )
_OP_DEF("boolean?",                       1,  1,       TST_NONE,                        OP_BOOLP            )
_OP_DEF("eof-object?",                    1,  1,       TST_NONE,                        OP_EOFOBJP          )
_OP_DEF("null?",                          1,  1,       TST_NONE,                        OP_NULLP            )
_OP_DEF("=",                              2,  INF_ARG, TST_NUMBER,                      OP_NUMEQ            )
_OP_DEF("<",                              2,  INF_ARG, TST_NUMBER,                      OP_LESS             )
_OP_DEF(">",                              2,  INF_ARG, TST_NUMBER,                      OP_GRE              )
_OP_DEF("<=",                             2,  INF_ARG, TST_NUMBER,                      OP_LEQ              )
_OP_DEF(">=",                             2,  INF_ARG, TST_NUMBER,                      OP_GEQ              )
_OP_DEF("symbol?",                        1,  1,       TST_ANY,                         OP_SYMBOLP          )
_OP_DEF("number?",                        1,  1,       TST_ANY,                         OP_NUMBERP          )
_OP_DEF("string?",                        1,  1,       TST_ANY,                         OP_STRINGP          )
_OP_DEF("integer?",                       1,  1,       TST_ANY,                         OP_INTEGERP         )
_OP_DEF("real?",                          1,  1,       TST_ANY,                         OP_REALP            )
_OP_DEF("char?",                          1,  1,       TST_ANY,                         OP_CHARP            )
#if USE_CHAR_CLASSIFIERS
_OP_DEF("char-alphabetic?",               1,  1,       TST_CHAR,                        OP_CHARAP           )
_OP_DEF("char-numeric?",                  1,  1,       TST_CHAR,                        OP_CHARNP           )
_OP_DEF("char-whitespace?",               1,  1,       TST_CHAR,                        OP_CHARWP           )
_OP_DEF("char-upper-case?",               1,  1,       TST_CHAR,                        OP_CHARUP           )
_OP_DEF("char-lower-case?",               1,  1,       TST_CHAR,                        OP_CHARLP           )
#endif
_OP_DEF("port?",                          1,  1,       TST_ANY,                         OP_PORTP            )
_OP_DEF("input-port?",                    1,  1,       TST_ANY,                         OP_INPORTP          )
_OP_DEF("output-port?",                   1,  1,       TST_ANY,                         OP_OUTPORTP         )
_OP_DEF("procedure?",                     1,  1,       TST_ANY,                         OP_PROCP            )
_OP_DEF("pair?",                          1,  1,       TST_ANY,                         OP_PAIRP            )
_OP_DEF("list?",                          1,  1,       TST_ANY,                         OP_LISTP            )
_OP_DEF("environment?",                   1,  1,       TST_ANY,                         OP_ENVP             )
_OP_DEF("vector?",                        1,  1,       TST_ANY,                         OP_VECTORP          )
_OP_DEF("eq?",                            2,  2,       TST_ANY,                         OP_EQ               )
_OP_DEF("eqv?",                           2,  2,       TST_ANY,                         OP_EQV              )
_OP_DEF("force",                          1,  1,       TST_ANY,                         OP_FORCE            )
_OP_DEF(0,                                0,  0,       0,                               OP_SAVE_FORCED      )
_OP_DEF("write",                          1,  2,       TST_ANY TST_OUTPORT,             OP_WRITE            )
_OP_DEF("write-char",                     1,  2,       TST_CHAR TST_OUTPORT,            OP_WRITE_CHAR       )
_OP_DEF("display",                        1,  2,       TST_ANY TST_OUTPORT,             OP_DISPLAY          )
_OP_DEF("newline",                        0,  1,       TST_OUTPORT,                     OP_NEWLINE          )
_OP_DEF("error",                          1,  INF_ARG, TST_NONE,                        OP_ERR0             )
_OP_DEF(0,                                0,  0,       0,                               OP_ERR1             )
_OP_DEF("reverse",                        1,  1,       TST_LIST,                        OP_REVERSE          )
_OP_DEF("reverse!",                       1,  1,       TST_LIST,                        OP_REVERSE_IN_PLACE )
_OP_DEF("list*",                          1,  INF_ARG, TST_NONE,                        OP_LIST_STAR        )
_OP_DEF("append",                         0,  INF_ARG, TST_NONE,                        OP_APPEND           )
#if USE_PLIST
_OP_DEF("set-symbol-property!",           3,  3,       TST_SYMBOL TST_SYMBOL TST_ANY,   OP_SET_SYMBOL_PROPERTY )
_OP_DEF("symbol-property",                2,  2,       TST_SYMBOL TST_SYMBOL,           OP_SYMBOL_PROPERTY  )
#endif
_OP_DEF(0,                                0,  0,       TST_NONE,                        OP_TAG_VALUE        )
_OP_DEF("make-tagged-value",              2,  2,       TST_ANY TST_PAIR,                 OP_MK_TAGGED        )
_OP_DEF("get-tag",                        1,  1,       TST_ANY,                         OP_GET_TAG          )
_OP_DEF("quit",                           0,  1,       TST_NUMBER,                      OP_QUIT             )
_OP_DEF("gc",                             0,  0,       0,                               OP_GC               )
_OP_DEF("gc-verbose",                     0,  1,       TST_NONE,                        OP_GCVERB           )
_OP_DEF("new-segment",                    0,  1,       TST_NUMBER,                      OP_NEWSEGMENT       )
_OP_DEF("oblist",                         0,  0,       0,                               OP_OBLIST           )
_OP_DEF("current-input-port",             0,  0,       0,                               OP_CURR_INPORT      )
_OP_DEF("current-output-port",            0,  0,       0,                               OP_CURR_OUTPORT     )
_OP_DEF("open-input-file",                1,  1,       TST_STRING,                      OP_OPEN_INFILE      )
_OP_DEF("open-output-file",               1,  1,       TST_STRING,                      OP_OPEN_OUTFILE     )
_OP_DEF("open-input-output-file",         1,  1,       TST_STRING,                      OP_OPEN_INOUTFILE   )
#if USE_STRING_PORTS
_OP_DEF("open-input-string",              1,  1,       TST_STRING,                      OP_OPEN_INSTRING    )
_OP_DEF("open-input-output-string",       1,  1,       TST_STRING,                      OP_OPEN_INOUTSTRING )
_OP_DEF("open-output-string",             0,  1,       TST_STRING,                      OP_OPEN_OUTSTRING   )
_OP_DEF("get-output-string",              1,  1,       TST_OUTPORT,                     OP_GET_OUTSTRING    )
#endif
_OP_DEF("close-input-port",               1,  1,       TST_INPORT,                      OP_CLOSE_INPORT     )
_OP_DEF("close-output-port",              1,  1,       TST_OUTPORT,                     OP_CLOSE_OUTPORT    )
_OP_DEF("interaction-environment",        0,  0,       0,                               OP_INT_ENV          )
_OP_DEF("current-environment",            0,  0,       0,                               OP_CURR_ENV         )
_OP_DEF("read",                           0,  1,       TST_INPORT,                      OP_READ             )
_OP_DEF("read-char",                      0,  1,       TST_INPORT,                      OP_READ_CHAR        )
_OP_DEF("peek-char",                      0,  1,       TST_INPORT,                      OP_PEEK_CHAR        )
_OP_DEF("char-ready?",                    0,  1,       TST_INPORT,                      OP_CHAR_READY       )
_OP_DEF("set-input-port",                 1,  1,       TST_INPORT,                      OP_SET_INPORT       )
_OP_DEF("set-output-port",                1,  1,       TST_OUTPORT,                     OP_SET_OUTPORT      )
_OP_DEF(0,                                0,  0,       0,                               OP_RDSEXPR          )
_OP_DEF(0,                                0,  0,       0,                               OP_RDLIST           )
_OP_DEF(0,                                0,  0,       0,                               OP_RDDOT            )
_OP_DEF(0,                                0,  0,       0,                               OP_RDQUOTE          )
_OP_DEF(0,                                0,  0,       0,                               OP_RDQQUOTE         )
_OP_DEF(0,                                0,  0,       0,                               OP_RDQQUOTEVEC      )
_OP_DEF(0,                                0,  0,       0,                               OP_RDUNQUOTE        )
_OP_DEF(0,                                0,  0,       0,                               OP_RDUQTSP          )
_OP_DEF(0,                                0,  0,       0,                               OP_RDVEC            )
_OP_DEF(0,                                0,  0,       0,                               OP_P0LIST           )
_OP_DEF(0,                                0,  0,       0,                               OP_P1LIST           )
_OP_DEF(0,                                0,  0,       0,                               OP_PVECFROM         )
_OP_DEF("length",                         1,  1,       TST_LIST,                        OP_LIST_LENGTH      )
_OP_DEF("assq",                           2,  2,       TST_NONE,                        OP_ASSQ             )
_OP_DEF("get-closure-code",               1,  1,       TST_NONE,                        OP_GET_CLOSURE      )
_OP_DEF("closure?",                       1,  1,       TST_NONE,                        OP_CLOSUREP         )
_OP_DEF("macro?",                         1,  1,       TST_NONE,                        OP_MACROP           )
_OP_DEF("*vm-history*",                   0,  0,       TST_NONE,                        OP_VM_HISTORY       )

#undef _OP_DEF