changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > org > notes / 20231024.org

changeset 4: 812feca5a874
parent: 04e86b94ef1a
child: 4839b0675118
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 16 Jun 2024 01:14:25 -0400
permissions: -rw-r--r--
description: clean
1 * virt
2 ** QEMU
3 ** KVM
4 ** Hyper-V
5 ** Firecracker
6 ** Docker
7 ** Vagrant
8 ** LXC
9 ** LXD
10 ** containerd
11 ** systemd-nspawn
12 ** VirtualBox
13 
14 * Concatenative
15 ** Factor :factor:
16 - [2023-07-04 Tue]
17  Factor is a cool concatenative lang but unfortunately the C interface
18  (vm/master.h) no longer exists on the master branch.
19 ** Joy :joy:
20 
21 *** https://hypercubed.github.io/joy/html/j02maf.html
22 
23 *** [[https://builds.openlogicproject.org/content/incompleteness/arithmetization-syntax/arithmetization-syntax.pdf][arithmetization of syntax]]
24 * Lisp :lisp:
25 These notes pertain to Lisp. More specifically, ANSI Common Lisp in
26 most places.
27 
28 - https://github.com/lispnik/iup/ - doesn't support MacOS yet, looks
29  cool though
30  - what we really need is wasm compiler.. TBD
31 * Rust
32 ** Serde
33 - [2023-07-05 Wed] \\
34  important part of the Rust ecosystem, another dtolnay
35  contribution. If you want to program a /data/ format in the Rust
36  ecosystem, this is how you do it.
37 
38  The way it works is that you define some special structs, a
39  Serializer and a Deserializer which implement the Serialize and
40  Deserialize traits provided by serde, respectively.
41 
42  You can use these structs to provide your public API. The
43  conventional choice is public top-level functions like from-str
44  and to-string. That's it, your serialization library can now read and
45  write your data format as Rust data types.
46 
47  [[https://serde.rs/enum-representations.html][enum-representations]]
48  - the default behavior is an externally tagged representation (verbose)
49 
50  The docs use strings as core IO when implementing a custom format,
51  but the convention is to implement for T where T is bound by std::io
52  Read or Write trait. Then you can provide a more robust public API
53  (from_bytes, from_writer, etc).
54 * C
55 * CPP
56 * Nu
57 [[https://www.nushell.sh/][~]]
58 [[https://www.nushell.sh/cookbook/][cookbook]]
59 [[https://github.com/nushell/nu_scripts][nu_scripts]]