Core Tasks

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]
;   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:

(CLI/TOOLS/TERM:*ALACRITTY-CONFIG-PATH*
 STD/THREAD:*DEFAULT-SPECIAL-BINDINGS* SYN/CLI:*GEN-CLI*
 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*
 READLINE:*RL-ALREADY-PROMPTED*
 READLINE:*RL-ATTEMPTED-COMPLETION-FUNCTION*
 READLINE:*RL-ATTEMPTED-COMPLETION-OVER*
 READLINE:*RL-DEPREP-TERM-FUNCTION* READLINE:*RL-ERASE-EMPTY-LINE*
 READLINE:*RL-GETC-FUNCTION* READLINE:*RL-HISTORY-LENGTH*
 READLINE:*RL-NUM-CHARS-TO-READ* READLINE:*RL-PREP-TERM-FUNCTION*
 READLINE:*RL-REDISPLAY-FUNCTION* 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 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

DONE Level 1

CREATED: <2025-05-10 Sat 22:34>
ID: 59340eb3-4a47-4ec8-a235-291606d2eca0
  • State "TODO" from [2025-05-10 Sat 22:34]
  • State "DONE" from "TODO" [2025-05-12 Mon 22:56]

DONE Level 2

CREATED: <2025-05-10 Sat 22:34>
ID: 88e76978-3e0b-47c9-a4f4-1d982f58bb9c
  • State "TODO" from [2025-05-10 Sat 22:34]
  • State "WIP" from "TODO" [2025-05-12 Mon 22:56]
  • State "DONE" from "WIP" [2025-05-14 Wed 18:05]

TODO Level 3

CREATED: <2025-05-10 Sat 22:34>
ID: 76d5e03b-8be9-4e03-9cef-5fb9507a2632
  • State "TODO" from [2025-05-10 Sat 22:34]

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
  • State "PROJECT" from [2025-05-02 Fri 14:04]

PROJECT cli [1/5]

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]

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: 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]

DONE linedit path completion

CREATED: <2025-05-11 Sun 00:59>
ID: 02a3763c-fc2a-4fea-936b-afd7350cc123
  • State "FIXME" from [2025-05-11 Sun 00:59]
  • State "DONE" from "FIXME" [2025-05-11 Sun 18:36]
  • Note taken on [2025-05-11 Sun 18:36]
    turns out STD/OS:WITH-DIRECTORY-ITERATOR was the culprit - re-arranged a null-alien check and good to go.

currently segfaults - should be easy to fix

TODO linedit prefixes

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

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]   lisp 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]

PROJECT parse [1/2]   lisp 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]   lisp 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]   lisp 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 [1/2]   lisp 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 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]
  • State "TODO" from "TODO" [2024-08-22 Thu 22:15]

PROJECT dat [2/4]   lisp 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   lisp

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   lisp 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

DONE sxp 0.2   lisp sxp

ID: 2a4d602c-2dea-451f-b06e-165ee2a523b3
CREATED: <2025-05-16 Fri 23:20>
  • State "TODO" from [2023-12-12 Tue 19:49]
  • State "DONE" from "TODO" [2025-05-16 Fri 23:20]
  • NOPE WRAP-OBJECT   skel
    ID: 1f04611d-068b-4708-b4e9-e6211cb484eb
    CREATED: <2025-05-16 Fri 23:20>
    
    • State "TODO" from [2023-12-12 Tue 19:49]
    • Note taken on [2025-05-16 Fri 23:20]
      using obj/ast instead - lisp is data is code
    • use to replace LOAD-AST for sk-project and friends
    • requires mop
    • take a look at UNWRAP-OBJECT too, may need rewrite for a better API
    • NOPE sxp standard methods
      ID: 12de9774-b6d9-47d1-8dd6-8448078ea15f
      CREATED: <2025-05-16 Fri 23:20>
      
      • State "TODO" from [2024-08-13 Tue 22:06]
      • hash-table
      • classoid
      • vector
      • boolean
      • obj/
        • color
        • uri

DONE toml impl

ID: 6ba3e53d-8cfa-46fe-852a-ea462d475883
CREATED: <2025-04-30 Wed 18:30>
  • State "TODO" from [2023-12-24 Sun 19:28]
  • State "DONE" from "TODO" [2025-04-30 Wed 18:30]
  • Refiled on [2025-04-30 Wed 18:32]

the toml parser on quicklisp is based on esrap, make a comparable one using our parser module.

PROJECT syn [0/2]   lisp 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]

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 skel [1/6]   lisp 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]

