changelog shortlog graph tags branches files raw help

Mercurial > org > plan / changeset: core task updates

changeset 9: cd21d24f2d1b
parent 8: 3ad938ed8069
child 10: 1d65381766db
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 11 Aug 2024 10:13:19 -0400
files: roadmap.org tasks/core.org tasks/demo.org tasks/infra.org
description: core task updates
     1.1--- a/roadmap.org	Sun Jul 28 21:20:48 2024 -0400
     1.2+++ b/roadmap.org	Sun Aug 11 10:13:19 2024 -0400
     1.3@@ -4,8 +4,14 @@
     1.4 #+setupfile: ../clean.theme
     1.5 * TODO 2024
     1.6 SCHEDULED: <2024-01-01 Mon>--[2024-12-31 Tue]
     1.7+:PROPERTIES:
     1.8+:ID:       bef157e2-ef55-4653-9916-1a329255a920
     1.9+:END:
    1.10 - State "TODO"       from              [2023-11-05 Sun 21:47]
    1.11 ** WIP migrate VC off of EC2                                  :opsec:vc:code:
    1.12+:PROPERTIES:
    1.13+:ID:       e71f5fa6-59de-4c80-9cf8-3345f7310105
    1.14+:END:
    1.15 :LOGBOOK:
    1.16 - State "WIP"        from              [2024-05-06 Mon 16:43]
    1.17 :END:
    1.18@@ -15,6 +21,9 @@
    1.19 vc.compiler.company will be migrate to rurik on a dedicated pod
    1.20 (requires ubuntu).
    1.21 ** WIP Wireguard VPN                                              :net:opsec:
    1.22+:PROPERTIES:
    1.23+:ID:       867d2bd7-cedc-4695-b98a-57296bae7792
    1.24+:END:
    1.25 :LOGBOOK:
    1.26 - State "TODO"       from              [2024-05-06 Mon 16:48]
    1.27 - State "WIP"        from "TODO"       [2024-05-06 Mon 16:48]
    1.28@@ -24,6 +33,9 @@
    1.29 endpoints. Our goal is to migrate all existing devices, then make
    1.30 appropriate accomodations for Podman containers, and finally KVM.
    1.31 ** TBD IO                                                              :lisp:
    1.32+:PROPERTIES:
    1.33+:ID:       ad563749-b7c1-4d17-8a9d-65361ce8013a
    1.34+:END:
    1.35 :LOGBOOK:
    1.36 - State "TBD"        from              [2024-05-06 Mon 16:50]
    1.37 :END:
    1.38@@ -37,6 +49,9 @@
    1.39 short-term goal, we will implement simple binary streams backed by
    1.40 io_uring.
    1.41 ** WIP skel
    1.42+:PROPERTIES:
    1.43+:ID:       34e336b5-66e7-46db-ab65-970131748fe0
    1.44+:END:
    1.45 :LOGBOOK:
    1.46 - State "WIP"        from "TBD"        [2024-05-06 Mon 17:06]
    1.47 :END:
    1.48@@ -49,6 +64,9 @@
    1.49 The two top priorities are VC commands and implementing a functional
    1.50 replacement for makefiles as used in the infra project.
    1.51 ** TODO infra
    1.52+:PROPERTIES:
    1.53+:ID:       615dfb29-859c-4ad7-9acf-01ea8aee1174
    1.54+:END:
    1.55 :LOGBOOK:
    1.56 - State "TODO"       from              [2024-05-06 Mon 17:06]
    1.57 :END:
     2.1--- a/tasks/core.org	Sun Jul 28 21:20:48 2024 -0400
     2.2+++ b/tasks/core.org	Sun Aug 11 10:13:19 2024 -0400
     2.3@@ -2,35 +2,50 @@
     2.4 #+author: Richard Westhaver
     2.5 #+description: core task list
     2.6 #+setupfile: ../../clean.theme
     2.7-* WIP complete base obj/query package                                  :lisp:
     2.8-:PROPERTIES:
     2.9-:LOCATION: lisp/lib/obj/query.lisp
    2.10+#+OPTIONS: num:nil d:t prop:t
    2.11+#+filetags: core
    2.12+* TODO ffi cleanup [0/8]                                           :lisp:ffi:
    2.13+:LOGBOOK:
    2.14+- State "TODO"       from              [2024-08-10 Sat 22:20]
    2.15 :END:
    2.16+** TODO rocksdb merge-operator callbacks
    2.17 :LOGBOOK:
    2.18-- State "WIP"        from              [2024-07-09 Tue 22:14]
    2.19+- State "TODO"       from              [2024-08-10 Sat 22:21]
    2.20+:END:
    2.21+** TODO gstreamer practical example
    2.22+:LOGBOOK:
    2.23+- State "TODO"       from              [2024-08-10 Sat 22:21]
    2.24+:END:
    2.25+** TODO ublk practical example
    2.26+:LOGBOOK:
    2.27+- State "TODO"       from              [2024-08-10 Sat 22:22]
    2.28 :END:
    2.29-- object-based protocol for asking questions about data collections
    2.30-  using data expressions
    2.31-- +lex+, +parse+, +compile+ - all handled in the Q system
    2.32-- probably in need of refactor right after
    2.33-  - different parts of the protocol will be used by different systems
    2.34-    - ~data-source~ will be implemented in ~DAT/CSV~ ~DAT/PARQUET~,
    2.35-      ~RDB~, etc
    2.36-    - ~query-expression~ and ~query-plan~ will be implemented in
    2.37-      ~Q/SQL~ and ~Q/DQL~
    2.38-* WIP net/srv                                                          :lisp:
    2.39+** TODO uring read/write file example
    2.40+:LOGBOOK:
    2.41+- State "TODO"       from              [2024-08-10 Sat 22:22]
    2.42+:END:
    2.43+** TODO btrfs practical example
    2.44 :LOGBOOK:
    2.45-- State "TODO"       from              [2024-07-19 Fri 21:50]
    2.46-- State "WIP"        from "TODO"       [2024-07-19 Fri 21:51]
    2.47+- State "TODO"       from              [2024-08-10 Sat 22:30]
    2.48+:END:
    2.49+- [ ] sudo example (filesystem)
    2.50+- [ ] non-sudo example?
    2.51+** TODO xkb practical example
    2.52+:LOGBOOK:
    2.53+- State "TODO"       from              [2024-08-10 Sat 22:32]
    2.54 :END:
    2.55-* WIP dat/parquet                                                      :lisp:
    2.56+** TODO keyutils practical example
    2.57 :LOGBOOK:
    2.58-- State "WIP"        from              [2024-07-19 Fri 21:51]
    2.59+- State "TODO"       from              [2024-08-10 Sat 22:33]
    2.60 :END:
    2.61-
    2.62+** TODO readline 
    2.63+:LOGBOOK:
    2.64+- State "TODO"       from              [2024-08-10 Sat 22:23]
    2.65+:END:
    2.66 * TBD retire x.lisp                                               :lisp:skel:
    2.67 :PROPERTIES:
    2.68 :LOCATION: x.lisp
    2.69+:Effort:   5h
    2.70 :END:
    2.71 :LOGBOOK:
    2.72 - State "TODO"       from              [2024-07-09 Tue 22:24]
    2.73@@ -39,7 +54,7 @@
    2.74 with skel taking on more responsibility we no longer need a dedicated build tool.
    2.75 - migrate all functionality to skelfile
    2.76 - cleanup readme with installation instructions (with and without =infra=)
    2.77-* TODO cli/clap v0.2.0 [1/4]                                           :lisp:
    2.78+* TODO cli/clap v0.2.0 [1/5]                                       :lisp:cli:
    2.79 :LOGBOOK:
    2.80 - State "TODO"       from              [2024-07-21 Sun 01:33]
    2.81 :END:
    2.82@@ -66,13 +81,10 @@
    2.83 - how to apply operators?
    2.84 - pipe results?
    2.85 +forth+
    2.86-* TODO std/tests refactor                                          :lisp:std:
    2.87+** TODO explain impl
    2.88 :LOGBOOK:
    2.89-- State "TODO"       from              [2024-07-27 Sat 02:42]
    2.90+- State "TODO"       from              [2024-08-03 Sat 01:01]
    2.91 :END:
    2.92-- a bit too large, time to shake it up
    2.93-- need separation of concerns (files) for task-pool/threaded tests in
    2.94-  particular
    2.95 * TODO multipoint-images                                       :lisp:bin:sys:
    2.96 :LOGBOOK:
    2.97 - State "TODO"       from              [2024-07-28 Sun 21:01]
    2.98@@ -84,3 +96,647 @@
    2.99     dispatched on arg0.
   2.100   - could also create a thin shim in Rust/Zig and call the appropriate
   2.101     entrypoint after loading the core.
   2.102+* TODO [[https://libyear.com/][libyear]]                                                    :lisp:skel:
   2.103+:LOGBOOK:
   2.104+- State "TODO"       from              [2024-08-01 Thu 12:27]
   2.105+:END:
   2.106+* TODO Q MVP
   2.107+:LOGBOOK:
   2.108+- State "TODO"       from              [2024-08-03 Sat 01:03]
   2.109+:END:
   2.110+** TODO SQL
   2.111+:LOGBOOK:
   2.112+- State "TODO"       from              [2024-08-03 Sat 01:03]
   2.113+- Note taken on [2024-08-04 Sun 21:16] \\
   2.114+  pretty close - need to fix some recursion bugs then start messing with query-engines
   2.115+:END:
   2.116+*** DONE make-sql-data-frame
   2.117+:LOGBOOK:
   2.118+- State "FIX"        from              [2024-08-05 Mon 21:13]
   2.119+- State "DONE"       from "FIX"        [2024-08-07 Wed 21:05]
   2.120+:END:
   2.121+- finish implementation
   2.122+** TODO DQL
   2.123+:LOGBOOK:
   2.124+- State "TODO"       from              [2024-08-03 Sat 01:03]
   2.125+:END:
   2.126+- pronounced 'Dee-qwul'
   2.127+- the challenge it seems, is building an inference engine that isn't
   2.128+  just another half-assed prolog
   2.129+- expression and introspection is valued here much more than speed/size
   2.130+- allegro and screamer are favorites so far
   2.131+*** TODO top-level macros
   2.132+:LOGBOOK:
   2.133+- State "TODO"       from              [2024-08-08 Thu 22:38]
   2.134+:END:
   2.135+- -?
   2.136+*** TODO conditions
   2.137+:LOGBOOK:
   2.138+- State "TODO"       from              [2024-08-08 Thu 22:39]
   2.139+:END:
   2.140+*** TODO basic predicates
   2.141+:LOGBOOK:
   2.142+- State "TODO"       from              [2024-08-08 Thu 22:39]
   2.143+:END:
   2.144+#+begin_example
   2.145+  =/2   ==/2   abolish/2   and/*   append/3   arg/3   assert/1   asserta/1   assertz/1   atom/1   atomic/1  
   2.146+  bagof/3   call/1   consult/1   copy-term/2   erase/1   fail/0   first/1   functor/3   ground/1   if/2   if/3  
   2.147+  is/2   last/1   leash/1   length/1   listing/1   member/2   memberp/2 (member without backtracking)   not/1  
   2.148+  number/1   or/*   princ/1   read/1   recorda/1   recordz/1   recorded/2   repeat/0   rest/1   retract/1   rev/2 
   2.149+   setof/3   true/0   var/1   write/1   
   2.150+
   2.151+#+end_example
   2.152+*** TODO compiler design
   2.153+:LOGBOOK:
   2.154+- State "TODO"       from              [2024-08-08 Thu 22:39]
   2.155+:END:
   2.156+*** TODO runtime design
   2.157+:LOGBOOK:
   2.158+- State "TODO"       from              [2024-08-08 Thu 22:43]
   2.159+:END:
   2.160+- needs a stack
   2.161+- maybe registers
   2.162+- plenty of dynamic extent
   2.163+- arenas
   2.164+- thread-aware
   2.165+** TODO q/tests/fuzz [0/2]
   2.166+:LOGBOOK:
   2.167+- State "TODO"       from              [2024-08-05 Mon 21:11]
   2.168+:END:
   2.169+- [[https://github.com/andygrove/how-query-engines-work/blob/main/jvm/fuzzer/src/main/kotlin/Fuzzer.kt][kquery]]
   2.170+*** TODO sql-fuzzer
   2.171+:LOGBOOK:
   2.172+- State "TODO"       from              [2024-08-05 Mon 21:11]
   2.173+:END:
   2.174+- [ ] values
   2.175+- [ ] record-batch
   2.176+- [ ] expression
   2.177+- [ ] plan
   2.178+*** TODO dql-fuzzer
   2.179+:LOGBOOK:
   2.180+- State "TODO"       from              [2024-08-05 Mon 21:12]
   2.181+:END:
   2.182+** TODO #? reader macro
   2.183+:LOGBOOK:
   2.184+- State "TODO"       from              [2024-08-08 Thu 22:36]
   2.185+:END:
   2.186+* RESEARCH OCI projects [0/4]                                :pod:packy:skel:
   2.187+:LOGBOOK:
   2.188+- State "RESEARCH"   from              [2024-08-01 Thu 12:35]
   2.189+:END:
   2.190+** RESEARCH [[https://oras.land/][oras]]
   2.191+:LOGBOOK:
   2.192+- State "RESEARCH"   from              [2024-08-01 Thu 12:36]
   2.193+:END:
   2.194+** RESEARCH skopeo
   2.195+:LOGBOOK:
   2.196+- State "RESEARCH"   from              [2024-08-01 Thu 12:36]
   2.197+:END:
   2.198+** RESEARCH zot
   2.199+:LOGBOOK:
   2.200+- State "RESEARCH"   from              [2024-08-01 Thu 12:36]
   2.201+:END:
   2.202+** RESEARCH [[https://www.sigstore.dev/][sigstore]]
   2.203+:LOGBOOK:
   2.204+- State "RESEARCH"   from              [2024-08-01 Thu 12:30]
   2.205+:END:
   2.206+* HACK defsys
   2.207+:LOGBOOK:
   2.208+- State "HACK"       from              [2024-08-03 Sat 01:06]
   2.209+:END:
   2.210+- maybe Norvig was right and we don't need asdf/uiop, maybe not
   2.211+- the truth is somewhere in between
   2.212+- [ ] defsys macro
   2.213+- [ ] use macro
   2.214+- [ ] using macro
   2.215+- [ ] requires macro
   2.216+* DONE migrate to sb-grovel [9/9]                                  :lisp:ffi:
   2.217+:LOGBOOK:
   2.218+- State "TODO"       from              [2023-11-27 Mon 23:42]
   2.219+- State "DONE"       from "TODO"       [2024-02-04 Sun 20:30]
   2.220+:END:
   2.221+:PROPERTIES:
   2.222+:ID: bb365025-e5e7-4407-acba-32e30d1a245a
   2.223+:END:
   2.224+[[file:lisp/ffi/]]
   2.225+** DONE blake3
   2.226+:LOGBOOK:
   2.227+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.228+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.229+:END:
   2.230+:PROPERTIES:
   2.231+:ID: 656c2683-8780-407c-b955-3defc4959595
   2.232+:END:
   2.233+** DONE bqn
   2.234+:LOGBOOK:
   2.235+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.236+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.237+:END:
   2.238+:PROPERTIES:
   2.239+:ID: b4757746-525b-49e4-b8ac-677375867d8f
   2.240+:END:
   2.241+** DONE btrfs
   2.242+:LOGBOOK:
   2.243+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.244+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.245+:END:
   2.246+:PROPERTIES:
   2.247+:ID: b3b411fe-6b2d-4338-9e23-83536336a487
   2.248+:END:
   2.249+** DONE k
   2.250+:LOGBOOK:
   2.251+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.252+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.253+:END:
   2.254+:PROPERTIES:
   2.255+:ID: 8a463084-efa0-4535-8239-b1c4955bde4c
   2.256+:END:
   2.257+** DONE rocksdb
   2.258+:LOGBOOK:
   2.259+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.260+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.261+:END:
   2.262+:PROPERTIES:
   2.263+:ID: 2d4d70af-228f-424c-8374-9fc8ed5c6f92
   2.264+:END:
   2.265+** DONE tree-sitter
   2.266+:LOGBOOK:
   2.267+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.268+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.269+:END:
   2.270+:PROPERTIES:
   2.271+:ID: 0cdf3412-cb00-4069-8e1b-b49c736377cf
   2.272+:END:
   2.273+** DONE uring
   2.274+:LOGBOOK:
   2.275+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.276+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.277+:END:
   2.278+:PROPERTIES:
   2.279+:ID: 45a52407-ccaf-4ea1-99c4-d6f7ba0b2731
   2.280+:END:
   2.281+** DONE zstd
   2.282+:LOGBOOK:
   2.283+- State "TODO"       from              [2023-11-29 Wed 19:00]
   2.284+- State "DONE"       from "TODO"       [2023-12-09 Sat 01:57]
   2.285+:END:
   2.286+:PROPERTIES:
   2.287+:ID: 6ade8dd8-83b1-470d-a0da-a352ce4c2d06
   2.288+:END:
   2.289+** DONE xkb
   2.290+:LOGBOOK:
   2.291+- State "TODO"       from              [2023-11-29 Wed 19:27]
   2.292+- State "WIP"        from "TODO"       [2023-12-10 Sun 22:47]
   2.293+- State "DONE"       from "WIP"        [2024-02-04 Sun 20:30]
   2.294+:END:
   2.295+:PROPERTIES:
   2.296+:ID: af778a5f-4834-4f0c-ae53-36d35cb98d8c
   2.297+:END:
   2.298+* TODO parse 0.1 [0/2]                                             :lisp:lib:
   2.299+:LOGBOOK:
   2.300+- State "TODO"       from "TODO"       [2023-12-13 Wed 18:24]
   2.301+:END:
   2.302+:PROPERTIES:
   2.303+:ID: parse
   2.304+:ID: 8f54a69e-b256-4efd-98e8-75b4892f12b8
   2.305+:END:
   2.306+- State "TODO"       from              [2023-11-29 Wed 19:01]
   2.307+- lalr.lisp
   2.308+- lex.lisp
   2.309+- obj api
   2.310+** TODO tests
   2.311+:LOGBOOK:
   2.312+- State "TODO"       from              [2023-12-24 Sun 19:28]
   2.313+:END:
   2.314+add tests for lexer and LALR. figure out if there are any gaps that we
   2.315+need to fill.
   2.316+** TODO toml impl
   2.317+:LOGBOOK:
   2.318+- State "TODO"       from              [2023-12-24 Sun 19:28]
   2.319+:END:
   2.320+the toml parser on quicklisp is based on esrap, make a comparable one
   2.321+using our parser module.
   2.322+* TODO organ 0.2 [0/2]                                           :lisp:organ:
   2.323+:LOGBOOK:
   2.324+- State "TODO"       from              [2023-11-29 Wed 21:25]
   2.325+:END:
   2.326+:PROPERTIES:
   2.327+:ID: 4e7c55dc-e2fa-458f-ad3b-942b9aa336a4
   2.328+:END:
   2.329+** TBD organ-export
   2.330+:LOGBOOK:
   2.331+- State "TBD"        from "TODO"       [2023-11-29 Wed 21:24]
   2.332+:END:
   2.333+:PROPERTIES:
   2.334+:ID: 189584f5-fc22-4129-bd47-5d494a088684
   2.335+:END:
   2.336+** TODO org-parse
   2.337+:LOGBOOK:
   2.338+- State "TODO"       from              [2023-11-29 Wed 21:26]
   2.339+:END:
   2.340+:PROPERTIES:
   2.341+:DEPENDENCIES: parse
   2.342+:HOOKS: organ-export
   2.343+:ID: 63774177-9730-4961-8535-414fac7a6f4f
   2.344+:END:
   2.345+** TBD parse org-elements as sxp                                        :sxp:
   2.346+:LOGBOOK:
   2.347+- State "TODO"       from              [2023-09-25 Mon 15:23]
   2.348+- State "TBD"        from "TODO"       [2023-12-13 Wed 18:10]
   2.349+:END:
   2.350+#+name: oe-init
   2.351+#+begin_src emacs-lisp :results silent
   2.352+  (slime-start)
   2.353+#+end_src
   2.354+
   2.355+#+begin_src lisp :results silent
   2.356+  (ql:quickload :organ)
   2.357+#+end_src
   2.358+
   2.359+#+name: oe-form
   2.360+#+begin_src emacs-lisp :results output replace
   2.361+  (macroexpand-1 (org-element-parse-buffer))
   2.362+#+end_src
   2.363+
   2.364+#+RESULTS: oe-form
   2.365+
   2.366+#+name: oe-sxp
   2.367+#+begin_src lisp :results output :var in=oe-form()
   2.368+  (let ((sxp (sxp:make-sxp)))
   2.369+    ;; SIMPLE-READER-ERROR #\) when using read
   2.370+    (sxp:wrap-from-string! sxp in)
   2.371+    (describe sxp))
   2.372+#+end_src
   2.373+
   2.374+#+RESULTS: oe-sxp
   2.375+: #<DAT/SXP:SXP {1026EFA513}>
   2.376+:   [standard-object]
   2.377+: 
   2.378+: Slots with :INSTANCE allocation:
   2.379+:   AST                            = NIL
   2.380+
   2.381+* TODO rdb 0.2 [0/6]                                               :lisp:rdb:
   2.382+:LOGBOOK:
   2.383+- State "TODO"       from "TODO"       [2023-12-13 Wed 18:26]
   2.384+:END:
   2.385+** TODO error handling
   2.386+:LOGBOOK:
   2.387+- State "TODO"       from              [2023-12-10 Sun 22:57]
   2.388+:END:
   2.389+- need to unwrap the pointer (* (* t))
   2.390+- cast to string,int,bool
   2.391+- wrap segfault handlers
   2.392+- add restarts for common errors (bad path)
   2.393+- add cleanup routines
   2.394+** TODO client api
   2.395+:LOGBOOK:
   2.396+- State "TODO"       from              [2023-12-10 Sun 22:59]
   2.397+:END:
   2.398+- clients are fully dynamic
   2.399+- generated from RDB instances
   2.400+- compiles in CF/option/multithread/type info
   2.401+- clients implement custom Q language
   2.402+** TODO sequence/iterator impl
   2.403+:LOGBOOK:
   2.404+- State "TODO"       from              [2023-12-10 Sun 23:09]
   2.405+:END:
   2.406+- use SBCL built-ins to extend the api - wrap the raw FFI iterator
   2.407+- define mixins
   2.408+** TODO comparator impl
   2.409+:LOGBOOK:
   2.410+- State "TODO"       from              [2023-12-10 Sun 23:11]
   2.411+:END:
   2.412+- supply custom comparators to rocksdb from lisp
   2.413+** TODO type system
   2.414+:LOGBOOK:
   2.415+- State "TODO"       from              [2023-12-10 Sun 23:12]
   2.416+:END:
   2.417+- capture types of: kv, cf
   2.418+- specs
   2.419+  - kv-spec = (kv-spec val-spec)
   2.420+    - must be serialized to/from vec<char>
   2.421+  - cf-spec
   2.422+    - used as superclass
   2.423+    - methods for abstracting CFs
   2.424+** TODO set-opt/get-opt
   2.425+:LOGBOOK:
   2.426+- State "TODO"       from              [2023-12-16 Sat 00:49]
   2.427+:END:
   2.428+- need better api
   2.429+- may just want to use the generic C fn that takes string as input
   2.430+- I feel this may be less efficient but haven't benched it (requires additional arg)
   2.431+- separate packages are a pain to query symbols with
   2.432+
   2.433+* TODO vc 0.1 [2/3]                                                      :vc:
   2.434+:LOGBOOK:
   2.435+- State "TODO"       from              [2024-02-29 Thu 16:10]
   2.436+:END:
   2.437+** TODO vc-mirrors-update replacement
   2.438+:LOGBOOK:
   2.439+- State "TODO"       from              [2024-08-10 Sat 01:33]
   2.440+:END:
   2.441+** DONE git                                                          :vc:git:
   2.442+:LOGBOOK:
   2.443+- State "TODO"       from              [2023-12-16 Sat 00:55]
   2.444+- State "DONE"       from "TODO"       [2024-08-10 Sat 01:34]
   2.445+:END:
   2.446+** DONE hg                                                            :vc:hg:
   2.447+:LOGBOOK:
   2.448+- State "TODO"       from              [2023-12-16 Sat 00:56]
   2.449+- State "DONE"       from "TODO"       [2024-08-10 Sat 01:34]
   2.450+:END:
   2.451+
   2.452+* TODO dat 0.1                                                     :lisp:dat:
   2.453+:LOGBOOK:
   2.454+- State "TODO"       from              [2024-08-11 Sun 00:08]
   2.455+:END:
   2.456+** WIP dat/parquet                                                     :lisp:
   2.457+:PROPERTIES:
   2.458+:Effort:   80h
   2.459+:END:
   2.460+:LOGBOOK:
   2.461+- State "WIP"        from              [2024-07-19 Fri 21:51]
   2.462+:END:
   2.463+
   2.464+** TODO dat/csv column selectors                                   :lisp:dat:
   2.465+:PROPERTIES:
   2.466+:Effort:   8h
   2.467+:END:
   2.468+:LOGBOOK:
   2.469+- State "TODO"       from              [2024-08-05 Mon 20:53]
   2.470+:END:
   2.471+- a function which accepts a single arg which is either a number,
   2.472+  indicating index-based selection or a list of column names for
   2.473+  selection by name.
   2.474+
   2.475+~(read-csv-line ... :select (lambda (x) x))~
   2.476+
   2.477+- index-based-selection
   2.478+- selection-by-name
   2.479+
   2.480+* TODO skel 0.2 [1/4]                                             :lisp:skel:
   2.481+:LOGBOOK:
   2.482+- State "TODO"       from              [2023-12-16 Sat 00:55]
   2.483+:END:
   2.484+** DONE eval rules from CLI
   2.485+:LOGBOOK:
   2.486+- State "TODO"       from              [2023-12-16 Sat 00:56]
   2.487+- State "DONE"       from "TODO"       [2024-08-05 Mon 21:06]
   2.488+:END:
   2.489+- need new command or flag for rules
   2.490+- evaluate forms instead of looking in skelfile
   2.491+** TODO split out skel rules
   2.492+:LOGBOOK:
   2.493+- State "TODO"       from              [2024-08-11 Sun 00:10]
   2.494+:END:
   2.495+- core/rule.lisp
   2.496+** TODO implement task-pool
   2.497+:LOGBOOK:
   2.498+- State "TODO"       from              [2024-08-11 Sun 00:10]
   2.499+:END:
   2.500+** TODO implement vm
   2.501+:LOGBOOK:
   2.502+- State "TODO"       from              [2024-08-11 Sun 00:11]
   2.503+:END:
   2.504+- core/vm.lisp
   2.505+* TODO std 0.2 [2/8]                                               :lisp:std:
   2.506+:LOGBOOK:
   2.507+- State "TODO"       from              [2023-12-12 Tue 19:49]
   2.508+:END:
   2.509+** DONE refactor system definition
   2.510+:LOGBOOK:
   2.511+- State "TODO"       from              [2023-12-13 Wed 15:17]
   2.512+- State "DONE"       from "TODO"       [2023-12-13 Wed 19:38]
   2.513+:END:
   2.514+- remove package-inferred
   2.515+- minimize number of systems
   2.516+- use pkg.lisp files
   2.517+** TODO cleanup fu
   2.518+:LOGBOOK:
   2.519+- State "TODO"       from              [2023-12-13 Wed 19:39]
   2.520+:END:
   2.521+** TODO documentation sweep
   2.522+:LOGBOOK:
   2.523+- State "TODO"       from              [2024-02-29 Thu 16:09]
   2.524+:END:
   2.525+** TODO CLTL2 impl
   2.526+:LOGBOOK:
   2.527+- State "TODO"       from              [2024-02-29 Thu 16:09]
   2.528+:END:
   2.529+** TODO more bits
   2.530+:LOGBOOK:
   2.531+- State "TODO"       from              [2024-02-29 Thu 16:09]
   2.532+:END:
   2.533+** DONE list-package-symbols, etc
   2.534+:LOGBOOK:
   2.535+- State "TODO"       from              [2024-02-29 Thu 16:09]
   2.536+- State "DONE"       from "TODO"       [2024-08-07 Wed 21:07]
   2.537+:END:
   2.538+
   2.539+** TODO std/tests refactor
   2.540+:LOGBOOK:
   2.541+- State "TODO"       from              [2024-07-27 Sat 02:42]
   2.542+:END:
   2.543+- a bit too large, time to shake it up
   2.544+- need separation of concerns (files) for task-pool/threaded tests in
   2.545+  particular
   2.546+** TODO tasks
   2.547+:LOGBOOK:
   2.548+- State "TODO"       from              [2024-08-10 Sat 01:29]
   2.549+:END:
   2.550+* TODO sxp 0.2 [0/1]                                               :lisp:sxp:
   2.551+:LOGBOOK:
   2.552+- State "TODO"       from              [2023-12-12 Tue 19:49]
   2.553+:END:
   2.554+** TODO WRAP-OBJECT                                                    :skel:
   2.555+:LOGBOOK:
   2.556+- State "TODO"       from              [2023-12-12 Tue 19:49]
   2.557+:END:
   2.558+- use to replace LOAD-AST for sk-project and friends
   2.559+- requires mop
   2.560+- take a look at UNWRAP-OBJECT too, may need rewrite for a better API
   2.561+* TODO obj 0.1 [2/2]                                               :lisp:obj:
   2.562+:LOGBOOK:
   2.563+- State "TODO"       from              [2023-12-17 Sun 00:59]
   2.564+:END:
   2.565+** NOPE uri
   2.566+:LOGBOOK:
   2.567+- State "TODO"       from              [2023-12-17 Sun 01:00]
   2.568+- Note taken on [2023-12-20 Wed 18:26] \\
   2.569+  the franz impl doesn't play well with SBCL, at least with our
   2.570+  hacks. I'm not sure how faithfully I want to follow the RFCs
   2.571+  anyhow.. maybe we go for the dead simple approach and focus on MOP
   2.572+  for a path and URI protocol.
   2.573+:END:
   2.574+- mostly just need the tests and to finish porting the Franz implementation
   2.575+** DONE db
   2.576+:LOGBOOK:
   2.577+- State "TODO"       from              [2023-12-20 Wed 18:26]
   2.578+- State "DONE"       from "TODO"       [2024-08-05 Mon 21:08]
   2.579+- Note taken on [2024-08-05 Mon 21:08] \\
   2.580+  XDB2 is no longer used - instead provide a simple abstract API which
   2.581+  builds up to high-level systems like RDB
   2.582+:END:
   2.583+- ported from XDB2
   2.584+** WIP complete base obj/query package [2/3]                           :lisp:
   2.585+:PROPERTIES:
   2.586+:LOCATION: lisp/lib/obj/query.lisp
   2.587+:END:
   2.588+:LOGBOOK:
   2.589+- State "WIP"        from              [2024-07-09 Tue 22:14]
   2.590+:END:
   2.591+- object-based protocol for asking questions about data collections
   2.592+  using data expressions
   2.593+- +lex+, +parse+, +compile+ - all handled in the Q system
   2.594+- probably in need of refactor right after
   2.595+  - different parts of the protocol will be used by different systems
   2.596+    - ~data-source~ will be implemented in ~DAT/CSV~ ~DAT/PARQUET~,
   2.597+      ~RDB~, etc
   2.598+    - ~query-expression~ and ~query-plan~ will be implemented in
   2.599+      ~Q/SQL~ and ~Q/DQL~
   2.600+*** DONE aggregate physical plan
   2.601+:PROPERTIES:
   2.602+:Effort:   2h
   2.603+:END:
   2.604+:LOGBOOK:
   2.605+- State "DONE"       from "TODO"       [2024-08-03 Sat 01:00]
   2.606+:END:
   2.607+*** DONE Physical Expressions
   2.608+:PROPERTIES:
   2.609+:Effort:   3h
   2.610+:END:
   2.611+:LOGBOOK:
   2.612+- State "TODO"       from              [2024-08-02 Fri 15:53]
   2.613+- State "TODO"       from              [2024-08-02 Fri 15:53]
   2.614+- State "DONE"       from "TODO"       [2024-08-03 Sat 01:00]
   2.615+:END:
   2.616+*** TODO Basic Testing
   2.617+:LOGBOOK:
   2.618+- State "TODO"       from              [2024-08-02 Fri 15:55]
   2.619+:END:
   2.620+
   2.621+* TODO net 0.1 [5/8]                                               :lisp:net:
   2.622+:LOGBOOK:
   2.623+- State "TODO"       from              [2023-12-17 Sun 01:00]
   2.624+:END:
   2.625+** TODO fixtures                                                         :rt:
   2.626+:LOGBOOK:
   2.627+- State "TODO"       from              [2024-08-11 Sun 00:06]
   2.628+:END:
   2.629+- implement simple network fixtures which can be used within the body of DEFTEST
   2.630+- start with simple sockets - UDP then TCP
   2.631+- work up towards HTTP
   2.632+** TODO tcp                                                            :core:
   2.633+:LOGBOOK:
   2.634+- State "TODO"       from              [2023-12-17 Sun 01:01]
   2.635+:END:
   2.636+** TODO udp                                                            :core:
   2.637+:LOGBOOK:
   2.638+- State "TODO"       from              [2023-12-17 Sun 01:01]
   2.639+:END:
   2.640+** DONE crew                                                          :proto:
   2.641+:LOGBOOK:
   2.642+- State "TODO"       from              [2023-12-17 Sun 01:01]
   2.643+- State "DONE"       from "TODO"       [2024-08-10 Sat 01:31]
   2.644+:END:
   2.645+
   2.646+** DONE http                                                          :proto:
   2.647+:LOGBOOK:
   2.648+- State "TODO"       from              [2023-12-17 Sun 01:01]
   2.649+- State "DONE"       from "TODO"       [2024-08-05 Mon 21:07]
   2.650+:END:
   2.651+** DONE dns                                                           :proto:
   2.652+:LOGBOOK:
   2.653+- State "TODO"       from              [2023-12-17 Sun 01:01]
   2.654+- State "DONE"       from "TODO"       [2024-08-05 Mon 21:07]
   2.655+:END:
   2.656+
   2.657+** DONE tlv                                                           :codec:
   2.658+:LOGBOOK:
   2.659+- State "TODO"       from              [2023-12-17 Sun 01:01]
   2.660+- State "DONE"       from "TODO"       [2024-08-07 Wed 21:08]
   2.661+:END:
   2.662+
   2.663+** DONE osc                                                           :codec:
   2.664+:LOGBOOK:
   2.665+- State "TODO"       from              [2023-12-17 Sun 01:03]
   2.666+- State "DONE"       from "TODO"       [2024-08-07 Wed 21:08]
   2.667+:END:
   2.668+** WIP net/srv                                                         :lisp:
   2.669+:LOGBOOK:
   2.670+- State "TODO"       from              [2024-07-19 Fri 21:50]
   2.671+- State "WIP"        from "TODO"       [2024-07-19 Fri 21:51]
   2.672+:END:
   2.673+- needs a solid task-pool impl completed first
   2.674+*** RESEARCH Woo/+
   2.675+:LOGBOOK:
   2.676+- State "RESEARCH"   from              [2024-08-10 Sat 01:23]
   2.677+:END:
   2.678+* TODO pwn 0.1 [0/1]                                               :lisp:pwn:
   2.679+:LOGBOOK:
   2.680+- State "TODO"       from              [2023-12-17 Sun 01:04]
   2.681+- Note taken on [2024-02-29 Thu 16:11] \\
   2.682+  Should this be a separate application? Lisp exploit development framework
   2.683+:END:
   2.684+** TODO diz
   2.685+:LOGBOOK:
   2.686+- State "TODO"       from              [2023-12-17 Sun 01:04]
   2.687+:END:
   2.688+* TODO gui 0.1 [0/2]                                               :lisp:gui:
   2.689+:LOGBOOK:
   2.690+- State "TODO"       from              [2023-12-17 Sun 03:40]
   2.691+:END:
   2.692+** TODO wayland protocol bindings
   2.693+:LOGBOOK:
   2.694+- State "TODO"       from              [2023-12-17 Sun 03:40]
   2.695+:END:
   2.696+** TBD wayland compositor                                         :rust:lisp:
   2.697+:LOGBOOK:
   2.698+- State "TBD"        from "TODO"       [2023-11-29 Wed 21:25]
   2.699+:END:
   2.700+:PROPERTIES:
   2.701+:ID: e18a90d7-10bc-44d3-8508-56483d29d385
   2.702+:END:
   2.703+* TODO rt 0.1 [0/2]                                                      :rt:
   2.704+:LOGBOOK:
   2.705+- State "TODO"       from              [2024-02-29 Thu 16:06]
   2.706+:END:
   2.707+** TODO redirect I/O in tests
   2.708+:LOGBOOK:
   2.709+- State "TODO"       from              [2024-02-29 Thu 16:06]
   2.710+:END:
   2.711+prevent tests from printing implicitly. redirect stream locally, cache
   2.712+it somehow for review.
   2.713+** TODO *test-on-def*
   2.714+:LOGBOOK:
   2.715+- State "TODO"       from              [2024-02-29 Thu 17:17]
   2.716+:END:
   2.717+- simple flag to test when file is defined (part of deftest macro)
   2.718+* NOPE dot 0.1 [1/1]                                               :lisp:dot:
   2.719+:LOGBOOK:
   2.720+- State "TODO"       from              [2023-12-20 Wed 18:27]
   2.721+:END:
   2.722+** NOPE PARSE-SPECIALIZER-USING-CLASS
   2.723+:LOGBOOK:
   2.724+- State "TODO"       from              [2023-12-20 Wed 18:28]
   2.725+:END:
   2.726+- experimental SB-MOP generic, may be useful in places where we would
   2.727+  typically use =(eql OBJECT)= as a specializer for GRAPH.
   2.728+
   2.729+* TBD homer 0.1 [1/2]                                            :lisp:homer:
   2.730+:LOGBOOK:
   2.731+- State "TBD"        from "TODO"       [2023-12-12 Tue 19:53]
   2.732+:END:
   2.733+** DONE review GNU stow API
   2.734+:LOGBOOK:
   2.735+- State "TODO"       from              [2023-12-24 Sun 19:32]
   2.736+- State "DONE"       from "TODO"       [2024-08-05 Mon 21:06]
   2.737+:END:
   2.738+[[https://www.gnu.org/software/stow/][homepage]]
   2.739+'symlink farm manager'
   2.740+rust impl: https://github.com/qboileau/rstow
   2.741+
   2.742+** TODO consolidate with skel
   2.743+:LOGBOOK:
   2.744+- State "TODO"       from              [2023-12-24 Sun 19:32]
   2.745+:END:
     3.1--- a/tasks/demo.org	Sun Jul 28 21:20:48 2024 -0400
     3.2+++ b/tasks/demo.org	Sun Aug 11 10:13:19 2024 -0400
     3.3@@ -2,6 +2,7 @@
     3.4 #+author: Richard Westhaver
     3.5 #+description: demo task list
     3.6 #+setupfile: ../../clean.theme
     3.7+#+filetags: demo
     3.8 * TODO update readme                                                    :doc:
     3.9 :LOGBOOK:
    3.10 - State "TODO"       from              [2024-07-09 Tue 22:21]
    3.11@@ -9,3 +10,6 @@
    3.12 - never really got around to reviewing the demo readme, it's been a
    3.13   while so time to update and bring things back to reality.
    3.14 * TODO examples/mdb                                              :example:db:
    3.15+:LOGBOOK:
    3.16+- State "TODO"       from "TODO"       [2024-08-06 Tue 16:54]
    3.17+:END:
     4.1--- a/tasks/infra.org	Sun Jul 28 21:20:48 2024 -0400
     4.2+++ b/tasks/infra.org	Sun Aug 11 10:13:19 2024 -0400
     4.3@@ -2,7 +2,7 @@
     4.4 #+author: Richard Westhaver
     4.5 #+description: infra task list
     4.6 #+setupfile: ../../clean.theme
     4.7-
     4.8+#+filetags: infra
     4.9 * TODO autogen.lisp                                                    :lisp:
    4.10 :LOGBOOK:
    4.11 - State "WIP"        from              [2024-07-09 Tue 22:23]