ccca9778 update lbmred.md
e182bffd changed doc i28 to i
3b277e28 error message printing verbosity level can be toggled between high and low
0f00e692 update one of the call-cc tests
6a377f74 added some tests of call-cc
4f3e8adc update application of a call-cc continuation. zero arguments is ok, will apply to nil. More than 1 argument is an error and terminates the context
50fdd498 small tweaks to repl-cps
git-subtree-dir: lispBM/lispBM
git-subtree-split: ccca9778ee0ddad6ea44bdc309ba128c92723309
6deae379 Merge branch 'master' of github.com:svenssonjoel/lispBM
087437b4 update callcc to use lbm_memory for continuation creation rather than list
git-subtree-dir: lispBM/lispBM
git-subtree-split: 6deae3798fb770fdc971ce8d2f2cc32a3bc1b3dd
cf60058d added error reason when applying to too many arguments
git-subtree-dir: lispBM/lispBM
git-subtree-split: cf60058d7f3f7ca49db800452a8d9acc6b048ab2
5b3815ee added aliases first, rest, fn and def for car, cdr, lambda and define
7d1bf1d5 added aliases first, rest, fn and def for car, cdr, lambda and define
3ac28d2f let the compiler keep track of the size of the special_symbols
51c84e90 update evaluator example program
git-subtree-dir: lispBM/lispBM
git-subtree-split: 5b3815eec0ae4b8b4fbbe96a77e71e151359ee13
9290347b Change the handling of the closure environment, nolonger a copy of curr_env but a reference to head. GC should ensure that part of the env remains alive as long as the closure.
489544f3 added geq leq to doc
git-subtree-dir: lispBM/lispBM
git-subtree-split: 9290347b0fdbf16e4ab48ae871c759d8ef108ed1
184f58ca added one more test involving strange lambdas
f17252a1 fixed bug related to closures applied to zero arguments. More tests needed
git-subtree-dir: lispBM/lispBM
git-subtree-split: 184f58cab68b5350852d2749ef97ee5b4eb245d8
6bf6dd72 Better attempt at fixing the forgotten temporary value in eval_let.
git-subtree-dir: lispBM/lispBM
git-subtree-split: 6bf6dd725abb236ac4a2a84d8965f2b3dc4fff8a
b6e3a0e5 fix mistake in eval_let where an intermediate value could be forgotten by the Mark phase and end up removed by GC
f327c61b renaming all pop_u32 and push_u32 functions to just push and pop
git-subtree-dir: lispBM/lispBM
git-subtree-split: b6e3a0e5286c6380e4a9170819404752afcdf5e1
95c77be2 removed a left over printf from debug session
6ac46afb found bug in pointer identification for GC and added a call to gc at the very start of cont_read
git-subtree-dir: lispBM/lispBM
git-subtree-split: 95c77be23c28d85a245c98990eb2f47cb72ad9d9
bbfcd36d Added a gc check in case SYM_READ and fixed the tokenizer when it comes to pattern matching pattern for ?i
git-subtree-dir: lispBM/lispBM
git-subtree-split: bbfcd36d448849287d2f0e2c66f3d12dc63adae8
33093e6e dynamic loading of symbol mappings now perform gc if lbm memory if close to full
b7b35f0c Some amount of cleaning
git-subtree-dir: lispBM/lispBM
git-subtree-split: 33093e6e3fe4d8c99eb773a04f111ebe92161b5f
f3605d21 fix bug in if. If required 't instead of accepting anything other than 'nil as true. Added null check to cont_closure_application_args
cba089b3 giving closure applications their own code-path separate from built-in fundamentals and extensions.
3856726f extendd functionality of dec_as functions
git-subtree-dir: lispBM/lispBM
git-subtree-split: f3605d21badf939007237e547dba785e1be2283b
43ebce71 Fix formatting int print.c and constants that default to float/double
fa220f0b update gc statistics collection a small bit
25b20686 fix get_heap_state
783d774e Arrays of 64bit values passes the associated tests. More tests are needed though
ff40d02f working on 64bit arrays. more testing needed
204bea39 CMP as a macro instead of 8 different functions
44bb152d added a set of math extensions grabbed from Benjamin's bldc repo
9c34b4cd added string extensions from benjamins bldc repo
b4370155 merge in changes on master into dev64bit
c129344b fixed masking bug in fundamentals
ed3ab5be closed down ome warnings when building 64bit
d46564c9 expanded functionality of type-of to cover 64bit types and preparations for arrays of 64bit values
f7cb5538 added more 64bit functionality to fundamentals and a tiny amount of tests
4dafbe6c added decoders for 64bit values
63026a8a added 64bit value literals
8c1f0f0f made GC aware of lbm_memory allocated values
17148ada 64 bit values allocated on lbm_memory on 32 bit version
4445e5a8 sketch of encoders for 64 bit values
f636e64d suffix for the lisp size of int and uint are now i and u instead of i28 and u28
840723ca preparations and planning for 64bit types in both 32 and 64 bit versions.
13675dda 64bit up and running. but there are many TODOs
033bfd9a small fixes following bug hunt
f5c984de fix bug in representation of important masks and constants
d40b2437 Merge branch 'master' into dev64bit
06f9603f Merge branch 'master' into dev64bit
69950ba1 32 bit tests are ok
46b6fa28 Merge branch 'master' into dev64bit
b9e2c993 work in progress
8dff9b4d work in progress
a241aded work in progress
4738e0da update year in lbm_types
ca469923 made it possible to run the same tests as on the 32 bit version on the 64 bit code
85acec30 small tweaks tp create_ctx, use correct type
bf0286a7 Merge branch 'master' into dev64bit
824e1634 Merge branch 'master' into dev64bit
04a97f17 lots of testing needed
ea862cce a bunch of changes in preparation for 64bit compatibility.
git-subtree-dir: lispBM/lispBM
git-subtree-split: 43ebce71a281f4a158b8d2dec3fc537c26766ec3
6199703d removed left over debug residue from destructive reverse
5f3257f4 added a destructive list reverse function
421d5a61 returning an error from an extension now terminates the context in which the error happened. There is still one retry in the case of merrot
c6d9a3cb update changelog
6332a158 added a way to register an error reason string from extensions. pretty untested at the moment
e9a7fa5d update README
f9a66bfc fix left over num-eq in doc
52c4e05f doc update
b54230f8 md doc test
80125f23 experiment
1278aa24 update
e576c4f2 md doc
git-subtree-dir: lispBM/lispBM
git-subtree-split: 6199703df06c4a5709c84cb17102a8e088caa847
78047efe update
615f0d3c = now behaves as num-eq did and num-eq has been removed. for structural equality use eq
25cd006a define will give evaluation error if given more than 2 arguments
git-subtree-dir: lispBM/lispBM
git-subtree-split: 78047efe2b9ce60c841f85179539a62e1b1c48e5
eead0b27 removed a case of shadowing
4f744f8b Added more escape characters, not sure it is safe.. It does something though
git-subtree-dir: lispBM/lispBM
git-subtree-split: eead0b27dd8f8ee2d7f2029b9b9af03b18bcc502
e81f234f create_ctx changes to when it invokes gc to free up enough space for a context
55d7617d a first go at some escape characters. newline and backslash so far
git-subtree-dir: lispBM/lispBM
git-subtree-split: e81f234fdcac5728ef04ae9144e3aa7ed55306fa
9b375671 create_ctx fix: could get stuck in an state where there is no memory for any more contexts. not even a context to start the GC from! create_ctx now checks if there is enough memory for a context or it will automatically run GC
ebab83eb added a gc and retry in setvar
git-subtree-dir: lispBM/lispBM
git-subtree-split: 9b37567197de0f38bda5a3391c9255e49e2102f3
1420777c removed left over array pieces in case array-create fails
git-subtree-dir: lispBM/lispBM
git-subtree-split: 1420777c4e24ff3e914f0ce93f8a1a43075d798c
4a498667 fix odd slip-up in fundamental related to array-create
git-subtree-dir: lispBM/lispBM
git-subtree-split: 4a49866769b628f424adde78554da2523ebdc6b6
8a9ff6cc remove commented out code from gc
68562022 added a way to start gc from a lisp program
3e35264a just removed a small commented piece of code that has not been active for a long time
5c84c5af update benchmarks runner slightly
87a5e88c delete benchmarks
70716612 chibios examples build and run
e3e6ab65 chibios-repl compiles and runs again
01462c32 updated the llama
git-subtree-dir: lispBM/lispBM
git-subtree-split: 8a9ff6cc69e4fcb54fd197256509c9d1c554db7c
fb7d3503 added a llama
744ca079 Fixed an environment handling bug in conditionals
b448596c small tweaks (warnings)
git-subtree-dir: lispBM/lispBM
git-subtree-split: fb7d35031649049a618cb1fc0c690edbfe45d7f6
1c1bd9e6 changed order of arguments to ix and bufset. added some tests
7ead0c7f tweak
3ba22ae5 align with master
ef69471f troubleshooting segfaults, heap was freed (on C side before evaluation thread finished running GC
git-subtree-dir: lispBM/lispBM
git-subtree-split: 1c1bd9e6ff776d4e0009a1b0231f0b9eea89e262
ced143b0 set!
3e054ca0 troubleshooting segfaults, heap was freed (on C side before evaluation thread finished running GC
git-subtree-dir: lispBM/lispBM
git-subtree-split: ced143b0f6bb2cdc2e7a1c7575055a5fb8e0fab6
19c6ca34 context ids are now set to the index into lbm_memory where the context structure is stored
1d92e257 tweak changelog
7bd40932 Process stack and context are now immediately removed from lbm_memory upon completion
3cf4ed9a Tests nolonger relies on wait_ctx to get the result of the test-program
9b21bc98 removing the context stack as soon as a process finishes
git-subtree-dir: lispBM/lispBM
git-subtree-split: 19c6ca34cfddc951f7eddcf55e4ece1cd8218462
f700e1a7 fix the evaluator in the examples directory
7706d296 builds without warning
git-subtree-dir: lispBM/lispBM
git-subtree-split: f700e1a7df3c02f1e381e7b608da82260e9e8b16
34faf757 removed some dead code and made is_error more efficient (probably)
417731d4 tweak error message for eval error
30b01841 added a first version of more human-readable error messages. This will be improved over time
8337c4b6 align with master
git-subtree-dir: lispBM/lispBM
git-subtree-split: 34faf75787b62bcfe1a2785749fe4155ca12b83d
a7e04542 Fix: Closures now evaluate into themselves which is more in line with expected behaviour
git-subtree-dir: lispBM/lispBM
git-subtree-split: a7e045423ae289ce0f7b1aaeffd1cbb79cdd4f86
d820e066 renamed the array extensions
f80d5936 some additions to documentation
4c499d52 version
git-subtree-dir: lispBM/lispBM
git-subtree-split: d820e066e98d90ec94b91f16f43b809d10bbd1f3
f6ae1498 gc should free array header always
ee321014 fix in unsafe-free
1e9f2399 test of unsafe-free
c97eb831 added unsafe-free to array_extensions
0076f553 fix bug in gc sweep related to arrays allocated in lbm_memory
9c414d5a fix bug in c function for creating array in lbm
git-subtree-dir: lispBM/lispBM
git-subtree-split: f6ae1498908a8c1364479d24b434669ca59a6300
7930b985 tweak change log
e8869883 small amounts of optimization to eval_cps
ac3bd152 silly call-cc test
8dba90e3 Merge branch 'master' into dev
f4cf6a54 added one more test of array_extensions, packing and upacking floats
b27895cb added test for hex numbers
337c0eda fix bug in compression that applies to hexadecimal numnbers.
a55c5857 added another array_extensions test and fixed one bug
d255d69b added another array_extensions test
983024d4 array creation from lisp and one test added
65d8a498 bug fix array_extensions
47ddb8ae updates to array_extensions
cb5c3421 small tweaks to array-extensions, starting to maybe make sense
01233e92 some small additions to array_extensions
fb9db7ab mini-tweak array_extensions
a05aa268 fix bugs in lispbm.mk and add a test of variables2
ddca1665 small tweaks array-extensions
2466abc6 work in progress
0dc7ec7c work in progress with a library of array extensions
df142ceb added .clang_complete
5229ca5e planning, no code yet
cd6f5e3f Merge branch 'master' into dev
0f4c9bf2 added a rule for running tests from the makefile and tweaks test-script to only fail if there are unexpected failures
7a61f4e1 Merge branch 'master' into dev
9f8c9caf update lbm_version
feab23d3 Merge branch 'master' into dev
112c01df added array creation from C on the lbm_memory. GC will remove these
ca70c70a Merge branch 'master' into dev
f8e38cc2 Merge branch 'master' into dev
fc203669 Merge branch 'master' into dev
57af7182 Merge branch 'master' into dev
037e2352 commenting and version
977cd92a Merge branch 'master' into dev
34322bcf small tweak readme
1f22da9e fix recursion issue with macros
fec81a7b version tweak
8548884b macros and callcc
7eadf3cc added a macro test2
8152930d improvement to macro subsystem
cce45228 first sketch of macro expansion
git-subtree-dir: lispBM/lispBM
git-subtree-split: 7930b9854a05a8d09b40d078da94bb3743ef977b
83d186cc define can now be used to bind #var variables
3012709f Spawn takes an optional first argument that specifies stack size
git-subtree-dir: lispBM/lispBM
git-subtree-split: 83d186cc62a82fc333a15677a876a7a5cd7e8253
0a69a489 small rephrasing of a conditional in eval_define
4a0d6b9f redefining any non-RUNTIME_SYMBOL is now an error.
dbc4bb71 removed left over printf
git-subtree-dir: lispBM/lispBM
git-subtree-split: 0a69a4896c83c1dc0ef4577cf54d42b5614de5b9