mes/src
Timothy Sample 6345ba4a7d core: Add a C-only module lookup fast path.
* include/mes/constants.h (MODULE_OBARRAY): New constant.
(MODULE_USES): New constant.
(MODULE_BINDER): New constant.
* src/module.c (standard-eval-closure): New function.
(standard_interface_eval_closure): New function.
(module_make_local_var_x): New function.
(module_variable): New function.
(cuurent_module_variable): Use the new functions for lookup if the
current module's eval-closure is one of two special symbols.
* include/mes/mes.h: Declare new functions.
* include/mes/symbols.h (cell_symbol_standard_eval_closure): New
variable.
(cell_symbol_standard_interface_eval_closure): New variable.
(SYMBOL_MAX): Adjust accordingly.
* src/symbol.c (init_symbols_): Initialize the new symbols.
* mes/module/mes/guile-module.mes (standard-eval-closure)
(standard-interface-eval-closure): Return a designated symbol
instead of an actual closure.
2022-04-26 16:46:08 -06:00
..
test core: Add an 'M1' register for the current module. 2022-04-26 11:22:57 -06:00
builtins.c core: Add the 'make-binding' builtin. 2022-04-26 16:46:08 -06:00
cc.c core: Use casting functions. 2020-10-18 15:44:49 +02:00
core.c core: Refactor name resolution. 2022-04-25 14:19:03 -06:00
display.c core: Rename variable type to binding. 2022-04-25 09:22:13 -06:00
eval-apply.c core: Add the 'make-binding' builtin. 2022-04-26 16:46:08 -06:00
gc.c mes: Bump default arena size. 2022-04-26 16:46:08 -06:00
globals.c core: Resurrect gcc-10 support. 2021-05-02 14:58:23 +02:00
hash.c core: Add hashq_create_handle_x. 2022-04-25 09:22:13 -06:00
lib.c core: Fix printing bindings. 2022-04-25 14:17:57 -06:00
m2.c core: Use casting functions. 2020-10-18 15:44:49 +02:00
math.c DRAFT core: Use exceptions instead of asserts. 2022-03-24 12:03:56 -06:00
mes.c core: Bind all free variables during expansion. 2022-04-26 16:46:08 -06:00
module.c core: Add a C-only module lookup fast path. 2022-04-26 16:46:08 -06:00
posix.c core: Move __getcwd_buf to Mes C Library. 2021-01-01 15:43:43 +01:00
reader.c mes: reader: Support "#\nl" and "#\np". 2022-04-26 16:46:08 -06:00
stack.c core: Prepare for M2-Planet 1.7.0. 2020-12-29 13:38:38 +01:00
string.c mes: hash: Guile interface compatibility. 2022-03-24 11:51:33 -06:00
struct.c DRAFT core: Use exceptions instead of asserts. 2022-03-24 12:03:56 -06:00
symbol.c core: Add a C-only module lookup fast path. 2022-04-26 16:46:08 -06:00
variable.c core: Implement Guile-style variables. 2022-04-25 14:19:03 -06:00
vector.c core: Prepare for M2-Planet 1.7.0. 2020-12-29 13:38:38 +01:00