2 #+author: Richard Westhaver
3 #+email: richard.westhaver@gmail.com
4 #+description: core task list
5 #+setupfile: ../../clean.theme
6 #+infojs_opt: toc:t home:https://compiler.company up:./
7 #+OPTIONS: num:nil d:t prop:t toc:nil
8 #+ARCHIVE: ../../archive/plan.org::** core
10 * PROJECT ffi v0.1.0 [1/8] :lisp:ffi: 12 :ID: 4de17a09-48fb-4640-b30a-e40cc1f8c330 15 - State "TODO" from [2024-08-10 Sat 22:20] 16 - State "PROJECT" from "TODO" [2024-08-16 Fri 22:57] 18 ** PROJECT rocksdb v0.1.0 [6/7] :rocksdb: 20 :ID: 6a4e51f0-f1d7-40df-aa7f-04c6d179393b 23 - State "PROJECT" from [2024-08-16 Fri 22:57] 26 SCHEDULED: <2024-08-19 Mon 20:00-22:00><2024-08-20 Tue 20:00> 28 :ID: 22e3eb0a-f3f7-4788-a90c-5ecd2df7db15 30 :CREATED: <2024-08-19 Mon 20:05> 33 - State "TODO" from [2024-08-16 Fri 22:56] 34 - State "WIP" from "TODO" [2024-08-19 Mon 20:01] 35 CLOCK: [2024-08-19 Mon 20:01]--[2024-08-19 Mon 21:03] => 1:02 36 CLOCK: [2024-08-20 Tue 19:41]--[2024-08-20 Tue 20:16] => 0:35 37 - State "DONE" from "WIP" [2024-08-20 Tue 20:19] 39 **** LINK [[file:/usr/local/include/rocksdb/c.h::/* Write batch */]] 41 :CREATED: <2024-08-18 Sun 21:44> 42 :ID: 05be05ba-4775-4feb-956f-7e52d31452bc 45 - Refiled on [2024-08-18 Sun 21:44] 49 :ID: f69ce4d5-03d3-46e1-8712-28eae841cb09 52 - State "TODO" from [2024-08-16 Fri 22:56] 53 - State "DONE" from "TODO" [2024-08-18 Sun 22:00] 55 *** DONE merge-operator callbacks :rocksdb: 56 DEADLINE: <2024-08-16 Fri> SCHEDULED: <2024-08-15 Thu> 58 :LOCATION: lisp/ffi/rocksdb/merge.lisp 59 :ID: 2f5af48c-4e9e-4e32-b6b2-a4efa6bade12 62 - State "TODO" from [2024-08-10 Sat 22:21] 63 - State "WIP" from "TODO" [2024-08-14 Wed 21:50] 64 - State "DONE" from "WIP" [2024-08-16 Fri 22:52] 65 - Note taken on [2024-08-16 Fri 22:52] \\ 66 still needs testing with actual data 69 *** DONE compactionfilter callbacks :rocksdb: 70 DEADLINE: <2024-08-18 Sun> SCHEDULED: <2024-08-16 Fri> 72 :LOCATION: lisp/ffi/rocksdb/compaction.lisp 73 :ID: 2f3d0b40-0d14-44d4-b489-97a08c9e94ad 75 :CREATED: <2024-08-18 Sun 18:52> 78 - State "TODO" from [2024-08-14 Wed 21:50] 79 - State "WIP" from "TODO" [2024-08-14 Wed 21:50] 80 CLOCK: [2024-08-18 Sun 18:51]--[2024-08-18 Sun 19:46] => 0:00 81 - State "DONE" from "WIP" [2024-08-18 Sun 19:47] 84 https://github.com/facebook/rocksdb/wiki/Compaction-Filter
87 (rocksdb-compactionfilterfactory-create nil (alien-sap (alien-callable-function 'rocksdb-destructor))
88 (alien-sap (alien-callable-function 'rocksdb-create-compaction-filter-never))
89 (alien-sap (alien-callable-function 'rocksdb-name)))
92 *** DONE comparator callbacks :rocksdb: 93 DEADLINE: <2024-08-18 Sun> SCHEDULED: <2024-08-17 Sat> 95 :LOCATION: lisp/ffi/rocksdb/comparator.lisp 96 :ID: 79d12134-27e1-48ef-9e21-808c74d154c4 99 - State "WIP" from [2024-08-14 Wed 21:51] 100 - State "DONE" from "WIP" [2024-08-18 Sun 19:47] 102 *** TODO associative-merge implementation 104 :CREATED: <2024-08-18 Sun 19:48> 105 :ID: cfbcad42-bb50-4170-afd8-1e0ff4dacfd1 108 - Refiled on [2024-08-18 Sun 19:48] 110 - need to figure out what delete-value requires
111 - simply passes state + value and value-length to a function
112 - when the value is null it doesn't exist in db (noop) ?
113 - unclear when the merge op actually runs in relation to deletion op - before or after?
114 - https://docs.rs/rocks/latest/rocks/merge_operator/index.html
115 **** TODO concat-merge 117 :CREATED: <2024-08-18 Sun 20:45> 118 :ID: 8e29a907-c3ee-4b5e-b825-e4e4e6c6aa9b 121 - State "TODO" from [2024-08-18 Sun 20:42] 123 **** TODO index-merge 125 :CREATED: <2024-08-18 Sun 20:45> 126 :ID: a5ab8bc4-e2fb-4ac2-8e1d-3000e439ed33 129 - State "TODO" from [2024-08-18 Sun 20:44] 131 ***** TODO incf-merge 133 :CREATED: <2024-08-18 Sun 20:45> 134 :ID: ac607107-33fb-434f-bf48-e7b9e5fc648f 137 - State "TODO" from [2024-08-18 Sun 20:43] 139 ***** TODO decf-merge 141 :CREATED: <2024-08-18 Sun 20:45> 142 :ID: 307afdf9-4fc0-4c7d-b58e-9f1eb1110a74 145 - State "TODO" from [2024-08-18 Sun 20:44] 147 *** DONE define-merge-operator :macro: 148 SCHEDULED: <2024-08-21 Wed> 150 :CREATED: <2024-08-18 Sun 19:52> 151 :ID: c6643502-8c0c-4e44-9986-d4519f39f01c 153 :LOCATION: lisp/ffi/rocksdb/tests.lisp 156 - Refiled on [2024-08-18 Sun 19:53] 157 - State "TODO" from "TODO" [2024-08-18 Sun 22:01] 158 - State "TEST" from "TODO" [2024-08-18 Sun 22:02] 159 CLOCK: [2024-08-21 Wed 20:34]--[2024-08-21 Wed 21:13] => 0:39 160 - State "DONE" from "TEST" [2024-08-21 Wed 21:21] 161 - Note taken on [2024-08-21 Wed 21:21] \\ 162 will need to do actual tests merging key/vals when we implement associative merge API 164 - define macro which eases the process of making custom merge operators
165 #+begin_src lisp :package rocksdb :eval no-export 166 (define-merge-operator :incf nil
169 (create-incf-mergeoperator)
173 : #<SB-ALIEN-INTERNALS:ALIEN-VALUE :SAP #X75D288000C30 :TYPE (*
175 : ROCKSDB::ROCKSDB-MERGEOPERATOR-T))>
177 ** TODO readline :cli: 179 :ID: 4aebbb1d-201e-4a74-8e57-537cb96a39d7 182 - State "TODO" from [2024-08-10 Sat 22:23] 184 ** TBD examples [0/6] :example: 186 :ID: 794f6242-2589-424d-bbc1-8025530a2a6b 189 - State "TBD" from [2024-08-15 Thu 23:02] 191 *** TODO gstreamer practical example :gstreamer: 193 :ID: d476e6b4-5b58-4f51-afc5-c2c0195d3799 196 - State "TODO" from [2024-08-10 Sat 22:21] 198 *** TODO ublk practical example :ublk: 200 :ID: 7887da0f-f6d7-43f0-9fcb-cef7c07fb1bb 203 - State "TODO" from [2024-08-10 Sat 22:22] 205 *** TODO uring read/write file example :uring: 207 :ID: 7194096a-f0a2-446d-b46a-3c55e6123a16 210 - State "TODO" from [2024-08-10 Sat 22:22] 212 *** TODO btrfs practical example :btrfs: 214 :ID: 595c395c-976b-4356-a3ec-df8030293326 217 - State "TODO" from [2024-08-10 Sat 22:30] 219 - [ ] sudo example (filesystem)
220 - [ ] non-sudo example?
221 *** TODO xkb practical example :x:kb: 223 :ID: 530aef14-b508-4d3a-8442-a16fea82039f 226 - State "TODO" from [2024-08-10 Sat 22:32] 228 *** TODO keyutils practical example :crypto: 230 :ID: eec96038-ac73-477d-a443-4a9b3b5f4a5d 233 - State "TODO" from [2024-08-10 Sat 22:33] 236 * TODO retire x.lisp :lisp:skel: 237 SCHEDULED: <2024-08-22 Thu> 241 :ID: 88343a1c-e17b-4cb8-b6d6-f770c482665e 244 - State "TODO" from [2024-07-09 Tue 22:24] 245 - State "TBD" from "TODO" [2024-07-27 Sat 02:41] 246 - State "TODO" from "TBD" [2024-08-16 Fri 22:58] 248 with skel taking on more responsibility we no longer need a dedicated build tool.
249 - migrate all functionality to skelfile
250 - cleanup readme with installation instructions (with and without
=infra=)
251 * PROJECT cli/clap v0.2.0 [1/6] :lisp:cli: 253 :ID: 217cd955-5575-4953-bf36-4d2d4c1fd616 256 - State "TODO" from [2024-07-21 Sun 01:33] 257 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 259 - clap is quite unstable right now and has some obvious bugs which need remedying
260 ** TODO conditions implementation 262 :ID: c17dae0b-93b8-467a-bc96-6dddfb7a6e53 264 ** TODO minimal documentation :doc: 266 :ID: aef56337-8adf-4f69-823f-4380ae0c468b 267 :LOCATION: lib/cli.org 270 - State "TODO" from [2024-07-27 Sat 02:39] 272 ** DONE implement globals =*cli* *opts* *args*= etc 274 :ID: 1bb410a8-d569-4667-b024-698a3d5ab144 277 - State "TODO" from [2024-07-27 Sat 02:39] 278 - State "DONE" from "TODO" [2024-07-27 Sat 02:40] 280 ** TODO keyword selectors :lisp:cli:skel: 282 :ID: ca205f3d-d84d-4629-9d7a-189203c11441 285 - State "TODO" from [2024-07-27 Sat 02:31] 288 skel :include 0 :components 1 # => <sk-component PRELUDE>
290 skel :include emacs :components babel # => <sk-component BABEL>
292 - how to apply operators?
295 ** FIXME opt/arg parsing 297 :ID: f44f2d22-44d8-438b-b388-546c0bc0c65b 300 - State "FIXME" from [2024-08-21 Wed 21:23] 302 - do not need to handle multiple commands
303 - what do we want to do about subcommands?
304 - do not need to support 'global' option for commands
305 * TODO multipoint-images :lisp:bin:sys: 307 :ID: f1d14ea9-fbbe-4043-a54d-d7c8774f16d6 310 - State "TODO" from [2024-07-28 Sun 21:01] 312 - multiple entrypoint lisp images
313 - create multiple links to core lisp image
314 - support multiple low-level methods?
315 - naive implementation is a single entry point with a switch
317 - could also create a thin shim in Rust/Zig and call the appropriate
318 entrypoint after loading the core.
319 * TODO [[https://libyear.com/][libyear]] :lisp:skel: 321 :ID: 4420950f-cea0-4a17-8b1a-19f46b78a921 324 - State "TODO" from [2024-08-01 Thu 12:27] 326 * PROJECT q 0.1 [0/4] :lisp:q: 328 :ID: b19fb0f9-65b2-476c-adb3-b4b77e585f37 331 - State "TODO" from [2024-08-03 Sat 01:03] 332 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:20] 336 :ID: 8b853556-399d-445f-8e7b-4bd4048087c5 339 - State "TODO" from [2024-08-03 Sat 01:03] 340 - Note taken on [2024-08-04 Sun 21:16] \\ 341 pretty close - need to fix some recursion bugs then start messing with query-engines 343 *** DONE make-sql-data-frame 345 :ID: 3b4aed34-4f20-4dd9-abee-04f07cce2d84 348 - State "FIX" from [2024-08-05 Mon 21:13] 349 - State "DONE" from "FIX" [2024-08-07 Wed 21:05] 351 - finish implementation
354 :ID: 77bc044c-f4c8-440d-a590-e712ccad9bea 357 - State "TODO" from [2024-08-03 Sat 01:03] 359 - pronounced 'Dee-qwul'
360 - the challenge it seems, is building an inference engine that isn't
361 just another half-assed prolog
362 - expression and introspection is valued here much more than speed/size
363 - allegro and screamer are favorites so far
364 *** TODO top-level macros 366 :ID: 782758ba-78ba-4366-996e-47b6b9123ac3 369 - State "TODO" from [2024-08-08 Thu 22:38] 374 :ID: 61adb134-1e00-4973-846b-a5afd746afaa 377 - State "TODO" from [2024-08-08 Thu 22:39] 379 *** TODO basic predicates 381 :ID: 3b9067c6-27ec-45e6-a025-201695bd9ece 384 - State "TODO" from [2024-08-08 Thu 22:39] 387 =/2 ==/2 abolish/2 and/* append/3 arg/3 assert/1 asserta/1 assertz/1 atom/1 atomic/1
388 bagof/3 call/1 consult/1 copy-term/2 erase/1 fail/0 first/1 functor/3 ground/1 if/2 if/3
389 is/2 last/1 leash/1 length/1 listing/1 member/2 memberp/2 (member without backtracking) not/1
390 number/1 or/* princ/1 read/1 recorda/1 recordz/1 recorded/2 repeat/0 rest/1 retract/1 rev/2
391 setof/3 true/0 var/1 write/1
394 *** TODO compiler design 396 :ID: 503c24ba-8613-4ca0-8c9c-51eced131168 399 - State "TODO" from [2024-08-08 Thu 22:39] 401 *** TODO runtime design 403 :ID: dd1eeab0-901d-4914-91a0-0413a3503fd1 406 - State "TODO" from [2024-08-08 Thu 22:43] 410 - plenty of dynamic extent
413 ** TODO q/tests/fuzz [0/2] 415 :ID: 6d3c2685-5faf-4670-8ea0-b9b047c17c64 418 - State "TODO" from [2024-08-05 Mon 21:11] 420 - [[https://github.com/andygrove/how-query-engines-work/blob/main/jvm/fuzzer/src/main/kotlin/Fuzzer.kt][kquery]] 423 :ID: 32506969-1c5d-4a9f-aa03-eb4b1a863f5c 426 - State "TODO" from [2024-08-05 Mon 21:11] 434 :ID: ef26c36a-1a5c-461a-834b-936010d49bb3 437 - State "TODO" from [2024-08-05 Mon 21:12] 439 ** TODO #? reader macro 441 :ID: 5da9a939-892f-439e-8072-c5c61cc1bbe3 444 - State "TODO" from [2024-08-08 Thu 22:36] 446 * RESEARCH OCI projects [0/4] :pod:packy:skel: 448 :ID: ad581365-91ed-4ca8-a489-413a20cadbb7 451 - State "RESEARCH" from [2024-08-01 Thu 12:35] 453 ** RESEARCH [[https://oras.land/][oras]] 455 :ID: 7eef96fb-b568-45be-a6ca-fd7a4a7c9469 458 - State "RESEARCH" from [2024-08-01 Thu 12:36] 462 :ID: e7d2e4fd-82e2-47b2-86a2-8ba14fff80d4 465 - State "RESEARCH" from [2024-08-01 Thu 12:36] 469 :ID: f98d1562-73da-4814-afd6-304d3be2c9b5 472 - State "RESEARCH" from [2024-08-01 Thu 12:36] 474 ** RESEARCH [[https://www.sigstore.dev/][sigstore]] 476 :ID: 784024e5-6501-4fe7-93d1-44334fbee3ea 479 - State "RESEARCH" from [2024-08-01 Thu 12:30] 481 * TODO parse 0.1 [0/2] :lisp:lib: 483 :ID: 50dff527-6778-42d3-934c-2d013d701514 486 - State "TODO" from "TODO" [2023-12-13 Wed 18:24] 490 :ID: 8f54a69e-b256-4efd-98e8-75b4892f12b8 492 - State "TODO" from [2023-11-29 Wed 19:01]
498 :ID: 484740d6-3fb6-4796-b7e8-8f217c5063e5 501 - State "TODO" from [2023-12-24 Sun 19:28] 503 add tests for lexer and LALR. figure out if there are any gaps that we
507 :ID: 6ba3e53d-8cfa-46fe-852a-ea462d475883 510 - State "TODO" from [2023-12-24 Sun 19:28] 512 the toml parser on quicklisp is based on esrap, make a comparable one
513 using our parser module.
514 * PROJECT organ 0.2 [0/2] :lisp:organ: 516 :ID: f5ad161f-c954-45e2-aeb4-c88d916bae7f 519 - State "TODO" from [2023-11-29 Wed 21:25] 520 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 523 :ID: 4e7c55dc-e2fa-458f-ad3b-942b9aa336a4 527 :ID: 664309c2-55eb-45c2-88eb-a32c012c89ef 530 - State "TBD" from "TODO" [2023-11-29 Wed 21:24] 533 :ID: 189584f5-fc22-4129-bd47-5d494a088684 537 :ID: 2434b254-4346-4791-82da-b6bc309e8f5b 540 - State "TODO" from [2023-11-29 Wed 21:26] 545 :ID: 63774177-9730-4961-8535-414fac7a6f4f 547 ** TBD parse org-elements as sxp :sxp: 549 :ID: 232b7b58-2e66-479a-a978-b33f1cdda13f 552 - State "TODO" from [2023-09-25 Mon 15:23] 553 - State "TBD" from "TODO" [2023-12-13 Wed 18:10] 556 #+begin_src emacs-lisp :results silent 560 #+begin_src lisp :results silent 561 (ql:quickload :organ)
565 #+begin_src emacs-lisp :results output replace 566 (macroexpand-1 (org-element-parse-buffer))
572 #+begin_src lisp :results output :var in=oe-form() 573 (let ((sxp (sxp:make-sxp)))
574 ;; SIMPLE-READER-ERROR #\) when using read
575 (sxp:wrap-from-string! sxp in)
580 : #
<DAT/SXP:SXP {1026EFA513}> 583 : Slots with :INSTANCE allocation:
586 * PROJECT rdb 0.2 [0/6] :lisp:rdb: 588 :ID: e5cd7ab8-f0d1-4b6e-ab68-852741e313cc 591 - State "TODO" from "TODO" [2023-12-13 Wed 18:26] 592 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 594 ** TODO error handling 596 :ID: 299c7d94-e259-4413-8b46-13957ca8ded4 599 - State "TODO" from [2023-12-10 Sun 22:57] 601 - need to unwrap the pointer (
* (* t))
602 - cast to string,int,bool
603 - wrap segfault handlers
604 - add restarts for common errors (bad path)
605 - add cleanup routines
608 :ID: 93e0f187-c9f1-485f-9c51-b1abebf7da06 611 - State "TODO" from [2023-12-10 Sun 22:59] 613 - clients are fully dynamic
614 - generated from RDB instances
615 - compiles in CF/option/multithread/type info
616 - clients implement custom Q language
617 ** TODO sequence/iterator impl 619 :ID: 6dbd6194-390b-4156-8690-75f91ce2e8d2 622 - State "TODO" from [2023-12-10 Sun 23:09] 624 - use SBCL built-ins to extend the api - wrap the raw FFI iterator
626 ** TODO comparator impl 628 :ID: bb1bd757-f80d-4723-ac62-45d7ef72a0a2 631 - State "TODO" from [2023-12-10 Sun 23:11] 633 - supply custom comparators to rocksdb from lisp
636 :ID: 31a8f3e3-812f-4edc-a6d1-6540481d7dc7 639 - State "TODO" from [2023-12-10 Sun 23:12] 641 - capture types of: kv, cf
643 - kv-spec = (kv-spec val-spec)
644 - must be serialized to/from vec
<char> 647 - methods for abstracting CFs
648 ** TODO set-opt/get-opt 650 :ID: 1a08fd02-b7e2-466b-9c43-f6570160aeb7 653 - State "TODO" from [2023-12-16 Sat 00:49] 656 - may just want to use the generic C fn that takes string as input
657 - I feel this may be less efficient but haven't benched it (requires additional arg)
658 - separate packages are a pain to query symbols with
660 * PROJECT vc 0.1 [2/3] :lisp:vc: 662 :ID: c14dc79d-eeed-42bf-aba2-35ef5aa7e45d 665 - State "TODO" from [2024-02-29 Thu 16:10] 666 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 668 ** TODO vc-mirrors-update replacement 670 :ID: 36c19881-72c6-4cf5-aaba-2b4ced302b97 671 :LOCATION: ~/.config/nushell/scripts/vc.nu 673 :CREATED: <2024-08-22 Thu 22:15> 676 - State "TODO" from [2024-08-10 Sat 01:33] 677 CLOCK: [2024-08-22 Thu 20:46]--[2024-08-22 Thu 22:12] => 1:26 678 - State "TODO" from "TODO" [2024-08-22 Thu 22:15] 682 :ID: 979ecc81-0b31-4182-9dc3-365d05bb2188 685 - State "TODO" from [2023-12-16 Sat 00:55] 686 - State "DONE" from "TODO" [2024-08-10 Sat 01:34] 690 :ID: cdeb7e90-0122-4dff-8a5d-7a96fde2e8bd 693 - State "TODO" from [2023-12-16 Sat 00:56] 694 - State "DONE" from "TODO" [2024-08-10 Sat 01:34] 697 * PROJECT dat 0.1 :lisp:dat: 699 :ID: 31fa3e61-b586-4023-be94-5195a26596ce 702 - State "TODO" from [2024-08-11 Sun 00:08] 703 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 705 ** WIP dat/parquet :lisp: 708 :ID: c808200c-450a-4f77-b4c1-6b372c7c4943 711 - State "WIP" from [2024-07-19 Fri 21:51] 714 ** TODO dat/csv column selectors :lisp:dat: 717 :ID: 40cb89e4-db1b-4a78-b2b7-3e0fc9ee287b 720 - State "TODO" from [2024-08-05 Mon 20:53] 722 - a function which accepts a single arg which is either a number,
723 indicating index-based selection or a list of column names for
726 ~(read-csv-line ... :select (lambda (x) x))~ 728 - index-based-selection
731 ** TODO sxp 0.2 :lisp:sxp: 733 :ID: 2a4d602c-2dea-451f-b06e-165ee2a523b3 736 - State "TODO" from [2023-12-12 Tue 19:49] 738 *** TODO WRAP-OBJECT :skel: 740 :ID: 1f04611d-068b-4708-b4e9-e6211cb484eb 743 - State "TODO" from [2023-12-12 Tue 19:49] 745 - use to replace LOAD-AST for sk-project and friends
747 - take a look at UNWRAP-OBJECT too, may need rewrite for a better API
748 **** TODO sxp standard methods 750 :ID: 12de9774-b6d9-47d1-8dd6-8448078ea15f 753 - State "TODO" from [2024-08-13 Tue 22:06] 762 * PROJECT syn 0.1 :lisp:syn: 764 :ID: a199245b-4bed-48eb-83f5-e83c03da3a7d 767 - State "TODO" from [2024-08-13 Tue 22:15] 768 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 770 * PROJECT skel 0.2 [1/4] :lisp:skel: 772 :ID: 53982b3c-4860-469b-abb5-b279ee669cbd 775 - State "TODO" from [2023-12-16 Sat 00:55] 776 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 779 ** DONE eval rules from CLI 781 :ID: 3927ffa7-c993-4963-9316-0375f2659f82 784 - State "TODO" from [2023-12-16 Sat 00:56] 785 - State "DONE" from "TODO" [2024-08-05 Mon 21:06] 787 - need new command or flag for rules
788 - evaluate forms instead of looking in skelfile
789 ** TODO split out skel rules 791 :ID: d353ab64-69a1-4fcf-9df5-1804c646f6a5 794 - State "TODO" from [2024-08-11 Sun 00:10] 797 ** TODO implement task-pool :thread: 799 :ID: 5e0c7baf-9b18-441a-a46c-2274f478d4a5 802 - State "TODO" from [2024-08-11 Sun 00:10] 805 SCHEDULED: <2024-08-23 Fri> DEADLINE: <2024-08-25 Sun> 807 :ID: 15d506e3-b46a-4064-9054-0fe6c01205fb 808 :CREATED: <2024-08-18 Sun 22:03> 811 - State "TODO" from [2024-08-11 Sun 00:11] 812 - New deadline from "[2024-08-18 Sun]" on [2024-08-18 Sun 22:03] 815 * PROJECT std 0.2 [2/8] :lisp:std: 817 :ID: e43489ff-4ca9-45e4-83f2-ee9b0967af3a 820 - State "TODO" from [2023-12-12 Tue 19:49] 821 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 823 ** DONE refactor system definition 825 :ID: 48c52da3-17bd-4193-8668-cddaf5cf1d81 828 - State "TODO" from [2023-12-13 Wed 15:17] 829 - State "DONE" from "TODO" [2023-12-13 Wed 19:38] 831 - remove package-inferred
832 - minimize number of systems
836 :ID: 730fd1f9-fa9d-4c98-baaa-27011515c639 839 - State "TODO" from [2023-12-13 Wed 19:39] 841 ** TODO documentation sweep 843 :ID: b7f48103-4fa3-48c0-93ba-8efc23848931 846 - State "TODO" from [2024-02-29 Thu 16:09] 850 :ID: ebd0451c-530f-458d-aae2-39de7e3b436d 853 - State "TODO" from [2024-02-29 Thu 16:09] 857 :ID: 36d3040f-c899-4941-affb-30e1641d1b01 860 - State "TODO" from [2024-02-29 Thu 16:09] 862 ** DONE list-package-symbols, etc 864 :ID: b06b72d5-88f5-461a-bc3b-08630532c883 867 - State "TODO" from [2024-02-29 Thu 16:09] 868 - State "DONE" from "TODO" [2024-08-07 Wed 21:07] 871 ** TODO std/tests refactor 873 :ID: d7ee0946-db5d-4854-90be-11dad0fe7743 876 - State "TODO" from [2024-07-27 Sat 02:42] 878 - a bit too large, time to shake it up
879 - need separation of concerns (files) for task-pool/threaded tests in
883 :ID: 5fa97d14-e074-4a64-90f9-cb5822e2ab3a 886 - State "TODO" from [2024-08-10 Sat 01:29] 888 ** HACK defsys :lisp:std: 890 :ID: ea69bedd-6a17-44b4-9f2c-3f9195873404 893 - State "HACK" from [2024-08-03 Sat 01:06] 894 - Refiled on [2024-08-22 Thu 19:03] 896 - maybe Norvig was right and we don't need asdf/uiop, maybe not
897 - the truth is somewhere in between
902 * PROJECT obj 0.1 [2/5] :lisp:obj: 904 :ID: c1500e3b-1d95-4ba2-96d5-8301b02293e2 907 - State "TODO" from [2023-12-17 Sun 00:59] 908 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:19] 912 :ID: ba8bb8ed-8106-4fc5-bdda-13b9ededd613 915 - State "TODO" from [2023-12-17 Sun 01:00] 916 - Note taken on [2023-12-20 Wed 18:26] \\ 917 the franz impl doesn't play well with SBCL, at least with our 918 hacks. I'm not sure how faithfully I want to follow the RFCs 919 anyhow.. maybe we go for the dead simple approach and focus on MOP 920 for a path and URI protocol. 922 - mostly just need the tests and to finish porting the Franz implementation
925 :ID: 58a94c4b-cca3-4c86-9aa8-c8c7fd9469a6 928 - State "TODO" from [2023-12-20 Wed 18:26] 929 - State "DONE" from "TODO" [2024-08-05 Mon 21:08] 930 - Note taken on [2024-08-05 Mon 21:08] \\ 931 XDB2 is no longer used - instead provide a simple abstract API which 932 builds up to high-level systems like RDB 935 ** WIP complete base obj/query package [2/3] :q:db: 937 :LOCATION: lisp/lib/obj/query.lisp 938 :ID: 8e8bfeaf-22d2-4bad-a8e5-a19765561efa 941 - State "WIP" from [2024-07-09 Tue 22:14] 943 - object-based protocol for asking questions about data collections
944 using data expressions
945 - +lex+,
+parse+,
+compile+ - all handled in the Q system
946 - probably in need of refactor right after
947 - different parts of the protocol will be used by different systems
948 - ~data-source~ will be implemented in
~DAT/CSV~ ~DAT/PARQUET~,
950 - ~query-expression~ and
~query-plan~ will be implemented in
952 *** DONE aggregate physical plan 955 :ID: ea87cd03-7ecf-49f8-9743-59242e910838 958 - State "DONE" from "TODO" [2024-08-03 Sat 01:00] 960 *** DONE Physical Expressions 963 :ID: e00c46fd-dbd2-44ad-a41a-3ee2246ff23f 966 - State "TODO" from [2024-08-02 Fri 15:53] 967 - State "TODO" from [2024-08-02 Fri 15:53] 968 - State "DONE" from "TODO" [2024-08-03 Sat 01:00] 970 *** TODO Basic Testing 972 :ID: b857e6f1-c652-4024-9b87-308e1c830b2a 975 - State "TODO" from [2024-08-02 Fri 15:55] 978 ** TODO explain impl :doc: 980 :ID: 155f1e0c-c5ec-4175-934c-14be4adb3559 983 - State "TODO" from [2024-08-03 Sat 01:01] 985 ** TODO explore impl :doc: 987 :ID: 08017f7e-de0a-442a-9cb6-5559c9159b29 990 - State "TODO" from "TODO" [2024-08-12 Mon 22:26] 993 * PROJECT net 0.1 [5/8] :lisp:net: 995 :ID: 5d088bf7-f201-4875-9167-4293bebbcf46 998 - State "TODO" from [2023-12-17 Sun 01:00] 999 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:20] 1001 ** TODO fixtures :rt: 1003 :ID: fe592b6f-cde1-43e9-ac5a-81addc124582 1006 - State "TODO" from [2024-08-11 Sun 00:06] 1008 - implement simple network fixtures which can be used within the body of DEFTEST
1009 - start with simple sockets - UDP then TCP
1010 - work up towards HTTP
1013 :ID: 8e90fe7a-3a22-4af4-b247-64ac6890b94a 1016 - State "TODO" from [2023-12-17 Sun 01:01] 1020 :ID: d238fc1f-24be-447b-a96b-ec35958470fc 1023 - State "TODO" from [2023-12-17 Sun 01:01] 1025 ** DONE crew :proto: 1027 :ID: efd79ab3-ebc3-427f-81a7-2ca7b6d3fa4e 1030 - State "TODO" from [2023-12-17 Sun 01:01] 1031 - State "DONE" from "TODO" [2024-08-10 Sat 01:31] 1034 ** DONE http :proto: 1036 :ID: 95fcf596-7c21-447a-b4d9-08ac1a866282 1039 - State "TODO" from [2023-12-17 Sun 01:01] 1040 - State "DONE" from "TODO" [2024-08-05 Mon 21:07] 1044 :ID: 8f2450ea-09fb-492e-a897-d9c62683f844 1047 - State "TODO" from [2023-12-17 Sun 01:01] 1048 - State "DONE" from "TODO" [2024-08-05 Mon 21:07] 1053 :ID: 93b3aaa0-1314-41e1-940e-283a5dac1211 1056 - State "TODO" from [2023-12-17 Sun 01:01] 1057 - State "DONE" from "TODO" [2024-08-07 Wed 21:08] 1062 :ID: c4088610-6ef4-4336-9bdf-81e24e133615 1065 - State "TODO" from [2023-12-17 Sun 01:03] 1066 - State "DONE" from "TODO" [2024-08-07 Wed 21:08] 1068 ** WIP net/srv :lisp: 1070 :ID: f812f4e7-03c0-4e7a-a602-8947c39eb4ed 1073 - State "TODO" from [2024-07-19 Fri 21:50] 1074 - State "WIP" from "TODO" [2024-07-19 Fri 21:51] 1076 - needs a solid task-pool impl completed first
1079 :ID: 52c36c9b-22b2-4dd8-b151-9fe62810ac03 1082 - State "RESEARCH" from [2024-08-10 Sat 01:23] 1084 * PROJECT pwn 0.1 [0/1] :lisp:pwn: 1086 :ID: 6fef0787-9d0b-473a-b2de-f0969320fea7 1089 - State "TODO" from [2023-12-17 Sun 01:04] 1090 - Note taken on [2024-02-29 Thu 16:11] \\ 1091 Should this be a separate application? Lisp exploit development framework 1092 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:20] 1096 :ID: bb192fb0-ad07-44be-89c0-27dbf78a830d 1099 - State "TODO" from [2023-12-17 Sun 01:04] 1101 * PROJECT gui 0.1 [0/2] :lisp:gui: 1103 :ID: 73aea563-3df7-4611-a27d-874772806f18 1106 - State "TODO" from [2023-12-17 Sun 03:40] 1107 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:20] 1109 ** TODO wayland protocol bindings 1111 :ID: 534fe8cb-9056-4ac4-84ca-d98f09f78214 1114 - State "TODO" from [2023-12-17 Sun 03:40] 1116 ** TBD wayland compositor :rust:lisp: 1118 :ID: ca3d0bff-0ff7-4947-835a-b7c7e74c8679 1121 - State "TBD" from "TODO" [2023-11-29 Wed 21:25] 1124 :ID: e18a90d7-10bc-44d3-8508-56483d29d385 1126 * PROJECT rt 0.1 [0/4] :lisp:rt: 1128 :ID: 7a14c529-8609-4638-b101-7304a1605fcc 1131 - State "TODO" from [2024-02-29 Thu 16:06] 1132 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:20] 1134 ** TODO redirect I/O in tests 1136 :ID: 34f27f91-c93a-4841-a6ac-5692ad1d0e4f 1139 - State "TODO" from [2024-02-29 Thu 16:06] 1141 prevent tests from printing implicitly. redirect stream locally, cache
1142 it somehow for review.
1143 ** TODO *test-on-def* 1145 :ID: f5cf6e43-906b-4225-9cdb-ac0028b48661 1148 - State "TODO" from [2024-02-29 Thu 17:17] 1150 - simple flag to test when file is defined (part of deftest macro)
1153 :ID: eb48a434-79f3-4936-be17-6777fdedcd61 1156 - State "TODO" from [2024-08-13 Tue 22:22] 1158 * PROJECT emacs 0.1 [0/6] :emacs: 1160 :ID: b6a3ffb9-a7aa-4038-8876-fcdb8115dc08 1163 - State "TODO" from [2024-08-16 Fri 22:39] 1164 - State "PROJECT" from "TODO" [2024-08-18 Sun 16:20] 1166 - don't really care about versioning the core/emacs configs much
1167 - may come in use later so just a general milestone when these tasks are done
1168 ** WIP comp/org capture templates 1170 :ID: 3d303736-7b79-4c5c-ba43-9ea5aa05f722 1173 - State "TODO" from [2024-08-15 Thu 23:14] 1174 - State "WIP" from "TODO" [2024-08-18 Sun 16:22] 1176 - [[https://blog.jethro.dev/posts/capturing_inbox/][Org-mode Workflow Part 1: Capturing in the Inbox · Jethro Kuan]] 1177 - [[https://blog.jethro.dev/posts/processing_inbox/][Org-mode Workflow Part 2: Processing the Inbox · Jethro Kuan]] 1179 #+begin_src emacs-lisp :results silent 1180 `("i" "inbox" entry (file ,org-inbox-file) :prepend t)
1187 ** TODO comp/org agenda views, export, dblock 1189 :ID: 952fe286-9fd8-478f-bafc-a0a25ae3d17a 1192 - State "TODO" from [2024-08-15 Thu 23:15] 1194 ** FIXME compiler warnings 1196 :ID: dd4cf91d-4b45-4b5f-adee-0e248ebed0e1 1199 - State "FIXME" from [2024-08-16 Fri 22:42] 1202 default.el:176:7: Warning: assignment to free variable ‘multisession-storage’
1203 default.el:184:11: Warning: assignment to free variable ‘hg-binary’
1204 default.el:240:6: Warning: docstring has wrong usage of unescaped single
1205 quotes (use \=' or different quoting such as `...')
1206 default.el:259:30: Warning: ‘:inherit’ called as a function
1207 default.el:260:30: Warning: ‘:indentation’ called as a function
1208 default.el:261:42: Warning: reference to free variable ‘defpackage’
1209 default.el:262:31: Warning: ‘define-package’ called with 1 argument, but
1211 default.el:262:31: Warning: ‘define-package’ is an obsolete function (as of
1213 default.el:286:9: Warning: assignment to free variable
1214 ‘common-lisp-style-default’
1215 default.el:305:19: Warning: reference to free variable ‘eglot-server-programs’
1216 default.el:305:19: Warning: assignment to free variable
1217 ‘eglot-server-programs’
1218 default.el:313:7: Warning: assignment to free variable ‘rust-rustfmt-switches’
1219 default.el:314:7: Warning: assignment to free variable ‘rust-indent-offset’
1220 default.el:317:7: Warning: assignment to free variable ‘python-indent-offset’
1221 default.el:321:7: Warning: assignment to free variable ‘js-indent-level’
1222 default.el:324:7: Warning: assignment to free variable ‘sh-basic-offset’
1223 default.el:331:12: Warning: in defcustom for ‘prog-comment-keywords’: missing
1224 :type keyword parameter
1225 default.el:336:12: Warning: in defcustom for
1226 ‘prog-comment-timestamp-format-concise’: missing :type keyword parameter
1227 default.el:342:12: Warning: in defcustom for
1228 ‘prog-comment-timestamp-format-verbose’: missing :type keyword parameter
1230 In prog-comment-timestamp-keyword:
1231 default.el:386:2: Warning: docstring has wrong usage of unescaped single
1232 quotes (use \=' or different quoting such as `...')
1233 default.el:414:20: Warning: reference to free variable
1234 ‘comment-timestamp-format-verbose’
1235 default.el:443:7: Warning: assignment to free variable ‘hexl-bits’
1237 In buffer-to-register:
1238 default.el:474:47: Warning: Unused lexical argument ‘delete’
1240 In file-to-register:
1241 default.el:481:45: Warning: Unused lexical argument ‘delete’
1243 In file-query-to-register:
1244 default.el:487:51: Warning: Unused lexical argument ‘delete’
1245 default.el:529:12: Warning: in defcustom for ‘default-scratch-buffer-mode’:
1246 missing :type keyword parameter
1247 default.el:625:7: Warning: assignment to free variable
1248 ‘eshell-highlight-prompt’
1249 default.el:626:7: Warning: assignment to free variable
1250 ‘eshell-hist-ignoredups’
1251 default.el:627:7: Warning: assignment to free variable
1252 ‘eshell-save-history-on-exit’
1253 default.el:629:7: Warning: assignment to free variable
1254 ‘eshell-destroy-buffer-when-process-dies’
1256 In eshell-quit-or-delete-char:
1257 default.el:645:20: Warning: ‘looking-back’ called with 1 argument, but
1259 default.el:645:33: Warning: reference to free variable ‘eshell-prompt-regexp’
1260 default.el:650:6: Warning: ‘delete-forward-char’ is for interactive use only;
1261 use ‘delete-char’ instead.
1262 default.el:654:29: Warning: reference to free variable ‘eshell-mode-map’
1264 In eshell-next-prompt:
1265 default.el:660:22: Warning: reference to free variable ‘eshell-prompt-regexp’
1266 default.el:661:9: Warning: reference to free variable
1267 ‘eshell-highlight-prompt’
1269 In eshell-insert-history:
1270 default.el:677:48: Warning: reference to free variable ‘eshell-history-ring’
1271 default.el:736:49: Warning: reference to free variable ‘eww-mode-map’
1272 default.el:747:7: Warning: assignment to free variable
1273 ‘org-id-link-to-org-use-id’
1274 default.el:749:7: Warning: assignment to free variable ‘org-capture-templates’
1275 default.el:761:7: Warning: assignment to free variable
1276 ‘org-html-htmlize-output-type’
1277 default.el:762:7: Warning: assignment to free variable
1278 ‘org-html-head-include-default-style’
1279 default.el:764:7: Warning: assignment to free variable ‘org-ascii-text-width’
1280 default.el:768:7: Warning: assignment to free variable
1281 ‘org-structure-template-alist’
1282 default.el:805:7: Warning: assignment to free variable ‘org-archive-location’
1284 In org-ask-location:
1285 default.el:853:11: Warning: Unused lexical variable ‘org-refile-targets’
1286 default.el:856:28: Warning: reference to free variable ‘org-refile-history’
1287 default.el:860:18: Warning: reference to free variable
1288 ‘org-complex-heading-regexp-format’
1290 In org-capture-fileref-snippet:
1291 default.el:868:37: Warning: Unused lexical argument ‘f’
1292 default.el:906:7: Warning: assignment to free variable ‘org-global-properties’
1294 In org-adjust-tags-column-reset-tags:
1295 default.el:936:39: Warning: Unused lexical argument ‘ignored’
1297 In column-display-value-transformer:
1298 default.el:942:55: Warning: Unused lexical argument ‘value’
1299 default.el:954:7: Warning: assignment to free variable
1300 ‘org-columns-modify-value-for-display-function’
1302 In org-remove-redundant-tags:
1303 default.el:974:32: Warning: Unused lexical variable ‘tag’
1304 default.el:984:69: Warning: ‘memql’ called with literal list that may never
1307 In org-agenda-reschedule-to-today:
1308 default.el:995:35: Warning: Unused lexical argument ‘rest’
1309 default.el:999:2: Warning: ‘defadvice’ is an obsolete macro (as of 30.1); use
1310 ‘advice-add’ or ‘define-advice’
1312 In org-export-translate-to-lang:
1313 default.el:1079:35: Warning: reference to free variable
1314 ‘org-export-dictionary’
1317 default.el:979:42: Warning: the function ‘org-toggle-tag’ might not be defined
1319 default.el:971:8: Warning: the function ‘org-map-entries’ might not be defined
1321 default.el:961:4: Warning: the function ‘org-table-map-tables’ might not be
1323 default.el:949:9: Warning: the function ‘org-entry-end-position’ might not be
1325 default.el:946:8: Warning: the function ‘org-back-to-heading’ might not be
1327 default.el:937:20: Warning: the function ‘org-set-tags’ might not be defined
1329 default.el:918:10: Warning: the function ‘org-set-property’ might not be
1331 default.el:916:14: Warning: the function ‘org-entry-get-multivalued-property’
1332 might not be defined at runtime.
1333 default.el:912:12: Warning: the function ‘org-entry-get’ might not be defined
1335 default.el:898:23: Warning: the function ‘which-function’ is not known to be
1337 default.el:858:6: Warning: the function ‘outline-next-heading’ might not be
1339 default.el:855:24: Warning: the function ‘org-refile-get-location’ might not
1340 be defined at runtime.
1341 default.el:846:39: Warning: the function ‘org-todo’ might not be defined at
1343 default.el:843:48: Warning: the function ‘org-read-date’ might not be defined
1345 default.el:843:23: Warning: the function ‘org-time-string-to-time’ might not
1346 be defined at runtime.
1347 default.el:664:4: Warning: the function ‘eshell-skip-prompt’ is not known to
1349 default.el:647:10: Warning: the function ‘eshell-life-is-too-much’ is not
1350 known to be defined.
1351 default.el:641:6: Warning: the function ‘eshell-send-input’ is not known to be
1353 default.el:633:14: Warning: the function ‘eshell/alias’ is not known to be
1355 default.el:308:6: Warning: the function ‘eglot-x-setup’ is not known to be
1357 default.el:261:39: Warning: the function ‘as’ is not known to be defined.
1358 default.el:261:31: Warning: the function ‘defpkg’ is not known to be defined.
1359 default.el:260:30: Warning: the function ‘:indentation’ is not known to be
1361 default.el:259:30: Warning: the function ‘:inherit’ is not known to be
1363 default.el:258:4: Warning: the function ‘define-common-lisp-style’ is not
1364 known to be defined.
1365 default.el:245:8: Warning: the function ‘slime-eval-async’ might not be
1367 default.el:243:14: Warning: the function ‘slime-sexp-at-point’ might not be
1369 default.el:241:13: Warning: the function ‘slime-read-from-minibuffer’ might
1370 not be defined at runtime.
1371 default.el:233:10: Warning: the function ‘slime-repl’ is not known to be
1373 default.el:228:14: Warning: the function ‘slime-connected-p’ might not be
1375 Loading which-key (native compiled elisp)...done
1376 All your packages are already installed
1377 Waiting for git... [2 times]
1378 Loading /home/ellis/.emacs.d/ellis.el (source)...
1379 Local variables list is not properly terminated
1380 Source file ‘/home/ellis/.emacs.d/lib/ulang.el’ newer than byte-compiled file; using older file
1382 Repeat mode is enabled for 38 commands and 13 keymaps; see ‘describe-repeat-maps’
1383 Loading /home/ellis/.emacs.d/ellis.el (source)...done
1384 Starting Emacs daemon.
1386 ** TODO remove makefile 1388 :ID: 93f3d805-9139-49b2-9b20-4e92e3dbda41 1391 - State "TODO" from [2024-08-16 Fri 22:44] 1393 ** OUTLINE graph :org: 1395 :ID: 27d6936b-3e2f-4d28-af11-85c8276389db 1398 - State "OUTLINE" from [2024-08-21 Wed 20:40] 1411 ** TODO org-follow-location :org: 1413 :ID: 08257c5a-51f2-40b2-aa1e-58b02d31c68a 1416 - State "TODO" from [2024-08-21 Wed 20:37] 1418 - follow LOCATION property of heading at point
1419 - respect parent LOCATION, buffer local settings, etc
1421 * TBD homer 0.1 [1/2] :lisp:homer: 1423 :ID: ef204ce0-7a99-45a6-942e-6d8f549f94f9 1426 - State "TBD" from "TODO" [2023-12-12 Tue 19:53] 1428 ** DONE review GNU stow API 1430 :ID: 73e711a9-c3f1-4157-a029-c4d3559df05e 1433 - State "TODO" from [2023-12-24 Sun 19:32] 1434 - State "DONE" from "TODO" [2024-08-05 Mon 21:06] 1436 [[https://www.gnu.org/software/stow/][homepage]] 1437 'symlink farm manager'
1438 rust impl: https://github.com/qboileau/rstow
1440 ** TODO consolidate with skel :skel: 1442 :ID: 0f07acf1-d1a8-456f-b753-ce04643260b9 1445 - State "TODO" from [2023-12-24 Sun 19:32] 1447 * RESEARCH eBPF :net: 1449 :ID: 6cfbb313-4673-4fca-afcf-3fe00c12a3de 1452 - State "RESEARCH" from [2024-08-21 Wed 22:40] 1454 https:
//docs.kernel.org/bpf/standardization/instruction-set.html#bpf-instruction-set-architecture-isa 1455 https://mostlynerdless.de/blog/2023/12/31/hello-ebpf-developing-ebpf-apps-in-java-1/ 1456 https:
//github.com/iovisor/bcc 1457 * RESEARCH batman-adv 1459 :CREATED: <2024-08-23 Fri 21:16> 1460 :ID: 53992507-a3af-43ff-b04b-aa05ccabe2fa 1463 - State "RESEARCH" from [2024-08-23 Fri 21:16] 1465 [[https://www.open-mesh.org/projects/batman-adv/wiki][Doc-overview - batman-adv - Open Mesh]]