Web Embeddable Common Lisp

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins

2025-08-21
12:27
Fix more typos in the blog post Leaf check-in: a491dfe50b user: jack tags: shadow-dom
12:25
Fix typos in the blog post check-in: 97631b2cbb user: jack tags: shadow-dom
11:56
Finish the blog post check-in: 381da4db3e user: jack tags: shadow-dom
2025-08-20
13:00
Start writing a blog post check-in: 6629a4cd1e user: jack tags: shadow-dom
2025-08-19
13:31
Rework LIME to not use an intermediate process check-in: 2446723506 user: jack tags: shadow-dom
12:31
Move DOM-specific functions to dom.lisp check-in: 4b668c9a32 user: jack tags: shadow-dom
10:02
Smaller builds (remove .git from shipped swank) check-in: 7066b2c116 user: jack tags: shadow-dom
2025-08-15
20:13
Correctly coerce CL strings to JS strings in evaled FFI check-in: 1908cfbf93 user: jack tags: shadow-dom
13:53
Better support for cross-origin boot check-in: e33382736e user: jack tags: shadow-dom
11:07
Full support for ASYNC connections on both SLUG backends check-in: 004638243f user: jack tags: shadow-dom
07:49
Improve LIME handling and closing multiple connections check-in: 73c34e6769 user: jack tags: shadow-dom
2025-08-14
15:00
Ensure that ASYNC messages from SLIME are complete check-in: 2006b0b743 user: jack tags: shadow-dom
13:57
Make connections from the browser work check-in: 71d09a357a user: jack tags: shadow-dom
2025-08-13
18:09
Add :ASYNC communication style to FRIG check-in: dac8421f30 user: jack tags: shadow-dom
12:39
Refactor streams defined for swank adapters check-in: 52ae1ea6ba user: jack tags: shadow-dom
08:24
slug: move blocking logic to frig.lisp check-in: e531fe3825 user: jack tags: shadow-dom
07:27
Ensure that test webserver does not cache files check-in: 35febeedd5 user: jack tags: shadow-dom
07:04
Frig uses now :spawn communication style This is because nil (for single-threaded connections) is buggy especially because of blocking reads. check-in: f526147f55 user: jack tags: shadow-dom
2025-08-12
12:53
Move connection logic to a backend - it will different between wank and frig check-in: cc39c450d4 user: jack tags: shadow-dom
10:33
A preliminary (and working) SLIME connection via Websocket check-in: 974df91c10 user: jack tags: shadow-dom
2025-08-10
18:39
[wip] frig: represent i/o as a buffered stream check-in: 996fdd1af1 user: jack tags: shadow-dom
2025-08-09
17:12
Further frig hacks check-in: ad1ad66ebb user: jack tags: shadow-dom
11:25
Towards working SLIME connections check-in: ca5a1f17ac user: jack tags: shadow-dom
2025-08-08
21:01
lime removes the process on close and sends binary data check-in: 17be4f683d user: jack tags: shadow-dom
18:36
Add test code for lime using websocket-driver check-in: d8114735b9 user: jack tags: shadow-dom
13:16
Figured out how to pass byte arrays to js (!) check-in: d4f48d6e3a user: jack tags: shadow-dom
12:39
Further work on SWANK integration check-in: 2ccd1d7f5f user: jack tags: shadow-dom
2025-08-07
18:57
Add a new file lime.el for a WS SLIME shim check-in: 7b9fd668c2 user: jack tags: shadow-dom
12:30
Preliminary work on WebSockets and SLIME check-in: 1cbf9e3f1d user: jack tags: shadow-dom
2025-08-06
12:38
Don't require recompilation step for the demo website check-in: 42f84dfb46 user: jack tags: shadow-dom
11:40
Implement DEFINE-JS-CALLBACK and co check-in: 11103acf89 user: jack tags: shadow-dom
10:28
Merge from shadow_dom. Leaf check-in: 853cf8354e user: jack tags: trunk
10:27
Fix bad fossil merge check-in: 3e02f94b85 user: jack tags: shadow-dom
10:25
Update trunk from shadow_dom check-in: e4f16aedee user: jack tags: trunk
10:15
Enable variadic functions as Lisp callbacks check-in: 75dd1959cb user: jack tags: shadow-dom
08:40
Merge changes from the branch shadow-dom check-in: 3afe2a2aba user: jack tags: trunk
08:36
Allow for combining src attribute and body in <script> check-in: 250349aa12 user: jack tags: shadow-dom
08:12
Allow for combining src attribute and body in <script> check-in: 045b692ef4 user: jack tags: shadow-dom
08:01
Allow for combining src attribute and body in <script> check-in: fb58268ebd user: jack tags: shadow-dom
2025-08-05
12:49
Small cleanup for the REPL presentation check-in: 8affe11e33 user: jack tags: shadow-dom
11:29
Rewrite JS-FFI to respect argument types check-in: fce04f7522 user: jack tags: shadow-dom
07:17
Allow using src attribute in lisp script nodes check-in: 8724d8927b user: jack tags: shadow-dom
2025-08-04
14:24
Feature loading script blocks with lisp code There are still problems with async vs src='', but that's left for later. check-in: 9766267b65 user: jack tags: shadow-dom
10:03
Resolve printing crash mystery js-yield when called across the eval barrier corrupts the stack. That's on emscripten. check-in: f5b952612f user: jack tags: shadow-dom
2025-08-01
16:16
Fix passing js objects in callback Before this commit js references were not found in cache and produced NIL check-in: e2b4cb4e05 user: jack tags: shadow-dom
15:37
Experiments with callbacks check-in: 5e3711614e user: jack tags: shadow-dom
10:49
Better FFI between Lisp and JS, more documentation I've defined macros for JS interop and added CL references so that they can be passed to JS. Macros for defining functions and objects are experimental but I think that they won't change much. check-in: 50c6919a05 user: jack tags: shadow-dom
2025-07-31
13:03
fix js-drop function check-in: 843fb8ff45 user: jack tags: shadow-dom
12:38
Implement preliminary FFI for JS check-in: 31a4ea7c2c user: jack tags: shadow-dom
2025-07-30
14:36
Introduce a preliminary object registry This is necessary to hold javascript references on lisp side, because emscripten does not provide js object -> pointer mapping check-in: d6d3745a5a user: jack tags: shadow-dom