24b8df22 adding text to manual ch2 and tweaking iota to enumarete up to (- n 1)
7558ee8d update manual ch2
ac09a621 work on chapter 2
a0ccae7f differentiating betwen applying to too many or too few arguments in a closure application
b002e1a6 update ch2 tiny
10efcb11 update ch2 to match current REPL formatting
f485a5f1 make REPL less verbose and update chapter 1
c7194629 work on ch2 and some additions to repl
6146a6c0 the reader will now signal via a callback when reading of source is completed
git-subtree-dir: lispBM/lispBM
git-subtree-split: 24b8df22427e05561c1dae8a60297b98a0027a74
1f19918d update ch2
55e1f370 closed some warnings. Made changes to match algorithm to allow lookup of variables in patterns
fdd6226a tweak ch1
54ea2a5e spell-checking pass chapter2
c4015d81 first draft of some association-list built-ins
git-subtree-dir: lispBM/lispBM
git-subtree-split: 1f19918d06d1b80286ef0be24635dac2ed54cd92
cf470a85 setix and rename of set! to setvar
12b2f2a3 update to chapter 2
a140ddd2 Fix potential null pointer dereference
2dc877c3 work in progress on chapter 2
415d46c7 fix environment handling bugs in pattern-matching
a6a1423b update ch2
f0a78631 update chapter 2
aca7cb5e small additions to chapter 2 in the manual
4fb9b26f starting to think about manual chapter 2
9a4c892e added rule to install the REPL as the executable file lbm into .local/bin in the home dir
3383919b update lbmref
c5ade0ab update lbm_version to better reflect reality
bde07853 reduced the set of expected failed tests
fed58b00 added some more array-syntax tests
965013e3 update refman
git-subtree-dir: lispBM/lispBM
git-subtree-split: cf470a85702aaab6e7cd73712516f22215b8bd61
b548be4e close 2 warnings about convertions
0335ae9b Merge branch 'master' of github.com:svenssonjoel/lispBM
c4d46dbb added type convertion functions and small tweak to refman
git-subtree-dir: lispBM/lispBM
git-subtree-split: b548be4e48f5aac4c91962d653b85ad99e4ea168
0941f213 Hex notation in array-literal-syntax, first draft
da0b1f44 added array-size fundamental and one more test involving size and array-literal-syntax
0835c5a4 added a first test of the array-literal syntax and made source-code-compression compatible with array-literal-syntax
git-subtree-dir: lispBM/lispBM
git-subtree-split: 0941f2132d311505708b225b053dcaef477d53e1
3c02bc6f first draft of array literal syntax. It does not break any existing tests but a a lot more testing needed!
793d95b1 small tweak pop
2ef9f34e added tiny comment
837cd180 rewrite of cont_if to use indexing into stack rather than a pop3
git-subtree-dir: lispBM/lispBM
git-subtree-split: 3c02bc6f31ef042f2c53b5501cce1fd4d8f45ffa
db80cb7d updates to how symbols are evaluated, mostly for readability but also efficiency
bb573b53 slight optimizations to mark_phase and mark_freelist
58242f41 tweaking the manual
51666fb5 update manual fix prelude situation
2c6349da work on manual
39a15fd8 update
a5310055 added a bit more text about symbols in the manual
60d59eec added a bit more text about symbols in the manual
f685819e added a bit more text about symbols in the manual
31d56d35 added a bit more text about symbols in the manual
54796c35 added a bit more text about symbols in the manual
e333c00f Small readability and efficiency tweaks to eval_cps
0d234b5e lbm_cadr added and sligth modifications to eval_cps.c using lbm_cadr
85cd864a update changelog
6d2c8685 work on manual
5203a64f work on manual
63ebbae2 work on manual
4a146954 work on manual
19a0d06f work on manual
91c1d992 work on manual
ab393f46 work on manual
26309199 work on manual
c474931b work on manual
1a822e8d work on manual
648f6433 work on manual
6737828a work on manual
2d8e7084 work on manual
3a834fce work on manual
7ae1b342 work on manual
bc5b1fd0 work on manual
d3b6ec4d work on manual
654d70f8 writing on the manual
0d66dda6 tweak readme
d846ea3b update README
2c18d1a6 small tweak
bd9f80e5 allowing more characters in symbols
61827fc2 remove the prelude library in its current form. It is still available in the REPL
f1dcea8f small tweak benchmarking code
3a761cee update manual
e9898b19 make the prelude functions load dynamically when needed by the repl and test-system
714be360 update manual
e1804e3e update lbmref, renamings
508d167c Update README.md
6f3207fa Update ch1_introduction.md
6562daef Update ch1_introduction.md
76b48adf work in progress proramming doc
91c44751 fix repl-cps makefile to correctly build deps
54e66b25 remove lbmref.dox
f0c90ffd update reference manual
5b577572 fix potential bug in cont_application_start
git-subtree-dir: lispBM/lispBM
git-subtree-split: db80cb7dd05eef9e71980a55ff7987118c32c6e9
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
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
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
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
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
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
d820e066 renamed the array extensions
f80d5936 some additions to documentation
4c499d52 version
git-subtree-dir: lispBM/lispBM
git-subtree-split: d820e066e98d90ec94b91f16f43b809d10bbd1f3
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
c6d5de99 GC is variable aware, pretty untested but does not break existing tests
1a872278 variables that GC is NOT aware of
b4a83ec4 fix tests and symrepr_init
6b5bee7d clear out extension table upon init
git-subtree-dir: lispBM/lispBM
git-subtree-split: c6d5de99af47caabc6ecd3fcbb49bd5584c08a1f
1c2be895 extensions lookup is in an array and extensions occupy a specific range of symbol values
git-subtree-dir: lispBM/lispBM
git-subtree-split: 1c2be8958f937edf8a5fed394f88f55ca9eab382
0535cf11 version 0.1.0
f7c1b0d1 fix bug in last commit and remove dead code
305d3dce change behaviour of spawn to take a closure + arguments. No multi-spawn in one call anymore
93697f7a cleaning and restructuring in the evaluator
1e0d70f8 tuning evaluation of functions some
419e34fd small tweaks doxy
84bec750 Removed the nil-entry from the environment. It should make no difference
09868fea update doxy
f02a9087 fixes to doxy
d2087165 more doxy and fix fundamental array operation
488a4c35 update doxy
799328fc update language ref man
050c34b9 more doxy work and some small tweaks to reader when it comes to quotes
3948e566 added bitwise operations
e777189b zephyr example compiles, testing needed
426b71e4 doxy planning
8264fd37 shift left and right
5a61bf41 tweak readme
c82f587e accepting that eval-program is a very predatory operation
728b6511 doc tweaks
41aedc57 update to doxy
7a53228e added function for sharing of arrays from C to lbm. little bit of doc. TODO: test arrays
c4931b4a small update to doc
3e7f31fb small additions to doc
8325bf09 user now has to provide a recursion stack fro the print_value function
f1fdd5f7 The GC recursion stack has to be provided by the user now
git-subtree-dir: lispBM/lispBM
git-subtree-split: 0535cf11214a6ba8c81f86929deaad34c30b3790
1108de58 added possibility to take n steps in the evaluator
9fb1863e added match-binders for u32 and i32
b591bd3e fix to match that allows matching on boxed types
git-subtree-dir: lispBM/lispBM
git-subtree-split: 1108de58965232fcfb2cb173db6e8696319f1bb5
9559204f added lbm_define to allow definitions to be added from C
d5390ade added a pause function that performs GC if less than N elements are free
9f7f015b mostly just rearrangements
2e96957d bugfix related to read after changes to array representation. New test added that shows a problem with read-program, this is a bit of a puzzle to solve. Something to ponder on for a while
aa6bfff9 can read multiple values from array to a list.
8b8daa6d Nothing of magnitude
313806c9 more preparations for lbm arrays pointing to C memory
9b361ba8 preparing for arrays that are shared between C and lbm. Dont know yet what to do about the possibility of concurrent modifications to these arrays
39257a5a doxy fix renamed files
955a5a2c update to doxy, still lots to do. Rename one file.
ae0d140f adding some built in functions for encoding and decoding to and from lists of value representing bytes
git-subtree-dir: lispBM/lispBM
git-subtree-split: 9559204fcfd0b403fdec524910c10d8bd57d0437