Commit Graph

230 Commits

Author SHA1 Message Date
Benjamin Vedder 999e87e80d Squashed 'lispBM/lispBM/' changes from 202b5763..55553f58
55553f58 hash table of environments for faster lookups
4c559b1f small tweak to env lookup
ef9dead0 A fix to a bug in GC handling of callcc continuations. Temporary, may change fix approach later
63868a8f closed a waring in array extensions
3135b7ec update of benchmarking with a sort benchmark that runs sort 10 times on 500 elt
44ec82cd remove a file that is nolonger in use
123717aa upped version

git-subtree-dir: lispBM/lispBM
git-subtree-split: 55553f580b75dfd66ab00491ed4ff234daf31b0b
2024-01-08 20:40:17 +01:00
Benjamin Vedder ab9308b49e Squashed 'lispBM/lispBM/' changes from b718cb68..202b5763
202b5763 tweak readme
47fa2f64 update doc with merge and sort

git-subtree-dir: lispBM/lispBM
git-subtree-split: 202b5763899dd1dde0b9ae1a24aa27605a1efb25
2023-12-23 20:39:28 +01:00
Benjamin Vedder c13616c367 Squashed 'lispBM/lispBM/' changes from 1dc61723..b718cb68
b718cb68 bugfix in MAP protecting function application against GC

git-subtree-dir: lispBM/lispBM
git-subtree-split: b718cb6839995460515a3db8ca64743e55a5d61a
2023-12-23 12:20:36 +01:00
Benjamin Vedder 890cda9c53 Squashed 'lispBM/lispBM/' changes from ad49766e..1dc61723
1dc61723 bug fix in sort, reordering of operations to keep sublist safe from GC

git-subtree-dir: lispBM/lispBM
git-subtree-split: 1dc61723743b6300130ea4e666a9bb1921d5e8ec
2023-12-23 10:56:27 +01:00
Benjamin Vedder 62867b118b Squashed 'lispBM/lispBM/' changes from 928f96dc..ad49766e
ad49766e sort and merge can now be applied to an operator or an extension to use as the comparator

git-subtree-dir: lispBM/lispBM
git-subtree-split: ad49766ee024b5c30419824dbdf91c7b340e424d
2023-12-22 20:05:35 +01:00
Benjamin Vedder 1103b2dc78 Squashed 'lispBM/lispBM/' changes from acf53419..928f96dc
928f96dc bugfix related to environment creation for comparators in merge and sort

git-subtree-dir: lispBM/lispBM
git-subtree-split: 928f96dc047aa9927081a3892f78226c8fef321c
2023-12-22 16:40:38 +01:00
Benjamin Vedder 34a6d59e73 Squashed 'lispBM/lispBM/' changes from 1405c6a8..acf53419
acf53419 added another sorting test
05b72f26 first attempt at a built-in merge-sort operation.
1f5504f4 added a built in merge primitive operation. needs more testing.

git-subtree-dir: lispBM/lispBM
git-subtree-split: acf5341938e4929202da1128678ce2592300be1a
2023-12-22 10:44:30 +01:00
Benjamin Vedder c686f07ec1 Squashed 'lispBM/lispBM/' changes from d3da43bf..1405c6a8
1405c6a8 bugfix in setq related to saving the environment
1b4f84df added gc tests

git-subtree-dir: lispBM/lispBM
git-subtree-split: 1405c6a8d857c6af55606902b5a52ce64d712c2f
2023-12-10 14:07:56 +01:00
Benjamin Vedder 6a30c998a6 Squashed 'lispBM/lispBM/' changes from d005f690..d3da43bf
d3da43bf changes to shrink
2274ac39 fix bug in recent special character tokenization
70b27aba added literal forms for special characters. for example \#\n for newline
b4c26ff1 small teweaks to fundamentals
c141b053 removed partial application and upped to version 0.21.0

