Weekend projects: getting silly with C
C is beautiful yet full of horrors. Here's to uncovering its hidden depths.
Topics /
The most popular blog posts about programming languages on Hacker News. 246 posts.
C is beautiful yet full of horrors. Here's to uncovering its hidden depths.
In the 1950s, computers did not really interoperate. ARPANET has not yet happened (that would become a thing in the 60s), and every operating system was typically tied to the hardware that was meant to run on. Most communication actually happened over telephone, and no company was more present in that space than the…
Every software engineer uses a programming language, usually multiple. Few of us make programming languages. This makes sense, because the work we need to get done can typically be done just fine in the languages that exist. Those already have people making them better. Let's focus on the task at hand.
Recently I've discovered a very interesting language / realization of the Lambda Calculus. I was unable to find any other language like it, which I find quite surprising. In hindsight, the language seems obvious and natural. And the language keeps surprising me. I say "discovered" in the same sense that Paul Graham…
An overview of all the tools, standards and special languages used in the automotive industry where the official language is actually C.
Incomplete data structures challenge our notion of mutability
A short guide on OCaml type checker, describing the surprisingly elegant algorithm for generalization, which generalizes to first-class polymorphism, MLF and local types. Polymorphism and regions have much in common.
One of the established and most popular programming languages is the C programming language. It is relatively easy to learn, and highly practical. Maybe surprisingly, the C programming language keeps evolving, slowly and carefully. If you have GCC 13 or LLVM (Clang) 16, you already have a compiler with some of the…
Like the blip of an intro on the front page says, my degree was originally in music. My running joke as a web dev is that neither has meaningfully required me to count past 32. And while my main concentration was vocals, I've since realized I should probably stop strictly calling this a nontechnical field, because my…
Freedom is nothing without constraints, and Go’s generics gives us a powerful way to build polymorphic types and functions constrained by type sets . Let’s geek out.
Intro to HM
Using Java's Foreign Function API to Call C like fopen, fgets, and fclose.
A review after using Rust on embedded in production for over a year
How costly it is to call functions and builtins in your python code? Does inlining help? How have the recent CPython releases improved performance in these areas?
With some partial evaluation and specialization hints, it is possible to get pretty decent speedups on interpreters by turning them into compilers.
This post lays out a 4-part roadmap for the borrow checker that I call “the borrow checker within”. These changes are meant to help Rust become a better version of itself, enabling patterns of code which feel like they fit within Rust’s spirit , but run afoul of the letter of its law . I feel fairly comfortable with…
This essay says that inheritance is harmful and if possible you should "ban inheritance completely". You see these arguments a lot, as well as things like...
I got a cheap used copy of the book A Programmer's Guide to COMMON LISP by Deborah G. Tatar, Digital Press, 1987. Why did I read such an...
In the 1990s, computers were magic and we were wizards. Want proof? I offer below, Larry Wall’s foreword to Learning Perl from 1993. It greatly inspired a very young me who wandered into a book shop, picked up an odd book with llama on the cover and a seemingly misspelled title. The first few pages had me hooked and…
How Zig's allocators can help manage memory and improve performance
From Erlang, to Elixir and now, GLEAM!?
This is a little summary of my current thoughts on Rust. I wonder whether I’ll look back in five years and see if my views have changed.
I’ve been using Rust for hobby projects since 2016 and have been working professionally in Rust since 2021, so I tend to consider myself pretty knowledgeable about Rust. I’m already familiar with all the common limitations of Rust’s type system and how to work around them, so it’s pretty rare that I have to “fight the…
Hi, I'm Peter Bex, a Scheme and free software enthusiast from the Netherlands. See my user page on the CHICKEN wiki or my git server for some of my projects.
A curated list of misconceptions about mainstream compilers.