Hacker News with Generative AI: Programming Languages

Rust's Downfall: From Rising Star to Rejected by Major Projects (medium.com)
Rust, once celebrated as a game-changer in systems programming, has found itself facing a wave of criticism following a string of high-profile setbacks.
Zig: What to Expect from Release Month (ziglang.org)
Go 1.24 Interactive Tour (antonz.org)
Go 1.24 is scheduled for release in February, so it's a good time to explore what's new. The official release notes are pretty dry, so I prepared an interactive version with lots of examples showing what has changed and what the new behavior is.
Clojure core.async.flow (github.com/clojure)
The fundamental objective of core.async.flow is to enable a strict separation of your application logic from its topology, execution, communication, lifecycle, monitoring and error handling, all of which are provided by and centralized in, c.a.flow, yielding more consistent, robust, testable, observable and operable systems.
Show HN: A Common Lisp implementation in development (nongnu.org)
Build a Database in Four Months with Rust and 647 Open-Source Dependencies (tisonkun.io)
Building a database from scratch is often considered daunting. However, the Rust programming language and its open-source community have made it easier.
Optimizing Ruby's JSON, Part 7 (byroot.github.io)
In the previous post, we started covering some parser optimizations. There’s just a handful more to cover until we reached what’s the state of the currently released version of ruby/json.
Finite Field Assembly: A Language for Emulating GPUs on CPU (leetarxiv.substack.com)
FF-asm is a programming language founded on the thesis: Math is mostly invented, rarely discovered.
Data evolution with set-theoretic types (dashbit.co)
Recently I have been working on projects that integrate Elixir with native code in C and Rust. One of the Rust libraries defines the following struct (with fields removed for simplicity):
Programming in Lua (first edition) (2003) (lua.org)
This is the online version of the first edition of the book Programming in Lua, a detailed and authoritative introduction to all aspects of Lua programming written by Lua's chief architect.
Pharo (pharo.org)
Pharo is a pure object-oriented programming language and a powerful environment, focused on simplicity and immediate feedback (think IDE and OS rolled into one).
Great things about Rust that aren't just performance (ntietz.com)
Nearly every line of code I write for fun is in Rust. It's not because I need great performance, though that's a nice benefit. I write a lot of Rust because it's a joy to write code in. There is so much else to love about Rust beyond going fast without segfaults.
Misty: A secure distributed actor language (mistysystem.com)
Public Domain 2025 Douglas Crockford
Why I Chose Common Lisp (djhaskin.com)
After ~7 years, I was done with Clojure. I was writing a some CLI apps, and I hated how long they took to start up. The community at large seemed not to care about this problem, except for the babashka folks. However, I spent long, hard hours banging my head against native-image and it just wasn't working out. It was incredibly painful, and at the end of it, I still didn't have standalone, fast-starting native executables.
Obvious things C should do (digitalmars.com)
Standard C undergoes regular improvements, now at C23. But there are baffling things that have not been fixed at all. The Dlang community embedded a C compiler in the D programming language compiler so it could compile C. This C compiler (aka ImportC) was built from scratch. It provided the opportunity to use modern compiler technology to fix those shortcomings. Why doesn’t Standard C fix them?
Statum: Zero-Boilerplate Compile-Time State Machines in Rust (github.com/eboody)
Statum is a zero-boilerplate library for finite-state machines in Rust, with compile-time state transition validation.
KEON is a human-readable Serde format that is syntactically similar to Rust (github.com/eternal-io)
KEON is a human readable object notation / serialization format that syntactic similar to Rust and completely supports Serde's data model.
A Closed and Common Lisp (2021) (flooey.org)
I just recently finished up Advent of Code for 2021, and, like last year, I did it in a new-to-me language. This year’s choice was Common Lisp. My total previous exposure to Lisp was a couple weeks writing Scheme in my Programming Languages class at university, so it was almost entirely a novel experience.
Python is the new Basic (schemescape.com)
As far as programming languages go, BASIC ("Beginners' All-purpose Symbolic Instruction Code") is... not a language I would choose today.
MessagePack: It's like JSON, but fast and small. (msgpack.org)
MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. But it's faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves.
The Macros module is a fictitious module used to document macros (crystal-lang.org)
The Macros module is a fictitious module used to document macros and macro methods.
Glicol: Next-generation computer music language (glicol.org)
Flattening ASTs and other compiler data structures (2023) (cs.cornell.edu)
Arenas, a.k.a. regions, are everywhere in modern language implementations. One form of arenas is both super simple and surprisingly effective for compilers and compiler-like things. Maybe because of its simplicity, I haven’t seen the basic technique in many compiler courses—or anywhere else in a CS curriculum for that matter. This post is an introduction to the idea and its many virtues.
My Thoughts on Kotlin: Perspectives after 4 years (tylerrussell.dev)
Often, when explaining to other devs that Masset uses Kotlin as our primary backend language, I receive inquisitive and questioning faces. “The Android language? On your backend? That seems odd… Have you considered rewriting it in Rust?” 🤨 
A Racket alternative to HTML Tidy (joeldueck.com)
If you use Racket to generate web pages, you should use this package to make your HTML both readable and correct. Why go to the trouble of designing clean, semantic markup if you’re just going to slap it all on one line that scrolls horizontally forever?
Show HN: Python with do..end in place of strict indentation (github.com/navxio)
An experimental Python preprocessor that enables do..end syntax in place of strict indentation
The Siren Song of Little Languages (wilfred.me.uk)
Some programming languages languish due to obscurity. They lack breathless blog posts exclaiming how much nicer they are to use.
"Why learning the C language is still a good idea" by Antirez (youtube.com)
SBCL 2.5.0 (2024) (sbcl.org)
New SBCL versions are usually released at the end of each month: check the Sourceforge File List to see the current version. The new features of the two most recent SBCL releases are listed below.
Go is a well designed language, actually (mattjhall.co.uk)
In many ways 2009 decided my future career. I was thirteen and had just scored my first goal in a competitive football match - a lovely one-two with the winger finished by a powerful strike into the top left corner. Sadly the talent scouts were missing that day. Whilst I was dreaming of Wembley, Go was announced to the world.