git-subtree-dir: lispBM/lispBM
git-subtree-split: d3da43bf05cb34ccf622afaa8461781ad8395e5f
2023-12-04 11:46:11 +01:00
Benjamin Vedder 69aa99bbde Squashed 'lispBM/lispBM/' changes from 093a6a88..d005f690
d005f690 sleep is now built-in
0d1a9574 sharing more code between let and loop
59a713c3 updated benchmarks with 2 new additions
b891468a added a loop form that borrows a lot from LET. it may be possible to turn let into a special case of loop later
eb02f779 some organising and comment type fix
6a64d8ae fix bug that snuck in while consolidating MAP
414eb2f6 consolidating MAP_FIRST and MAP_REST into a single MAP continuation.
67b4e2a2 update readme

git-subtree-dir: lispBM/lispBM
git-subtree-split: d005f690c4d753ddb625898c21a56b0f3f7dcc38
2023-11-22 14:53:49 +01:00
Benjamin Vedder 87c09f6851 Squashed 'lispBM/lispBM/' changes from ba29529d..093a6a88
093a6a88 Marking environments with a while loop over the proper list structure

git-subtree-dir: lispBM/lispBM
git-subtree-split: 093a6a887ffa33a198cfb10935aeb8c891b1289e
2023-11-06 20:00:05 +01:00
Benjamin Vedder 04e958cc5b Squashed 'lispBM/lispBM/' changes from 1bf58d0a..ba29529d
ba29529d small fixes

