Core Tasks

FIXME inline TODOs

ID: d5aaf952-bb93-4b66-a7e0-1f0f827c0925
CREATED: <2025-05-31 Sat 00:48>
  • State "FIXME" from [2025-05-31 Sat 00:53]
(rgrep ".*;; TODO" "*.*" "~/comp/core/")

195

(rgrep ".*;; FIXME" "*.*" "~/comp/core/")

28

FIXME undefined symbols

CREATED: <2025-02-14 Fri 15:28>
ID: 4249f111-d4d1-47a3-bf30-43f178f7a66d
  • State "TODO" from [2025-02-14 Fri 15:28]
  • State "FIXME" from "TODO" [2025-02-14 Fri 15:30]
  • [2025-05-24 Sat]

    ; compilation unit finished
    ;   Undefined functions:
    
    ; DSP/AV:AV-ERROR NET/SRV/HTTP::CONTENT-TYPE
          RDB::CURSOR-GET-BOTH-BUFFERED RDB::CURSOR-MOVE-BUFFERED
          RDB::CURSOR-SET-BUFFERED RDB::DB-CURSOR RDB::DB-CURSOR-DELETE
          RDB::DB-CURSOR-MOVE-BUFFERED RDB::DB-CURSOR-PGET-BOTH-BUFFERED
          RDB::DB-CURSOR-PMOVE-BUFFERED RDB::DB-CURSOR-PSET-BUFFERED
          RDB::DB-CURSOR-SET-BUFFERED RDB::DB-DELETE-BUFFERED
          RDB::DB-DELETE-KV-BUFFERED RDB::DB-GET-KEY-BUFFERED
          RDB::DB-PUT-BUFFERED RDB::DUP-BTREES RDB::ENSURE-TRANSACTION
          Q::EXECUTE NET/SRV/HTTP::HANDLE-STATIC-FILE
          RDB::INDEX-TABLE-ASSOC RDB/CLI::INIT-RDB-USER-CONFIG RDB::KEY-FN
          POD::LOAD-POD-CONFIG
          NET/SRV/HTTP::MAYBE-REWRITE-URLS-FOR-SESSION
          RDB/CLI::PARSE-FILE-OPT RDB::PRIMARY
          NET/SRV/HTTP::READ-HTTP-HEADERS NET/SRV/HTTP::REASON-PHRASE
          RDB::RESET-STATIC-STREAM CLI/TOOLS/VIRT:RUN-BUILDAH
          CLI/TOOLS/VIRT:RUN-PODMAN :STORE NET/SRV/HTTP::WRITE-HEADER-LINE
    
    ;   Undefined variables:
    
    ; SYN/CLI:*GEN-CLI* DAT/QRCODE::*MASK-PATTERN-NUM*
          ORGAN/GRAPH::*ORG-GRAPH-DB* ORGAN/CLI:*ORGAN-CLI* POD::*POD-CLI*
          RDB/CLI:*RDB-CLI* VC/CLI:*VC-CLI*
          NET/SRV/HTTP::+HTTP-BAD-REQUEST+
          NET/SRV/HTTP::+HTTP-VERSION-NOT-SUPPORTED+
          SKEL/CORE/INT:SKEL-CACHE SKEL/CORE/INT:SKEL-DATA
          SKEL/CORE/INT:SKEL-PATH SKEL/CORE/UTIL::SKEL-REGISTRY
          SKEL/CORE/INT:SKEL-STASH SKEL/CORE/INT:SKEL-STORE
    
    
;   Undefined functions:

RDB::BUFFER-READ-OID
 NET/SRV/HTTP::CONTENT-TYPE
 RDB::DB-CURSOR RDB::DB-CURSOR-CLOSE
 RDB::DB-CURSOR-DELETE RDB::DB-CURSOR-DUPLICATE
 RDB::DB-CURSOR-GET-BOTH-BUFFERED RDB::DB-CURSOR-MOVE-BUFFERED
 RDB::DB-CURSOR-PGET-BOTH-BUFFERED RDB::DB-CURSOR-PMOVE-BUFFERED
 RDB::DB-CURSOR-PSET-BUFFERED RDB::DB-CURSOR-SET-BUFFERED
 RDB::DB-DELETE-BUFFERED RDB::DB-DELETE-KV-BUFFERED
 RDB::DB-GET-KEY-BUFFERED RDB::DB-PUT-BUFFERED OBJ/QUERY:DF-PLAN
 RDB::DUP-BTREES RDB::ENSURE-TRANSACTION
 OBJ/TREE/BTREE::ENSURE-TRANSACTION
 NET/SRV/HTTP::HANDLE-STATIC-FILE RDB::INDEX-TABLE-ASSOC
 RDB/CLI::INIT-RDB-USER-CONFIG RDB::KEY-FN POD::LOAD-POD-CONFIG
 NET/SRV/HTTP::MAYBE-REWRITE-URLS-FOR-SESSION
 RDB/CLI::PARSE-FILE-OPT RDB::PRIMARY
 NET/SRV/HTTP::READ-HTTP-HEADERS NET/SRV/HTTP::REASON-PHRASE
 RDB::RESET-STATIC-STREAM :STORE NET/SRV/HTTP::WRITE-HEADER-LINE)

;   Undefined variables:

(
;; STD/THREAD:*DEFAULT-SPECIAL-BINDINGS* 
 JACK:*JACK-CLIENT* JACK::*JACK-DEFAULT-AUDIO-TYPE*
 JACK::*JACK-DEFAULT-MIDI-TYPE* ORGAN/GRAPH::*ORG-GRAPH-DB*
 ORGAN/CLI:*ORGAN-CLI* POD::*POD-CLI* RDB/CLI:*RDB-CLI*
 VC/CLI:*VC-CLI*
 NET/SRV/HTTP::+HTTP-BAD-REQUEST+
 NET/SRV/HTTP::+HTTP-VERSION-NOT-SUPPORTED+ SKEL/CORE/INT:SKEL-CACHE
 SKEL/CORE/INT:SKEL-DATA SKEL/CORE/INT:SKEL-PATH
 SKEL/CORE/UTIL::SKEL-REGISTRY SKEL/CORE/INT:SKEL-STASH
 SKEL/CORE/INT:SKEL-STORE)

;   caught 44 WARNING conditions
;   caught 449 STYLE-WARNING conditions
;   printed 3401 notes

PROJECT ffi   lisp ffi

ID: 4de17a09-48fb-4640-b30a-e40cc1f8c330
VERSION: 0.1
LOCATION: ffi/
  • State "TODO" from [2024-08-10 Sat 22:20]
  • State "PROJECT" from "TODO" [2024-08-16 Fri 22:57]

PROJECT rocksdb [0/1]   rocksdb

ID: 6a4e51f0-f1d7-40df-aa7f-04c6d179393b
LOCATION+: ffi/rocksdb
VERSION: 0.1.0
  • State "PROJECT" from [2024-08-16 Fri 22:57]

TBD final cleanup

CREATED: <2025-04-26 Sat 20:24>
ID: 3dd20586-fc84-461a-bc59-a3d14c6fde0a
  • State "TBD" from [2025-04-26 Sat 20:24]

PROJECT tree-sitter [0/1]   syn

CREATED: <2025-05-23 Fri 20:17>
ID: 7338b19c-18d3-42dd-b18a-77193433fdb8
  • State "PROJECT" from [2025-05-23 Fri 20:17]

FIXME ts-query-cursor-next-match

ID: d0693c94-0763-4cf2-99cd-2c904b5040d1
CREATED: <2025-05-23 Fri 20:17>
  • State "TODO" from [2025-05-23 Fri 20:17]
  • State "FIXME" from "TODO" [2025-05-23 Fri 20:18]
  • may need to do a C wrapper, do some research first to make sure we didn't miss something in impl.

PROJECT ssh2

ID: 07b3ad22-97e1-40b4-9dc0-e8ea97ba4fa6
CREATED: <2025-06-06 Fri 13:28>
  • State "PROJECT" from [2025-06-06 Fri 13:29]
  • mvp and testing

PROJECT rustls

ID: 7d0469e9-b40a-48bb-aa43-807ef9a19fff
CREATED: <2025-06-06 Fri 13:28>
  • State "PROJECT" from [2025-06-06 Fri 13:29]
  • testing and utils

RESEARCH cl+ssl low-level API

ID: be17b0b4-c840-4cc9-a8f2-9cf4fc482d17
CREATED: <2025-06-06 Fri 13:29>
  • State "RESEARCH" from [2025-06-06 Fri 13:29]

PROJECT blas

CREATED: <2025-05-10 Sat 22:34>
ID: fe955338-3377-49a0-aa7a-717d61ab231d
  • State "PROJECT" from [2025-05-10 Sat 22:34]

implement bindings to the Fortran BLAS functions

TODO BLAS Extensions

