symbols.h (5454B)
1 /* -*-comment-start: "//";comment-end:""-*- 2 * GNU Mes --- Maxwell Equations of Software 3 * Copyright © 2016,2017,2018,2019,2021,2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> 4 * 5 * This file is part of GNU Mes. 6 * 7 * GNU Mes is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 3 of the License, or (at 10 * your option) any later version. 11 * 12 * GNU Mes is distributed in the hope that it will be useful, but 13 * WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with GNU Mes. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 21 #ifndef __MES_SYMBOLS_H 22 #define __MES_SYMBOLS_H 23 24 extern struct scm *cell_nil; 25 extern struct scm *cell_f; 26 extern struct scm *cell_t; 27 extern struct scm *cell_dot; 28 extern struct scm *cell_arrow; 29 extern struct scm *cell_undefined; 30 extern struct scm *cell_unspecified; 31 extern struct scm *cell_closure; 32 extern struct scm *cell_circular; 33 34 extern struct scm *cell_vm_apply; 35 extern struct scm *cell_vm_apply2; 36 extern struct scm *cell_vm_begin; 37 extern struct scm *cell_vm_begin_eval; 38 extern struct scm *cell_vm_begin_expand; 39 extern struct scm *cell_vm_begin_expand_eval; 40 extern struct scm *cell_vm_begin_expand_macro; 41 extern struct scm *cell_vm_begin_read_input_file; 42 extern struct scm *cell_vm_call_with_current_continuation2; 43 extern struct scm *cell_vm_call_with_values2; 44 extern struct scm *cell_vm_eval; 45 extern struct scm *cell_vm_eval2; 46 extern struct scm *cell_vm_eval_check_func; 47 extern struct scm *cell_vm_eval_define; 48 extern struct scm *cell_vm_eval_macro_expand_eval; 49 extern struct scm *cell_vm_eval_macro_expand_expand; 50 extern struct scm *cell_vm_eval_set_x; 51 extern struct scm *cell_vm_evlis; 52 extern struct scm *cell_vm_evlis2; 53 extern struct scm *cell_vm_evlis3; 54 extern struct scm *cell_vm_if; 55 extern struct scm *cell_vm_if_expr; 56 extern struct scm *cell_vm_macro_expand; 57 extern struct scm *cell_vm_macro_expand_car; 58 extern struct scm *cell_vm_macro_expand_cdr; 59 extern struct scm *cell_vm_macro_expand_define; 60 extern struct scm *cell_vm_macro_expand_define_macro; 61 extern struct scm *cell_vm_macro_expand_lambda; 62 extern struct scm *cell_vm_macro_expand_set_x; 63 extern struct scm *cell_vm_return; 64 65 extern struct scm *cell_symbol_lambda; 66 extern struct scm *cell_symbol_begin; 67 extern struct scm *cell_symbol_if; 68 extern struct scm *cell_symbol_quote; 69 extern struct scm *cell_symbol_define; 70 extern struct scm *cell_symbol_define_macro; 71 extern struct scm *cell_symbol_quasiquote; 72 extern struct scm *cell_symbol_unquote; 73 extern struct scm *cell_symbol_unquote_splicing; 74 extern struct scm *cell_symbol_syntax; 75 extern struct scm *cell_symbol_quasisyntax; 76 extern struct scm *cell_symbol_unsyntax; 77 extern struct scm *cell_symbol_unsyntax_splicing; 78 extern struct scm *cell_symbol_set_x; 79 extern struct scm *cell_symbol_sc_expand; 80 extern struct scm *cell_symbol_macro_expand; 81 extern struct scm *cell_symbol_portable_macro_expand; 82 extern struct scm *cell_symbol_sc_expander_alist; 83 extern struct scm *cell_symbol_call_with_values; 84 extern struct scm *cell_symbol_call_with_current_continuation; 85 extern struct scm *cell_symbol_current_environment; 86 extern struct scm *cell_symbol_car; 87 extern struct scm *cell_symbol_cdr; 88 extern struct scm *cell_symbol_not_a_number; 89 extern struct scm *cell_symbol_not_a_pair; 90 extern struct scm *cell_symbol_system_error; 91 extern struct scm *cell_symbol_throw; 92 extern struct scm *cell_symbol_unbound_variable; 93 extern struct scm *cell_symbol_wrong_number_of_args; 94 extern struct scm *cell_symbol_wrong_type_arg; 95 extern struct scm *cell_symbol_buckets; 96 extern struct scm *cell_symbol_builtin; 97 extern struct scm *cell_symbol_frame; 98 extern struct scm *cell_symbol_hashq_table; 99 extern struct scm *cell_symbol_procedure; 100 extern struct scm *cell_symbol_record_type; 101 extern struct scm *cell_symbol_size; 102 extern struct scm *cell_symbol_stack; 103 extern struct scm *cell_symbol_argv; 104 extern struct scm *cell_symbol_mes_datadir; 105 extern struct scm *cell_symbol_mes_version; 106 extern struct scm *cell_symbol_internal_time_units_per_second; 107 extern struct scm *cell_symbol_compiler; 108 extern struct scm *cell_symbol_arch; 109 extern struct scm *cell_symbol_variable; 110 extern struct scm *cell_symbol_standard_eval_closure; 111 extern struct scm *cell_symbol_standard_interface_eval_closure; 112 extern struct scm *cell_type_bytes; 113 extern struct scm *cell_type_char; 114 extern struct scm *cell_type_closure; 115 extern struct scm *cell_type_continuation; 116 extern struct scm *cell_type_function; 117 extern struct scm *cell_type_keyword; 118 extern struct scm *cell_type_macro; 119 extern struct scm *cell_type_number; 120 extern struct scm *cell_type_pair; 121 extern struct scm *cell_type_port; 122 extern struct scm *cell_type_ref; 123 extern struct scm *cell_type_special; 124 extern struct scm *cell_type_string; 125 extern struct scm *cell_type_struct; 126 extern struct scm *cell_type_symbol; 127 extern struct scm *cell_type_values; 128 extern struct scm *cell_type_binding; 129 extern struct scm *cell_type_vector; 130 extern struct scm *cell_type_broken_heart; 131 extern struct scm *cell_symbol_program; 132 extern struct scm *cell_symbol_test; 133 134 // CONSTANT SYMBOL_MAX 113 135 #define SYMBOL_MAX 113 136 137 #define CELL_UNSPECIFIED 7 138 139 #define CELL_SYMBOL_RECORD_TYPE 77 140 141 #endif /* __MES_SYMBOLS_H */