1.1--- a/20230730.org Sat Jul 27 02:45:34 2024 -0400
1.2+++ b/20230730.org Sun Aug 11 14:46:59 2024 -0400
1.3@@ -1,4 +1,7 @@
1.4 * VC infrastructure
1.5+:PROPERTIES:
1.6+:ID: 2d40eec1-62f4-4f3d-9be7-110400808e06
1.7+:END:
1.8 In heptapod we have a root group named =comp=, containg a variety of
1.9 subgroups. Some of these groups should be public, while others are
1.10 internal to comp members exclusively. Within each subgroup, we should
1.11@@ -17,6 +20,9 @@
1.12 infrequent. They are more frequent in projects with a regular release
1.13 life-cycle.
1.14 * Approaching Webapps
1.15+:PROPERTIES:
1.16+:ID: 0a52be58-990a-47da-ba5a-a7da7192361c
1.17+:END:
1.18 I started poking around in the webapp space again so that I can launch
1.19 a landing page for NAS-T quickly. The Rust situation has improved
1.20 somewhat on the frontend side, and the axum backend stack is nice.
2.1--- a/20231024.org Sat Jul 27 02:45:34 2024 -0400
2.2+++ b/20231024.org Sun Aug 11 14:46:59 2024 -0400
2.3@@ -1,27 +1,81 @@
2.4 * virt
2.5+:PROPERTIES:
2.6+:ID: a51b54d9-5663-411e-b0ba-d1405622eb88
2.7+:END:
2.8 ** QEMU
2.9+:PROPERTIES:
2.10+:ID: 34dc9d12-d651-4204-9abb-a6a9a6aeb07e
2.11+:END:
2.12 ** KVM
2.13+:PROPERTIES:
2.14+:ID: 909e1127-14f5-4783-97af-65aa25439226
2.15+:END:
2.16 ** Hyper-V
2.17+:PROPERTIES:
2.18+:ID: d89dc59d-25d9-4304-bcb8-379dd43cc3f7
2.19+:END:
2.20 ** Firecracker
2.21+:PROPERTIES:
2.22+:ID: 7c4f08b7-2bc0-4a85-a6ca-2decdce8dc91
2.23+:END:
2.24 ** Docker
2.25+:PROPERTIES:
2.26+:ID: 42ff77c2-69c9-4f89-a297-88efd592502e
2.27+:END:
2.28 ** Vagrant
2.29+:PROPERTIES:
2.30+:ID: c53c4d87-b0fd-40de-8db7-b92c22dc946c
2.31+:END:
2.32 ** LXC
2.33+:PROPERTIES:
2.34+:ID: 85c5f471-cf87-49b7-a6ce-5c1526df4080
2.35+:END:
2.36 ** LXD
2.37+:PROPERTIES:
2.38+:ID: f92d34dd-7b24-498c-a5c8-29fd3b528092
2.39+:END:
2.40 ** containerd
2.41+:PROPERTIES:
2.42+:ID: a967645f-5df3-4bed-9e7b-a1adaed3796c
2.43+:END:
2.44 ** systemd-nspawn
2.45+:PROPERTIES:
2.46+:ID: 6329c6f9-c54c-4eb0-99e7-4772399161e7
2.47+:END:
2.48 ** VirtualBox
2.49+:PROPERTIES:
2.50+:ID: 638aa81a-8926-480a-854f-0434e8119426
2.51+:END:
2.52
2.53 * Concatenative
2.54+:PROPERTIES:
2.55+:ID: 964c6bac-486a-4459-825f-6e7e9351c9ab
2.56+:END:
2.57 ** Factor :factor:
2.58+:PROPERTIES:
2.59+:ID: 52994125-5689-402a-ac61-680aa690bf24
2.60+:END:
2.61 - [2023-07-04 Tue]
2.62 Factor is a cool concatenative lang but unfortunately the C interface
2.63 (vm/master.h) no longer exists on the master branch.
2.64 ** Joy :joy:
2.65+:PROPERTIES:
2.66+:ID: 60ca3000-2ff5-4372-93fb-d5c311fb6409
2.67+:END:
2.68
2.69 *** https://hypercubed.github.io/joy/html/j02maf.html
2.70+:PROPERTIES:
2.71+:ID: 56e64d52-4950-4fec-b933-73d1cd8048d1
2.72+:END:
2.73
2.74 *** [[https://builds.openlogicproject.org/content/incompleteness/arithmetization-syntax/arithmetization-syntax.pdf][arithmetization of syntax]]
2.75+:PROPERTIES:
2.76+:ID: 59979091-395d-4067-9c3d-e557fc5287ee
2.77+:END:
2.78 * Lisp :lisp:
2.79+:PROPERTIES:
2.80+:ID: 4b842734-135e-4c86-9337-3841c1241d3b
2.81+:END:
2.82 These notes pertain to Lisp. More specifically, ANSI Common Lisp in
2.83 most places.
2.84
2.85@@ -29,7 +83,13 @@
2.86 cool though
2.87 - what we really need is wasm compiler.. TBD
2.88 * Rust
2.89+:PROPERTIES:
2.90+:ID: f92ce2ba-1b66-42f4-b5e2-f1586b14760b
2.91+:END:
2.92 ** Serde
2.93+:PROPERTIES:
2.94+:ID: 31512714-9c30-4144-9673-327808a18767
2.95+:END:
2.96 - [2023-07-05 Wed] \\
2.97 important part of the Rust ecosystem, another dtolnay
2.98 contribution. If you want to program a /data/ format in the Rust
2.99@@ -52,8 +112,17 @@
2.100 Read or Write trait. Then you can provide a more robust public API
2.101 (from_bytes, from_writer, etc).
2.102 * C
2.103+:PROPERTIES:
2.104+:ID: 060042a0-d581-411a-9091-d16d11860d89
2.105+:END:
2.106 * CPP
2.107+:PROPERTIES:
2.108+:ID: f09d7294-a997-4715-bceb-ffe6af7f3978
2.109+:END:
2.110 * Nu
2.111+:PROPERTIES:
2.112+:ID: 765ad403-54e1-49cf-b4e6-918de9f910c2
2.113+:END:
2.114 [[https://www.nushell.sh/][~]]
2.115 [[https://www.nushell.sh/cookbook/][cookbook]]
2.116 [[https://github.com/nushell/nu_scripts][nu_scripts]]
3.1--- a/20231101.org Sat Jul 27 02:45:34 2024 -0400
3.2+++ b/20231101.org Sun Aug 11 14:46:59 2024 -0400
3.3@@ -1,4 +1,7 @@
3.4 * AWS usage
3.5+:PROPERTIES:
3.6+:ID: b2f8d58f-a486-4fe9-895b-504987c0f63d
3.7+:END:
3.8 We're leveraging AWS for some of our public web servers for now. It's
3.9 really not realistic to expect that my home desktop and spotty Comcast
3.10 internet can serve any production workflow. What it /is/ capable of is
4.1--- a/20231102.org Sat Jul 27 02:45:34 2024 -0400
4.2+++ b/20231102.org Sun Aug 11 14:46:59 2024 -0400
4.3@@ -1,4 +1,7 @@
4.4 * IDEAS
4.5+:PROPERTIES:
4.6+:ID: 836b5ca7-6c6b-4d57-8b44-3bb4a8f38a38
4.7+:END:
4.8 ** TODO shed
4.9 :PROPERTIES:
4.10 :ID: fc9a94e1-91c5-4915-90b8-73218fa3b8bc
4.11@@ -21,39 +24,81 @@
4.12 :END:
4.13 shc,shx,etc
4.14 ** WIP packy
4.15+:PROPERTIES:
4.16+:ID: 6bd29c37-4b23-4a05-b3a4-72b6ee712f27
4.17+:END:
4.18 :LOGBOOK:
4.19 - State "TODO" from [2023-04-07 Fri 23:33]
4.20 :END:
4.21 *** WIP rust
4.22+:PROPERTIES:
4.23+:ID: 3bfa733e-d777-4e82-b108-93ba74c4dc08
4.24+:END:
4.25 *** WIP common-lisp
4.26+:PROPERTIES:
4.27+:ID: 0f3b6182-1dd1-4e65-8b1c-4630a46fff4c
4.28+:END:
4.29 *** WIP emacs-lisp
4.30+:PROPERTIES:
4.31+:ID: e9fc19d5-daea-40a5-a0f2-882b925e58f2
4.32+:END:
4.33 *** python
4.34+:PROPERTIES:
4.35+:ID: c2e62af0-0397-4560-a283-b33d12fbd966
4.36+:END:
4.37 *** julia
4.38+:PROPERTIES:
4.39+:ID: d2466880-1721-4386-b385-ded06d5b15cf
4.40+:END:
4.41 *** C
4.42+:PROPERTIES:
4.43+:ID: fb722462-9e11-40c1-a5d7-30698dba7e20
4.44+:END:
4.45 *** C++
4.46+:PROPERTIES:
4.47+:ID: 663cd894-0a5f-4352-acf1-4528b9efeeaf
4.48+:END:
4.49 ** TODO tenex
4.50+:PROPERTIES:
4.51+:ID: b4264fa2-6e96-4679-bd17-2428ba3489ee
4.52+:END:
4.53 :LOGBOOK:
4.54 - State "TODO" from [2023-04-07 Fri 23:52]
4.55 :END:
4.56 ** TODO mpk
4.57+:PROPERTIES:
4.58+:ID: d9661e4a-0328-4864-878d-096f76ddaf55
4.59+:END:
4.60 :LOGBOOK:
4.61 - State "TODO" from [2023-04-07 Fri 23:52]
4.62 :END:
4.63 ** TODO cfg
4.64+:PROPERTIES:
4.65+:ID: 501593d4-702a-40cb-8a8f-19edfe2f9f29
4.66+:END:
4.67 :LOGBOOK:
4.68 - State "TODO" from [2023-04-07 Fri 23:34]
4.69 :END:
4.70 ** TODO obj
4.71+:PROPERTIES:
4.72+:ID: 24700a26-b238-48dd-a24f-5539984b4fa6
4.73+:END:
4.74 :LOGBOOK:
4.75 - State "TODO" from [2023-04-07 Fri 23:51]
4.76 :END:
4.77 split out from rlib to separate package
4.78 - a purely OOP class library
4.79 ** TODO lab
4.80+:PROPERTIES:
4.81+:ID: fa1c9563-338b-4a56-bfc3-6f4983f2a732
4.82+:END:
4.83 :LOGBOOK:
4.84 - State "TODO" from [2023-04-07 Fri 23:34]
4.85 :END:
4.86 ** TODO source categories
4.87+:PROPERTIES:
4.88+:ID: c43fdb5d-4f52-478e-9384-ec0e6e89cf09
4.89+:END:
4.90 - need a way of extracting metadata from a repo
4.91 - need ability to search and query libs/packages
4.92 - separate modules based on where they belong in our stack?
4.93@@ -63,11 +108,17 @@
4.94 - dist
4.95 - software distros
4.96 ** TODO generic query language
4.97+:PROPERTIES:
4.98+:ID: 8647801a-d5ad-446d-8ae1-fd896bce129a
4.99+:END:
4.100 from obj protocol?
4.101 sql compatibility?
4.102
4.103 /check out kdb/
4.104 ** TODO bbdb
4.105+:PROPERTIES:
4.106+:ID: ff7c2876-e471-480b-b532-9921dbd3bc89
4.107+:END:
4.108 :LOGBOOK:
4.109 - Note taken on [2023-10-24 Tue 22:16] \\
4.110 graph database, build on rocksdb
4.111@@ -77,6 +128,9 @@
4.112 - sql
4.113
4.114 ** TODO NAS-TV :nas:t:
4.115+:PROPERTIES:
4.116+:ID: 00e5fe6c-80b4-4172-a9cb-ce8adc40d3dc
4.117+:END:
4.118 - media streaming
4.119 - gstreamer backend
4.120 - audio/video
5.1--- a/20231105.org Sat Jul 27 02:45:34 2024 -0400
5.2+++ b/20231105.org Sun Aug 11 14:46:59 2024 -0400
5.3@@ -1,6 +1,12 @@
5.4 * DRAFT dylib-skel-1
5.5+:PROPERTIES:
5.6+:ID: b4d1bc91-f344-45fd-becc-cb20f00a3a61
5.7+:END:
5.8 - State "DRAFT" from [2023-11-05 Sun 22:23]
5.9 ** Overview
5.10+:PROPERTIES:
5.11+:ID: 2e490c4b-344e-4790-9184-1c05ba675f15
5.12+:END:
5.13 Our core languages are [[https://www.rust-lang.org/][Rust]] and [[https://lisp-lang.org/][Lisp]] - this is the killer combo which will allow NAS-T
5.14 to rapidly develop high-quality software. As such, it's crucial that these two very
5.15 different languages (i.e. compilers) are able to interoperate seamlessly.
5.16@@ -14,12 +20,18 @@
5.17 code-base, but it's definitely something worth adding to the toolbox in case we need it.
5.18
5.19 ** FFI
5.20+:PROPERTIES:
5.21+:ID: 985019fc-612a-44ab-b726-b9067432ad87
5.22+:END:
5.23 The level of interop we're after in this case is [[https://en.wikipedia.org/wiki/Foreign_function_interface][FFI]].
5.24
5.25 Basically, calling Rust code from Lisp and vice-versa. There's an article about calling
5.26 Rust from Common Lisp [[https://dev.to/veer66/calling-rust-from-common-lisp-45c5][here]] which shows the basics and serves as a great starting point
5.27 for those interested.
5.28 *** Rust != C
5.29+:PROPERTIES:
5.30+:ID: 2f71a3c1-0b14-46a6-9d8d-f6ec697729cc
5.31+:END:
5.32 The complication(s) with Rust I mentioned early is really just that /it is not C/. =C=
5.33 is old, i.e. well-supported with a stable ABI, making the process of creating bindings
5.34 for a C library a breeze in many languages.
5.35@@ -31,17 +43,29 @@
5.36 like the C ABI can.
5.37
5.38 *** Overhead
5.39+:PROPERTIES:
5.40+:ID: 4ea79f68-55ec-4da3-a184-8343d49532b6
5.41+:END:
5.42 Using FFI involves some overhead. Check [[https://github.com/dyu/ffi-overhead][here]] for an example benchmark across a few
5.43 languages. While building the NAS-T core, I'm very much aware of this, and will need a
5.44 few sanity benchmarks to make sure the cost doesn't outweigh the benefit. In particular,
5.45 I'm concerned about crossing multiple language barriers (Rust<->C<->Lisp).
5.46
5.47 ** Rust -> C -> Lisp
5.48+:PROPERTIES:
5.49+:ID: a498276c-8525-4a43-aa40-4b05f76a29a9
5.50+:END:
5.51 *** Setup
5.52+:PROPERTIES:
5.53+:ID: 19f96ef7-af92-496e-9d42-70c4d4c85051
5.54+:END:
5.55 For starters, I'm going to assume we all have Rust (via =rustup=) and Lisp (=sbcl= only)
5.56 installed on our GNU/Linux system (some tweaks needed for Darwin/Windows, not covered in
5.57 this post).
5.58 **** Cargo
5.59+:PROPERTIES:
5.60+:ID: c929e0b6-b6f2-4383-9412-1610329ab28c
5.61+:END:
5.62 Create a new library crate. For this example we're focusing on a 'skeleton' for
5.63 /dynamic/ libraries only, so our experiment will be called =dylib-skel= or *dysk* for
5.64 short.
5.65@@ -64,7 +88,13 @@
5.66 This tells Rust to generate a shared C-compatible object with a =.so= extension which we
5.67 can open using [[https://man.archlinux.org/man/dlopen.3.en][dlopen]].
5.68 **** cbindgen
5.69+:PROPERTIES:
5.70+:ID: 256ac288-c5a0-473a-ab65-2d6503bd423c
5.71+:END:
5.72 ***** install
5.73+:PROPERTIES:
5.74+:ID: fc476f64-6b68-417a-8540-ca23ce27fa25
5.75+:END:
5.76 Next, we want the =cbindgen= program which we'll use to generate header files for
5.77 C/C++. This step isn't necessary at all, we just want it for further experimentation.
5.78
5.79@@ -76,6 +106,9 @@
5.80 cbindgen = "0.24"
5.81 #+end_src
5.82 ***** cbindgen.toml
5.83+:PROPERTIES:
5.84+:ID: 111e27f7-0b9c-4eef-9117-f7c8ba3f511c
5.85+:END:
5.86 #+begin_src conf-toml :tangle cbindgen.toml
5.87 language = "C"
5.88 autogen_warning = "/* Warning, this file is autogenerated by cbindgen. Don't modify this manually. */"
5.89@@ -92,6 +125,9 @@
5.90 header = '"dysk.h"'
5.91 #+end_src
5.92 ***** build.rs
5.93+:PROPERTIES:
5.94+:ID: 9fc271b2-9acb-4f4b-aa61-82d60d2ddb9e
5.95+:END:
5.96 #+begin_src rust :tangle build.rs
5.97 fn main() -> Result<(), cbindgen::Error> {
5.98 if let Ok(b) = cbindgen::generate(std::env::var("CARGO_MANIFEST_DIR").unwrap()) {
5.99@@ -99,6 +135,9 @@
5.100 else { panic!("failed to generate dysk.h from cbindgen.toml") } }
5.101 #+end_src
5.102 *** lib.rs
5.103+:PROPERTIES:
5.104+:ID: 6b524921-2ae0-43f0-bb85-d9955b0e689c
5.105+:END:
5.106 #+begin_src rust :tangle lib.rs
5.107 //! lib.rs --- dysk library
5.108 use std::ffi::{c_char, c_int, CString};
5.109@@ -111,15 +150,24 @@
5.110 pub extern "C" fn dysk_plus1(n:c_int) -> c_int {n+1}
5.111 #+end_src
5.112 *** test.rs
5.113+:PROPERTIES:
5.114+:ID: cc7c6538-33a6-40c6-94ef-2a9c259c975a
5.115+:END:
5.116 #+begin_src rust :tangle test.rs
5.117 //! test.rs --- dysk test
5.118 fn main() { let mut i = 0u32; while i < 500000000 {i+=1; dysk::dysk_plus1(2 as core::ffi::c_int);}}
5.119 #+end_src
5.120 *** compile
5.121+:PROPERTIES:
5.122+:ID: 337a24d1-f305-4e1a-9052-47a53591cb2f
5.123+:END:
5.124 #+begin_src sh
5.125 cargo build --release
5.126 #+end_src
5.127 *** load from SBCL
5.128+:PROPERTIES:
5.129+:ID: a4813269-92fb-4f52-aef0-3a36dce3cf69
5.130+:END:
5.131 #+begin_src lisp :tangle dysk.lisp
5.132 (load-shared-object #P"target/release/libdysk.so")
5.133 (define-alien-routine dysk-hello c-string)
5.134@@ -128,6 +176,9 @@
5.135 (dysk-hello) ;; => "hello from rust"
5.136 #+end_src
5.137 *** benchmark
5.138+:PROPERTIES:
5.139+:ID: 1a8ca441-f290-46c7-b979-1e7e0d1d063b
5.140+:END:
5.141 #+begin_src shell
5.142 time target/release/dysk-test
5.143 #+end_src
6.1--- a/20231124.org Sat Jul 27 02:45:34 2024 -0400
6.2+++ b/20231124.org Sun Aug 11 14:46:59 2024 -0400
6.3@@ -1,4 +1,7 @@
6.4 * cl-dot examples
6.5+:PROPERTIES:
6.6+:ID: c5f4f25c-071b-4a2d-85bc-08676eacce5d
6.7+:END:
6.8 #+begin_src lisp
6.9 (defmethod cl-dot:graph-object-node ((graph (eql 'example)) (object cons))
6.10 (make-instance 'cl-dot:node
7.1--- a/20231205.org Sat Jul 27 02:45:34 2024 -0400
7.2+++ b/20231205.org Sun Aug 11 14:46:59 2024 -0400
7.3@@ -1,4 +1,7 @@
7.4 * global refs
7.5+:PROPERTIES:
7.6+:ID: 7fb40057-05aa-445b-bc75-0b1b6ca2c994
7.7+:END:
7.8 need a way of indexing, referring to, and annotating objects such as
7.9 URLs, docs, articles, source files, etc.
7.10
8.1--- a/20231209.org Sat Jul 27 02:45:34 2024 -0400
8.2+++ b/20231209.org Sun Aug 11 14:46:59 2024 -0400
8.3@@ -1,4 +1,7 @@
8.4 * doc best practices
8.5+:PROPERTIES:
8.6+:ID: ba4a3074-f29d-4f81-b4ba-d6a523b3f291
8.7+:END:
8.8 https://rust-lang.github.io/api-guidelines/documentation.html
8.9
8.10 also: https://lisp-lang.org/style-guide/
9.1--- a/20231212.org Sat Jul 27 02:45:34 2024 -0400
9.2+++ b/20231212.org Sun Aug 11 14:46:59 2024 -0400
9.3@@ -1,4 +1,7 @@
9.4 * On Computers
9.5+:PROPERTIES:
9.6+:ID: 7845b0fb-b5d3-4488-bdba-4876d9c8816e
9.7+:END:
9.8 If you've met me in the past decade, you probably know that I am
9.9 extremely passionate about computers. Let me first explain why.
9.10
9.11@@ -19,6 +22,9 @@
9.12 problems.
9.13
9.14 ** The Programmer
9.15+:PROPERTIES:
9.16+:ID: b17c853e-1728-4bd3-94c5-82e5b33d7398
9.17+:END:
9.18 Now, let us consider the /programmer/. They have power. /real/
9.19 power. They understand the language of computers, can whisper to them
9.20 in various dialects. It can be intimidating to witness until you
9.21@@ -50,6 +56,9 @@
9.22 machines you work with. I like to call this /Machine Empathy/.
9.23
9.24 ** Programs
9.25+:PROPERTIES:
9.26+:ID: a297e5f9-a875-4512-b126-9a2b3e75c1d8
9.27+:END:
9.28 I already mentioned bugs - I write plenty of those, but usually I try
9.29 to write /programs/. Programs to me are like poetry. I like to think
9.30 they are for the computer too.
9.31@@ -67,6 +76,9 @@
9.32
9.33
9.34 * On Infra
9.35+:PROPERTIES:
9.36+:ID: 80d800de-d305-4b95-a28c-a6f19d6f7a11
9.37+:END:
9.38 Something that is missing from many organizations big or large, is an
9.39 effective way to store and access information, even about their own
9.40 org.
10.1--- a/20231223.org Sat Jul 27 02:45:34 2024 -0400
10.2+++ b/20231223.org Sun Aug 11 14:46:59 2024 -0400
10.3@@ -1,3 +1,6 @@
10.4 * https://cal-coop.gitlab.io/utena/utena-specification/main.pdf
10.5+:PROPERTIES:
10.6+:ID: 5c3aac3a-67e1-4867-9ac4-b58a3247f9e0
10.7+:END:
10.8 from the author of cl-decentralise2. draft specification of a
10.9 /Maximalist/ Computing System.
11.1--- a/20231224.org Sat Jul 27 02:45:34 2024 -0400
11.2+++ b/20231224.org Sun Aug 11 14:46:59 2024 -0400
11.3@@ -1,4 +1,7 @@
11.4 * public datasets
11.5+:PROPERTIES:
11.6+:ID: 28738250-c34e-45e2-8793-f8245472d3a3
11.7+:END:
11.8 https://github.com/awesomedata/awesome-public-datasets
11.9 https://docs.openml.org/Datasets/
11.10 https://wiki.pathmind.com/open-datasets
12.1--- a/20231228.org Sat Jul 27 02:45:34 2024 -0400
12.2+++ b/20231228.org Sun Aug 11 14:46:59 2024 -0400
12.3@@ -1,4 +1,7 @@
12.4 * useful internals
12.5+:PROPERTIES:
12.6+:ID: 28581a8e-ae05-45de-9744-24f447668418
12.7+:END:
12.8 #+begin_src lisp
12.9 sb-sys:*runtime-dlhandle*
12.10 sb-fasl:+fasl-file-version+
13.1--- a/20240103.org Sat Jul 27 02:45:34 2024 -0400
13.2+++ b/20240103.org Sun Aug 11 14:46:59 2024 -0400
13.3@@ -1,4 +1,7 @@
13.4 * [[https://github.com/sigmf/SigMF][SigMF]]
13.5+:PROPERTIES:
13.6+:ID: f21a6477-6a3f-48f7-8a9e-43f5cf65286c
13.7+:END:
13.8 #+begin_quote
13.9 Sharing sets of recorded signal data is an important part of science
13.10 and engineering. It enables multiple parties to collaborate, is often
13.11@@ -20,8 +23,17 @@
13.12
13.13 the-spec: https://github.com/sigmf/SigMF/blob/sigmf-v1.x/sigmf-spec.md
13.14 * [[https://www.libvolk.org/][LibVOLK]]
13.15+:PROPERTIES:
13.16+:ID: ae34135c-488e-4aff-b795-a4d0d558f22b
13.17+:END:
13.18 Vector-Optimized Library of Kernels (simd)
13.19 * [[https://docs.kernel.org/fb/framebuffer.html][/dev/fb*]]
13.20+:PROPERTIES:
13.21+:ID: 7819a970-1f37-40a6-985f-905b25a08a4a
13.22+:END:
13.23 framebuffers, used by fbgrab/fbcat program
13.24 * [[https://docs.kernel.org/block/ublk.html][ublk]]
13.25+:PROPERTIES:
13.26+:ID: 5ccaed39-7055-4a51-ab62-769a73425270
13.27+:END:
13.28 https://github.com/ming1/ubdsrv
14.1--- a/20240120.org Sat Jul 27 02:45:34 2024 -0400
14.2+++ b/20240120.org Sun Aug 11 14:46:59 2024 -0400
14.3@@ -1,15 +1,24 @@
14.4 * TODO taobench demo
14.5+:PROPERTIES:
14.6+:ID: 81ac81c3-f183-4345-aaf3-ef7ef0434947
14.7+:END:
14.8 :LOGBOOK:
14.9 - State "TODO" from [2024-01-21 Sun 00:32]
14.10 :END:
14.11 https://github.com/audreyccheng/taobench - shouldn't have missed this :)
14.12 obviously we need to implement this using core -- in demo/bench/tao?
14.13 * TODO clap completion for nushell
14.14+:PROPERTIES:
14.15+:ID: a4b35281-83f7-4244-93e9-20e57ba31eb3
14.16+:END:
14.17 :LOGBOOK:
14.18 - State "TODO" from [2024-01-20 Sat 23:23]
14.19 :END:
14.20 https://github.com/clap-rs/clap/tree/master/clap_complete_nushell
14.21 * Dataframe scripting
14.22+:PROPERTIES:
14.23+:ID: 8dc7339e-71c6-4a60-b285-c0d56d1cbc24
14.24+:END:
14.25 https://studioterabyte.nl/en/blog/polars-vs-pandas
14.26 nushell supports DFs, polars underneath?
14.27 https://www.nushell.sh/book/cheat_sheet.html
14.28@@ -18,16 +27,31 @@
14.29
14.30 #+end_src
14.31 * Cloud Squatting
14.32+:PROPERTIES:
14.33+:ID: d5131c54-9082-4424-91dd-70f17561bbf7
14.34+:END:
14.35 ** Google
14.36+:PROPERTIES:
14.37+:ID: 2b0f67de-1217-48a6-b5b7-a85d3ca15926
14.38+:END:
14.39 - [[https://cloud.google.com/free/docs/free-cloud-features][Free Cloud Features]]
14.40 + 90-day $300 credits
14.41 + e2-micro - free hours worth 1 instance/month
14.42 +
14.43 ** Amazon
14.44+:PROPERTIES:
14.45+:ID: 0fd0dedd-59b0-4b1a-9241-f65699e20c46
14.46+:END:
14.47 - AWS Free Tier
14.48 ** Akamai
14.49+:PROPERTIES:
14.50+:ID: 8315a33f-dd22-4374-979a-9cccd5b5b6a9
14.51+:END:
14.52 - Linode Free Trial
14.53 ** Oracle
14.54+:PROPERTIES:
14.55+:ID: 3f1e1116-c123-4fdf-a336-0d9b50c3dcc7
14.56+:END:
14.57 - [[https://www.oracle.com/cloud/free/?intcmp=ohp052322ocift][OCI Free Tier]]
14.58 + always free: 2 x oracle autonomous DB
14.59 + 2 x AMD Compute VMs
15.1--- a/20240129.org Sat Jul 27 02:45:34 2024 -0400
15.2+++ b/20240129.org Sun Aug 11 14:46:59 2024 -0400
15.3@@ -1,4 +1,7 @@
15.4 * NOTE trash as block device
15.5+:PROPERTIES:
15.6+:ID: 4452b84f-f3a5-44f1-b60a-4efa6413cbb9
15.7+:END:
15.8 :LOGBOOK:
15.9 - State "NOTE" from [2024-01-29 Mon 20:53]
15.10 - State "NOTE" from [2024-01-29 Mon 20:53]
15.11@@ -12,6 +15,9 @@
15.12 may be an opportunity for ublk driver to shine - instead of /dev/null
15.13 piping we need a driver for streaming a file to /dev/trash
15.14 * NOTE compute power
15.15+:PROPERTIES:
15.16+:ID: aa10a1d7-f1e7-4b92-b91a-56c234d52204
15.17+:END:
15.18 :LOGBOOK:
15.19 - State "NOTE" from [2024-01-29 Mon 16:28]
15.20 :END:
16.1--- a/20240210.org Sat Jul 27 02:45:34 2024 -0400
16.2+++ b/20240210.org Sun Aug 11 14:46:59 2024 -0400
16.3@@ -1,4 +1,7 @@
16.4 * BigBenches
16.5+:PROPERTIES:
16.6+:ID: 87d0f5d4-c6fe-4e21-911e-2639a24e89f9
16.7+:END:
16.8 #+name: 1trc-nu
16.9 #+begin_src nushell
16.10 let ms = '1trc/measurements-0.parquet'
17.1--- a/20240218.org Sat Jul 27 02:45:34 2024 -0400
17.2+++ b/20240218.org Sun Aug 11 14:46:59 2024 -0400
17.3@@ -1,4 +1,7 @@
17.4 * NOTE WL vs X
17.5+:PROPERTIES:
17.6+:ID: b4b29989-28f2-48db-ad84-cd8d08eeefdf
17.7+:END:
17.8 :LOGBOOK:
17.9 - State "NOTE" from [2024-02-18 Sun 11:55]
17.10 :END:
18.1--- a/20240301.org Sat Jul 27 02:45:34 2024 -0400
18.2+++ b/20240301.org Sun Aug 11 14:46:59 2024 -0400
18.3@@ -1,4 +1,7 @@
18.4 * TODO collect more data
18.5+:PROPERTIES:
18.6+:ID: 69ce5703-d3fe-4df7-abf4-dc93a08ebc12
18.7+:END:
18.8 :LOGBOOK:
18.9 - State "TODO" from [2024-03-01 Fri 15:27]
18.10 :END:
19.1--- a/20240302.org Sat Jul 27 02:45:34 2024 -0400
19.2+++ b/20240302.org Sun Aug 11 14:46:59 2024 -0400
19.3@@ -1,4 +1,7 @@
19.4 * NOTE On blocks and devices
19.5+:PROPERTIES:
19.6+:ID: c8304ae3-415d-4ccf-8f4c-1f3f6a555e5b
19.7+:END:
19.8 :LOGBOOK:
19.9 - State "NOTE" from [2024-03-02 Sat 21:30]
19.10 :END:
19.11@@ -100,6 +103,9 @@
19.12 https://en.wikipedia.org/wiki/Dynamic_Kernel_Module_Support
19.13
19.14 * NOTE save-lisp-and-respawn
19.15+:PROPERTIES:
19.16+:ID: e58a96e7-7b88-4e4a-b958-3000603d8baa
19.17+:END:
19.18 :LOGBOOK:
19.19 - State "NOTE" from [2024-03-02 Sat 22:57]
19.20 :END:
19.21@@ -108,6 +114,9 @@
19.22 #+end_src
19.23
19.24 * NOTE syslog for log
19.25+:PROPERTIES:
19.26+:ID: 2efa5e4a-f063-49bb-9e61-6917eb115c1a
19.27+:END:
19.28 :LOGBOOK:
19.29 - State "NOTE" from [2024-03-03 Sun 16:35]
19.30 :END:
20.1--- a/20240313.org Sat Jul 27 02:45:34 2024 -0400
20.2+++ b/20240313.org Sun Aug 11 14:46:59 2024 -0400
20.3@@ -1,6 +1,15 @@
20.4 * RESEARCH [[https://github.com/guicho271828/sbcl-wiki/wiki/][sbcl-wiki]]
20.5+:PROPERTIES:
20.6+:ID: 33bc81c1-c5fa-4518-9456-58fd67f301ff
20.7+:END:
20.8 :LOGBOOK:
20.9 - State "RESEARCH" from [2024-03-13 Wed 21:49]
20.10 :END:
20.11 ** IR1
20.12+:PROPERTIES:
20.13+:ID: 2c012572-ea16-408c-b741-d1f6cd0c7961
20.14+:END:
20.15 ** IR2
20.16+:PROPERTIES:
20.17+:ID: 8d015e5e-7ad3-44c3-88cd-81e293a887e0
20.18+:END:
21.1--- a/20240317.org Sat Jul 27 02:45:34 2024 -0400
21.2+++ b/20240317.org Sun Aug 11 14:46:59 2024 -0400
21.3@@ -1,4 +1,7 @@
21.4 * NOTE DB Benchmarking
21.5+:PROPERTIES:
21.6+:ID: d30aec42-a9a1-425b-87ca-1e40db0e69de
21.7+:END:
21.8 :LOGBOOK:
21.9 - State "NOTE" from [2024-02-04 Sun 20:40]
21.10 :END:
21.11@@ -14,36 +17,114 @@
21.12 - API root: https://packy.compiler.company
21.13 - source packs: https://vc.compiler.company/packy
21.14 ** Lib
21.15+:PROPERTIES:
21.16+:ID: 2d6aa6fb-a34c-4ccd-99d3-4f98d33bb2f9
21.17+:END:
21.18 *** Types
21.19+:PROPERTIES:
21.20+:ID: 8017b6c7-3a04-4e52-b3d6-afc68cbce139
21.21+:END:
21.22 **** Pack
21.23+:PROPERTIES:
21.24+:ID: 2722b7dc-9546-4d94-82b0-abfc02647b4d
21.25+:END:
21.26 Primary data type of the library - typically represents a compressed
21.27 archive, metadata, and ops.
21.28 **** Bundle
21.29+:PROPERTIES:
21.30+:ID: 9ec5d682-da8e-4d02-b2fc-a56a8f209c22
21.31+:END:
21.32 Collection data type, usually contains a set of packs with metadata.
21.33 **** PackyEndpoint
21.34+:PROPERTIES:
21.35+:ID: 8cf2658a-92d5-41ab-8630-4f4e6ddb140d
21.36+:END:
21.37 Represents a Packy instance bound to a UDP socket
21.38 **** PackyEndpointConfig
21.39+:PROPERTIES:
21.40+:ID: 421b8aaa-66e1-4883-937d-fc6705146998
21.41+:END:
21.42 Global endpoint configuration object
21.43 **** PackyClientConfig
21.44+:PROPERTIES:
21.45+:ID: c1899710-034e-4ed6-959a-1eb2df72e5f9
21.46+:END:
21.47 Configuration for outgoing packy connections on an endpoint
21.48 **** PackyServerConfig
21.49+:PROPERTIES:
21.50+:ID: 955e8ce9-ff7e-4f42-9d25-3aeb9846528b
21.51+:END:
21.52 Configuration for incoming packy connection son an endpoint
21.53 **** PackyConnection
21.54+:PROPERTIES:
21.55+:ID: 7075e0c8-65b3-4fbf-9a6b-f27017276a72
21.56+:END:
21.57 Packy connection object
21.58 *** Traits
21.59+:PROPERTIES:
21.60+:ID: ea92ad07-d12c-4ee8-a3d4-0955f0af3921
21.61+:END:
21.62 **** PackyClient
21.63+:PROPERTIES:
21.64+:ID: 6c0fdd7e-bc0a-4217-b315-72fe7766e4df
21.65+:END:
21.66 ***** query
21.67+:PROPERTIES:
21.68+:ID: 1358e1c5-b215-48eb-9e1b-4116cc32b2ae
21.69+:END:
21.70 ***** install
21.71+:PROPERTIES:
21.72+:ID: b8298207-4d92-4628-8687-9f4e20c8cfec
21.73+:END:
21.74 ***** update
21.75+:PROPERTIES:
21.76+:ID: a6fb4fb6-b188-4033-8291-107cf1f00e6d
21.77+:END:
21.78 ***** login
21.79+:PROPERTIES:
21.80+:ID: 1fd91c8b-ab90-4db0-b74e-1c2b9ae2e440
21.81+:END:
21.82 ***** logout
21.83+:PROPERTIES:
21.84+:ID: 75c0db2e-37cf-4f33-95bd-3f5c95b45c49
21.85+:END:
21.86 ***** pull
21.87+:PROPERTIES:
21.88+:ID: 60de92f4-b4a6-4cae-95bc-174e2036e57b
21.89+:END:
21.90 ***** push
21.91+:PROPERTIES:
21.92+:ID: e379b71e-8a84-4547-a694-90cad3b7952e
21.93+:END:
21.94 **** PackyServer
21.95+:PROPERTIES:
21.96+:ID: 73ea9478-5251-40c3-8331-cf042d0b9bf1
21.97+:END:
21.98 ***** start_packy_server
21.99+:PROPERTIES:
21.100+:ID: c8a9bac3-971a-45a7-988f-92db19ef6601
21.101+:END:
21.102 ***** stop_packy_server
21.103+:PROPERTIES:
21.104+:ID: e3122bf1-f770-46a7-a36b-2df9c48bc233
21.105+:END:
21.106 ***** start_packy_registry
21.107+:PROPERTIES:
21.108+:ID: b6d214f2-d6de-4d46-b2c2-c51ff0f3b3e6
21.109+:END:
21.110 **** PackyRegistry
21.111+:PROPERTIES:
21.112+:ID: 0e846cbb-5cb4-496f-8100-beae6e66972e
21.113+:END:
21.114 ***** register_pack
21.115+:PROPERTIES:
21.116+:ID: 764642ad-a33b-415b-9c32-8a729a7cd62d
21.117+:END:
21.118 ***** register_user
21.119+:PROPERTIES:
21.120+:ID: 2b92f584-d769-4266-940e-cfbd466d4e62
21.121+:END:
21.122 ***** register_bundle
21.123+:PROPERTIES:
21.124+:ID: 390cb42b-5170-4175-9ccc-b990842356a0
21.125+:END:
22.1--- a/20240325.org Sat Jul 27 02:45:34 2024 -0400
22.2+++ b/20240325.org Sun Aug 11 14:46:59 2024 -0400
22.3@@ -1,8 +1,7 @@
22.4 * TBD investigate alieneval for phash opps
22.5+:PROPERTIES:
22.6+:ID: 21ab0a6e-cb66-4c5e-9b10-4ac2340ce75d
22.7+:END:
22.8 :LOGBOOK:
22.9 - State "TBD" from [2024-03-25 Mon 18:56]
22.10 :END:
22.11-* TBD
22.12-:LOGBOOK:
22.13-- State "TBD" from [2024-03-25 Mon 18:57]
22.14-:END:
23.1--- a/20240419.org Sat Jul 27 02:45:34 2024 -0400
23.2+++ b/20240419.org Sun Aug 11 14:46:59 2024 -0400
23.3@@ -1,4 +1,7 @@
23.4 * How it works
23.5+:PROPERTIES:
23.6+:ID: 439a4945-de2f-4985-ba6c-fe6421aa9ad9
23.7+:END:
23.8 The backend services are written in Rust and controlled by a simple
23.9 messaging protocol. Services provide common runtime capabilities known
23.10 as the /service protocol/ but are specialized on a unique /service
23.11@@ -14,7 +17,13 @@
23.12 which also compiles to WASM (slint-rs).
23.13
23.14 * Guide
23.15+:PROPERTIES:
23.16+:ID: 65140d2c-5d59-48cd-946c-01c380a37f08
23.17+:END:
23.18 ** Build
23.19+:PROPERTIES:
23.20+:ID: ad0652ca-4abf-4d27-8897-a61a13a6e61d
23.21+:END:
23.22 - *install dependencies*
23.23 #+begin_src bash
23.24 ./tools/deps.sh
23.25@@ -26,27 +35,51 @@
23.26 - LISP :: Lisp (sbcl, cmucl, ccl)
23.27 - CFG :: Config (default.cfg)
23.28 ** Run
23.29+:PROPERTIES:
23.30+:ID: b2295442-ccb7-4a5c-8a9e-ea8502aad636
23.31+:END:
23.32 #+begin_src shell
23.33 ./demo -i
23.34 #+end_src
23.35 ** Config
23.36+:PROPERTIES:
23.37+:ID: 600be170-d032-4280-a7b5-c46e3c157206
23.38+:END:
23.39 Configs can be specified in JSON, TOML, RON, or of course SEXP. See
23.40 =default.cfg= for an example.
23.41 ** Play
23.42+:PROPERTIES:
23.43+:ID: 56a69ed7-2eb3-4490-95a1-072cee985df5
23.44+:END:
23.45 The high-level user interface is presented as a multi-modal GUI
23.46 application which adapts to the specific application /instances/
23.47 below.
23.48 *** Weather
23.49+:PROPERTIES:
23.50+:ID: 804a174b-534c-4a04-966a-b44c0a86fbd4
23.51+:END:
23.52 This backend retrieves weather data using the NWS API.
23.53 *** Stocks
23.54+:PROPERTIES:
23.55+:ID: 4e7339bb-aaf3-4fab-90e4-05e13f24f881
23.56+:END:
23.57 The 'Stocks' backend features a stock ticker with real-time analysis
23.58 capabilities.
23.59 *** Bench
23.60+:PROPERTIES:
23.61+:ID: e3cf0add-6ded-4c05-a05d-7ef463b85b08
23.62+:END:
23.63 This is a benchmark backend for testing the capabilities of our
23.64 demo. It spins up some mock services and allows fine-grained control
23.65 of input/throughput.
23.66 * tasks
23.67+:PROPERTIES:
23.68+:ID: a16a3807-0e06-4c8d-baf6-5dfa8f8f5585
23.69+:END:
23.70 ** TODO DSLs
23.71+:PROPERTIES:
23.72+:ID: 3ae4754e-0c0f-4923-9e53-ae962b8638a1
23.73+:END:
23.74 - consider tree-sitter parsing layout, use as a guide for developing a
23.75 single syntax which expands to Rust or C.
23.76 - with-rs
23.77@@ -55,31 +88,55 @@
23.78 - with-cargo
23.79 - compile-rs/c
23.80 *** TODO rs-macroexpand
23.81+:PROPERTIES:
23.82+:ID: f612975f-6bcc-4aab-b0d8-65b8ff0a0d0f
23.83+:END:
23.84 - rs-gen-file
23.85 - rs-defmacro
23.86 - rs-macros
23.87 - rs-macroexpand
23.88 - rs-macroexpand-1
23.89 *** TODO c-macroexpand
23.90+:PROPERTIES:
23.91+:ID: 49f5c224-026d-4cdc-a326-1742e64c4279
23.92+:END:
23.93 - c-gen-file h/c
23.94 - c-defmacro
23.95 - c-macros
23.96 - c-macroexpand
23.97 - c-macroexpand-1
23.98 *** TODO slint-macroexpand
23.99+:PROPERTIES:
23.100+:ID: 486beb12-179b-4acc-8507-cdc498edb628
23.101+:END:
23.102 - slint-gen-file
23.103 - slint-defmacro
23.104 - slint-macros
23.105 - slint-macroexpand
23.106 - slint-macroexpand-1
23.107 *** TODO html (using who)
23.108+:PROPERTIES:
23.109+:ID: 2e81a19c-874c-4fd7-be0f-f6cd62c660db
23.110+:END:
23.111 ** TODO web templates
23.112+:PROPERTIES:
23.113+:ID: 95f7d6ac-c010-4d1d-a47d-1693bb7d6eab
23.114+:END:
23.115 create a basic static page in CL which will be used to host Slint UIs
23.116 and other WASM doo-dads in a browser.
23.117 ** TODO CLI
23.118+:PROPERTIES:
23.119+:ID: fc1d5364-279c-4d5f-baea-ed2c110b63f0
23.120+:END:
23.121 using clingon, decide on generic options and write it up
23.122 ** TODO docs
23.123+:PROPERTIES:
23.124+:ID: 467e84e3-e72f-4764-8858-cc15fdc17e8a
23.125+:END:
23.126 work on doc generation -- Rust and CL should be accounted for.
23.127 ** TODO tests
23.128+:PROPERTIES:
23.129+:ID: 70aea01c-d01e-4ddf-aaf5-c86183a7e250
23.130+:END:
23.131 We have none! need to make it more comfy - set up testing in all Rust
23.132 crates and for the lisp systems.
24.1--- a/20240425.org Sat Jul 27 02:45:34 2024 -0400
24.2+++ b/20240425.org Sun Aug 11 14:46:59 2024 -0400
24.3@@ -1,1 +1,4 @@
24.4 * https://docs.gitlab.com/ee/administration/backup_restore/migrate_to_new_server.html
24.5+:PROPERTIES:
24.6+:ID: 264b81f4-f953-4698-9c82-d8e20b6c31f9
24.7+:END:
25.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
25.2+++ b/20240731.org Sun Aug 11 14:46:59 2024 -0400
25.3@@ -0,0 +1,11 @@
25.4+* alpine builders
25.5+:PROPERTIES:
25.6+:ID: 635925f6-e1d8-47bc-a32f-28bca0f19d2d
25.7+:END:
25.8+- make sure to apk add:
25.9+ - git, hg
25.10+ - clang
25.11+ - make
25.12+ - linux-headers
25.13+ - zstd-dev
25.14+ - libc-dev?
26.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
26.2+++ b/20240804.org Sun Aug 11 14:46:59 2024 -0400
26.3@@ -0,0 +1,8 @@
26.4+* bookmarks
26.5+:PROPERTIES:
26.6+:ID: 6e9c6bce-0513-4628-b6f9-5c234cccdaa3
26.7+:END:
26.8+- How should such objects be represented within CORE?
26.9+- skel/homer mostly
26.10+ - already have alias
26.11+- not sure about obj/otherwise, prob not
27.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
27.2+++ b/20240808.org Sun Aug 11 14:46:59 2024 -0400
27.3@@ -0,0 +1,12 @@
27.4+* Intelligent Design in Software
27.5+:PROPERTIES:
27.6+:ID: 1397d8bb-4848-4d9a-9dcc-ee65bed81c9e
27.7+:END:
27.8+- starting from a space where there are no external influences - a biome
27.9+- answer questions regarding the nature of the software and its capabilities
27.10+- incrementally adjust inter-dependencies
27.11+- optimize
27.12+- protect the biome at all costs
27.13+- focus on composition
27.14+- build applications
27.15+- re-integrate lessons learned
28.1--- a/demo-notes.org Sat Jul 27 02:45:34 2024 -0400
28.2+++ b/demo-notes.org Sun Aug 11 14:46:59 2024 -0400
28.3@@ -1,11 +1,23 @@
28.4 * ideas
28.5+:PROPERTIES:
28.6+:ID: 9b5624bb-f007-435d-86bb-bef449cdd088
28.7+:END:
28.8 ** use branches for separate levels of expansion
28.9+:PROPERTIES:
28.10+:ID: f806f14c-bd32-4e40-8577-4a85b459d9fd
28.11+:END:
28.12 - or perhaps some other VC feature.. although I don't want any
28.13 parallel to time, as if expansions occur in sequence. Thus things
28.14 like tags don't feel quite right.
28.15 * research
28.16+:PROPERTIES:
28.17+:ID: ea7be421-5cf6-410c-a9db-780e6a4404ac
28.18+:END:
28.19 for libraries, always prefer [[https://common-lisp-libraries.readthedocs.io/][defacto libs]]
28.20 ** [[https://github.com/screenshotbot/screenshotbot-oss][screenshotbot-oss]]
28.21+:PROPERTIES:
28.22+:ID: 72fedd7c-45a0-4739-873a-9cf666eecd85
28.23+:END:
28.24 - monolithic repo, includes third-party dependencies
28.25 - full quicklisp source
28.26 - asdf, etc
28.27@@ -13,29 +25,71 @@
28.28 - the repo is too heavy for my liking though
28.29 - I do like the idea of having many systems though
28.30 ** DB
28.31+:PROPERTIES:
28.32+:ID: a1aacfb1-6a12-4520-951f-b287f1117923
28.33+:END:
28.34 *** CLIENT
28.35+:PROPERTIES:
28.36+:ID: 64210280-8c8d-4cf3-867f-616083a76e18
28.37+:END:
28.38 **** [[https://github.com/fukamachi/mito][mito]]
28.39+:PROPERTIES:
28.40+:ID: fb0b87e2-ff06-4eb7-b7c4-f43dc6d6a538
28.41+:END:
28.42 ORM, sqlite, postgres, mysql support
28.43 **** [[https://github.com/fukamachi/cl-dbi][cl-dbi]]
28.44+:PROPERTIES:
28.45+:ID: e387a864-12d7-4691-a4d2-b0e4a6db027f
28.46+:END:
28.47 database independent interface
28.48 **** [[https://github.com/fukamachi/sxql][sxql]]
28.49+:PROPERTIES:
28.50+:ID: 276f0663-15d2-4331-9432-dec95ee57a4c
28.51+:END:
28.52 SQL generator
28.53 *** SERVICE
28.54+:PROPERTIES:
28.55+:ID: 66e6bcb1-fba3-418b-bc17-8f888a3f4f4a
28.56+:END:
28.57 **** [[https://github.com/launchbadge/sqlx][sqlx]]
28.58+:PROPERTIES:
28.59+:ID: 839a78e1-873b-4fe7-991e-0c1780d0840e
28.60+:END:
28.61 - supports rustls, tokio
28.62 - we should write the service queries using a common-lisp DSL!
28.63 #+begin_src toml
28.64 sqlx = { version = "0.7", features = [ "runtime-tokio", "tls-rustls", "any", "chrono" ] }
28.65 #+end_src
28.66 ** LOGGING
28.67+:PROPERTIES:
28.68+:ID: e87feb9d-67d8-409f-afc1-35e39edae80f
28.69+:END:
28.70 *** CLIENT
28.71+:PROPERTIES:
28.72+:ID: 762cb089-4f9f-4b5c-9e98-f2d57042da9b
28.73+:END:
28.74 **** [[https://github.com/sharplispers/log4cl/][log4cl]]
28.75+:PROPERTIES:
28.76+:ID: 97e2c6ce-155c-492b-8f8f-590147f85250
28.77+:END:
28.78 supports slime well
28.79 *** SERVICE
28.80+:PROPERTIES:
28.81+:ID: 57c4e64a-b661-4a53-b779-c5f1624eed1a
28.82+:END:
28.83 **** [[https://crates.io/crates/tracing][tracing]]
28.84+:PROPERTIES:
28.85+:ID: f9fd8886-8285-4264-916b-8a7e03a24e5e
28.86+:END:
28.87 **** [[https://crates.io/crates/tokio-console][tokio-console]] - monitoring tool
28.88+:PROPERTIES:
28.89+:ID: 45a5a757-cd3e-4fe2-ad66-bb0a3e5fdd05
28.90+:END:
28.91 works with tracing using the [[https://crates.io/crates/console-subscriber][console-subscriber]] crate
28.92 ** UI
28.93+:PROPERTIES:
28.94+:ID: 9789c081-93d1-4eab-b7b6-9089cf6de3ca
28.95+:END:
28.96 [[https://mcclim.common-lisp.dev/][mcclim]]
28.97 [[https://slint-ui.com/][slint-ui]]
28.98 [[https://github.com/rabbibotton/clog][clog]]
29.1--- a/inbox-notes.org Sat Jul 27 02:45:34 2024 -0400
29.2+++ b/inbox-notes.org Sun Aug 11 14:46:59 2024 -0400
29.3@@ -1,4 +1,7 @@
29.4 * roadmap
29.5+:PROPERTIES:
29.6+:ID: 01634e21-2d66-4e47-a060-c774b354b17d
29.7+:END:
29.8 I think roadmap should be product/management oriented. Agile
29.9 terminology applies and things are grouped into
29.10 sprints/trains/PIs/etc. There's really no need for that currently at
29.11@@ -14,31 +17,61 @@
29.12 #+end_src
29.13
29.14 * Inbox Architecture
29.15+:PROPERTIES:
29.16+:ID: 5da80539-43a4-4977-a4a2-f51b142d74e3
29.17+:END:
29.18
29.19 * Inbox Metadata
29.20+:PROPERTIES:
29.21+:ID: 70c8688f-9941-4c3c-a486-60cf0333a263
29.22+:END:
29.23 ** Tags
29.24+:PROPERTIES:
29.25+:ID: febf20bf-7626-4730-9ecb-5b2086e05ba4
29.26+:END:
29.27 Pandora's box. I guess we should make use of decorators/capitalization
29.28 for significant tags, and the rest are user-defined.
29.29 ** IDs
29.30+:PROPERTIES:
29.31+:ID: 16265000-164a-41cb-8aa0-dcc61bf16b9c
29.32+:END:
29.33 Not entirely commited to uuid, but maybe it makes the most sense to
29.34 use the timestamp one.
29.35 ** Status
29.36+:PROPERTIES:
29.37+:ID: 0e24d4ec-294d-4cca-b640-119c7fd1175e
29.38+:END:
29.39 A Status should be applied to tasks only.
29.40
29.41 We need a significant number of 'in progress' types, but each
29.42 completed task will start as TODO and end up at DONE.
29.43 ** Dates
29.44+:PROPERTIES:
29.45+:ID: f134a4b4-64b5-4492-a5e0-18673f7b0c52
29.46+:END:
29.47 Deadline,Scheduled,DATE property,LOGBOOK
29.48 ** Log
29.49+:PROPERTIES:
29.50+:ID: f3a4440c-a186-40e1-80be-b311100ffe63
29.51+:END:
29.52 The logbook should be used to record progress throughout the lifetime
29.53 of an item.
29.54 ** Description
29.55+:PROPERTIES:
29.56+:ID: 82b15096-474a-4913-93ab-eeb28ff998d9
29.57+:END:
29.58 Descriptions can be blank, but tasks in need of review require a
29.59 description.
29.60 ** Properties
29.61+:PROPERTIES:
29.62+:ID: c2f6ac27-4f7b-4839-b6be-c3f96adf0b6a
29.63+:END:
29.64 - Effort
29.65 - Category
29.66 ** Links
29.67+:PROPERTIES:
29.68+:ID: 1c39c531-d4ba-407e-a54a-5ee4ad22ea42
29.69+:END:
29.70 I don't think we need org-roam for this? TBD. The thing is that I want
29.71 link data to end up in a set of rocksdb instances instead of sqlite.
29.72
29.73@@ -51,6 +84,9 @@
29.74 Note there's no forward references.
29.75
29.76 * Notifications
29.77+:PROPERTIES:
29.78+:ID: 8c101baa-e3ee-4982-986b-b6b9854eb25e
29.79+:END:
29.80 discord bot?
29.81 prob use rust, parse json or something
29.82
30.1--- a/nas-t.org Sat Jul 27 02:45:34 2024 -0400
30.2+++ b/nas-t.org Sun Aug 11 14:46:59 2024 -0400
30.3@@ -1,6 +1,12 @@
30.4 #+BIBLIOGRAPHY: refs.bib
30.5 * File Systems
30.6+:PROPERTIES:
30.7+:ID: 29f7085e-53a3-4d70-90a7-e3437ee99775
30.8+:END:
30.9 ** BTRFS
30.10+:PROPERTIES:
30.11+:ID: 3e7bb82e-7dae-476a-8ed0-18c361c9bd1b
30.12+:END:
30.13 #+begin_quote
30.14 BTRFS is a Linux filesystem based on copy-on-write, allowing for
30.15 efficient snapshots and clones.
30.16@@ -28,6 +34,9 @@
30.17 #+end_quote
30.18 -- [cite/t/f:@btrfs]
30.19 *** [2023-08-08 Tue] btrfs performance speculation ::
30.20+:PROPERTIES:
30.21+:ID: 2b662144-97b2-4736-a8fc-bc8f861b9829
30.22+:END:
30.23 - [[https://www.percona.com/blog/taking-a-look-at-btrfs-for-mysql/]]
30.24 - zfs outperforms immensely, but potential misconfiguration on btrfs side (virt+cow
30.25 still enabled?)
30.26@@ -69,9 +78,15 @@
30.27 - btrfs continues to show improvements in the linux kernel, ironing out the kinks
30.28 - makes it hard to compare benchmarks tho :/
30.29 *** MacOS support
30.30+:PROPERTIES:
30.31+:ID: 9ddb1caf-014a-4d0f-972e-82028e8be286
30.32+:END:
30.33 - see this WIP k-ext for macos: [[https://github.com/relalis/macos-btrfs][macos-btrfs]]
30.34 - maybe we can help out with the VFS/mount support
30.35 *** on-disk format
30.36+:PROPERTIES:
30.37+:ID: 7535f844-330b-4f9c-b2a1-4578d64acbf7
30.38+:END:
30.39 - [[https://btrfs.readthedocs.io/en/latest/dev/On-disk-format.html][on-disk-format]]
30.40 - 'btrfs consists entirely of several trees. the trees use copy-on-write.'
30.41 - trees are stored in nodes which belong to a level in the b-tree structure.
30.42@@ -113,6 +128,9 @@
30.43 - free ids: BTRFS_FIRST_FREE_OBJECTID=256ULL:BTRFS_LAST_FREE_OBJECTID=-256ULL
30.44 - otherwise used for internal use
30.45 *** send-stream format
30.46+:PROPERTIES:
30.47+:ID: 1d1a6211-c91f-48ae-8113-0ddada286cee
30.48+:END:
30.49 - [[https://btrfs.readthedocs.io/en/latest/dev/dev-send-stream.html][send stream format]]
30.50 - Send stream format represents a linear sequence of commands describing actions to be
30.51 performed on the target filesystem (receive side), created on the source filesystem
30.52@@ -132,35 +150,68 @@
30.53 - the v2 protocol supports the encoded commands
30.54 - the commands are kinda clunky - need to MKFIL/MKDIR then RENAM to create
30.55 *** [2023-08-09 Wed] ioctls
30.56+:PROPERTIES:
30.57+:ID: be04dc90-86a6-46c5-9dcf-25519ebed34d
30.58+:END:
30.59 - magic#: 0x94
30.60 - https://docs.kernel.org/userspace-api/ioctl/ioctl-number.html
30.61 - Btrfs filesystem some lifted to vfs/generic
30.62 - fs/btrfs/ioctl.h and linux/fs.h
30.63 ** ZFS
30.64+:PROPERTIES:
30.65+:ID: 219cb1b5-7dff-4800-8ad0-2a19309a9e9f
30.66+:END:
30.67 -- [cite/t/f:@zfs]
30.68
30.69 - core component of TrueNAS software
30.70 ** TMPFS
30.71+:PROPERTIES:
30.72+:ID: f2167ca1-f751-4ee3-a398-4cf7fff6b57c
30.73+:END:
30.74 -- [cite/t/f:@tmpfs]
30.75 - in-mem FS
30.76 ** EXT4
30.77+:PROPERTIES:
30.78+:ID: 698fb02f-dc73-40be-8bac-0af3a03c39c6
30.79+:END:
30.80 -- [cite/t/f:@ext4]
30.81 ** XFS
30.82+:PROPERTIES:
30.83+:ID: 8c6cf1e4-1555-4270-a101-40b6fbb0a1f9
30.84+:END:
30.85 -- [cite/t/f:@xfs]
30.86 -- [cite/t/f:@xfs-scalability]
30.87 * Storage Mediums
30.88+:PROPERTIES:
30.89+:ID: e3701458-b333-44e3-b6f2-12861d6287ed
30.90+:END:
30.91 ** HDD
30.92+:PROPERTIES:
30.93+:ID: dfe51b59-5f9d-4e7d-86f1-27e51453ae1f
30.94+:END:
30.95 -- [cite/t/f:@hd-failure-ml]
30.96 ** SSD
30.97+:PROPERTIES:
30.98+:ID: 9c9a5470-d0c2-49f1-9dc9-d0d62c841a19
30.99+:END:
30.100 -- [cite/t/f:@smart-ssd-qp]
30.101 -- [cite/t/f:@ssd-perf-opt]
30.102
30.103 ** Flash
30.104+:PROPERTIES:
30.105+:ID: 1414bda3-7fae-4fe0-ae65-8a5ed05ad822
30.106+:END:
30.107 -- [cite/t/f:@flash-openssd-systems]
30.108 ** NVMe
30.109+:PROPERTIES:
30.110+:ID: 95e44402-9235-4b4b-a772-b91d78e38a6b
30.111+:END:
30.112 -- [cite/t/f:@nvme-ssd-ux]
30.113 -- [[https://nvmexpress.org/specifications/][specifications]]
30.114 *** ZNS
30.115+:PROPERTIES:
30.116+:ID: 5639429c-1c9d-4cf0-b69c-cc45528cac50
30.117+:END:
30.118 -- [cite/t/f:@zns-usenix]
30.119 #+begin_quote
30.120 Zoned Storage is an open source, standards-based initiative to enable data centers to
30.121@@ -171,64 +222,163 @@
30.122 -- [[https://zonedstorage.io/][zonedstorage.io]]
30.123 -- $465 8tb 2.5"? [[https://www.serversupply.com/SSD/PCI-E/7.68TB/WESTERN%20DIGITAL/WUS4BB076D7P3E3_332270.htm][retail]]
30.124 ** eMMC
30.125+:PROPERTIES:
30.126+:ID: b8539369-0e0f-4f23-be8f-cd38be031bac
30.127+:END:
30.128 -- [cite/t/f:@emmc-mobile-io]
30.129 * Linux
30.130+:PROPERTIES:
30.131+:ID: b244015e-f3e2-4837-8186-a2f5edef1f14
30.132+:END:
30.133 ** syscalls
30.134+:PROPERTIES:
30.135+:ID: 935f67e0-eef6-4913-9dcc-8530129be37c
30.136+:END:
30.137 *** ioctl
30.138+:PROPERTIES:
30.139+:ID: 134d256a-f7b3-4603-846c-b6c9bad2d708
30.140+:END:
30.141 - [[https://elixir.bootlin.com/linux/latest/source/Documentation/userspace-api/ioctl/ioctl-number.rst][ioctl-numbers]]
30.142 * Rust
30.143+:PROPERTIES:
30.144+:ID: a3b9e17a-75a6-4aca-bf96-b713bc2ded43
30.145+:END:
30.146 ** crates
30.147+:PROPERTIES:
30.148+:ID: 4e7e4fb5-55f7-4036-b568-b84cefa45de8
30.149+:END:
30.150 *** nix
30.151+:PROPERTIES:
30.152+:ID: 861e5180-14b4-47c9-a779-fe25c0428d7e
30.153+:END:
30.154 - [[https://crates.io/crates/nix][crates.io]]
30.155 *** memmap2
30.156+:PROPERTIES:
30.157+:ID: 320428ab-2d0f-4390-978f-c89907f8d0f4
30.158+:END:
30.159 - [[https://crates.io/crates/memmap2][crates.io]]
30.160 *** zstd
30.161+:PROPERTIES:
30.162+:ID: 1cf1597d-2f42-4b92-b8fc-a88c649f7cbf
30.163+:END:
30.164 - [[https://crates.io/crates/zstd][crates.io]]
30.165 *** rocksdb
30.166+:PROPERTIES:
30.167+:ID: 1f8fae07-2fbb-4a35-8269-ea436f846193
30.168+:END:
30.169 - [[https://crates.io/crates/rocksdb][crates.io]]
30.170 *** tokio :tokio:
30.171+:PROPERTIES:
30.172+:ID: ec55c0e1-7862-4f05-a6ee-b59ffc68a8ff
30.173+:END:
30.174 - [[https://crates.io/crates/tokio][crates.io]]
30.175 *** tracing :tokio:
30.176+:PROPERTIES:
30.177+:ID: bcf1904b-184e-4cae-86e7-5fcf57762944
30.178+:END:
30.179 - [[https://crates.io/crates/tracing][crates.io]]
30.180 **** tracing-subscriber
30.181+:PROPERTIES:
30.182+:ID: 85f6ed51-f3f3-489c-911a-e90c4974048e
30.183+:END:
30.184 - [[https://crates.io/crates/tracing-subscriber][crates.io]]
30.185 *** axum :tokio:
30.186+:PROPERTIES:
30.187+:ID: 29e0fb8d-e35a-4e47-9b11-45cc4019e2db
30.188+:END:
30.189 - [[https://crates.io/crates/axum][crates.io]]
30.190 *** tower :tokio:
30.191+:PROPERTIES:
30.192+:ID: 8e5a71ed-85d6-4562-be3a-9261ab376a0e
30.193+:END:
30.194 - [[https://crates.io/crates/tower][crates.io]]
30.195 *** uuid
30.196+:PROPERTIES:
30.197+:ID: f6f24187-53b1-408e-b3ac-a101c9ba3040
30.198+:END:
30.199 - [[https://crates.io/crates/uuid][crates.io]]
30.200 ** unstable
30.201+:PROPERTIES:
30.202+:ID: c09c812a-e884-4a28-ac4b-4f997ad2e932
30.203+:END:
30.204 *** lazy_cell
30.205+:PROPERTIES:
30.206+:ID: 990d862d-80b1-4620-aa6a-d5e1a2c23517
30.207+:END:
30.208 - [[https://github.com/rust-lang/rust/issues/109736][tracking-issue]]
30.209 *** {BTreeMap,BTreeSet}::extract_if
30.210+:PROPERTIES:
30.211+:ID: 15bcf475-336a-4ed0-9b1d-921414c4ff9a
30.212+:END:
30.213 - [[https://github.com/rust-lang/rust/issues/70530][tracking-issue]]
30.214 * Lisp
30.215+:PROPERTIES:
30.216+:ID: 5aac7727-f53a-4414-9d6b-2cb50fb45c87
30.217+:END:
30.218 ** ASDF
30.219+:PROPERTIES:
30.220+:ID: 043ab5da-6f3f-47ee-b9cf-ba8f0c7bb87c
30.221+:END:
30.222 - [[https://gitlab.common-lisp.net/asdf/asdf][gitlab.common-lisp.net]]
30.223 - [[https://asdf.common-lisp.dev/][common-lisp.dev]]
30.224 - [[https://github.com/fare/asdf/blob/master/doc/best_practices.md][best-practices]]
30.225 - includes UIOP
30.226 ** Reference Projects
30.227+:PROPERTIES:
30.228+:ID: f25d3c51-7338-484c-9068-31c1a4c7a565
30.229+:END:
30.230 *** StumpWM
30.231+:PROPERTIES:
30.232+:ID: 23dcbfef-b703-4dc5-a60a-9f2be66e32f2
30.233+:END:
30.234 - [[https://github.com/stumpwm/stumpwm][github]]
30.235 *** Nyxt
30.236+:PROPERTIES:
30.237+:ID: bfbb355d-2b09-4450-b39a-368a5f685d77
30.238+:END:
30.239 - [[https://github.com/atlas-engineer/nyxt][github]]
30.240 *** Kons-9
30.241+:PROPERTIES:
30.242+:ID: 19929b73-2a4c-43f1-b04c-ec88dfa209bd
30.243+:END:
30.244 - [[https://github.com/kaveh808/kons-9][github]]
30.245 *** cl-torrents
30.246+:PROPERTIES:
30.247+:ID: 935dbb0f-2f04-46c1-b250-48dea359398d
30.248+:END:
30.249 - [[https://github.com/vindarel/cl-torrents][github]]
30.250 *** Mezzano
30.251+:PROPERTIES:
30.252+:ID: 2da96a46-f71c-436a-ab60-8f2a30469b15
30.253+:END:
30.254 - [[https://github.com/froggey/Mezzano][github]]
30.255 *** yalo
30.256+:PROPERTIES:
30.257+:ID: 38459f44-90e3-4fcc-a829-27c60e28b2cd
30.258+:END:
30.259 - [[https://github.com/whily/yalo][github]]
30.260 *** cl-ledger
30.261+:PROPERTIES:
30.262+:ID: d2835614-461c-4bdd-8f25-a055b51797f4
30.263+:END:
30.264 - [[https://github.com/ledger/cl-ledger][github]]
30.265 *** Lem
30.266+:PROPERTIES:
30.267+:ID: 8aa32222-31a9-4dc5-999c-7f10a9649d9f
30.268+:END:
30.269 - [[https://github.com/lem-project/lem][github]]
30.270 *** kindista
30.271+:PROPERTIES:
30.272+:ID: 977ccbf4-ca2f-466b-9420-105df90cfcdc
30.273+:END:
30.274 - [[https://github.com/kindista/kindista][github]]
30.275 *** lisp-chat
30.276+:PROPERTIES:
30.277+:ID: c745e1c8-a675-4cfe-bb7f-30916b9198dd
30.278+:END:
30.279 - [[https://github.com/ryukinix/lisp-chat][github]]
30.280 * Refs
30.281+:PROPERTIES:
30.282+:ID: 9a03c3b2-e9b6-4ab8-a1c5-3517374afbf0
30.283+:END:
30.284 #+print_bibliography:
31.1--- a/parquet-parsing.org Sat Jul 27 02:45:34 2024 -0400
31.2+++ b/parquet-parsing.org Sun Aug 11 14:46:59 2024 -0400
31.3@@ -1,9 +1,15 @@
31.4 * DAT/PARQUET
31.5+:PROPERTIES:
31.6+:ID: 657a645b-0fad-4f95-a022-cd837ce188d6
31.7+:END:
31.8 https://github.com/apache/parquet-format
31.9 https://github.com/apache/parquet-format/blob/master/src/main/thrift/parquet.thrift
31.10 https://github.com/apache/parquet-testing
31.11 https://github.com/apache/parquet-java
31.12 ** glossary
31.13+:PROPERTIES:
31.14+:ID: e71f388c-9ed1-4862-8890-7f74271e8df0
31.15+:END:
31.16 - block :: same as HDFS block
31.17 - file :: file metadata is required, data is not
31.18 - row-group :: a logical horizontal partitioning of the data into
31.19@@ -17,6 +23,9 @@
31.20 column chunk per column. Column chunks contain one or more pages.
31.21
31.22 ** format summary
31.23+:PROPERTIES:
31.24+:ID: ae54516c-c8a8-49f8-aac6-a95c18f5de8e
31.25+:END:
31.26 #+begin_example
31.27 4-byte magic number "PAR1"
31.28 <Column 1 Chunk 1>
32.1--- a/q-notes.org Sat Jul 27 02:45:34 2024 -0400
32.2+++ b/q-notes.org Sun Aug 11 14:46:59 2024 -0400
32.3@@ -1,4 +1,7 @@
32.4 * Queries
32.5+:PROPERTIES:
32.6+:ID: dc72ef46-a048-4e55-a9bd-3da2c93f84a8
32.7+:END:
32.8 Q --- Query languages
32.9
32.10 EQL = Event Query Language
33.1--- a/query-lang.org Sat Jul 27 02:45:34 2024 -0400
33.2+++ b/query-lang.org Sun Aug 11 14:46:59 2024 -0400
33.3@@ -1,4 +1,7 @@
33.4 * query langs
33.5+:PROPERTIES:
33.6+:ID: 44a015b3-9f25-4909-a61f-daa21a6baa6c
33.7+:END:
33.8 Queries are extremely important in software development and having a
33.9 robust query engine is a must for CC.
33.10
34.1--- a/skel-readme.org Sat Jul 27 02:45:34 2024 -0400
34.2+++ b/skel-readme.org Sun Aug 11 14:46:59 2024 -0400
34.3@@ -1,5 +1,11 @@
34.4 * Mock Skel Readme
34.5+:PROPERTIES:
34.6+:ID: a072a011-0808-490b-b4ee-c665f68e4033
34.7+:END:
34.8 ** Overview
34.9+:PROPERTIES:
34.10+:ID: 2ab70bb9-4f1e-4ba2-ad72-b2a32dacbd5b
34.11+:END:
34.12 + status :: WIP
34.13 + forge :: [[https://lab.rwest.io/ellis/skel][Heptapod]]
34.14 + mirror :: [[https://github.com/richardwesthaver/skel][Github]]
34.15@@ -9,15 +15,24 @@
34.16 system/. It is specifically for my software stack.
34.17
34.18 *** Goals
34.19+:PROPERTIES:
34.20+:ID: 7881a92f-7406-4862-bf89-39970731f37d
34.21+:END:
34.22 - vaporize boilerplate code and docs
34.23 - integrate reasonably well with my tools (Emacs/etc)
34.24 - object-oriented project management
34.25 *** Resources
34.26+:PROPERTIES:
34.27+:ID: d0dd3e94-8c9e-4eac-847e-33a039beadbe
34.28+:END:
34.29 - [[https://www.gnu.org/software/emacs/manual/html_node/autotype/Skeleton-Language.html][skeleton-lanaguage (emacs)]]
34.30 - [[https://github.com/emacs-mirror/emacs/tree/master/lisp/cedet/ede][cedet/ede (emacs)]]
34.31 - [[https://www.gnu.org/software/make/manual/make.html][GNU make]]
34.32 - [[https://docs.factorcode.org/content/article-vocabularies.html][Factor (forth) definitions]]
34.33 ** Quickstart
34.34+:PROPERTIES:
34.35+:ID: 183bbf4c-bb3c-44f6-a4c1-49c548e0eab2
34.36+:END:
34.37 Make sure you have sbcl installed:
34.38 #+begin_src shell :results pp :eval never
34.39 sbcl --version
34.40@@ -123,6 +138,9 @@
34.41 omit them in a skelfile.
34.42
34.43 *** describe
34.44+:PROPERTIES:
34.45+:ID: 9ae1fe7b-c373-4101-88d3-439793eb38f3
34.46+:END:
34.47 The =describe= command can be used to check the currently active
34.48 skelfile, printing any errors and the parsed object.
34.49
34.50@@ -158,6 +176,9 @@
34.51 #+end_example
34.52
34.53 *** TODO compile
34.54+:PROPERTIES:
34.55+:ID: e43b7a81-c2f9-4dc9-8a09-66259602f91b
34.56+:END:
34.57 Skelfiles can be compiled to produce a new project skeleton or update
34.58 an existing one.
34.59
34.60@@ -190,7 +211,13 @@
34.61 #+end_src
34.62
34.63 ** Examples
34.64+:PROPERTIES:
34.65+:ID: 61959899-98ec-4ee2-a862-7544674ffc7a
34.66+:END:
34.67 *** Default
34.68+:PROPERTIES:
34.69+:ID: b9e5324c-059d-4416-a19a-3e5ffbac554e
34.70+:END:
34.71 When you run =skel init= this is the basic skelfile that will be
34.72 generated in the current directory, depending on the following
34.73 contexts:
34.74@@ -204,8 +231,17 @@
34.75 :name "examples"
34.76 #+end_src
34.77 *** Imports
34.78+:PROPERTIES:
34.79+:ID: c7e2d0d9-8b0e-428d-aeb5-1b1447e2a1ed
34.80+:END:
34.81 *** Multi
34.82+:PROPERTIES:
34.83+:ID: d6b6bbff-7713-4f2c-9dc8-b8331497b5b4
34.84+:END:
34.85 ** Tests
34.86+:PROPERTIES:
34.87+:ID: 37821915-2584-4303-a929-3cf25727fa1b
34.88+:END:
34.89 The unit tests may also be a useful reference:
34.90
34.91 #+begin_src lisp :results output replace :wrap src lisp :eval never :package :skel.tests
34.92@@ -241,6 +277,9 @@
34.93 #+end_src
34.94
34.95 ** API
34.96+:PROPERTIES:
34.97+:ID: ae46b723-6d1e-4855-9ec1-ad0eb7093960
34.98+:END:
34.99 - TODO :: CLOS-based core classes
34.100 - TODO :: EIEIO-based wrapper classes
34.101