leontrolski
SI Units for Astronauts
I've experimented (see below) with TEMPLATE dbs and such in Python (with inspiration from this library). IMHO the "around 100ms" mark is pretty slow for a big test suite. Interestingly, pg_restore is only twice as slow as TEMPLATEs.
https://github.com/leontrolski/postgresql-testing
I'd be interested about how all this compares to snapshotting the postrgres dir with ZFS and restoring to that, but don't have a Linux box to hand.
Pip install Postgres – no Docker/Brew/apt
Prism: An Impure Functional Language with Typed Effects
I'm trying to compress recipes into little schematics https://leontrolski.github.io/recipes.html
cat = Cat(age=3)
l = [1, [2, cat], 4]
alt l[1][1].age.=9
That would give us l equal to: [1, [2, Cat(age=9)], 4] l[1][1].age:9
# (1,(2,{"age":9}),4)
How come it doesn't return just: {"age":9}
Or is there something totally different going on with references here? As in, how is this different to: l_inner = l[1][1]
l_inner.age:9Generalised plusequals
"Disregard That" Attacks
Currently it feels a bit like everyone is talking about what new editor they're using. I don't care about that type of developer tooling very much. AI isn't coming up with some exciting new database, type system, etc etc.
"Look at how I'm able to web dev x% faster" because of LLMs is boring.
Aldo's Game of Music
National Raisin Reserve
I 3D printed a running buggy
Using Python 3.14 template strings to write Python
> Pascal did not have sum types because Wirth thought they were less flexible than untagged unions
I'm not sure whether my dream language would have tagged or untagged unions (Scala 3 has both it seems). I'd be interested if anyone has any further points of comparison beyond:
Tagged unions, eg. in Rust: enum Tagged {A(i64), B(String), C(f64)} Untagged unions, eg. in typed Python: Tagged = int | str | float
Tagged unions are better as you can represent duplicated types and types with no data, eg: enum Tagged {A, B(f64), C(f64)}
Untagged unions are better as you can willy nilly create new subsets and intersections of types. I find often in AST-ish work I want to express eg: def f(x: A | B | C) -> A | B
Cheeky Python Shell Script
In my linked example, on getting the item from the queue, you immediately set the status to something that you're not polling for - does Postgres still have to skip past these tuples (even in an index) until they're vacuumed up?
Wasn't aware of this AccessExclusiveLock behaviour - a reminder (and shameless plug 2) of how Postgres locks interact: https://leontrolski.github.io/pglockpy.html