DONE split out skel rules

ID: d353ab64-69a1-4fcf-9df5-1804c646f6a5
CREATED: <2025-05-16 Fri 22:45>
  • State "TODO" from [2024-08-11 Sun 00:10]
  • State "DONE" from "TODO" [2025-05-16 Fri 22:45]
  • core/rule.lisp

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]
  • 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

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]

PROJECT obj [0/2]   lisp obj

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

TODO fix obj/query stack overflow on compile

CREATED: <2025-04-28 Mon 14:55>
ID: 02fd19ee-aef4-44cd-ae87-8eedc048ae85
  • State "TODO" from [2025-04-28 Mon 14:55]
Control stack exhausted (no more space for function call frames).
This is probably due to heavily nested or infinitely recursive function
calls, or a tail call that SBCL cannot or has not optimized away.

PROCEED WITH CAUTION.
   [Condition of type SB-KERNEL::CONTROL-STACK-EXHAUSTED]

 849: ((:METHOD SB-PCL::COMPUTE-EFFECTIVE-SLOT-DEFINITION-INITARGS (SB-PCL::SLOT-CLASS T)) #<STANDARD-CLASS OBJ/QUERY:LOGICAL-QUERY-PLAN> (#<STANDARD-DIRECT-SLOT-DEFINITION OBJ/AST:AST> #<STANDARD-DIRECT-SL..
      Locals:
	SB-PCL::ALLOCATION = :INSTANCE
	SB-PCL::ALLOCATION-CLASS = #<STANDARD-CLASS OBJ/QUERY:LOGICAL-QUERY-PLAN>
	SB-PCL::ALLOCP = T
	CLASS = #<STANDARD-CLASS OBJ/QUERY:LOGICAL-QUERY-PLAN>
	SB-PCL::DIRECT-SLOTDS = (#<STANDARD-DIRECT-SLOT-DEFINITION OBJ/AST:AST> #<STANDARD-DIRECT-SLOT-DEFINITION OBJ/AST:AST> #<STANDARD-DIRECT-SLOT-DEFINITION OBJ/AST:AST>)
	DOCUMENTATION = NIL
	SB-PCL::DOCUMENTATIONP = NIL
	SB-PCL::INITARGS = (:AST)
	SB-PCL::INITFORM = NIL
	SB-PCL::INITFUNCTION = NIL
	SB-PCL::INITP = NIL
	SB-PCL::NAME = OBJ/AST:AST
	SB-PCL::NAMEP = T

 855: (SB-THREAD::CALL-WITH-RECURSIVE-LOCK #<FUNCTION (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN SB-PCL::UPDATE-CLASS) {739064260D1B}> #<MUTEX "PCL global mutex" taken owner=main thread>)
      Locals:
	GOT-IT = NIL
	MUTEX = #<MUTEX "PCL global mutex" taken owner=main thread>
	SB-C::THING = #<FUNCTION (FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK :IN SB-PCL::UPDATE-CLASS) {739064260D1B}>

WIP complete base obj/query package [0/1]   q db

LOCATION: lib/obj/query.lisp
ID: 8e8bfeaf-22d2-4bad-a8e5-a19765561efa
  • State "WIP" from [2024-07-09 Tue 22:14]
  • 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]

PROJECT net [0/4]   lisp net

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

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]

WIP net/srv   lisp

ID: f812f4e7-03c0-4e7a-a602-8947c39eb4ed
  • State "TODO" from [2024-07-19 Fri 21:50]
  • State "WIP" from "TODO" [2024-07-19 Fri 21:51]
  • needs a solid task-pool impl completed first

PROJECT gui [0/2]   lisp gui

ID: 73aea563-3df7-4611-a27d-874772806f18
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]   lisp 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 [0/2]   io

CREATED: <2024-09-19 Thu 21:54>
ID: 39c15417-5078-403f-b716-3b48b9d3929d
LOCATION: lib/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]

TODO zlib compression

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

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]

WIP Ecosystem

CREATED: <2025-05-08 Thu 18:27>
ID: c95d1f51-ef69-4489-af4c-b555ccaaed36
Effort: 4h
  • State "RESEARCH" from [2025-05-08 Thu 18:27]
  • State "WIP" from "RESEARCH" [2025-05-08 Thu 20:53]

TODO refactor libs into math

CREATED: <2025-05-08 Thu 18:31>
ID: d77c8507-b61c-4dc8-a1bd-45f10043b094
Effort: 4:00
  • State "TODO" from [2025-05-08 Thu 18:31]
  • obj should NOT depend on math
  • math depends on ffi, depended on by dsp,net,apps,etc
  • should probably have the most tests of all libs

