Topics /

Programming Languages

The most popular blog posts about programming languages on Hacker News. 375 posts.

2025
302

Data evolution with set-theoretic types

We explore how set-theoretic types could address how many statically typed languages do not allow libraries to evolve their public data definitions in a backwards compatible manner. The proposed solution aims to be automatically verified by the compiler and type safe.

306

Baking the Y Combinator from Scratch

EDIT: Part 2 is up! It's a pedagogical pet peeve of mine when technical concepts are simply listed in their fully developed state, with little in the way of motivation, derivation, or historical context. This, I think, is like publishing a cookbook filled with beautiful pictures of cakes, but

307

Set theory with types

It is known that mathematics is heavily reliant on set theory, but no one can agree on what set theory is. Many people today understand that we have a choice between set theory and type theory , but they don’t know what type theory is either. Many think that type theory refers to some sort of dependent type theory, as…

308

Rust’s worst feature

There are several aspects of Rust that I’m not particularly fond of but the one that takes the cake is core::io::BorrowedBuf which I despise with passion. It’s a nightly feature which puts in question my extreme emotions about it. On the other hand it means there’s time to stop it from getting stabilised and figure…

310

Writing C for Curl

It is a somewhat common question to me: how do we write C in curl to make it safe and secure for billions of installations? Some precautions we take and decisions we make. There is no silver bullet, just guidelines. As I think you can see for yourself below they are also neither strange nor … Continue reading Writing…

311

Modern C

This new edition has been the occasion to overhaul the presentation in many places, but its main purpose is the update to the new C standard, C23 . The goal was to publish this new edition of Modern C at the same time as the new C standard goes through the procedure of ISO publication. The closest approximation of the…

315

Quirks of Common Lisp Types

Humans have a tendency toward binary thinking (pardon the pun). If it's not A, it's B. Perhaps because Lisps have REPLs, they are often thought of from the outside as being dynamic, interpreted languages. Our years of Python have taught us that such languages don't really have strong typing - it's all a wild guess…

318

A catalog of side effects

Optimizing compilers like to keep track of each IR instruction’s effects. An instruction’s effects vary wildly from having no effects at all, to writing a specific variable, to completely unknown (writing all state).

322

The Language Construction Kit (1996, 2012)

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)

328

The Arduino Uno Q is a weird hybrid SBC

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…