128 (* binds *) |
128 (* binds *) |
129 |
129 |
130 fun bind_ast_tr (*"_BIND"*) [Ast.Variable x] = |
130 fun bind_ast_tr (*"_BIND"*) [Ast.Variable x] = |
131 Ast.Variable (Lexicon.string_of_vname (Lexicon.binding x, 0)) |
131 Ast.Variable (Lexicon.string_of_vname (Lexicon.binding x, 0)) |
132 | bind_ast_tr (*"_BIND"*) asts = raise Ast.AST ("bind_ast_tr", asts); |
132 | bind_ast_tr (*"_BIND"*) asts = raise Ast.AST ("bind_ast_tr", asts); |
|
133 |
|
134 |
|
135 (* dddot *) |
|
136 |
|
137 fun dddot_tr (*"_DDDOT"*) [] = Lexicon.var SynExt.dddot_indexname |
|
138 | dddot_tr (*"_DDDOT"*) ts = raise TERM ("dddot_tr", ts); |
133 |
139 |
134 |
140 |
135 (* quote / antiquote *) |
141 (* quote / antiquote *) |
136 |
142 |
137 fun quote_antiquote_tr quoteN antiquoteN name = |
143 fun quote_antiquote_tr quoteN antiquoteN name = |
329 val pure_trfuns = |
335 val pure_trfuns = |
330 ([("_appl", appl_ast_tr), ("_applC", applC_ast_tr), |
336 ([("_appl", appl_ast_tr), ("_applC", applC_ast_tr), |
331 ("_lambda", lambda_ast_tr), ("_idtyp", idtyp_ast_tr), |
337 ("_lambda", lambda_ast_tr), ("_idtyp", idtyp_ast_tr), |
332 ("_bigimpl", bigimpl_ast_tr), ("_BIND", bind_ast_tr)], |
338 ("_bigimpl", bigimpl_ast_tr), ("_BIND", bind_ast_tr)], |
333 [("_abs", abs_tr), ("_aprop", aprop_tr), ("_ofclass", ofclass_tr), |
339 [("_abs", abs_tr), ("_aprop", aprop_tr), ("_ofclass", ofclass_tr), |
334 ("_TYPE", type_tr), ("_K", k_tr)], |
340 ("_TYPE", type_tr), ("_DDDOT", dddot_tr), ("_K", k_tr)], |
335 []: (string * (term list -> term)) list, |
341 []: (string * (term list -> term)) list, |
336 [("_abs", abs_ast_tr'), ("_idts", idtyp_ast_tr' "_idts"), |
342 [("_abs", abs_ast_tr'), ("_idts", idtyp_ast_tr' "_idts"), |
337 ("_pttrns", idtyp_ast_tr' "_pttrns"), ("==>", impl_ast_tr')]); |
343 ("_pttrns", idtyp_ast_tr' "_pttrns"), ("==>", impl_ast_tr')]); |
338 |
344 |
339 val pure_trfunsT = |
345 val pure_trfunsT = |