New article!
verdagon.dev/blog/impossible…
"The Impossible Optimization, and the Metaprogramming To Achieve It"
TL;DR: If you warp your mind a bit, you can apply metaprogramming to speed up your code by about ~10x.
Enjoy!
Just posted a new article! verdagon.dev/blog/group-borr…
"Group Borrowing: Zero-Cost Memory Safety with Fewer Restrictions"
TL;DR: Nick Smith's epic approach to better borrow checking. Take a look!
I *really* went off the deep end on this one. But it works, and in theory we can now build on top Rust's ecosystem!
verdagon.dev/blog/exploring-…
"Crossing the Impossible FFI Boundary, and My Gradual Descent Into Madness"
Pretty proud of this technique! (though I'm not the first to find it)
verdagon.dev/blog/llm-throug…
Basically, batching layer-wise inferencing from disk, which means we can run large LLMs on tiny devices without losing throughput.
Behold! Higher RAII, and the Seven Arcane Uses of Linear Types: verdagon.dev/blog/higher-rai…
It turns out, you unlock pretty sorcerous powers when you make it so only specific functions can destroy a certain type.
Also, it's very weird that a language could help with caching.
New article! "Borrow checking, RC, GC, and the Eleven (!) Other Memory Safety Approaches"
verdagon.dev/grimoire/grimoi…
I'm starting to sense a theme in my articles: a lot of archaeology metaphors. Hopefully nobody notices!
Had a ton of fun talking linear types, regions, and Vale with @krisajenkins (of Developer Voices), always enjoy geeking out with fellow programmers about the weird directions programming can go!
youtube.com/watch?v=UavYVf0U…
At long last, the first prototype of immutable region borrowing in Vale! verdagon.dev/blog/first-regi…
This technique removes Vale's memory safety overhead by making borrowing and shared mutability work well together.
It turns out, there's a few ways we can make C memory-safe, if we blend some obscure techniques.
Blend #1: Vale's gen refs / constraint refs plus Val-style borrowing. I go into it in verdagon.dev/blog/vale-memor….
(If only we had something from Vala too, we'd have the whole set!)
Blend #4, though I'm a tad unsure on this one. Something along the lines of the "MMM " in verdagon.dev/blog/when-to-us… with pieces from the theoretical Arrrlang, at verdagon.dev/blog/myth-zero-….
Basically, allocating from static type-specific arrays, like embedded code often does.