CREATED: <2025-05-18 Sun 21:07>
ID: 6f99cfe0-3c9b-4d3b-b9eb-b41bf6fb4473
  • State "TODO" from [2025-05-18 Sun 21:07]

TODO Tests

CREATED: <2025-05-10 Sat 22:34>
ID: 8c9729c6-b36f-41c0-a6cc-2ce2fa972211
  • State "TODO" from [2025-05-10 Sat 22:34]
  • a few from each level
  • benchmarks

TODO improve API

CREATED: <2025-05-10 Sat 22:35>
ID: 8db310f4-8df4-42fb-8a03-96776ff456c6
  • State "TODO" from [2025-05-10 Sat 22:35]
  • should have a very clean interface with io/static
  • make sure to bench vs using plain sb-sys:with-pinned-objects

TODO Conditions

CREATED: <2025-05-10 Sat 22:37>
ID: f1147442-abb3-4f2d-aadf-697563cd8617
  • State "TODO" from [2025-05-10 Sat 22:37]
  • need some basic error handling which indicates an error thrown from C.

TBD examples [0/6]   example

ID: 794f6242-2589-424d-bbc1-8025530a2a6b
  • State "TBD" from [2024-08-15 Thu 23:02]
  • Note taken on [2024-09-19 Thu 21:58]
    zstd is kinda unnecessary - showcase in IO/FLATE

TODO gstreamer practical example   gstreamer

ID: d476e6b4-5b58-4f51-afc5-c2c0195d3799
  • State "TODO" from [2024-08-10 Sat 22:21]

TODO ublk practical example   ublk

ID: 7887da0f-f6d7-43f0-9fcb-cef7c07fb1bb
  • State "TODO" from [2024-08-10 Sat 22:22]

TODO uring read/write file example   uring

ID: 7194096a-f0a2-446d-b46a-3c55e6123a16
  • State "TODO" from [2024-08-10 Sat 22:22]

TODO btrfs practical example   btrfs

ID: 595c395c-976b-4356-a3ec-df8030293326
  • State "TODO" from [2024-08-10 Sat 22:30]
  • [ ] sudo example (filesystem)
  • [ ] non-sudo example?

TODO xkb practical example   x kb

ID: 530aef14-b508-4d3a-8442-a16fea82039f
  • State "TODO" from [2024-08-10 Sat 22:32]

TODO keyutils practical example   crypto

ID: eec96038-ac73-477d-a443-4a9b3b5f4a5d
  • State "TODO" from [2024-08-10 Sat 22:33]

PROJECT lib   lisp

CREATED: <2025-05-02 Fri 14:04>
ID: cbe46830-8363-4e11-897c-9779e1997e2b
LOCATION: lib/
  • State "PROJECT" from [2025-05-02 Fri 14:04]

PROJECT cli [2/6]

CREATED: <2024-09-12 Thu 13:38>
ID: 4f1d8c1e-23ea-4d17-80d0-feafc367f65f
LOCATION: lib/cli/
VERSION: 0.1.0
  • State "PROJECT" from [2024-09-12 Thu 13:38]

DONE with-sbcl   macro

ID: fa7302b5-b7ea-400c-b159-ec522eb858b4
CREATED: <2025-06-10 Tue 22:43>
  • State "FIXME" from [2025-06-10 Tue 22:43]
  • State "DONE" from "FIXME" [2025-06-11 Wed 18:19]
  • Note taken on [2025-06-11 Wed 18:19]
    good enough for now - package re-export issues in std

[BROKEN LINK: No match for fuzzy expression: ;; FIX 2025-06-10: why can't we find compile-system even when specifying the package?] std/defpkg:symbol-call :asdf "COMPILE-SYSTEM"

PROJECT cli/clap [1/5]   lisp cli

ID: 217cd955-5575-4953-bf36-4d2d4c1fd616
VERSION: 0.2
LOCATION+: clap/
  • State "TODO" from [2024-07-21 Sun 01:33]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]
  • clap is quite unstable right now and has some obvious bugs which need remedying
  • TODO conditions implementation
    ID: c17dae0b-93b8-467a-bc96-6dddfb7a6e53
    
  • TODO minimal documentation   doc
    ID: aef56337-8adf-4f69-823f-4380ae0c468b
    LOCATION+: ~/comp/org/docs/core/lib/cli.org
    
    • State "TODO" from [2024-07-27 Sat 02:39]
  • TODO keyword selectors   lisp cli skel
    ID: ca205f3d-d84d-4629-9d7a-189203c11441
    
    • State "TODO" from [2024-07-27 Sat 02:31]
    skel :include 0 :components 1 # => <sk-component PRELUDE>
    
    skel :include emacs :components babel # => <sk-component BABEL>
    
    • how to apply operators?
    • pipe results?

    forth

  • TODO clap fixtures   test
    CREATED: <2024-09-01 Sun 21:54>
    ID: f910ffdb-1adc-44b3-bac0-de641e1e17a7
    
    • State "TODO" from [2024-09-01 Sun 21:54]

TODO linedit keyboard macros

ID: 64803129-f7c8-4609-b47d-203d19e6e9bf
CREATED: <2025-06-27 Fri 14:02>
LOCATION+: linedit.lisp
  • State "TODO" from [2025-06-27 Fri 14:02]

DONE linedit prefixes

CREATED: <2025-04-26 Sat 23:20>
ID: c5ddfea6-01a3-442f-ab88-9467651dc889
  • State "TODO" from [2025-04-26 Sat 23:20]
  • State "DONE" from "TODO" [2025-06-24 Tue 00:24]

should be pretty simple - bind C-x to a command which calls read-chord and looks up the next funcall in a user-specified command table.

TODO accept CLI-OPTS from parent CLI-CMD in PROC-ARGS

ID: 7f83a47f-8f02-466f-a504-39331613a2eb
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:53]

TODO destructure cli opts   macro

ID: a441b88e-697a-47bc-a25b-53313ce6c41a
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:54]

PROJECT q [0/4]   q

ID: b19fb0f9-65b2-476c-adb3-b4b77e585f37
VERSION: 0.1
  • State "TODO" from [2024-08-03 Sat 01:03]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:20]

TODO SQL

ID: 8b853556-399d-445f-8e7b-4bd4048087c5
  • State "TODO" from [2024-08-03 Sat 01:03]
  • Note taken on [2024-08-04 Sun 21:16]
    pretty close - need to fix some recursion bugs then start messing with query-engines

TODO DQL