git-subtree-dir: lispBM/lispBM
git-subtree-split: ba29529de3e150af35e096a0f98505c377e4b0e2
2023-11-06 11:53:11 +01:00
Benjamin Vedder e2a96ddc9a Squashed 'lispBM/lispBM/' changes from 5bc9cc72..1bf58d0a
1bf58d0a added a mutex that locks the GC mark phase when using pointer reversal. When accessing the heap randomly this lock should be obtained first as the heap is not traversible while pointer reversal is in play
e02c783d Merge branch 'master' of github.com:svenssonjoel/lispbm
bf060a9f warning when using ptr_rev gc (needs more testing
4b827db3 added tests

git-subtree-dir: lispBM/lispBM
git-subtree-split: 1bf58d0a654f10e1992edfccda1eea6e6d201a3a
2023-11-06 11:44:18 +01:00
Benjamin Vedder 9417ed7f38 Squashed 'lispBM/lispBM/' changes from ae675bb2..5bc9cc72
5bc9cc72 update readme
20763667 added a number of GC tests. all of which pass under both garbage collection principles.
8f0f9f04 first attempt at pointer-reversal mark phase. This mark implementation is disabled per default and can be tried out by building with -DUSE_GC_PTR_REV
6f4b7899 refactor closure application and addition of several error-suspects in fundamental operations
34942ef9 undo some changes related to error_reason and some cleaning
f046c967 added lbm_set_error_suspect to allow setting a more relevant expression likely to be guilty of an error to an error message

git-subtree-dir: lispBM/lispBM
git-subtree-split: 5bc9cc726803bc65c8853ccd1c99a44bc5de5063
2023-11-06 09:41:15 +01:00
Benjamin Vedder 27f5bb5b32 Squashed 'lispBM/lispBM/' changes from c99bf0f6..ae675bb2
ae675bb2 improvement to a number of error messages
c8b0f6a9 Improved a number of error messages
b9334921 changed behavior of set family of functions when setting an unbound variable. Now set of unbound results in an error
b373817a removing some now dead code

git-subtree-dir: lispBM/lispBM
git-subtree-split: ae675bb2f61aa99f09a42e3a687979beb1b4712e
2023-11-01 08:37:18 +01:00
Benjamin Vedder 11dce840a7 Squashed 'lispBM/lispBM/' changes from 93b566b8..c99bf0f6
c99bf0f6 Fix bug related to handling of flat value buffers created either from lisp (flatten) or from the event handling system

git-subtree-dir: lispBM/lispBM
git-subtree-split: c99bf0f6fd9b10a7cb005b8a4be08a0a550f06a2
2023-10-22 15:43:01 +02:00
Benjamin Vedder badbe615c6 Squashed 'lispBM/lispBM/' changes from 9e5d4044..93b566b8
93b566b8 removed a call to lbm_free from unflatten
68635765 removal of dead code, removal of pointless conditional in lbm_memory_shrink and switch to structural equality in comma-qualified symbol matching
9470f8ba small update to flatten_value that removes an superfluous call to finish_flatten
f8470b0f update cr note in lbm_memory
8b70f8ed added 0 check for malloc and malloc_reserve
87311c92 modification to how GC handles constant values. incremented version
344ce225 added a lbm_get_gc_stack_size function for easier access to this field

git-subtree-dir: lispBM/lispBM
git-subtree-split: 93b566b8a7c63f566c3408140bba01976163783b
2023-10-22 12:47:00 +02:00
Benjamin Vedder 7e82cff0b9 Squashed 'lispBM/lispBM/' changes from 948bb6bc..9e5d4044
9e5d4044 gc stack is allocated from lbm_memory, it is possible to resize the gc stack by allocating a new one and replace the old. see runtime_extensions for example
77561a9e added a function that returns maximum gc stack level and added an error message when GC stack exhausts
4dfcabf1 added a callback for when a critical unrecoverable error occurs so.
63919e22 Slight opmitmization of stack usage in GC mark phase
38c677e9 Merge branch 'master' of github.com:svenssonjoel/lispbm
fd88cd7e Small overlook of match machinery with minor changes to environment handling and gc roots
173e256b added test of match
0478d16c added 3 tests of match

git-subtree-dir: lispBM/lispBM
git-subtree-split: 9e5d4044c2d36efdd01b080d0db150186922a6d7
2023-10-06 15:54:52 +02:00
Benjamin Vedder 369b723a16 Squashed 'lispBM/lispBM/' changes from 3047e3a3..948bb6bc
948bb6bc fix example evaluator with resent changes
c1a4112b added test of var definition already existing overwrite
2bedc6fb added a test of setq and progn-var
cfe513eb added a test involving setq and closure environments
9eaef7e5 removing a plethora of needless assignments
f38f20bb fix bug related to incremental read having an incorrect flag
512acc16 merge
03727930  fix problem in assoc and cossa
46825aab fix concerning floats on 64bit version

git-subtree-dir: lispBM/lispBM
git-subtree-split: 948bb6bc44c60d63eed89de0aad100d9b281d17d
2023-09-26 16:21:00 +02:00
Benjamin Vedder ce6914364a Squashed 'lispBM/lispBM/' changes from fa3a730e..3047e3a3
3047e3a3 fix bug in unblock_unboxed when unblocking with an error value
0a87a87e extra name parameter to lbm_c_interop program evaluators
04ac2fd1 removed the wait-for flags for lack of use

git-subtree-dir: lispBM/lispBM
git-subtree-split: 3047e3a30e186c58d4f5461c98a4cbcd896c9455
2023-08-28 08:12:30 +02:00
Benjamin Vedder d7dfb53109 Squashed 'lispBM/lispBM/' changes from a33d675a..fa3a730e
fa3a730e added an extra condition to writing symbols to flash, the reader must now be incremental for this to happen
3b7c98b0 addition to lbmref

git-subtree-dir: lispBM/lispBM
git-subtree-split: fa3a730e3e9d90da3ea9732addd5a687af03eea7
2023-08-08 12:50:50 +02:00
Benjamin Vedder b60ecc8a2d Squashed 'lispBM/lispBM/' changes from a20fb514..a33d675a
a33d675a Profiler interface changed. Profiler now also reports system overhead in a category by itself. System overhead will be large if all you have are threads that do not use up their quota.

git-subtree-dir: lispBM/lispBM
git-subtree-split: a33d675ad1befd1f8046a8a3010f3afaa89db907
2023-08-06 14:47:04 +02:00
Benjamin Vedder 902c8139f8 Squashed 'lispBM/lispBM/' changes from db03ff7b..a20fb514
a20fb514 flatvalues are now just normal byte-arrays

git-subtree-dir: lispBM/lispBM
git-subtree-split: a20fb514b61bfee0002b02dff148bd6f528c6ed9
2023-08-03 19:46:34 +02:00
Benjamin Vedder 8701f9ad06 Squashed 'lispBM/lispBM/' changes from 1c98f534..db03ff7b
db03ff7b Made flatvalues identical to arrays beyond the first dereference
deca3f3f undoing an undo related mistake
21b2bc52 flatvalues can now be converted to byte-arrays using fv-to-a and back to flatvalues using a-to-fv

git-subtree-dir: lispBM/lispBM
git-subtree-split: db03ff7b29dd9ca1ba1206979ea2d0a215cac359
2023-08-03 16:59:46 +02:00
Benjamin Vedder ba1bc1e669 Squashed 'lispBM/lispBM/' changes from 7ed5cc62..1c98f534
1c98f534 moving array variable in flatten_value toavoid being clobbered by longjmp

git-subtree-dir: lispBM/lispBM
git-subtree-split: 1c98f534bb2e1fb059175d0ceef407aa25a4e4b2
2023-08-03 10:24:13 +02:00
Benjamin Vedder bc8abddbc1 Squashed 'lispBM/lispBM/' changes from c1b12e9d..7ed5cc62
7ed5cc62 simplifying eval_symbol a small bit
a378c2e2 cleaning and streamlining with a small performance benefit as bonus
f4661119 removed unused statistics fields from heap_state (functionality kind of duplicates profiler). Small reorganization of eval_symbol
96a118e5 tightened up the run_eval loop a small amount
574309a6 Laptop charger just exploded so uploading what I have locally. Additions to profiler and tweaks to GC
0278230b Added arithmetic stress tests
b0ad9619 added additional arith stress tests
5cb11cdf update lbmref and lbm_version.h
04d8483b Unified sleep and blocked queue, added profiler. Needs documentation and additional testing (WiP)
4a709753 timeout functionality added and restructuring of queue handling in main loop. Much testing needed
e2605f7b flatten value calculates the size of the memory buffer needed to create a flat value. flatten now takes only one argument, the value to flatten.
b79455aa added match test for const block
df35d9a6 attempt fix of issue showing up in pattern matching from constant code.
0021d4c5 removed left over printf and fix in flatten that could leak memory
a7abb204 flat values are now part of the language. lisp values can be flattened and unflattened. Added kill function for termination of threads
ea58c616 Added a flat value constructor for symbol as string

git-subtree-dir: lispBM/lispBM
git-subtree-split: 7ed5cc621360d19577c5b14836c5ecd9fd608a1d
2023-08-03 09:53:38 +02:00
Benjamin Vedder 7bbb5e9f26 Squashed 'lispBM/lispBM/' changes from c53ee21f..c1b12e9d
c1b12e9d Fix bug: Attempt GC if creation of a symbol fails. Also added error reasons to string extensions and changed some eval_errors to type_error
141e7fb1 update lbmref
ae677d30 added a section about flash directives and functions in flash memory

git-subtree-dir: lispBM/lispBM
git-subtree-split: c1b12e9d2e30d6d6f611ed0edf905b067a43c9ac
2023-07-07 14:07:23 +02:00
Benjamin Vedder 7b5d568437 Squashed 'lispBM/lispBM/' changes from bad046b0..c53ee21f
c53ee21f fix lbmref
cecd5f29 update buclear in lbmref
4c7dad51 Storing symtable list structure in flash when @const-symbol-strings is active
ad974fbf setting flash string counter to 0 at init of symrepr
dbc14c56 added an @const-symbol-string evaluator flag for storage of symbols in flash memory

git-subtree-dir: lispBM/lispBM
git-subtree-split: c53ee21fbaae7f419e096914d2bc5d8528037d88
2023-07-05 15:01:47 +02:00
Benjamin Vedder 96c9007314 Squashed 'lispBM/lispBM/' changes from 5f69e529..bad046b0
bad046b0 indentation fix
e7115787 bump version
fc2646ac slight improvements in read errors.
a3389b91 added env-get and env-set to runtime extensions
9ddb702d cleanup
b7472ae2 more details on flash error temporarily
0db26c7f slight cleanup, should be equivalent

git-subtree-dir: lispBM/lispBM
git-subtree-split: bad046b0ce19871caecdf061890744e6daaed095
2023-07-01 14:51:26 +02:00
Benjamin Vedder 98000a107d Squashed 'lispBM/lispBM/' changes from b97cecac..5f69e529
5f69e529 cleanup dead code and left over printf after quasiquotation refactoring
80eac1a7 fix bug in quasiquotation expansion
a83fce26 remove duplicated line of code

git-subtree-dir: lispBM/lispBM
git-subtree-split: 5f69e5290b1d423fa35264849434927bce33c4c0
2023-06-21 11:31:35 +02:00
Benjamin Vedder 26cea34cf5 Squashed 'lispBM/lispBM/' changes from 48d50c69..b97cecac
b97cecac removing an unused function

git-subtree-dir: lispBM/lispBM
git-subtree-split: b97cecacc1555909d70ad0129ed5499574abb17a
2023-06-18 21:24:45 +02:00
Benjamin Vedder 4f511b67fa Squashed 'lispBM/lispBM/' changes from 64ec946a..48d50c69
48d50c69 Merge branch 'dev_gc_test'
77de6dbb tweak fundamental
3177a31f  fixes in reader and dynamic read.W
504c0c28 towards always gc debugging

git-subtree-dir: lispBM/lispBM
git-subtree-split: 48d50c695a577783379530c60f8942d76b142314
2023-06-18 14:58:29 +02:00
Benjamin Vedder 8cc20f5d2b Squashed 'lispBM/lispBM/' changes from 9b0d5f30..64ec946a
64ec946a tweak, potential fix array-to-flash
4c9d2b2e fix in writing array to flash. and revert of map
3f2693d8 experimental change in write array to flash
f341cf37 Fix a bug in MAP

git-subtree-dir: lispBM/lispBM
git-subtree-split: 64ec946ab7196efabd5375a0206e87dc65d1dd40
2023-06-16 20:37:28 +02:00
Benjamin Vedder 86ac820c68 Squashed 'lispBM/lispBM/' changes from 02887bfd..9b0d5f30
9b0d5f30 fix bug in lift_array_flash found by Benjamin

git-subtree-dir: lispBM/lispBM
git-subtree-split: 9b0d5f30250b74b7483a0d5e2c6339c6035e08b8
2023-06-13 06:34:35 +02:00
Benjamin Vedder f6eeba8336 Squashed 'lispBM/lispBM/' changes from 15fd3dea..02887bfd
02887bfd Change implementation of car family in evaluator for immediate termination on error
7517c2e1 bug fix in wait-for and addition of a few tests
275a8e46 removed pointless usage of WITH_GC
143d024c bumped version
a4836c7d closing a number of warnings when building 64bits. some still remain
e61c28e9 closing some warnings on 64bit build - lots to go
68a09916 a small amount of cleaning.
bd91e152 wait-for + trigger mechanism has been added, but is untested
70c82228 adding tests of undefine
003887d8 fix severe bug in undefine
bdc30576 Added two undefine tests
4e694bc8 experimental wake-up lbm task framework, work in progress
38068776 cleaning and refactoring
7e814674 cleaning and consolidating
b05615fa cleaning and consolidation of functionality
2b986f7c small refactor for
ce05734d removed dead code in evaluation of the progn continuation
9eeae272 made global env a static variable in env.c
1eacbf3f refactoring. may save a few cpu cycles in list allocation and GC

git-subtree-dir: lispBM/lispBM
git-subtree-split: 02887bfd12a8d98f2e6f73b3dbd38b9ec222358a
2023-06-12 11:49:07 +02:00
Benjamin Vedder 2e82399a2f Squashed 'lispBM/lispBM/' changes from c097f5c6..15fd3dea
15fd3dea change order of arguments in take and drop
14d19c68 added tests of spawn
476845e4 fix bug in spawn argument handling

git-subtree-dir: lispBM/lispBM
git-subtree-split: 15fd3dea56f361967ba69e69a8e37026f33dcd0b
2023-05-22 09:21:20 +02:00
Benjamin Vedder d664184ef8 Squashed 'lispBM/lispBM/' changes from 6a448aa3..c097f5c6
c097f5c6 cleaning pass and refactoring
5384d522 refactoring application experiment
087ede4e refactor: readability, clearity and in some places - to a small degree - correctness
89575d8b small change to one event test
ba6e7fa7 logged change
16ac6bd1 logged change
089468b3 removing make-env. in-env in the interest of keeping core language small
f18015f7 Merge branch 'master' of github.com:svenssonjoel/lispbm
5b19dfda simplification and readability refactoring.
8c492889 Update gotchas.md
754221b9 Update gotchas.md
a0931bac bump version
e49071dc Changed behavior closure application to zero args. Application of a continuation (call-cc) with 0 args still uses the old approach where 0 args is equivalent to application to nil
35f495f3 mini tweak readme
fdd01ff1 update README
b21a3fa7 Update gotchas.md
92d9f561 update gotchas
0d708de7 bugfix in incremental reader and addition of a gotchas.md file for edge-case behaviors
d9a38456 updated lbmref with take and drop
86b1cc1b take, drop, change to make-env returned result
ea29f5ec added take and drop as built-in primitives and change to result env for make-env
55a5b1f5 added some tests and  a small amount of doc
e2d2f745 tweaks
bccdee1f make-env and in-env
3a03232a added make-env and in-env for library-encapsulation
e5b5ba66 mini tweak
dce87812 removed extra ;
190b4d9e mini tweak
6864fa32 fix repl after removal of reading_done callback
ea3aba39 removed reading_done_callback and made the nonsense default variants for all remaining callback
427cb37c bugfix read-program, tightening up,  cleaning
119d9fd3 refactoring and tightening up
10573404 cleaning and readability
63b750b5 small tweaks
d44c8bdc bug fix related to row numbers in error messages while doing incremental read. Now more precise.
d0125bd1 refactoring for readability. setjmp/longjmp for escape from deeply nested errors.

git-subtree-dir: lispBM/lispBM
git-subtree-split: c097f5c66bd539442a48d41a66da1c657af502a1
2023-05-22 08:17:23 +02:00
Benjamin Vedder a39b0a9081 Squashed 'lispBM/lispBM/' changes from 3cc45a57..6a448aa3
6a448aa3 fix bug in the bug fix of read-eval-program

git-subtree-dir: lispBM/lispBM
git-subtree-split: 6a448aa3bf0bbd6b2b11127e983733563e51579d
2023-04-14 18:51:46 +02:00
Benjamin Vedder f84fb8ea28 Squashed 'lispBM/lispBM/' changes from c9034e4a..3cc45a57
3cc45a57 remove left over printf

git-subtree-dir: lispBM/lispBM
git-subtree-split: 3cc45a579eda265e4622e371800ca1c345c73771
2023-04-14 15:33:55 +02:00
Benjamin Vedder 8897516ade Squashed 'lispBM/lispBM/' changes from 95368f36..c9034e4a
c9034e4a fix bug related to incremental read-eval-program
018cc540 added one more const_array sharing test

git-subtree-dir: lispBM/lispBM
git-subtree-split: c9034e4aed0bb437c90c8e8d5dab14e7d6c14ab3
2023-04-14 12:39:14 +02:00
Benjamin Vedder eb0114b4dc Squashed 'lispBM/lispBM/' changes from aa1d5026..95368f36
95368f36 fix bugs in read program

git-subtree-dir: lispBM/lispBM
git-subtree-split: 95368f36e96d4a370ba6b00a01e2924187490823
2023-04-13 20:34:47 +02:00
Benjamin Vedder 54d22a9e44 Squashed 'lispBM/lispBM/' changes from 99c9dbf5..aa1d5026
aa1d5026 bug fix related to row numbering when doing incremental read
08138fd6 refactoring for readability and to a small degree code size-perhaps
b4a5306c adding another flash test2
ee03dc5e rough estimation of row-of-error if using the incremental reader
493c7a45 added a way to share a constant array from C to lbm in a way that lbm understands that it is constant
f973fb34 small tweak to evaluation_step
b2c136b4 removing a unused field from lbm_context_t
403a74b9 small tweaks to eval_cps
423aa39c small tweak lbmref
5a47f414 small tweak readme and small tweak lbmref
28bfb297 small tweak lbmref

git-subtree-dir: lispBM/lispBM
git-subtree-split: aa1d5026fbd01525c9511e6284447b60806d9a33
2023-04-13 17:01:12 +02:00
Benjamin Vedder 319bae781a Squashed 'lispBM/lispBM/' changes from 3fc70a5c..99c9dbf5
99c9dbf5 assoc/cossa fix and refactoring/renaming of  internal funktions

git-subtree-dir: lispBM/lispBM
git-subtree-split: 99c9dbf5c450eea8eeb6325bbdbfdf56929abc5e
2023-04-06 20:33:01 +02:00
Benjamin Vedder 26ec05af09 Squashed 'lispBM/lispBM/' changes from c6dcb06d..3fc70a5c
3fc70a5c Changing a number of fatal_errors to stack_errors and bugfix related to 64bit lbm

git-subtree-dir: lispBM/lispBM
git-subtree-split: 3fc70a5c88c7b6f0afe9f8e288bf4d918dbc50c4
2023-04-06 17:55:51 +02:00
Benjamin Vedder 3128d0232f Squashed 'lispBM/lispBM/' changes from 32ad511c..c6dcb06d
c6dcb06d remove left over debug printf

git-subtree-dir: lispBM/lispBM
git-subtree-split: c6dcb06d0d2523a3c857c7587acb3ebd454aab33
2023-04-06 14:11:02 +02:00
Benjamin Vedder 9ef3986a97 Squashed 'lispBM/lispBM/' changes from d643c620..32ad511c
32ad511c fix bug in reverse that is triggered by reversing a constant list
4864ee9e fix bug showing up evaluating a cond from flash
2c228d19 bug fix related to arithmetic involving constant values
54ac82ce fix bug that shows up at the end of a parse stream when reading incrementally
35df6a53 tests of read-eval-program
fffdb7cb readability and perhaps to a small degree code size
17bde5c3 Check that in flash 0xFFFFFFFF is only over written with something other than that once in the tests

git-subtree-dir: lispBM/lispBM
git-subtree-split: 32ad511c3f7bddd25350557be2e4d081d61caece
2023-04-06 13:58:44 +02:00
Benjamin Vedder a7c6af631b Squashed 'lispBM/lispBM/' changes from 463551a4..d643c620
d643c620 lbmref update

git-subtree-dir: lispBM/lispBM
git-subtree-split: d643c6205c7840617a7d41ec53f362116160c099
2023-04-05 15:51:52 +02:00
Benjamin Vedder acbd360c00 Squashed 'lispBM/lispBM/' changes from 6ec57e70..463551a4
463551a4 added @const-start @const-end syntax to automatically apply move-to-flash to variables defined in such blocks
ebe7b66d slight refactoring of move-to-flash continuations
6a2a8c2d bugfix string-extensions and some cleaning
351bdea0 added read-eval-program for incremental read, keeping old meaning of read-program. Some cleaning and refactoring

git-subtree-dir: lispBM/lispBM
git-subtree-split: 463551a4d5cd42e7d19f5156913a020726a05088
2023-04-05 14:35:12 +02:00
Benjamin Vedder 7c81f379ba Squashed 'lispBM/lispBM/' changes from cb75bd53..6ec57e70
6ec57e70 fix array check in array-extensions

git-subtree-dir: lispBM/lispBM
git-subtree-split: 6ec57e700e390ba1751b69dcbc9c961b0cdb2318
2023-04-04 19:38:19 +02:00
Benjamin Vedder a2113852e9 Squashed 'lispBM/lispBM/' changes from 5659e40a..cb75bd53
cb75bd53 closing warnings
aac53389 repl modification and warning closing
0d7a3006 added array-create alias for bufcreate
5e2e1552 lbm_dec_str decodes both const and non-const arrays

git-subtree-dir: lispBM/lispBM
git-subtree-split: cb75bd53098fd61c453004681d36a1f00534f128
2023-04-04 16:53:18 +02:00