1be203ec added is_symbol_true
fbdbbc54 added is_byte_array and renamed lbm_is_list to lbm_is_cons, then created a new lbm_is_list which is also true for nil
git-subtree-dir: lispBM/lispBM
git-subtree-split: 1be203ecb48333c872f9056142d74a6f3c99b9c6
82dd1b77 removing old broken macro-expansion routine
b888dc8e various tweaks and de-inlinings of functions
git-subtree-dir: lispBM/lispBM
git-subtree-split: 82dd1b77135220091118162c9032009948e6a4d8
ebfa4c83 bugfix related to allowing parsing of underscore symbols, read_error specifically
926121ae bugfix related to allocation of arrays
603a58ea added spawn-trap and exit-ok and exit-error functions. All tests pass
git-subtree-dir: lispBM/lispBM
git-subtree-split: ebfa4c8393c071ce1babdf873d3adef17968b217
2d48bed5 found bug related to malformed tokens, should be better now but maybe not perfect
fafa3cd0 added 24bit variants of array extensions
git-subtree-dir: lispBM/lispBM
git-subtree-split: 2d48bed5b6a1bfa31427406cffaa6b7cca2b558b
0801bea4 tests of read function on string and array syntax and bug fix in tokpar related to strings
2a4757f6 Read errors report line and column again
ded9c7c7 added some float tests
git-subtree-dir: lispBM/lispBM
git-subtree-split: 0801bea42b72f1a881abc3a9bfd6cc53f68a05bb
d23c7fe2 hex values interpreted as i-type by default
1f1d8108 tokpar detect negative float correctly
945bed71 Hex literals default to u32 type but allow for type modifying post-fix declarations
b45734a3 change to find_receiver_and_send that does not dequeue-enqueue tasks already to scheduled to run and thus moving them to the end of the queue
1c2fd35d a cleaning and streamlining pass over parts of the code
aa327e42 updated the example evaluator
b21cd0b7 zephyr example repl compiles
00268635 update readme
git-subtree-dir: lispBM/lispBM
git-subtree-split: d23c7fe2cc5feeb80f183a20dd7d69677b7d6f6a
445930ec lbm_wait_ctx waits for sleeepin contexts
70291809 Contexts that are sleeping considered as message passing receivers
b99dd1df allowing 1.0e-2
d23fb19f removed unused data in eval_cps
96c45d4e added support for 1.0e3 notation
git-subtree-dir: lispBM/lispBM
git-subtree-split: 445930ec9307ad7d2863913145efd60f97a0315d
aba5cf5a added a sleeping contexts iterator
5955c062 update doc readme
bb095b49 update doc readme
54e0af08 tweak documentation readme2
ecefdcec update readme slightly
a3a97657 small tweak chapter 3
c6383fc4 update concurrency in lbmref
630f1586 removed misleading comment from test_read_2.lisp
db30bd55 added self function and another concurrency test
3f6298b0 added a self function that returns the ID of the the thread that calls it and a concurrency test
95aa4b41 added comment and did whitespace pass over tokpar.c
8822052e a tiny bit more cleanup of tokpar.c
ff7e80c5 some cleaning up in tokpar.c
6bc47c40 ESP32 example now compiles again.
eb9b7e82 update sdl example repl to work with new channels
bccbad5f added documentation to lbm_channel
git-subtree-dir: lispBM/lispBM
git-subtree-split: aba5cf5ae0579c38c44b556db125bb7343d32732
c2e0433a update
d19c1e63 some cleaning of tokpar and addition of 4 comment-tests
git-subtree-dir: lispBM/lispBM
git-subtree-split: c2e0433a936cab7ac4e67ead55948e9a1ae003bc
58e0abe5 reduced the number of calls to strlen in the string_reader.
git-subtree-dir: lispBM/lispBM
git-subtree-split: 58e0abe5a1067d9e51403c23381407996d5c1d82
a0708145 found problem with the number 120 in certain situations, fixed
61d1ab94 closing shadow warnings
git-subtree-dir: lispBM/lispBM
git-subtree-split: a070814599187a11b0492b7d865cf3b60ae014c2
4cc6358a removed uses of \#newline in test_mp.lisp
77ca267f added a channel_reader_is_closed function
e0345592 reader closes the channel when finished even on non-error
977d1439 Small tweaks to tokpar and closing some warnings related to compiling with chibios (shadow)
git-subtree-dir: lispBM/lispBM
git-subtree-split: 4cc6358ad3c377023826da6af1c0bcbab344e3fa
c0fb4af8 Streaming reading or source into the heap
540f1e9a added n-times test for low-freq concurrency bug testing
5dcf25bf update chibios examples to use new reader
7775f92d starting to look good, needs more polish...
86ecd85b On the path
b0ce4e67 tweaks to next_token
c7ed1e3d Update and discovery of nondeterministicly appearing bug
a0a1b000 Ok start
090f54e9 experiment with channel abstraction
d4c1ba41 added some tests of array syntax
git-subtree-dir: lispBM/lispBM
git-subtree-split: c0fb4af806ad8d42365a1b8695d2603f640df662
ab11994e added a number of array syntax tests
16bcb9a7 Added a check that should result in error if an array is too long to fit in memory
1a21875b small fix related to initial array size for literal byte arrays
git-subtree-dir: lispBM/lispBM
git-subtree-split: ab11994e551512c7e809a11b40f2922652bd94f0
4cf1df6f refactoring of the array-reader in preparation for future reader modifications to allow streaming of programs
6075bc8d adding some potentially dangerous omitted checks
git-subtree-dir: lispBM/lispBM
git-subtree-split: 4cf1df6f164d3a81188eb065e625455f12cbd869
28c56c43 Update README.md
d975e8b6 update readme
9e0bbcba update readme
ad38f2d0 updated readme with a note about switch of scheduler
756f2d71 Round-robin scheduling quota can be set from the C code
45edcd9d update: fix typo
dade6935 Added atomic operator
4ff6665a Mostly ok round robin scheduling at this point I think.
a6af047a experimentation and planning
e69d36e7 fair round robin scheduler running but slow
3a0e6905 Merge branch 'master' into sched0
2784f8e5 bugfix symrepr.c
c464a78e work in progress
207a0b92 Merge branch 'master' into sched0
a916a1af experimentation and preparations
b9565fbb broke out a bunch of useful definitions into an lbm_defines.h file
1fb91025 update to platform_uart for chibios
16640653 additions to chibios platform uart and some additions to string extensions
6bfbb376 added array-clear
8e2bc4a3 Improvements to revamped reader
84ff5198 Considerable rewamping of the reader - passes all tests but there are some issues to resolve
bfdf352f minor tweak
f33fde26 Modifications to uart stream in platform chibios
571a1382 low-level character stream from a uart. This has some problems!
2f49efe9 Experimentation streams
4437c69e tweaks to platform uart
dd181414 fix typo in platform_uart.c for chibios
5b9ae388 chibios repl uart tested and seems ok
49409772 untested uart extensions in chibios repl
af5d03d8 untested uart implementation for chibios repl
5bde526b added one more test case for conditionals
dceb4d26 added some new tests
0f477d09 pedantry
dc5b08d9 Some pedantic tweaks to close some jump-misses-init warnings
c5aff865 A pass to make static analysis happy
0bdd23c3 update
12a93acc update ch3 with some small tweaks
ac881933 added more text to chapter3 about concurrency and message passing
d8589b75 update
59229152 update
85ef5a79 update lbmref description of namespace
4fd7e48f added information about namespace to lbmref
b93cd379 added some tests of namespaces and updated the compressor to allow the : character
48a99c13 Merge branch 'master' of github.com:svenssonjoel/lispbm
8f019213 updated behaviour of lbm_define related to #variables and the addition of simplistic namespaces
1d824a4e Update ch3_concurrency.md
dcb2ef38 wip
a0d5971d work in progress
4c9818c6 typo
06fbaac7 work in progress ch3
26a466e0 chapter 3 in progress
f376ae8e ch3 concurrency in progress
d1399247 added some images to manual ch2
ac813050 fix bug that surfaces if no dynamic load callback is present
git-subtree-dir: lispBM/lispBM
git-subtree-split: 28c56c436d3cb621a775bb648d60660563c5352e
6f442405 updates for uniformity and readability
4e579fe1 added forgotten benchresults
25edc913 added pattern matching support for i64, u64 and double
7f86264b typo
66aa879c removed non working refs that pointed to the implementation documents at some point
10fbf778 more explanation around list
36c4915a more explanation around list
6799048b adding explanation of cons cells usage in pairs and lists
79fdabf8 experimentation
81856406 update lbmref experimentation
3ec7f39d update ref manual with information about the first and rest functions
a917effa use the built in USB com instead of UART in the esp32c3 repl example
git-subtree-dir: lispBM/lispBM
git-subtree-split: 6f442405429c4ea770ab7f0dd6dd72cba9595a3d
a9a91f17 update changelog with recent changes
02bb92ca more readability edits with perhaps small performance implications
7d8718df refactor for readability with perhaps minute performance impllications
902961b4 update lbmref related setvar
git-subtree-dir: lispBM/lispBM
git-subtree-split: a9a91f17c323002374bcdad4d88c9a4afcfb6066
cdfd116c added some tests for partial applications
46d02e9c Added the possibilty to partially apply a closure
788dfa27 debug inspection of local environments in the REPL
b28ceec1 shutting down some warnings originating in repl.c
d35ef54d small tweak example code
5fa6f453 added some sanity checking of the type of the key used in let bindings
81314729 Updates chibios xmas-dac example so that it builds again
0d1f05ca updates chibios example repl so that it builds again
4ae17fc8 small tweak to texture loading demo.
a309e37a added silly texture image for the sdl_texture.lisp example
1dc0e4e6 added texture loading extension and a blit function for drawing sprites on the window
6c249a37 proper scaling on the sleep and timestamp callbacks
e65b0b83 ESP32c3 repl up and running
24f93026 work in progress esp32 repl
958a273d work in progress esp32 repl
d4fb301b work in progress repl example for ESP platforms (esp32c3 specifically)
7e924bf6 freertos includes correctly, compiles. stiill untested
29b9e3a4 added freeRTOS platform files. Untested currently
f3931c13 update README and small tweaks
357bb438 closing one warning
205ca17e small tweak to SDL tree-demo
27c1f601 added a way to explicitly run a custom type destructor and clean up its deference trampoline
d955f26e added missing files
a94dfb5c Update README.md
0e29e692 added SDL example that draws a tree
a5417886 Bugfix in lbm_sdl.c for destructors of window and renderer
b3a0e586 Getting started with interfacing LBM and SDL2
7aa2c1d0 started towards custom types with associated destructors for when they are freed by GC
a8b33a8d safer behaviour of car and cdr in relation to pointer-types that are not really cons-cells
9fbf02ce fixed some inconsistencies
3051e8e7 update change log
8d002536 handling one warning in 64 bit compile
7794a9b2 added array tests
a83f385c Merge branch 'master' of github.com:svenssonjoel/lispbm
21c79aaf fix problem with array parsing in the case of float arrays
dc926e59 added script to generate ctags
38046a49 updates to changelog with changes up and including may 22 2022
45b5d6c0 fix potential corner case issue with call-cc on 64 bit platforms
ebb100a5 some streamlining of the bind_to_key rest continuation in eval_cps.c
1c9a7df2 Added explicit stack version of defunctionalized evaluator example
2812b7b0 added some more testcases in evaluator.lisp and evaldefunc.lisp
0393bd21 New features in evaluator.lisp and evaldefunc.lisp
c6dd4e10 found an evalutor bug related to progn thanks to writing evaluator.lisp and evaldefunc.lisp
5d1bfc75 added continuation passing style evaluator of a mini-lisp as well as a defunctionalized CPS style evaluator for the same mini-lisp
a5a6c2a2 removed commented out old code
c135b4a3 fix problem related to assoc
8ddd44cc removed some code duplication in eval_cps
c625af8e lbmref update
a1a7a4b6 lbmref update
12d9f4e9 lbmref update
git-subtree-dir: lispBM/lispBM
git-subtree-split: cdfd116c655e20bac787a2080b8c601c6bc846ca
3836952f tweak doc
37f8c948 clear extension and cleanup in doc
e7e1fd84 filled out the changelog
7d5cd0bc added two more tests of bufget
3d876227 change type return value for get_u8 and get_u16 in array_extensions
git-subtree-dir: lispBM/lispBM
git-subtree-split: 3836952f28d94c44affc6b45fadec8e3815be365
94df9e23 a bit hacky but should be in the right direction
234f9782 unused arguments
git-subtree-dir: lispBM/lispBM
git-subtree-split: 94df9e23ceeeec9d6e28b0c84f4d96a7440244cf
a136db86 Bug fix towards adding capability to dynamically load an extension
git-subtree-dir: lispBM/lispBM
git-subtree-split: a136db86d29f0808811af2d8b50ba36ca1d2a399
748a3a97 added a way to make up symbols on the fly in the extensions array. Symbol names starting with ext are allocated to the extensions table
5c934bd7 added a profiling script that uses callgrind
d5c14c2a cleaning out old unused code from heap.c
git-subtree-dir: lispBM/lispBM
git-subtree-split: 748a3a974f80c47c59a1252abc4db4cfb1fb875e
4d6badc8 Merge branch 'master' of github.com:svenssonjoel/lispbm
44b05640 adding an extension with the same name as an earlier added extension should now replace the previous extension with the new one
2e878154 added lbm_memory macros for 10, 12 and 14 K of lbm_memory
37c3bff6 store size of symbol table and provide function for getting table size and total size of strings stored in table
5658f36c fix comment
git-subtree-dir: lispBM/lispBM
git-subtree-split: 4d6badc89760869504d4dbf0e9e1c51934b10ce2
26c1b54c read errors now have line and column numbers associated with them.
git-subtree-dir: lispBM/lispBM
git-subtree-split: 26c1b54c6c4affd86dfc92cf8550c757ad42891b
be981ff1 added setix to refman and a way to block a context from a c extension together with a way to later unblock such a blocked context from C
8d4ec0e3 small tweak to the main evaluation case (function application).
289c69a6 a small tweak for closure argument evaluation efficiency
664347f4 added the lbm_stack_reserve function for allocation of multiple words on the stack in one go
git-subtree-dir: lispBM/lispBM
git-subtree-split: be981ff1f8e40b40dfa1dcbc43075e9e8ec9fa9c
90b18761 potential small improvement in argument evaluation performance
0b41ce56 added some tests of alists
git-subtree-dir: lispBM/lispBM
git-subtree-split: 90b187612f957b2bac8e8de3a3576835b20cee4b
8dbe7463 adding some short descriptions of alists to the refman
8403421f Fix a bug related to heap-lbm_memory consistency and array syntax.
55fb723f added some type-of tests and small fix in tokpar
git-subtree-dir: lispBM/lispBM
git-subtree-split: 8dbe7463e3d3b27393286b921ae245f01407a81f
5e49fad5 removed duplicated code for parsing float/double values in tokpar
c2ad1207 dropping lots of code duplication from tokpar
103d74c9 chapter 2 first draft
b7268076 fix order of arguments on acons
682aede3 update chapter 2
4d2f9546 added a bit of text to ch2
git-subtree-dir: lispBM/lispBM
git-subtree-split: 5e49fad5f379718dca03944f3dad5e8ca2776f66
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