Writing a .NET Garbage Collector in C# – Part 1
First part of a series of articles about writing a .NET Garbage Collector in C# using NativeAOT. This part sets the expectations and setups the project, dealing with the first difficulties.
The latest blog posts to take off on Hacker News. 1,748 posts.
First part of a series of articles about writing a .NET Garbage Collector in C# using NativeAOT. This part sets the expectations and setups the project, dealing with the first difficulties.
What is new in Emacs 30.1? I go through every change in the NEWS file and talk about the most interesting and useful changes.
Recently I encountered a bug so cute that I immediately knew that I will want to share it on my blog. It was one of those bugs that even Rust can’t save you from. It occurred in HyperQueue (HQ), a distributed task scheduler written in Rust that I work on.
Take a look at these two QR codes. Scan them if you like, I promise there's nothing dodgy in them. Left is upper-case HTTPS://EDENT.TEL/ and right is lower-case https://edent.tel/ You can clearly see that the one on the left is a "smaller" QR as it has fewer bits of data in it. Both go to the same URl, the only…
There's a cute math puzzle that can be interesting to folks on very different levels:
Notes on using the Z3 constraint solver with the Clang Static Analyzer
I released version 1 of my table seating planning software, PerfectTablePlan, in February 2005. 20 years ago this month. It was a different world. A world of Windows, shareware and CDs. A lot has c…
TLDR: I wanted to generate an up-to-date disk image for a Rock Pi 4 using Yocto that included CUPS and Docker to both get a better understanding of Yocto …
An old tool endures in a Next.js world
Ever wondered why you need the underscore in target="_blank" to open a link in a new tab?
Have you ever wondered how a compiler works, but you never found courage to find out? Then this series of articles is for you. I have never had the chance to look under the hood either, but one week-end I have decided to to write a translator from the esoteric programming language wend (short for week-end), which I…
How are Rust, C++, and Python trending on Hacker News in the job market? As a proxy measure for programming language trends, let’s analyze the frequency of programming language mentions in the mont…
In the previous posts, we've explored the SQLite file format and built a simple SQL parser. It's time to put these pieces together and implement a query…
Or four kinds, or six kinds, I'm not picky about how you count them
With Typst 0.13, we wanted to improve the day-to-day experience of using Typst. We fixed some of the most long-standing bugs and made Typst even more flexible to...
I’m adding immutable vectors to my language, Ivan, and needed to pick a suitable data structure to implement them. Clojure uses Persistent Vectors (PVs) which support lookups, updates, and appends all in ‘effectively’ constant time. However, it doesn’t have efficient insert or merge operations. Relaxed Radix Balanced…
Hi, welcome to my website! This is where I share my thoughts on things that interest me, mostly tech, philosophy, history, and math.
Finally sitting down to learn Rust and how to write parsers.
Yes, probably.
A detailed walkthrough of my current workflow for using LLms to build software, from brainstorming through planning and execution.
I always told people memory is cheap, black magic is OK and efficiency doesn't matter, but I was wrong.
This is a personal pick of the most interesting projects, tools, libraries and articles that popped-up in Common Lisp land in the last two years.Newcomers might not realize how the Common Lisp ecosystem, though stable in many ways, actually evolves, sharpens, tries new solutions, proposes new tools, ships new…
Last year, I urged furries to stop using Telegram because it doesn’t actually provide them with any of the privacy guarantees they think it gives them. Instead of improving Telegram’s c…
Recently I was called on to explain the ‘XOR’ operator to somebody who vaguely knew of its existence, but didn’t have a good intuition for what it was useful for and how it behaved.