Commit Graph

10 Commits

Author SHA1 Message Date
Benjamin Vedder fb303346de Squashed 'lispBM/lispBM/' changes from 445930ec..d23c7fe2
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
2022-09-23 14:04:35 +02:00
Benjamin Vedder 08c0898a0e Squashed 'lispBM/lispBM/' changes from c2e0433a..aba5cf5a
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
2022-09-20 11:32:37 +02:00
Benjamin Vedder b82ab77c6c Squashed 'lispBM/lispBM/' changes from 6f442405..28c56c43
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
2022-09-04 16:08:58 +02:00
Benjamin Vedder 85ee6ead03 Squashed 'lispBM/lispBM/' changes from 3836952f..cdfd116c
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
2022-07-06 10:18:45 +02:00
Benjamin Vedder b0e227d28f Squashed 'lispBM/lispBM/' changes from ccca9778..db80cb7d
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
2022-04-12 10:44:49 +02:00
Benjamin Vedder 9ce71962f7 Squashed 'lispBM/lispBM/' changes from 43ebce71..f3605d21
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
2022-03-26 11:13:06 +01:00
Benjamin Vedder 58daf1b609 Squashed 'lispBM/lispBM/' changes from 78047efe..6199703d
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
2022-03-10 16:29:11 +01:00
Benjamin Vedder 21f14aea66 Squashed 'lispBM/lispBM/' changes from 6a219e20..7930b985
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
2022-02-21 12:02:15 +01:00
Benjamin Vedder 84a79f8109 Squashed 'lispBM/lispBM/' changes from 1108de58..0535cf11
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
2022-02-13 14:25:39 +01:00
Benjamin Vedder fafa5c9779 Squashed 'lispBM/lispBM/' content from commit 748477b9
git-subtree-dir: lispBM/lispBM
git-subtree-split: 748477b953fbd06094fc17c1c6332bf5f9cea7d0
2022-01-29 17:26:45 +01:00