PROJECT log [0/1]

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

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/11]   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
ORDERED: t
  • State "TODO" from [2024-02-29 Thu 16:09]
  • State "WIP" from "TODO" [2025-04-26 Sat 20:48]
  • document functions and variables..
(let ((ret))
  (do-external-symbols (s :std ret)
    (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)))
  (values ret (list :missing (length ret) :/ (length (list-package-symbols :std)))))
(SLOT-DEFINITION-READERS FINALIZE-INHERITANCE NON-POSITIVE-REAL-P
                         PACKAGE-SYMBOL-NAMES COMPUTE-SPECIAL-BINDINGS
                         BASIC-QUEUE SERDE-ERROR TERMIOS-LFLAG
                         READTABLE-DOES-NOT-EXIST DESIGNATE-ORACLE
                         PACKAGE-SYMBOLS CLASS-DIRECT-SLOTS
                         WITH-DEFAULT-SPECIAL-BINDINGS WITH-SYNC-MESSAGE
                         IF-MATCH PREV-COL-COUNT-OF COL-INDEX-OF REMOVE-METHOD
                         CLASS-DIRECT-SUPERCLASSES NON-POSITIVE-SINGLE-FLOAT-P
                         *WORKER-CLASS* WITH-NEW-SESSION RUN-WORKER MAKE-WORKER
                         RAW-QUEUE-FULL-P DUMP-THREAD *DEFAULT-PACKAGE*
                         LIST-ALL-SYMBOLS READTABLE-ERROR
                         STANDARD-EFFECTIVE-SLOT-DEFINITION
                         NON-POSITIVE-FLOAT-P JOBS SEGMENT-READER
                         DIRECT-SLOT-DEFINITION-CLASS LEXENV-USER-DATA
                         NEGATIVE-RATIONAL-P WITH-UNIQUE-NAMES
                         READ-ALIEN-SINGLE-FLOAT SLOT-DEFINITION-ALLOCATION
                         CHANNEL-QUEUE *PRINT-SLOT-INDENT* DE
                         CURRENT-THREAD-SAP SCHEDULED-TASK
                         POSITIVE-LONG-FLOAT-P JOBP WAIT-FOR-THREADS
                         AVLTREE-LIST *DEFAULT-ARENA-SIZE* ELEMENT
                         NON-NEGATIVE-DOUBLE-FLOAT-P ADD-DEPENDENT TASKS
                         NON-POSITIVE-LONG-FLOAT-P POSITIVE-REAL-P
                         THREAD-DEADLOCK METHOD-SPECIALIZERS
                         NON-NEGATIVE-INTEGER-P METHOD-GENERIC-FUNCTION
                         GENERIC-FUNCTION-METHOD-COMBINATION COMPILE-LISP
                         NEGATIVE-FIXNUM-P ACCESSOR-METHOD-SLOT-DEFINITION
                         +TIOCGWINSZ+ POP-QUEUE MACROEXPAND-ALL
                         WHILE-WAITING-FOR DEF-SIMPLE-ERROR-REPORTER
                         PUSH-SPIN-QUEUE SLOT-DEFINITION-NAME
                         SLOT-DEFINITION-INITFUNCTION START-WORKER
                         QUEUE-FULL-P* THREAD-COUNT GENSYMIFY*
                         MAKE-LISTENER-THREAD GENERIC-FUNCTION-METHOD-CLASS
                         HOOKS STANDARD-GENERIC-FUNCTION
                         COMPUTE-DEFAULT-INITARGS NEGATIVE-INTEGER-P PEEK-QUEUE
                         RAW-QUEUE-EMPTY-P SPECIALIZER-DIRECT-METHODS SYMB
                         LINE-COUNT-OF RENAME-PACKAGE-AWAY 64-BIT-P
                         DO-INTERNAL-SYMBOLS AVL-FIND<= ADD-DIRECT-SUBCLASS
                         DEF-SIMPLE-WARNING-REPORTER THREAD-OS-TID
                         PRINT-TOP-LEVEL GENERIC-FUNCTION PARSE-LAMBDA-LIST
                         SUBST-MODE-PPCRE-LAMBDA-FORM OCTET-VECTOR-P KERNEL
                         NYI! ORACLE-ID STATUS
                         SPECIALIZER-DIRECT-GENERIC-FUNCTIONS EQL-SPECIALIZER
                         WORD STANDARD-OBJECT WITH-COUNTDOWN
                         CALL-WITH-QUEUE-LOCK PACKAGE-DEFINITION-FORM
                         MAKE-RWLOCK WITH-TASK-POOL WRAPPED-CONDITION-VALUE
                         MEMCPY REMOVE-DIRECT-METHOD NON-NEGATIVE-FIXNUM-P
                         STANDARD-WRITER-METHOD SER HUMAN-READABLE-SIZE
                         NON-NEGATIVE-REAL-P ALIEN-OR-LISP-OCTETS
                         CLASS-PRECEDENCE-LIST NON-POSITIVE-SHORT-FLOAT-P
                         CHANNEL LITTLE-ENDIAN-P POP-CONS-QUEUE
                         FIND-THREAD-POOL EXTRACT-LAMBDA-LIST
                         METHOD-COMBINATION |#"-reader| INTERN-EQL-SPECIALIZER
                         SLOT-BOUNDP-USING-CLASS ENSURE-CLASS
                         NEGATIVE-DOUBLE-FLOAT-P CFMAKERAW
                         COUNTING-CHARACTER-INPUT-STREAM RAW-QUEUE-COUNT
                         MAKE-QUEUE KILL-THREAD POP-WORKER POP-QUEUE*
                         POSIX-MEMALIGN CLASS-NAME SERDE-CONDITION
                         NON-POSITIVE-DOUBLE-FLOAT-P REMOVE-DIRECT-SUBCLASS
                         PREFIX-OF WITH-THREADS STREAM-OF POP-RAW-QUEUE
                         *XDG-USER-DIRS* RUN-THREAD FUNCALLABLE-STANDARD-OBJECT
                         PRINT-ALLOCATOR-HISTOGRAM METHOD NEGATIVE-REAL-P
                         MAKE-CONS-QUEUE GENSYMIFY MESSAGE-CONDITION TCSETATTR*
                         REVIVE-IMAGE COMPUTE-EFFECTIVE-METHOD
                         ADD-DIRECT-METHOD ELEMENT-STREAM GENERIC-FUNCTION-NAME
                         CLASS-DEFAULT-INITARGS OCTET-VECTOR
                         STANDARD-READER-METHOD ERROR-MESSAGE
                         %DISPOSE-THREAD-STRUCTS READ-ALIEN REMOVE-DEPENDENT
                         FULFILLEDP FORWARD-REFERENCED-CLASS ERROR-ITEM
                         NEGATIVE-SINGLE-FLOAT-P ERROR-REASON SPIN-QUEUE
                         TCSETATTR MAKE-INSTANCE ERROR-KIND TASK-POOL HANG
                         PEEK-SPIN-QUEUE CHANNEL-POOL SPECIALIZER
                         SPIN-QUEUE-COUNT *TAB-WIDTH* READ-N-BYTES AVL-FIND>=
                         LOCK %WORKER EFFECTIVE-SLOT-DEFINITION-CLASS
                         +TIOCSWINSZ+ XDG-USER-DIR RAW-QUEUE-CAPACITY
                         METAOBJECT COMPILER-LET ADD-METHOD *STD-PACKAGES*
                         QUEUE-FULL-P ENSURE-LIST KILL-WORKER
                         THREAD-DEADLOCK-CYCLE NON-NEGATIVE-SHORT-FLOAT-P
                         ENSURE-GENERIC-FUNCTION ENSURE-CLASS-USING-CLASS
                         WITH-SESSION-LOCK QUEUE
                         SET-FUNCALLABLE-INSTANCE-FUNCTION SPIN-QUEUE-EMPTY-P
                         *RESULT* PARSE-DEFPKG-FORM MESSAGE 32-BIT-P RAW-QUEUE
                         +OPOST+ SYNC-MESSAGE QUEUE-COUNT CONS-QUEUE-EMPTY-P
                         RESET-ALLOCATOR-HISTOGRAM PEEK-QUEUE* COMPUTE-SLOTS
                         DIRECT-SLOT-DEFINITION XDG-BASE-DIR PEEK-CONS-QUEUE
                         TASKP MESSAGE-CONTENT *HIDDEN-PATHS* BUILD-BATCHER-SN
                         MAKE-MACRO-LAMBDA CLASS-DIRECT-SUBCLASSES
                         TIMED-JOIN-THREAD *TASK-PRIORITY* ALLOCATOR-HISTOGRAM
                         SYMBOLICATE FUTEX-WAKE DOLLAR-SYMBOL-P
                         PREFIXED-CHARACTER-OUTPUT-STREAM WITH-QUEUE-LOCK
                         NEGATIVE-SHORT-FLOAT-P GENERIC-FUNCTION-LAMBDA-LIST
                         WORKER-THREAD METHOD-QUALIFIERS VALIDATE-SUPERCLASS
                         MAKE-NULL-LEXENV UPDATE-DEPENDENT DEF-WARNING-REPORTER
                         EFFECTIVE-SLOT-DEFINITION JOIN-WORKER WRAPPED-STREAM
                         INDEX DEFINE-LOGICAL-PATHNAME CLASS-FINALIZED-P
                         STANDARD-DIRECT-SLOT-DEFINITION GET-FOREGROUND
                         STANDARD-SLOT-DEFINITION ...)
