|
|
56c6b3f5f7
|
Messing around with fancy splash page
|
2023-12-09 01:23:30 -05:00 |
|
|
|
82c38a32cf
|
Basic tracing structure sketched with stubs in cases - need to add constant tracking and implement stubs. Still need some thought on tracing a closure vs tracing the code that created the closure
|
2023-12-01 21:36:37 -05:00 |
|
|
|
2787b95837
|
Rewrite into non-recursive defunctionalized-continuations style
|
2023-11-25 11:35:36 -05:00 |
|
|
|
656cfe95ae
|
Initial ID & func call stats!
|
2023-11-24 20:35:57 -05:00 |
|
|
|
75d025bcb2
|
Div and mod, why not
|
2023-11-19 21:56:42 -05:00 |
|
|
|
41aa05dc97
|
setup a simple lisp
|
2023-11-19 21:53:51 -05:00 |
|
|
|
774eb668de
|
Clean out, start sl JIT project (no jit yet)
|
2023-11-19 16:33:19 -05:00 |
|
|
|
c1a0608b7c
|
threading trace throughout
|
2023-07-13 23:38:42 -04:00 |
|
|
|
15cab8799d
|
swap to single struct wrapper scaffolding
|
2023-07-13 22:52:49 -04:00 |
|
|
|
6edbe7d2c8
|
Continue moving stuff around to simplify before opt, and then start sketching out wrapped values and trace - just realized we might need all values to be wrapped tohande side effects that don't depend on input but still have effects (mutation, now ugh and assert)
|
2023-07-09 00:24:50 -04:00 |
|
|
|
b077daf12e
|
Split eval.rs out of ast.rs, and rename ast.rs to basic.rs. Copy it over to opt.rs, and hook up a From<> impl and a congruent(x)->bool function, and add to main.rs and test.rs. Now we actually have to make opt.rs optimize...
|
2023-07-06 01:11:56 -04:00 |
|
|
|
f4ae4db92d
|
Move call inside form to allow for tracing (might still need a way to get out of the end of tracing)
|
2023-07-04 12:23:31 -04:00 |
|
|
|
b03122c7b8
|
Move entire Form out of eval into Trait
|
2023-07-04 10:16:38 -04:00 |
|
|
|
d6cf6a6b64
|
Dependency update
|
2023-07-02 18:09:34 -04:00 |
|
|
|
3b858eda98
|
Move primitives to enum - defunctionalized
|
2023-06-06 01:10:01 -04:00 |
|
|
|
8b9a0a0f2d
|
Start sketching bytecode generation
|
2023-05-25 02:07:01 -04:00 |
|
|
|
ce5ab1dd99
|
Implemented shift/reset delimited continuations using a defunctionalized double-CPS transformation! Basic tests work at least, there certinally could be bugs
|
2023-05-22 01:23:17 -04:00 |
|
|
|
4126e25463
|
everything uses continuations now, skeleton for shift/reset
|
2023-05-21 04:14:29 -04:00 |
|
|
|
d44480bf6c
|
contemplate parameter eval cont
|
2023-05-16 23:48:26 -04:00 |
|
|
|
093f3c0453
|
Basic continuation-ification of primitives, finally work out the Cursor/Cont devide. Still need to figure out which Cont's we need for evaluation (possibly a subset of) parameters
|
2023-05-16 23:31:58 -04:00 |
|
|
|
f82101e63f
|
Start moving eval to explicit continuation based
|
2023-05-16 01:15:09 -04:00 |
|
|
|
ea1516fbd1
|
Started new kv impl with support for mutable cells, just the basic interpreter. Going to add the lazy bytecode interperter next
|
2023-05-14 23:50:27 -04:00 |
|
|
|
82bfb5bc7b
|
small syntax expl in How it works
|
2023-04-26 00:39:08 -04:00 |
|
|
|
7431dbe4b7
|
Add examples
|
2023-04-26 00:33:08 -04:00 |
|
|
|
b2216f7574
|
Implemented many of Chris and Sharjeel's suggestions - still need to insert a worked example, and if I have time, benchmarks re-run with numbers and memory usage
|
2023-04-25 21:58:25 -04:00 |
|
|
|
9ec99a94eb
|
presentation updates
|
2023-04-24 10:48:24 -04:00 |
|
|
|
c994f1b1af
|
forgot the images
|
2023-04-23 17:25:45 -04:00 |
|
|
|
febe356575
|
new slides
|
2023-04-23 13:02:01 -04:00 |
|
|
|
0df6ce49fe
|
spell checks, adjenda
|
2023-04-18 13:02:13 -04:00 |
|
|
|
87763fad40
|
Tons of slide work, unfortunately depend on external MathJax - need to pull that down later
|
2023-04-18 01:47:10 -04:00 |
|
|
|
5054441625
|
More work including brain dumping more slides and bugfixes for memo - have found current problem, which is that a non-env se can prevent a DeriComb from pulling in valeus from a real Env frame which it's being returned from - even though this is caught, the resulting call still depends on it, marks it as such, and then it depends on a call that was real and now no longer exists.
|
2023-04-16 00:02:29 -04:00 |
|
|
|
3dcebe5297
|
Bunch of new slides with examples comparing Fexprs to Lisp's macros and special forms
|
2023-04-15 15:41:11 -04:00 |
|
|
|
f55dd236b6
|
Fix one bug, or part of one - dericomb wasn't advancing if se wasn't a legal env, but was still unioning the body IDs into it's ids which could convince it that it should be able to progress
|
2023-04-15 00:52:52 -04:00 |
|
|
|
f4b99067d4
|
More working memo that tracks used env-ids and env, fixed bugs with it too. Currently trying to track down some infinate loops caused by something that thinks it should make progress and doesn't, have an assert that notices doubles
|
2023-04-15 00:19:51 -04:00 |
|
|
|
a990809e21
|
Some slide work
|
2023-04-11 23:17:55 -04:00 |
|
|
|
f567172099
|
share background color
|
2023-04-08 14:23:56 -04:00 |
|
|
|
ee4add2fee
|
Gah my comment messed up the CSS again
|
2023-04-08 14:16:59 -04:00 |
|
|
|
ab700c12b1
|
and the RemarkJS license
|
2023-04-08 14:07:41 -04:00 |
|
|
|
cad202551b
|
Forgot we moved out to the standalone js
|
2023-04-08 14:06:07 -04:00 |
|
|
|
4e7825cb2b
|
Hack in copying code between the two editors and fix recursive.css's body style overridding the slides
|
2023-04-08 14:05:48 -04:00 |
|
|
|
6ef3392aa0
|
prototype remarkjs slides with Kraken formatting and auto-execute code in browser on slide change! Some rough edges, including two different editors between the first slide and the reveal slide
|
2023-04-08 13:38:21 -04:00 |
|
|
|
b89b831983
|
Website with changes made with/based on my graphic designer Mom's suggestions (thanks Mom!)
|
2023-04-05 21:10:04 -04:00 |
|
|
|
a06c5854c8
|
The big exponential thing was ironically Hash which was being called for memo which existed to prevent exponential behavior. Reimplmenented the caching hash, and much much faster. Still some failing tests, and bvau might be looping
|
2023-04-04 23:40:09 -04:00 |
|
|
|
8ccdfd8ab2
|
new invariant: when returned, each form is as evaluated as it can be. This means that union_into_tail is more rare, and only for recursion (if or deri) stopped items. If now also captures its environment if it's rec_stopped. Added memoization for legal env forms to try to deal with it, has helped some, still exponential behavior.
|
2023-04-02 12:48:02 -04:00 |
|
|
|
3c5bb127e2
|
Work on saving env on calls and suspended symbols, only use as env if legal. Seemingly causing exponential behavior, need to have it done incrementally... todo
|
2023-03-29 01:58:07 -04:00 |
|
|
|
8fa7acbdf1
|
Actually using the evaled param lookups with cons pairs etc - Tests failing - need to figure out how to really handle the *weird* case, and also the failing tests if the *wierd* case isn't the cause. Not sure if we need to track to prevent the dropping of the *not* redundant veval, or if the suspended symbol should hold onto the half-done env, or what
|
2023-03-27 01:27:25 -04:00 |
|
|
|
664b336a48
|
trac suspended param eval, with proper back conversion
|
2023-03-27 00:28:44 -04:00 |
|
|
|
70ac3e3633
|
Add theming and a 'slick' theme based on Inter and JetBrains Mono
|
2023-03-25 16:59:24 -04:00 |
|
|
|
049624a840
|
Baby steps towards handling non-val car/cdr (eventually cons)
|
2023-03-22 01:06:24 -04:00 |
|
|
|
85454fda79
|
unneeded anchors
|
2023-03-22 00:27:22 -04:00 |
|