Rust Is Eating JavaScript (2023)
Why is Rust being used to replace parts of the JavaScript web ecosystem like minification (Terser), transpilation (Babel), formatting (Prettier), bundling (webpack), linting (ESLint), and more?
Why is Rust being used to replace parts of the JavaScript web ecosystem like minification (Terser), transpilation (Babel), formatting (Prettier), bundling (webpack), linting (ESLint), and more?
Caja de herramientas para construir idiomas (en español; traducido por Renato Montes) O Kit de Construção de Línguas (em português; traduzido por Gustavo Pereira) Il Kit di Costruzione di Linguaggi (in italiano; tradotto per Daniele "MadMage" Calisi) Der Sprachbaukasten (auf Deutsch; übersetzt von Carsten Becker)
The lone lisp delimited continuations implementation journey.
Indentation styles are a hot topic in every language. So let's see how Lisps do indentation! Uuuuuuugh!
I wanted to share a side project I’ve been tinkering with for a while and finally got around to shipping: Coalton Playground – basically a web-based REPL for Coalton, which is this inte…
The Arduino Uno Q is... a weird board. It's the first product born out of Qualcomm's buyout of Arduino. It's like if you married an Intel CPU, and a Raspberry Pi RP2040 microcontroller—oh wait, Radxa's X4 did that. Arduino even tried it before with their old Yún board, which had Linux running on a MIPS CPU, married to…
Coroutines are functions that pause and resume with state, allowing flexible, bidirectional control flow in PHP.
Finally sitting down to learn Rust and how to write parsers.
If you can ctrl-c and ctrl-v, you can build a JIT.
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…
Macros are required to do some very helpful things in Rust, but this isn't an article about any of those things.
I got it working with arrays and records, but couldn't make it work for regular objects.
Karl Seguin's Blog - A mix of coding and creative writing
Rocky Jaiswal. Christian developer living in Berlin. Blogs about programming & technology.
Common Lisp has good packaging tools, but they're different. Here we explain the what and how.
I have a Computer Science degree. I attended a whole course of lectures on compilers (and have a certain fondness for “the red dragon book” as a result). However, I had never actually written a compiler from start to finish until a rainy day last weekend.
In this article, we will discuss zippers in the Clojure language. These are an unusual way to work with collections. Using a zipper, you can traverse a data structure arbitrarily and modify its content as well as search in it. A zipper is a powerful abstraction that pays off over time. However, it is not as…
Spoiler : it is also likely already the best BZip2 encoder for a given block size. See the green charts below. Note for subscribers: if you...
Static Single Assignment is a program representation where each “variable” (though this term can be misleading) is assigned exactly once. Mostly the variables aren’t variables at all, but instead names for values—for expressions. SSA is used a lot in compilers. See this lesson from Cornell for converting Bril to SSA…
Left & Mutual Recursion Mitigation
std::flip is a little-known utility from the C++ standard library header <functional>: it is a higher-order function that accepts a Callable and returns an equivalent Callable with the order of its parameters reversed (or “flipped”).
C++ seems to finally converge with their contracts proposal, I decided to give it a try and come up with ideas how such a thing would look for C. This is in early stages, not a full proposal yet, a…
Karl Seguin's Blog - A mix of coding and creative writing
The first of a series of envisioned blog posts on lambda calculus, and Lisp. It’s unclear exactly where to start: there is a whole heap of interesting issues, both theoretical and in terms of concrete implementations, which tangle and interconnect. A particular application of lambda calculus is a very salient…
The craft of programming is almost universally concerned with different types of data and operations/algorithms that act on this data [1] . Therefore, it's hardly surprising that designing abstractions for data types and operations has been on the mind of software engineers and programming-language designers since…
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.
Quarto Academic Website Template adapted by Dr. Gang He