diff options
| author | LLLL Colonq <llll@colonq> | 2026-10-21 02:43:23 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2026-10-21 02:43:23 -0400 |
| commit | 62ab8e0b42a57bd794941f030b4c3140d6f7c744 (patch) | |
| tree | d4d26aca670f67a290399e83ca5e7253a5b9c395 /pit/src/library.c | |
| parent | fe4c9bd487cb9ae59d86dc7680855c5797ae04e3 (diff) | |
Bake Lisp into builds, fix bug in error propagation
Diffstat (limited to 'pit/src/library.c')
| -rw-r--r-- | pit/src/library.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/pit/src/library.c b/pit/src/library.c index 098c6f9..2d28646 100644 --- a/pit/src/library.c +++ b/pit/src/library.c @@ -4,6 +4,8 @@ #include <lcq/pit/runtime.h> #include <lcq/pit/library.h> +#include <lisp/essential.h> + static pit_value impl_m_defun(pit_runtime *rt, pit_value args, void *data) { (void) data; pit_value nm = pit_value_cons_car(rt, args); @@ -866,7 +868,7 @@ void pit_install_library_essential(pit_runtime *rt) { pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/concat"), pit_value_nativefunc_new(rt, impl_list_concat)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/take"), pit_value_nativefunc_new(rt, impl_list_take)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/drop"), pit_value_nativefunc_new(rt, impl_list_drop)); - pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/map"), pit_value_nativefunc_new(rt, impl_list_map)); + // pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/map"), pit_value_nativefunc_new(rt, impl_list_map)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/foldl"), pit_value_nativefunc_new(rt, impl_list_foldl)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/filter"), pit_value_nativefunc_new(rt, impl_list_filter)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "list/find"), pit_value_nativefunc_new(rt, impl_list_find)); @@ -912,6 +914,8 @@ void pit_install_library_essential(pit_runtime *rt) { pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "bitwise/not"), pit_value_nativefunc_new(rt, impl_bitwise_not)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "bitwise/lshift"), pit_value_nativefunc_new(rt, impl_bitwise_lshift)); pit_symtab_fset(rt, pit_symtab_intern_cstr(rt, "bitwise/rshift"), pit_value_nativefunc_new(rt, impl_bitwise_rshift)); + /* lisp code */ + pit_load_bytes(rt, (u8 *) lisp_essential_pit, (i64) lisp_essential_pit_len); } static pit_value impl_plist_get(pit_runtime *rt, pit_value args, void *data) { |