ID: 77bc044c-f4c8-440d-a590-e712ccad9bea
  • State "TODO" from [2024-08-03 Sat 01:03]
  • pronounced 'Dee-qwul'
  • the challenge it seems, is building an inference engine that isn't just another half-assed prolog
  • expression and introspection is valued here much more than speed/size
  • allegro and screamer are favorites so far
  • TODO top-level macros
    ID: 782758ba-78ba-4366-996e-47b6b9123ac3
    
    • State "TODO" from [2024-08-08 Thu 22:38]
    • -?
  • TODO conditions
    ID: 61adb134-1e00-4973-846b-a5afd746afaa
    
    • State "TODO" from [2024-08-08 Thu 22:39]
  • TODO basic predicates
    ID: 3b9067c6-27ec-45e6-a025-201695bd9ece
    
    • State "TODO" from [2024-08-08 Thu 22:39]
    =/2   ==/2   abolish/2   and/*   append/3   arg/3   assert/1   asserta/1   assertz/1   atom/1   atomic/1  
    bagof/3   call/1   consult/1   copy-term/2   erase/1   fail/0   first/1   functor/3   ground/1   if/2   if/3  
    is/2   last/1   leash/1   length/1   listing/1   member/2   memberp/2 (member without backtracking)   not/1  
    number/1   or/*   princ/1   read/1   recorda/1   recordz/1   recorded/2   repeat/0   rest/1   retract/1   rev/2 
     setof/3   true/0   var/1   write/1   
    
    
  • TODO compiler design
    ID: 503c24ba-8613-4ca0-8c9c-51eced131168
    
    • State "TODO" from [2024-08-08 Thu 22:39]
  • TODO runtime design
    ID: dd1eeab0-901d-4914-91a0-0413a3503fd1
    
    • State "TODO" from [2024-08-08 Thu 22:43]
    • needs a stack
    • maybe registers
    • plenty of dynamic extent
    • arenas
    • thread-aware

TODO q/tests/fuzz [0/2]

ID: 6d3c2685-5faf-4670-8ea0-b9b047c17c64
  • State "TODO" from [2024-08-05 Mon 21:11]
  • TODO sql-fuzzer
    ID: 32506969-1c5d-4a9f-aa03-eb4b1a863f5c
    
    • State "TODO" from [2024-08-05 Mon 21:11]
    • [ ] values
    • [ ] record-batch
    • [ ] expression
    • [ ] plan
  • TODO dql-fuzzer
    ID: ef26c36a-1a5c-461a-834b-936010d49bb3
    
    • State "TODO" from [2024-08-05 Mon 21:12]

TODO #? reader macro

ID: 5da9a939-892f-439e-8072-c5c61cc1bbe3
  • State "TODO" from [2024-08-08 Thu 22:36]

WIP complete base query protocol [1/2]   db

LOCATION: lib/q/query.lisp
ID: 8e8bfeaf-22d2-4bad-a8e5-a19765561efa
  • State "WIP" from [2024-07-09 Tue 22:14]
  • Refiled on [2025-05-26 Mon 01:13]
  • object-based protocol for asking questions about data collections using data expressions
  • lex, parse, compile - all handled in the Q system
  • probably in need of refactor right after
    • different parts of the protocol will be used by different systems
      • data-source will be implemented in DAT/CSV DAT/PARQUET, RDB, etc
      • query-expression and query-plan will be implemented in Q/SQL and Q/DQL
  • TODO Basic Testing
    ID: b857e6f1-c652-4024-9b87-308e1c830b2a
    
    • State "TODO" from [2024-08-02 Fri 15:55]
  • DONE decide if this should be part of lib/q instead
    CREATED: <2025-05-20 Tue 18:32>
    ID: 2d4cd4c1-7596-4816-a764-5210fd369308
    
    • State "TODO" from [2025-05-20 Tue 18:32]
    • State "DONE" from "TODO" [2025-06-11 Wed 18:20]
    • Note taken on [2025-06-11 Wed 18:21]
      answer: yes

PROJECT parse [1/2]   lib

ID: 50dff527-6778-42d3-934c-2d013d701514
VERSION: 0.1
CREATED: <2025-05-02 Fri 14:07>
  • State "TODO" from "TODO" [2023-12-13 Wed 18:24]
  • State "PROJECT" from "TODO" [2025-05-02 Fri 14:07]

:ID: parse :ID: 8f54a69e-b256-4efd-98e8-75b4892f12b8

  • State "TODO" from [2023-11-29 Wed 19:01]
  • lalr.lisp
  • lex.lisp
  • obj api

TODO tests

ID: 484740d6-3fb6-4796-b7e8-8f217c5063e5
  • State "TODO" from [2023-12-24 Sun 19:28]

add tests for lexer and LALR. figure out if there are any gaps that we need to fill.

PROJECT organ [0/2]   organ

ID: f5ad161f-c954-45e2-aeb4-c88d916bae7f
VERSION: 0.2
  • State "TODO" from [2023-11-29 Wed 21:25]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

:ID: 4e7c55dc-e2fa-458f-ad3b-942b9aa336a4

TBD organ-export

ID: 664309c2-55eb-45c2-88eb-a32c012c89ef
  • State "TBD" from "TODO" [2023-11-29 Wed 21:24]

:ID: 189584f5-fc22-4129-bd47-5d494a088684

TODO org-parse

ID: 2434b254-4346-4791-82da-b6bc309e8f5b
  • State "TODO" from [2023-11-29 Wed 21:26]

:DEPENDENCIES: parse :HOOKS: organ-export :ID: 63774177-9730-4961-8535-414fac7a6f4f

TBD parse org-elements as sxp   sxp

ID: 232b7b58-2e66-479a-a978-b33f1cdda13f
  • State "TODO" from [2023-09-25 Mon 15:23]
  • State "TBD" from "TODO" [2023-12-13 Wed 18:10]
(slime-start)
(ql:quickload :organ)
(org-element-parse-buffer)
(let ((sxp (sxp:make-sxp)))
  (sxp:read-sxp-string sxp in)
  (describe sxp))
#<OBJ/AST:AST {1215B0A143}>
  [standard-object]

Slots with :INSTANCE allocation:
  AST                            = NIL

PROJECT rdb [0/6]   rdb

ID: e5cd7ab8-f0d1-4b6e-ab68-852741e313cc
VERSION: 0.2
  • State "TODO" from "TODO" [2023-12-13 Wed 18:26]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

TODO error handling

ID: 299c7d94-e259-4413-8b46-13957ca8ded4
  • State "TODO" from [2023-12-10 Sun 22:57]
  • need to unwrap the pointer (* (* t))
  • cast to string,int,bool
  • wrap segfault handlers
  • add restarts for common errors (bad path)
  • add cleanup routines

TODO client api

ID: 93e0f187-c9f1-485f-9c51-b1abebf7da06
  • State "TODO" from [2023-12-10 Sun 22:59]
  • clients are fully dynamic
  • generated from RDB instances
  • compiles in CF/option/multithread/type info
  • clients implement custom Q language

TODO sequence/iterator impl

ID: 6dbd6194-390b-4156-8690-75f91ce2e8d2
  • State "TODO" from [2023-12-10 Sun 23:09]
  • use SBCL built-ins to extend the api - wrap the raw FFI iterator
  • define mixins

TODO comparator impl

ID: bb1bd757-f80d-4723-ac62-45d7ef72a0a2
  • State "TODO" from [2023-12-10 Sun 23:11]
  • supply custom comparators to rocksdb from lisp

TODO type system

ID: 31a8f3e3-812f-4edc-a6d1-6540481d7dc7
  • State "TODO" from [2023-12-10 Sun 23:12]
  • capture types of: kv, cf
  • specs
    • kv-spec = (kv-spec val-spec)
      • must be serialized to/from vec<char>
    • cf-spec
      • used as superclass
      • methods for abstracting CFs

TODO set-opt/get-opt

ID: 1a08fd02-b7e2-466b-9c43-f6570160aeb7
  • State "TODO" from [2023-12-16 Sat 00:49]
  • need better api
  • may just want to use the generic C fn that takes string as input
  • I feel this may be less efficient but haven't benched it (requires additional arg)
  • separate packages are a pain to query symbols with

TODO handle pinned vs non-pinned RocksDB accessors   rdb

ID: 8c6202a0-7a7c-4574-a8a8-82c64e63831d
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:52]
  • may want a generalized interface that also supports with/without cf, timestamp, etc

TODO move backup-db from rdb to rdb-database

ID: 475089df-2829-47c6-a2a7-d9fc9521193d
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:53]

TODO rdb prefix keys

ID: 138fa681-47e9-4789-ad41-6bb8645af991
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:53]

TODO with-latest-options   rocksdb

ID: e522332f-81c5-4e23-986b-7e41532f9015
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:55]

TBD can only open rocksdb column families on OPEN

CREATED: <2024-08-25 Sun 20:23>
ID: d85472ae-7e3a-4c52-8f34-4146a07314ba
  • Note taken on [2025-05-02 Fri 13:49]
    need to formalize what we've learned here (load-opts) and add to documentation
  • State "TBD" from [2025-05-02 Fri 13:50]
  • Refiled on [2025-05-02 Fri 13:58]

was getting hung up on why there is no 'open-cf' based on name in the C api really - the 'rocksdb-open-column-families' function is somewhat misleading.

database - Is there a way to retrieve `ColumnFamilyHandle` from `ColumnFamilyName` in RocksDb? - Stack Overflow

ultimately there is no way to do this - when opening the database you can specify which CFs to be opened and a new cf-handle is always returned on creation.

We should NOT use create- when there are existing columns that we just want to get a SAP for. Instead always opt for opening a new db instance, possibly by closing an existing one.

PROJECT vc [0/2]   vc

ID: c14dc79d-eeed-42bf-aba2-35ef5aa7e45d
VERSION: 0.1
  • State "TODO" from [2024-02-29 Thu 16:10]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

TODO github atom feed queries

ID: 104cd7fc-6f2c-4c78-a467-e4e739dbff07
CREATED: <2025-06-02 Mon 22:21>
  • State "TODO" from [2025-06-02 Mon 22:22]

see graph node github.com

TODO vc-mirrors-update replacement

ID: 36c19881-72c6-4cf5-aaba-2b4ced302b97
LOCATION: ~/.config/nushell/scripts/vc.nu
Effort: 3:00
CREATED: <2024-08-22 Thu 22:15>
  • State "TODO" from [2024-08-10 Sat 01:33]

CLOCK: [2024-08-22 Thu 20:46]--[2024-08-22 Thu 22:12] (1:26)

  • State "TODO" from "TODO" [2024-08-22 Thu 22:15]

PROJECT dat [1/3]   dat

ID: 31fa3e61-b586-4023-be94-5195a26596ce
VERSION: 0.1
  • State "TODO" from [2024-08-11 Sun 00:08]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

WIP dat/parquet

Effort: 80:00
ID: c808200c-450a-4f77-b4c1-6b372c7c4943
  • State "WIP" from [2024-07-19 Fri 21:51]
  • TODO RLE
    CREATED: <2025-05-16 Fri 23:23>
    ID: a645c320-ea80-471a-8deb-c7e807970107
    
    • State "TODO" from [2025-05-16 Fri 23:23]
  • TODO tcompact
    CREATED: <2025-05-16 Fri 23:25>
    ID: f367ad82-1b61-4034-8c89-fa812d8f0b96
    
    • State "TODO" from [2025-05-16 Fri 23:25]

TODO dat/csv column selectors   dat

Effort: 8:00
ID: 40cb89e4-db1b-4a78-b2b7-3e0fc9ee287b
  • State "TODO" from [2024-08-05 Mon 20:53]
  • a function which accepts a single arg which is either a number, indicating index-based selection or a list of column names for selection by name.

(read-csv-line ... :select (lambda (x) x))

  • index-based-selection
  • selection-by-name

PROJECT syn [0/3]   syn

ID: a199245b-4bed-48eb-83f5-e83c03da3a7d
VERSION: 0.1
  • State "TODO" from [2024-08-13 Tue 22:15]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

WIP gen

ID: 8f44301f-c35a-4a97-88c2-6ea2295513b1
CREATED: <2025-06-03 Tue 21:44>
Effort: 100h

CLOCK: [2025-06-03 Tue 21:45]--[2025-06-03 Tue 22:15] (0:30)

  • TODO C function declaration arguments
    ID: d91584a1-0e99-461b-9045-b521e9d2fe92
    CREATED: <2025-06-03 Tue 21:45>
    
    • State "TODO" from [2025-06-03 Tue 21:46]
    • this should give us enough to remove the remaining C code from the core source tree
    • replace zstd/alien.c and tree-sitter/alien.c with C gen-syntax.
    • next we will target full header files
      • REW_MODE

TODO tempo

CREATED: <2025-05-16 Fri 23:19>
ID: 25c20927-7ba3-4821-91b9-ad05a1a4b7f7
  • State "TODO" from [2025-05-16 Fri 23:19]

TODO lint

CREATED: <2025-05-16 Fri 23:19>
ID: fbb51cc0-134d-4df5-9b58-6067ed8c2fa8
  • State "TODO" from [2025-05-16 Fri 23:19]

PROJECT cry   crypto

ID: 2d5bcf6e-6652-4e33-b923-d2311896eee8
CREATED: <2025-06-06 Fri 13:30>
LOCATION+: cry/
  • State "PROJECT" from [2025-06-06 Fri 13:30]

WIP ssl

ID: 53e803e1-40fc-4da5-925e-7909154a590b
CREATED: <2025-06-06 Fri 15:06>
ORDERED: t
  • State "WIP" from [2025-06-06 Fri 15:06]
  • WIP cl+ssl -> rustls
    ID: 1841fd20-35b0-444f-a610-67dc4291ee18
    CREATED: <2025-06-06 Fri 13:30>
    Effort: 40h
    LOCATION+: ssl/
    

    CLOCK: [2025-06-06 Fri 13:30]--[2025-06-06 Fri 15:06] (1:36)

    • cl+ssl src
    • ffi-buffer -> static-vector
    • openssl has differences in symbol-names between versions - cl+ssl makes efforts to accomodate this
    • rustls doesn't suffer from this - if we ever end up implementing openssl too we won't bother with portability here either. Use Linux or gtfo.
      • but rustls depends on aws-lc which is a fork of openssl/libcrypto

PROJECT obj [2/4]   obj

ID: c1500e3b-1d95-4ba2-96d5-8301b02293e2
VERSION: 0.1
LOCATION+: obj/
  • State "TODO" from [2023-12-17 Sun 00:59]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

TODO equiv

ID: 6d8b3bb5-2c82-408a-b77f-d43fd53cebe1
CREATED: <2025-06-09 Mon 14:46>
  • State "TODO" from [2025-06-09 Mon 14:46]
  • OUTLINE next steps
    ID: df12ca39-ad89-4858-bc1e-4b0efddee649
    CREATED: <2025-06-09 Mon 14:47>
    
    • State "OUTLINE" from [2025-06-09 Mon 14:47]
    • probably want to hook into sbcl low-level equality mechanics
    • leverage type-classes/primitive-type

DONE url-encode

ID: 669dbc13-4bfc-44ba-bd8e-9337809dd1b5
CREATED: <2025-06-12 Thu 21:24>
  • State "TODO" from [2025-06-12 Thu 21:24]
  • State "DONE" from "TODO" [2025-06-13 Fri 13:39]

DONE url-decode

ID: f1bac2bf-8d36-4929-827e-37bdfd09366a
CREATED: <2025-06-12 Thu 21:25>
  • State "TODO" from [2025-06-12 Thu 21:25]
  • State "DONE" from "TODO" [2025-06-13 Fri 13:39]

WIP tensor

CREATED: <2025-05-20 Tue 18:37>
ID: b515faef-e1dc-4b30-bf50-599b7394e797
LOCATION+: tensor.lisp
  • State "TODO" from [2025-05-20 Tue 18:37]
  • State "WIP" from "TODO" [2025-05-21 Wed 21:15]
  • TBD arrow interface
    ID: b15aa26d-da7f-420b-8291-fdf23d4223bd
    CREATED: <2025-06-06 Fri 22:39>
    
    • State "TODO" from [2025-06-06 Fri 22:39]
    • State "TBD" from "TODO" [2025-06-06 Fri 22:39]
  • TODO dispatch strategy for tensor methods
    ID: 0521332c-11d2-4ffc-8ada-99690b8b2655
    CREATED: <2025-05-26 Mon 00:56>
    
    • State "TODO" from [2025-05-26 Mon 00:56]
    • MATLISP uses a somewhat janky macro-based template approach
      • compiles methods in place.. (defmethod foo () (compile-and-eval `(defmethod %foo ...)) (%foo))
      • mention in the comments of using MOP instead
    • instead of macro-based templates let's abuse compiler macros as much as we can
    • [ ] investigate tensor methods
    • instead of compiler macros, let's abuse the compiler :)
      • deftransform, array specialization stuff (sb-vm, sb-c)
    • sbcl has its own concept of higher-ordered types see define-type-class
    • RESEARCH SB-SIMD
      ID: bc69db9c-023a-4235-b0a9-e84061cd703e
      CREATED: <2025-06-09 Mon 12:13>
      
      • State "RESEARCH" from [2025-06-09 Mon 12:13]

      array optimizations

      • simd packs should interop with tensors anyways - simd-tensor, packed-tensor?
      • learn how all the deftransforms work, how to define a type-class, etc
      • use similar macro structuring

PROJECT net [1/6]   net

ID: 5d088bf7-f201-4875-9167-4293bebbcf46
VERSION: 0.1
LOCATION+: net/
  • State "TODO" from [2023-12-17 Sun 01:00]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:20]

TODO remove cl+ssl dependency

ID: 036a7995-be25-4b9f-92b2-d5efd8955667
CREATED: <2025-06-13 Fri 16:12>
  • State "TODO" from [2025-06-13 Fri 16:12]
(rgrep "ssl" "*.*" "~/comp/core/lib/net/")

DONE remove babel dependency

ID: ebffdecc-af18-4fdf-b068-6a95d68e59c8
CREATED: <2025-06-13 Fri 16:11>
  • State "TODO" from [2025-06-13 Fri 16:11]
  • State "DONE" from "TODO" [2025-06-16 Mon 16:47]

we want to resuse the internal sbcl machinery as much as possible to avoid making copies of string coders.

babel provides a flexible charset coding library similar to libiconv. The semantics are somewhat different from SBCL but they share basically the same goal.

It appears that babel ENCODINGs are used in many places where a simple sbcl EXTERNAL-FORMAT would do. The difference is that EXTERNAL-FORMATs are not supposed to be extensible (AFAIK). Babel seems to make the assumption that we aren't supposed to mess with sb-impl and other internals much - which is where all the useful stuff is.

I have a hunch there is some reason other than portability that its so prevelant tho.. only one way to find out :)

(rgrep "babel" "*.*" "~/comp/core/lib/net/")
  • babel-encodings
    • enc-max-units-per-char
    • lookup-mapping
    • string-vector-mappings
    • code-point-counter
    • decoder
;; defined in sb external format def macros
(defun ,(make-od-name ',octets-to-string-name/cr accessor) (array astart aend replacement)
  (declare (optimize speed)
           (type ,type array)
           (type array-range astart aend)
           (ignorable replacement))
  (let ((string (make-array 0 :element-type 'character :fill-pointer 0 :adjustable t)))
    (loop for apos from astart below aend
          do (let* ((byte (,accessor array apos))
                    (code (,',->code-name byte))
                    (string-content
                      (cond
                        ((null code)
                         (decoding-error array apos (1+ apos)
                                         '(,',external-format :newline :cr)
                                         replacement
                                         ',',decoding-condition-name
                                         apos))
                        ((= code 13) (code-char 10))
                        (t (code-char code)))))
               (if (characterp string-content)
                   (vector-push-extend string-content string)
                   (loop for c across string-content
                         do (vector-push-extend c string))))
          finally (return (coerce string 'simple-string))))))

TODO fixtures   rt

ID: fe592b6f-cde1-43e9-ac5a-81addc124582
  • State "TODO" from [2024-08-11 Sun 00:06]
  • implement simple network fixtures which can be used within the body of DEFTEST
  • start with simple sockets - UDP then TCP
  • work up towards HTTP

TODO tcp   core

ID: 8e90fe7a-3a22-4af4-b247-64ac6890b94a
  • State "TODO" from [2023-12-17 Sun 01:01]

TODO udp   core

ID: d238fc1f-24be-447b-a96b-ec35958470fc
  • State "TODO" from [2023-12-17 Sun 01:01]

WAIT net/srv   lisp

ID: f812f4e7-03c0-4e7a-a602-8947c39eb4ed
CREATED: <2025-06-13 Fri 13:40>
  • State "TODO" from [2024-07-19 Fri 21:50]
  • State "WIP" from "TODO" [2024-07-19 Fri 21:51]
  • State "WAIT" from "WIP" [2025-06-13 Fri 13:40]
    task-pools
  • needs a solid task-pool impl completed first

PROJECT gui [0/2]   gui

ID: 73aea563-3df7-4611-a27d-874772806f18
LOCATION+: gui/
VERSION: 0.1
  • State "TODO" from [2023-12-17 Sun 03:40]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:20]

WAIT wayland protocol bindings

ID: 534fe8cb-9056-4ac4-84ca-d98f09f78214
CREATED: <2025-01-18 Sat 20:08>
  • State "TODO" from [2023-12-17 Sun 03:40]
  • State "WAIT" from "TODO" [2025-01-18 Sat 20:08]
    Wait until we actually have a usecase for Wayland

TBD wayland compositor   rust lisp

ID: ca3d0bff-0ff7-4947-835a-b7c7e74c8679
  • State "TBD" from "TODO" [2023-11-29 Wed 21:25]

:ID: e18a90d7-10bc-44d3-8508-56483d29d385

PROJECT rt [1/3]   rt test

ID: 7a14c529-8609-4638-b101-7304a1605fcc
VERSION: 0.1
  • State "TODO" from [2024-02-29 Thu 16:06]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:20]

TODO redirect I/O in tests

ID: 34f27f91-c93a-4841-a6ac-5692ad1d0e4f
  • State "TODO" from [2024-02-29 Thu 16:06]

prevent tests from printing implicitly. redirect stream locally, cache it somehow for review.

TODO test-on-def

ID: f5cf6e43-906b-4225-9cdb-ac0028b48661
  • State "TODO" from [2024-02-29 Thu 17:17]
  • simple flag to test when file is defined (part of deftest macro)

TODO test-directory   rt

ID: ff33fc34-5816-4165-af36-d3e0c33e5d55
CREATED: <2025-01-17 Fri 15:54>
  • Note taken on [2025-05-02 Fri 13:53]
    logical pathnames?
  • Refiled on [2025-05-02 Fri 13:54]

root test directory /tmp/rt with subdir for each suite, initialize from within suite

PROJECT io [2/5]   io

CREATED: <2024-09-19 Thu 21:54>
ID: 39c15417-5078-403f-b716-3b48b9d3929d
LOCATION+: io/
  • State "PROJECT" from [2024-09-19 Thu 21:54]

TODO uring

CREATED: <2025-01-18 Sat 20:49>
ID: 2a88e627-be3b-4651-8812-44039ff8994d
  • State "TODO" from [2025-01-18 Sat 20:49]

DONE zlib compression

CREATED: <2025-05-12 Mon 23:22>
ID: 41241d38-f0f9-4b96-97e5-d8a11622396d
  • State "TODO" from [2025-05-12 Mon 23:22]
  • State "WIP" from "TODO" [2025-06-11 Wed 23:13]
  • State "DONE" from "WIP" [2025-06-13 Fri 13:41]
  • uses deflate
  • refactor salza2 to use io protos
  • replace salza2 and remove dependency

NOPE stream-write-sequence for deflate

ID: e306decd-5e38-4cb4-b43e-c49d3606f6ba
CREATED: <2025-06-16 Mon 22:44>
  • State "FIXME" from [2025-06-16 Mon 22:44]
  • use compress and decompress instead - no direct stream support

FIXME zstd streams

ID: bd3434ea-a900-45b4-8890-9dff8403c020
CREATED: <2025-06-16 Mon 22:16>
  • State "FIXME" from [2025-06-16 Mon 22:16]
  • keep getting segfaults when using the streaming api (which is much faster and needed for serious use)
  • need to debug and fix, test in dat/tar on tar.zst files

TODO virtual streams

ID: a1522a85-f8d7-4341-b22c-32fc09bd07a3
CREATED: <2025-06-11 Wed 18:15>
  • State "TODO" from [2025-06-11 Wed 18:15]
  • we probably do want something similar to flexi-streams after all
  • need condition handling for external-formats and list/vector streams
  • hook them in to io/fast and io/static

PROJECT math   math

CREATED: <2025-05-08 Thu 18:27>
ID: 1b08ca47-cace-4ce5-a0f2-cd74dcf8c547
LOCATION: lib/math
  • State "PROJECT" from [2025-05-08 Thu 18:27]

PROJECT log [0/2]

CREATED: <2025-05-16 Fri 23:44>
ID: 10f18d64-0862-4764-ae66-c548ccfdd82c
LOCATION+: log/
  • State "PROJECT" from [2025-05-16 Fri 23:44]

TODO log-broadcast-stream

ID: de06ee9d-6a26-46a2-b123-e8154d3b63c8
CREATED: <2025-06-28 Sat 23:19>
  • State "TODO" from [2025-06-28 Sat 23:19]

TODO async-db-log-file

CREATED: <2025-05-16 Fri 23:45>
ID: b79073a2-85b4-46f8-8e24-542012fa3cac
  • State "TODO" from [2025-05-16 Fri 23:45]
  • db can only have single writer
  • wbwi + commit
  • better condition handling when db already opened (read rocksdb error codes? i know we have the strings..)
  • also nice to have blobdb logs
    • individual log files living in same directory, only one write needed
    • still doesn't necessarily prevent deadlocks, just much harder to trigger

PROJECT std [3/13]   lisp std

ID: e43489ff-4ca9-45e4-83f2-ee9b0967af3a
VERSION: 0.2
LOCATION: std/
  • State "TODO" from [2023-12-12 Tue 19:49]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

WIP documentation sweep

ID: b7f48103-4fa3-48c0-93ba-8efc23848931
CREATED: <2025-04-26 Sat 20:48>
Effort: 10:00
  • State "TODO" from [2024-02-29 Thu 16:09]
  • State "WIP" from "TODO" [2025-04-26 Sat 20:48]

CLOCK: [2025-04-27 Sun 15:35]--[2025-04-27 Sun 17:59] (2:24)

CLOCK: [2025-04-27 Sun 19:56]--[2025-04-27 Sun 21:51] (1:55)

CLOCK: [2025-06-11 Wed 20:00]--[2025-06-11 Wed 20:39] (0:39)

CLOCK: [2025-06-17 Tue 18:12]--[2025-06-17 Tue 19:31] (1:19)

  • document functions and variables..
(let ((ret))
  (do-external-symbols (s :std)
    (when (and (or (boundp s) (fboundp s) (cadr (multiple-value-list (typexpand s))) (find-class s nil))
               (not (or (documentation s 'variable) (documentation s 'function)
                        (documentation s 'structure) (documentation s 'type)
                        (documentation s 'setf) (documentation s 't))))
      (push s ret)))
  (list :missing (length ret) :/ (length (list-package-symbols :std))))
:MISSING 575 :/ 1341
  • [?] alien.lisp
  • [X] array.lisp
  • [X] async.lisp
  • [X] bit.lisp
  • [X] condition.lisp
  • [X] curry.lisp
  • [X] defpkg.lisp
  • [X] early.lisp
  • [X] file.lisp
  • [X] fmt.lisp
  • [X] hash-table.lisp
  • [X] list.lisp
  • [X] macs
  • [X] meta.lisp
  • [-] named-readtables.lisp
  • [X] num
  • [X] os.lisp
  • [X] par.lisp
  • [X] path.lisp
  • [X] pipe.lisp
  • [-] pkg.lisp
  • [X] rand.lisp
  • [X] readtable.lisp
  • [X] seq.lisp
  • [X] serde.lisp
  • [X] spin.lisp
  • [X] std.asd
  • [X] stream.lisp
  • [X] string.lisp
  • [X] sym.lisp
  • [X] sys.lisp
  • [X] task.lisp
  • [X] type.lisp
  • [ ] tests
  • [ ] thread.lisp

TODO standard package sets

ID: e24f525a-5564-4489-91de-041cfbd8c7af
CREATED: <2025-06-06 Fri 21:46>
  • State "TODO" from [2025-06-11 Wed 20:39]

DONE user-add

ID: cddd0d4a-1d28-415a-8605-136347b1e1be
CREATED: <2025-06-10 Tue 18:14>
LOCATION+: os.lisp
  • State "TODO" from [2025-06-10 Tue 18:15]
  • State "DONE" from "TODO" [2025-06-12 Thu 13:19]

DONE group-add

ID: b80304b3-7f27-4374-af33-6a81b7382216
CREATED: <2025-06-10 Tue 18:14>
LOCATION+: os.lisp
  • State "TODO" from [2025-06-10 Tue 18:14]
  • State "DONE" from "TODO" [2025-06-12 Thu 13:19]

TODO more (useful) bit tricks

ID: 36d3040f-c899-4941-affb-30e1641d1b01
  • State "TODO" from [2024-02-29 Thu 16:09]

DONE external-formats

ID: 4c786bf4-9750-466b-86b3-d2a579a9b4ab
CREATED: <2025-06-11 Wed 18:17>
  • State "TODO" from [2025-06-11 Wed 20:39]
  • State "DONE" from "TODO" [2025-06-17 Tue 18:09]
  • wrap internal sbcl implementation
    • SB-IMPL, SB-INT
    • external-format (ef-)
  • conditions
  • 'preferred' formats
  • check/translate fns

HOLD defsys   lisp std

ID: ea69bedd-6a17-44b4-9f2c-3f9195873404
CREATED: <2025-04-26 Sat 22:47>
  • State "HACK" from [2024-08-03 Sat 01:06]
  • Refiled on [2024-08-22 Thu 19:03]
  • State "HOLD" from "HACK" [2025-04-26 Sat 22:47]
    hold for version 0.3
  • maybe Norvig was right and we don't need asdf/uiop, maybe not
  • the truth is somewhere in between
  • [ ] defsys macro
  • [ ] use macro
  • [ ] using macro
  • [ ] requires macro

Modules

ID: bf2c2465-c6ef-4e6a-ac26-87ed26f2b07e
CREATED: <2025-06-03 Tue 20:19>

TODO test sweep   test

CREATED: <2025-04-27 Sun 18:02>
ID: ec17d811-1573-4208-ab46-edfe9ae23d02
  • State "TODO" from [2025-04-27 Sun 18:02]

TODO thread-pool impl   thread

CREATED: <2025-04-27 Sun 18:02>
ID: 5bb9865d-e6c1-40ca-8a53-155c417de018
LOCATION+: thread.lisp
  • State "TODO" from [2025-04-27 Sun 18:02]

TODO specify kernel function prototypes

CREATED: <2025-05-06 Tue 21:57>
ID: 8738d5a0-0555-425d-addc-38e132503fbe
  • State "TODO" from [2025-05-06 Tue 21:57]
  • should be easy to:
    • register kernel prototypes
    • define new kernel functions
    • modify kernels in running threads
    • communicate with kerneled objects
      • via oracle, supervisor, simple state machines
kernel ops
internal VM operations performed by kernel functions
kernel commands
external commands which modify the state of the kerneled object
(no term)
ideally provides closure with captured variables able to be dynamically rebound across threads.
(no term)
oracle thread when designated should have solo write access to kernel ops

TODO save-core   sys

ID: 594cdcc2-5de7-4efe-bec5-cf5fbf5fe4ad
CREATED: <2025-05-08 Thu 20:50>
LOCATION+: sys.lisp
  • State "TODO" from [2025-05-08 Thu 20:50]

TODO task-pool impl   thread

CREATED: <2025-04-27 Sun 18:02>
ID: 8326a4a5-31dc-4030-a3da-196f58b69202
LOCATION+: task.lisp
  • State "TODO" from [2025-04-27 Sun 18:02]

TODO castable

CREATED: <2025-05-29 Thu 22:37>
ID: b7bd09e1-e268-4bbb-9ff5-da2c070c8112
  • State "TODO" from [2025-05-29 Thu 22:37]

FIXME assertion failures in multi-threaded context

ID: 1168ebb1-ed20-4e90-aa4c-498e3bc2b1a9
CREATED: <2025-05-29 Thu 22:37>
  • State "FIXME" from [2025-05-29 Thu 22:38]

copy-check-and-promote <- copy-slot-and-check

TBD incorporate sb-cltl2 generators/iterators into STD/PIPE

ID: 04fdde4f-427c-47b5-8394-5b5365ede249
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 14:03]
  • State "TODO" from [2025-05-08 Thu 20:51]
  • State "TBD" from "TODO" [2025-05-08 Thu 20:51]

PROJECT emacs [1/12]   emacs

ID: b6a3ffb9-a7aa-4038-8876-fcdb8115dc08
VERSION: 0.1
LOCATION: emacs/
  • State "TODO" from [2024-08-16 Fri 22:39]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:20]
  • don't really care about versioning the core/emacs configs much
  • may come in use later so just a general milestone when these tasks are done

WIP comp/org capture templates

ID: 3d303736-7b79-4c5c-ba43-9ea5aa05f722
  • State "TODO" from [2024-08-15 Thu 23:14]
  • State "WIP" from "TODO" [2024-08-18 Sun 16:22]

TODO comp/org agenda views, export, dblock

ID: 952fe286-9fd8-478f-bafc-a0a25ae3d17a
  • State "TODO" from [2024-08-15 Thu 23:15]

TODO agenda views

CREATED: <2024-08-27 Tue 18:23>
ID: 4f704120-1553-46bc-ac31-5d65aaf340d3
  • State "TODO" from [2024-08-27 Tue 18:23]
  • a few defined in ellis.el
  • define some starter ones for inbox.el
  • define views for scrum.el

FIXME compiler warnings

ID: dd4cf91d-4b45-4b5f-adee-0e248ebed0e1
  • State "FIXME" from [2024-08-16 Fri 22:42]
default.el:176:7: Warning: assignment to free variable ‘multisession-storage’
default.el:184:11: Warning: assignment to free variable ‘hg-binary’
default.el:240:6: Warning: docstring has wrong usage of unescaped single
    quotes (use \=' or different quoting such as `...')
default.el:259:30: Warning: ‘:inherit’ called as a function
default.el:260:30: Warning: ‘:indentation’ called as a function
default.el:261:42: Warning: reference to free variable ‘defpackage’
default.el:262:31: Warning: ‘define-package’ called with 1 argument, but
    requires 2 or more
default.el:262:31: Warning: ‘define-package’ is an obsolete function (as of
    29.1).
default.el:286:9: Warning: assignment to free variable
    ‘common-lisp-style-default’
default.el:305:19: Warning: reference to free variable ‘eglot-server-programs’
default.el:305:19: Warning: assignment to free variable
    ‘eglot-server-programs’
default.el:313:7: Warning: assignment to free variable ‘rust-rustfmt-switches’
default.el:314:7: Warning: assignment to free variable ‘rust-indent-offset’
default.el:317:7: Warning: assignment to free variable ‘python-indent-offset’
default.el:321:7: Warning: assignment to free variable ‘js-indent-level’
default.el:324:7: Warning: assignment to free variable ‘sh-basic-offset’
default.el:331:12: Warning: in defcustom for ‘prog-comment-keywords’: missing
    :type keyword parameter
default.el:336:12: Warning: in defcustom for
    ‘prog-comment-timestamp-format-concise’: missing :type keyword parameter
default.el:342:12: Warning: in defcustom for
    ‘prog-comment-timestamp-format-verbose’: missing :type keyword parameter

In prog-comment-timestamp-keyword:
default.el:386:2: Warning: docstring has wrong usage of unescaped single
    quotes (use \=' or different quoting such as `...')
default.el:414:20: Warning: reference to free variable
    ‘comment-timestamp-format-verbose’
default.el:443:7: Warning: assignment to free variable ‘hexl-bits’

In buffer-to-register:
default.el:474:47: Warning: Unused lexical argument ‘delete’

In file-to-register:
default.el:481:45: Warning: Unused lexical argument ‘delete’

In file-query-to-register:
default.el:487:51: Warning: Unused lexical argument ‘delete’
default.el:529:12: Warning: in defcustom for ‘default-scratch-buffer-mode’:
    missing :type keyword parameter
default.el:625:7: Warning: assignment to free variable
    ‘eshell-highlight-prompt’
default.el:626:7: Warning: assignment to free variable
    ‘eshell-hist-ignoredups’
default.el:627:7: Warning: assignment to free variable
    ‘eshell-save-history-on-exit’
default.el:629:7: Warning: assignment to free variable
    ‘eshell-destroy-buffer-when-process-dies’

In eshell-quit-or-delete-char:
default.el:645:20: Warning: ‘looking-back’ called with 1 argument, but
    requires 2 or 3
default.el:645:33: Warning: reference to free variable ‘eshell-prompt-regexp’
default.el:650:6: Warning: ‘delete-forward-char’ is for interactive use only;
    use ‘delete-char’ instead.
default.el:654:29: Warning: reference to free variable ‘eshell-mode-map’

In eshell-next-prompt:
default.el:660:22: Warning: reference to free variable ‘eshell-prompt-regexp’
default.el:661:9: Warning: reference to free variable
    ‘eshell-highlight-prompt’

In eshell-insert-history:
default.el:677:48: Warning: reference to free variable ‘eshell-history-ring’
default.el:736:49: Warning: reference to free variable ‘eww-mode-map’
default.el:747:7: Warning: assignment to free variable
    ‘org-id-link-to-org-use-id’
default.el:749:7: Warning: assignment to free variable ‘org-capture-templates’
default.el:761:7: Warning: assignment to free variable
    ‘org-html-htmlize-output-type’
default.el:762:7: Warning: assignment to free variable
    ‘org-html-head-include-default-style’
default.el:764:7: Warning: assignment to free variable ‘org-ascii-text-width’
default.el:768:7: Warning: assignment to free variable
    ‘org-structure-template-alist’
default.el:805:7: Warning: assignment to free variable ‘org-archive-location’

In org-ask-location:
default.el:853:11: Warning: Unused lexical variable ‘org-refile-targets’
default.el:856:28: Warning: reference to free variable ‘org-refile-history’
default.el:860:18: Warning: reference to free variable
    ‘org-complex-heading-regexp-format’

In org-capture-fileref-snippet:
default.el:868:37: Warning: Unused lexical argument ‘f’
default.el:906:7: Warning: assignment to free variable ‘org-global-properties’

In org-adjust-tags-column-reset-tags:
default.el:936:39: Warning: Unused lexical argument ‘ignored’

In column-display-value-transformer:
default.el:942:55: Warning: Unused lexical argument ‘value’
default.el:954:7: Warning: assignment to free variable
    ‘org-columns-modify-value-for-display-function’

In org-remove-redundant-tags:
default.el:974:32: Warning: Unused lexical variable ‘tag’
default.el:984:69: Warning: ‘memql’ called with literal list that may never
    match (arg 1)

In org-agenda-reschedule-to-today:
default.el:995:35: Warning: Unused lexical argument ‘rest’
default.el:999:2: Warning: ‘defadvice’ is an obsolete macro (as of 30.1); use
    ‘advice-add’ or ‘define-advice’

In org-export-translate-to-lang:
default.el:1079:35: Warning: reference to free variable
    ‘org-export-dictionary’

In end of data:
default.el:979:42: Warning: the function ‘org-toggle-tag’ might not be defined
    at runtime.
default.el:971:8: Warning: the function ‘org-map-entries’ might not be defined
    at runtime.
default.el:961:4: Warning: the function ‘org-table-map-tables’ might not be
    defined at runtime.
default.el:949:9: Warning: the function ‘org-entry-end-position’ might not be
    defined at runtime.
default.el:946:8: Warning: the function ‘org-back-to-heading’ might not be
    defined at runtime.
default.el:937:20: Warning: the function ‘org-set-tags’ might not be defined
    at runtime.
default.el:918:10: Warning: the function ‘org-set-property’ might not be
    defined at runtime.
default.el:916:14: Warning: the function ‘org-entry-get-multivalued-property’
    might not be defined at runtime.
default.el:912:12: Warning: the function ‘org-entry-get’ might not be defined
    at runtime.
default.el:898:23: Warning: the function ‘which-function’ is not known to be
    defined.
default.el:858:6: Warning: the function ‘outline-next-heading’ might not be
    defined at runtime.
default.el:855:24: Warning: the function ‘org-refile-get-location’ might not
    be defined at runtime.
default.el:846:39: Warning: the function ‘org-todo’ might not be defined at
    runtime.
default.el:843:48: Warning: the function ‘org-read-date’ might not be defined
    at runtime.
default.el:843:23: Warning: the function ‘org-time-string-to-time’ might not
    be defined at runtime.
default.el:664:4: Warning: the function ‘eshell-skip-prompt’ is not known to
    be defined.
default.el:647:10: Warning: the function ‘eshell-life-is-too-much’ is not
    known to be defined.
default.el:641:6: Warning: the function ‘eshell-send-input’ is not known to be
    defined.
default.el:633:14: Warning: the function ‘eshell/alias’ is not known to be
    defined.
default.el:308:6: Warning: the function ‘eglot-x-setup’ is not known to be
    defined.
default.el:261:39: Warning: the function ‘as’ is not known to be defined.
default.el:261:31: Warning: the function ‘defpkg’ is not known to be defined.
default.el:260:30: Warning: the function ‘:indentation’ is not known to be
    defined.
default.el:259:30: Warning: the function ‘:inherit’ is not known to be
    defined.
default.el:258:4: Warning: the function ‘define-common-lisp-style’ is not
    known to be defined.
default.el:245:8: Warning: the function ‘slime-eval-async’ might not be
    defined at runtime.
default.el:243:14: Warning: the function ‘slime-sexp-at-point’ might not be
    defined at runtime.
default.el:241:13: Warning: the function ‘slime-read-from-minibuffer’ might
    not be defined at runtime.
default.el:233:10: Warning: the function ‘slime-repl’ is not known to be
    defined.
default.el:228:14: Warning: the function ‘slime-connected-p’ might not be
    defined at runtime.
Loading which-key (native compiled elisp)...done
All your packages are already installed
Waiting for git... [2 times]
Loading /home/ellis/.emacs.d/ellis.el (source)...
Local variables list is not properly terminated
Source file ‘/home/ellis/.emacs.d/lib/ulang.el’ newer than byte-compiled file; using older file
Initialized ULANG.
Repeat mode is enabled for 38 commands and 13 keymaps; see ‘describe-repeat-maps’
Loading /home/ellis/.emacs.d/ellis.el (source)...done
Starting Emacs daemon.

WIP graph   org

ID: 27d6936b-3e2f-4d28-af11-85c8276389db
CREATED: <2025-01-18 Sat 20:48>
  • State "OUTLINE" from [2024-08-21 Wed 20:40]
  • State "WIP" from "OUTLINE" [2025-01-18 Sat 20:48]
  • edges
    • forward links
    • back links
  • drawers?
  • properties?
  • export features
  • configuration
  • updating
  • emacs caching
  • KV model

TODO default values for link commands

ID: 9c3970e8-dccd-4d28-8960-6dba639ab4a9
CREATED: <2025-06-03 Tue 22:07>
  • State "TODO" from [2025-06-03 Tue 22:07]
  • Refiled on [2025-06-03 Tue 22:10]
  • ie C-c g w pre-populate with name of node, maybe thing-at-point with C-u

TODO org-graph edge relative links

CREATED: <2025-05-02 Fri 13:45>
ID: 7684cce3-7690-4330-b9d8-3bed172d06ea
  • State "TODO" from "TODO" [2025-05-02 Fri 13:45]
  • Refiled on [2025-05-02 Fri 14:03]
  • Refiled on [2025-06-08 Sun 18:11]
  • index based? inherit from parent only for now
    • how to implement for complete tree?
    • custom_id for edges? like @ref bibtex

TBD org-timeline upgrades [0/3]   org

CREATED: <2024-08-27 Tue 14:19>
ID: 1a283ac6-13cc-4316-b9fd-350d1766174a
  • Refiled on [2024-08-30 Fri 19:03]
  • State "TBD" from "TODO" [2025-06-08 Sun 18:07]

GitHub - deopurkar/org-timeline: Add graphical view of agenda to agenda buffer

  • now lives in lib/org-timeline.el
  • have some upgrades to make

TODO timeline selection update on pointer hover

CREATED: <2024-08-27 Tue 14:22>
ID: 4b2f89c6-9bf0-46bf-91c5-44afd54860e8
  • State "TODO" from [2024-08-27 Tue 14:22]

The update behavior on mouse hover is quite nice - let's enable that for keyboard-based navigation too.

TODO org-agenda-follow impl

CREATED: <2024-08-27 Tue 14:20>
ID: 1b23b7c0-7ad3-4906-8bcb-66cad8831484
  • State "TODO" from [2024-08-27 Tue 14:20]
  • toggled on with F, but doesn't follow timeline blocks
  • should follow block on hover or when cursor is inside a block
  • same applies for timeline selection

TODO align org-timeline properties with ulang   ulang

CREATED: <2024-08-27 Tue 14:26>
ID: cb1272df-e155-417d-8fa9-380dac848915
  • State "TODO" from [2024-08-27 Tue 14:26]
  • there's some timeline-specific properties, let's integrate those with our standard properties
  • TIMELINE_FACE = COLOR?
  • TIMELINE_TEXT = SUMMARY
  • TIMELINE_GROUP = GROUP or CATEGORY
  • TIMELINE_DO_NOT_OVERLAP

TODO sk.el project integration   skel

CREATED: <2024-09-03 Tue 22:14>
ID: c9e157da-50e9-4dc3-96fd-bb9bc9175ee5
  • State "TODO" from [2024-09-03 Tue 22:14]

TODO sk.el hack-dir-local-variables   emacs

ID: e488041c-045b-47b3-92bb-5f7c4d65b712
  • Refiled on [2025-02-16 Sun 19:23]

emacs#Directory Variables

WIP skel.el indentation rules

ID: 9b2d1c95-e724-47b8-a78c-a81805194731
CREATED: <2025-02-26 Wed 21:31>
LOCATION: emacs/lib/skel.el
  • Refiled on [2025-02-16 Sun 19:23]
  • State "WIP" from "TODO" [2025-03-12 Wed 17:11]

Lisp Indent (GNU Emacs Manual) Brain dump – Custom Common Lisp indentation in Emacs

TODO project-tasks timestamp -> date when no h/m info

ID: ef8f7f82-9a0e-490a-aad3-e96185ad89ef
  • Refiled on [2025-02-16 Sun 19:23]

TODO defpkg-format   lisp

ID: 7dda38e6-df14-4b9e-bb00-8b101f66a73b
CREATED: <2025-06-06 Fri 21:37>
  • State "TODO" from [2025-06-06 Fri 21:37]
  • inside body of a form, check it is a defpackage-like form then apply formatting
  • keywordicate symbols
  • indentation
  • make a tbd task for refactoring imports/sorting

DONE project-info better vc info

ID: 2fe42dc8-002d-4daf-b183-82811b4da1be
CREATED: <2025-06-08 Sun 13:20>
  • State "TODO" from [2025-06-08 Sun 13:20]
  • State "DONE" from "TODO" [2025-06-08 Sun 15:30]
  • at least have option of disabling - it isn't always correct about the location

PROJECT app   app lisp

CREATED: <2025-05-02 Fri 14:05>
ID: 80b3830d-f1c6-47cd-ae3e-3c661ffb0238
LOCATION: app/
  • State "PROJECT" from [2025-05-02 Fri 14:05]

PROJECT skel [1/8]   skel

ID: 53982b3c-4860-469b-abb5-b279ee669cbd
VERSION: 0.2
  • State "TODO" from [2023-12-16 Sat 00:55]
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:19]

TODO rule source

ID: 5fd2c3b4-19bf-42b0-8cb5-fd23dc206756
CREATED: <2025-06-10 Tue 13:36>
  • State "TODO" from [2025-06-10 Tue 13:36]
  • TODO ensure-rule-source
    ID: 2cc2520e-870c-4dbe-be64-2e177d44d929
    CREATED: <2025-06-06 Fri 17:53>
    
    • State "TODO" from [2025-06-06 Fri 17:53]
    • check the hash of sources against a cache, skip if found
    • need a way of managing cache invalidation - timeouts and manual purges

TODO implement task-pool   thread

ID: 5e0c7baf-9b18-441a-a46c-2274f478d4a5
  • State "TODO" from [2024-08-11 Sun 00:10]

WAIT implement vm

ID: 15d506e3-b46a-4064-9054-0fe6c01205fb
CREATED: <2024-08-18 Sun 22:03>
Effort: 8:00
  • State "TODO" from [2024-08-11 Sun 00:11]
  • New deadline from "[2024-08-18 Sun]" on [2024-08-18 Sun 22:03]

CLOCK: [2024-08-28 Wed 18:52]--[2024-08-28 Wed 21:33] (2:41)

  • State "WIP" from "TODO" [2024-08-28 Wed 21:43]
  • New deadline from "[2024-08-25 Sun]" on [2024-08-28 Wed 21:43]
  • Note taken on [2024-08-30 Fri 21:27]
    not liking our current impl.. rewrite and document
  • State "NEXT" from "WIP" [2024-08-31 Sat 12:39]
  • New deadline from "[2024-09-01 Sun]" on [2024-09-01 Sun 21:40]
  • State "HOLD" from "NEXT" [2025-01-18 Sat 20:06]
    Too early for this
  • State "WIP" from "HOLD" [2025-02-26 Wed 18:55]
  • Note taken on [2025-02-26 Wed 18:57]
    Skel needs a strong multi-threaded runtime in order to do its job efficiently on most devices. Our async APIs are still very young which presents a blocker to this line of work, but there is additional work which needs to be done in skel/core which we can make progress on in preparation.
  • New deadline from "[2024-09-02 Mon]" on [2025-02-26 Wed 19:14]
  • State "WAIT" from "WIP" [2025-05-11 Sun 01:00]
    waiting on completion of std/task and friends
  • core/vm.lisp
  • how will rules, commands, and components interact?
    • what sort of configuration is needed and where?
  • requires load, building of logical plan, execution of physical plan (in async runtime) with results (+cache)
  • analysis pre/post-load, pre/post execution
  • execution strategies?
  • main thread should show progress in parallel
    • capture conditions/debugger
    • figure out how to retrieve stacktrace from worker threads

TODO handle missing method errors or define default method when none defined   skel bin cli

ID: 4289c4ef-a766-472e-a2cb-afddb9d080e0
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:53]
  • Note taken on [2025-05-16 Fri 22:46]
    likely need to refactor our sk-VERB mess

TODO skel tasks/runner/timer

ID: bb53321b-fab0-4b6f-9677-3fe789ed44d3
CREATED: <2025-01-17 Fri 15:54>
  • Refiled on [2025-05-02 Fri 13:55]
  • will be first feature of skel server

DONE skel rule compilation environment

ID: eb00ee5b-8ae8-4d38-8b89-b83cd20e1e2a
CREATED: <2025-06-09 Mon 23:19>
  • State "TODO" from [2025-06-09 Mon 23:19]
  • State "FIXME" from [2025-06-09 Mon 23:19]
  • State "DONE" from "FIXME" [2025-06-10 Tue 13:36]

[BROKEN LINK: No match for fuzzy expression: ;; FIX 2025-06-09:]

OUTLINE skel template objects

CREATED: <2025-05-02 Fri 13:45>
ID: 25984cac-4667-44bb-86e0-bc4e57740eeb
  • State "TODO" from "TODO" [2025-05-02 Fri 13:45]
  • Refiled on [2025-05-02 Fri 13:59]
  • State "OUTLINE" from "TODO" [2025-05-16 Fri 22:53]

WAIT homer [1/1]   lisp homer

ID: ef204ce0-7a99-45a6-942e-6d8f549f94f9
VERSION: 0.1
CREATED: <2025-01-18 Sat 20:49>
  • State "TBD" from "TODO" [2023-12-12 Tue 19:53]
  • State "WIP" from "TBD" [2025-01-18 Sat 20:49]
  • State "WAIT" from "WIP" [2025-05-21 Wed 21:35]
    waiting on thread pools

WIP mpk [0/2]

CREATED: <2025-05-02 Fri 14:06>
ID: e8566657-1ca8-49fa-8262-7338eac5bf8f
LOCATION+: mpk/
  • State "WIP" from [2025-05-02 Fri 14:06]

TODO setup API for tmdb and tvdb

CREATED: <2025-05-02 Fri 13:45>
ID: 4700c8a9-d19e-4122-b4dc-6aef22b5f4a4
  • State "TODO" from "TODO" [2025-05-02 Fri 13:45]
  • Refiled on [2025-05-02 Fri 14:08]

WAIT clean

CREATED: <2025-05-21 Wed 21:35>
ID: f68be8ca-0518-4c72-b136-bd9a14f38e18
LOCATION+: clean.lisp
  • State "WAIT" from [2025-05-21 Wed 21:35]
    waiting on thread pools

PROJECT pwn [0/2]   lisp pwn

ID: 6fef0787-9d0b-473a-b2de-f0969320fea7
VERSION: 0.1
  • State "TODO" from [2023-12-17 Sun 01:04]
  • Note taken on [2024-02-29 Thu 16:11]
    Should this be a separate application? Lisp exploit development framework
  • State "PROJECT" from "TODO" [2024-08-18 Sun 16:20]
  • Refiled on [2025-05-16 Fri 23:56]

TODO diz   asm

ID: bb192fb0-ad07-44be-89c0-27dbf78a830d
  • State "TODO" from [2023-12-17 Sun 01:04]
  • disassembly toolkit

TODO sassy   net

CREATED: <2024-09-02 Mon 16:14>
ID: 83eb5ce0-97b4-40c3-b355-7aef4e5604e9
  • State "TODO" from [2024-09-02 Mon 16:14]
  • SaaS toolkit

PROJECT krypt

ID: 0508b176-bee9-4c35-8081-18df55ea27c6
CREATED: <2025-06-15 Sun 21:46>
  • State "PROJECT" from [2025-06-15 Sun 21:46]

PROJECT bench   test bench lisp

CREATED: <2024-08-28 Wed 21:59>
ID: a3e85640-60e5-44d1-bbf3-5a287e0feb4c
VERSION: 0.1
  • State "PROJECT" from [2024-08-28 Wed 21:59]