(:MISSING 413 :/ 1060)
  • [?] 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
  • [ ] readtable.lisp
  • [ ] seq.lisp
  • [ ] serde.lisp
  • [ ] spin.lisp
  • [ ] std.asd
  • [ ] stream.lisp
  • [ ] string.lisp
  • [ ] sym.lisp
  • [ ] sys.lisp
  • [ ] task.lisp
  • [ ] tests
  • [ ] thread.lisp
  • [ ] type.lisp

DONE symbol cleanup

CREATED: <2025-04-26 Sat 22:33>
ID: 91c34865-9f18-47a8-b63c-4401307f8368
  • State "TODO" from [2025-04-26 Sat 22:33]
  • State "DONE" from "TODO" [2025-04-26 Sat 22:46]

delete unbound non-anaphoric symbols

(let ((ret))
  (do-external-symbols (s :std ret)
    (when (not (or (boundp s) (fboundp s) (cadr (multiple-value-list (typexpand s))) (find-class s nil)))
      (push s ret))))
TIME-REMAINING PID-T TIMESPEC IT LOFF-T STAGES %P TASK GID-T .I %THREAD %A MAYBE-INLINE JOBS TASKS TIMEVAL WINSIZE UID-T

TODO more (useful) bit tricks

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

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

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]

DONE review previous state of std/tasks

