Trying Out Rye
The catch in the Rye.
Topics /
The most popular blog posts about software engineering on Hacker News. 14,544 posts.
The catch in the Rye.
Many people, including myself, have implemented garbage collection (GC)libraries for Rust. Manish Goregaokar wrote up a fantastic survey of thisspace a few y...
*This post has been significantly updated since it was originally written. The most recent update was in September 2026; a …
Last week I noticed some unexpected assembly code in a function calling std::unordered_map::find (yes, I know, friends don’t let friends use STL, but that is a topic for another discussion). I decided to investigate a bit and it turned out to be quite a journey. It was a Clang compiler, ARM-based platform, I will use…
To write a program to check if an integer is a power of two, you could follow two basic strategies: check the number based on its decimal value, or check it based on its binary representation. The former approach is more human-friendly but generally less efficient; the latter approach is more machine-friendly but…
Native-like Navigation for Web apps
In Python, the dict data structure is the conventional key-value structure. E.g., you might store a list of names as keys and have their phone numbers as values. Valentin Ignatev wrote this amusing post on X: It is indeed widely believed that, in the strict sense, the dict data structure and its companion, the set ……
Ever wondered how Clojure's persistent vector actually works? This is part 1 of a blog series which aims to explain them.
Martin Uecker, 2025-08-10 I discuss the implementation of type and bounds safe generic containers in C. Previously, I discussed a span type , bounds checking using arrays . and a a vector type . This time, I will discuss maybe inspired by Haskell. This type can used to return a value that may not exist, e.g. because…
I’ve been thinking about garbage collection in Rust for a long time, ever since I started working on Servo’s JS layer. I’ve designed a GC library, …
This is a co-production with Veedrac, who wrote most of the awesome technical details.
MEGA888 merupakan link alternatif slot gacor tutorial terbaru cara bermain game slot88 server indonesia penuh kesempatan menang maksimal teori konspirasi nyata pasti maxwin.
Like blockchain but without blockchain.
Floating-point math puts a big overhead on a computer that doesn't have a floating-point coprocessor; but we really do need floating-point for all but the simplest operations— or do we?? Can we really do things like trig, log, and square-root functions without floating point?
I got this idea after reading the Reflections on GoodJob for Solid Queue from Ben Sheldon, who is the author of the excellent GoodJob.
The Fast Fourier Transform (FFT) is one of the most important algorithms in signal processing and data analysis. I've used it for years, but having no formal computer science background, It occurred to me this week that I've never thought to ask how the FFT computes the discrete Fourier transform so quickly. I dusted…
Macros are required to do some very helpful things in Rust, but this isn't an article about any of those things.
Bézier curves are widely used for defining vector graphics. They are basically polynomial parametric curves, but given in the Bernstein basis, which enables us to define the curve using control points. The first and last control point define the start and endpoint of the curves, the intermediate control points kind of…
I ran across two surprising sources of code execution in bash (and probably other shells) recently.
Enterprise Systems, I mean. And not just a little bit, either. Orders of magnitude wrong. Billions and billions of dollars worth of wrong. Hang-our-heads-in-shame wrong. It’s time to stop the madness.
Trying to speedup my lexer using lookups and bitvectors but simd was just a step to far for me.
Monday’s /r/dailyprogrammer challenge was to write a program to read a recurrence relation definition and, through interpretation, iterate it to some number of terms. It’s given an initial term ( u(0) ) and a sequence of operations, f , to apply to the previous term ( u(n + 1) = f(u(n)) ) to compute the next term…
Apps are a nightmare for the visually impaired. So when I started losing my sight, I decided to fix that.