CREATED: <2025-04-28 Mon 17:56>
ID: bf5bb8f3-7add-4099-a193-06ecb9860008
  • State "TODO" from [2025-04-28 Mon 17:56]
  • State "DONE" from "TODO" [2025-05-06 Tue 21:57]

We were doing some things right - like our semaphore worker waking

  • already added this to BROADCAST-WORK (comment suggestion by lmj)
  • mailbox stuff not as useful (speed is a concern over more primitive cas queues and spinlocks)

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]

DONE explain   doc

ID: 155f1e0c-c5ec-4175-934c-14be4adb3559
LOCATION: meta.lisp
CREATED: <2025-04-27 Sun 19:33>
  • State "TODO" from [2024-08-03 Sat 01:01]
  • State "WIP" from "TODO" [2025-04-27 Sun 19:33]
  • State "DONE" from "WIP" [2025-04-27 Sun 19:37]
  • generic done
  • maybe simple version in std/fmt

DONE explore   doc

ID: 08017f7e-de0a-442a-9cb6-5559c9159b29
CREATED: <2025-04-27 Sun 19:33>
  • State "TODO" from "TODO" [2024-08-12 Mon 22:26]
  • State "WIP" from "TODO" [2025-04-27 Sun 19:33]
  • State "DONE" from "WIP" [2025-04-27 Sun 19:37]
  • generic done

DONE define-alien-struct

ID: 6e3da9a1-e93e-4643-bfa8-5f47c446f26f
CREATED: <2025-01-17 Fri 15:54>
  • State "DONE" from "TODO" [2025-05-02 Fri 13:54]
  • Refiled on [2025-05-02 Fri 13:54]
  • convenience for defining alien structs, especially with the same name as lisp type

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/11]   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.

DONE remove makefile

ID: 93f3d805-9139-49b2-9b20-4e92e3dbda41
CREATED: <2025-05-14 Wed 15:58>
  • State "TODO" from [2024-08-16 Fri 22:44]
  • State "DONE" from "TODO" [2025-05-14 Wed 15:58]

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 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]

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 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]
  • index based? inherit from parent only for now
    • how to implement for complete tree?
    • custom_id for edges? like @ref bibtex

PROJECT app

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

WIP 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]

WIP mpk [0/1]

CREATED: <2025-05-02 Fri 14:06>
ID: e8566657-1ca8-49fa-8262-7338eac5bf8f
  • 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]

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 bench   test bench

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]