Crystal 1.16.0
We are announcing a new Crystal release 1.16.0 with several new features and bug fixes.
The latest blog posts to take off on Hacker News. 375 posts.
We are announcing a new Crystal release 1.16.0 with several new features and bug fixes.
The Story Behind 100 Go Mistakes and How to Avoid Them
GCC 15 brings better error messages and diagnostics for your code, including prettier execution paths and easier-to-read compiler errors for C++ templates.
One thing I love about Python is how it comes with its very own built-in zen. In moments of tribulations, when I am wrestling with crooked code and tangled thoughts, I often find solace in its timeless wisdom. Here's a glimpse of the clarity it provides:
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
Enums are one of the most popular features in Rust. An enum is a type whose value is one of a specified set of variants.
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…
A novel technique for implementing dynamic language interpreters in Go, applied to the Vitess SQL evaluation engine
The materials for the course on compilers: built incrementally and fully in tagless-final style
When people say Rust is a “safe language”, they often mean memory safety. And while memory safety is a great start, it’s far from all it takes to build robust applications. Memory safety is necessary but not sufficient for overall reliability. In thi…
A blog about computers, functional languages, Lisp, and Scheme.
Since the early days of automatic computing we have had people that have felt it as a shortcoming that programming required the care and accuracy that is characteristic for the use of any formal symbolism. They blamed the mechanical slave for its strict obedience with which it carried out its given instructions, even…
If someone had told me a few months ago I’d be playing with .NET again after a 15+ years hiatus I probably would have laughed at this.1 Early on in my career I played with .NET and Java, and even though .NET had done some things better than Java (as it had the opportunity to learn from some early Java mistakes), I…
Issue warnings about uses of deep reflection to mutate final fields. These warnings aim to prepare developers for a future release that ensures integrity by default by restricting final field mutation, which will make Java programs safer and potentially faster. Application developers can avoid both current warnings…
Some good news is coming in Rust 1.86
Today we’re delighted to introduce the first stable release of swiftly, a Swift version manager that takes the pain out of installing, managing and updating your Swift toolchain.
I announce Xee, the implementation of XPath and XSLT in Rust that I've been working on for the last two years.
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…
Go 1.25 simplifies the language spec by removing the notion of core types
A case study of how Elixir is being used at Cyanview.
In this post, I talk about my favorite C/C++ pattern involving macros.
The C++ standard library (also know as the STL) is, without a doubt, an astounding piece of work. Its scope, performance and incredible back...
There is always ongoing discussion about the future direction of the Scala language. How fast should it move? What needs to be improved? Should the language change at all? This article discusses how Scala must keep evolving , why that evolution is necessary, and what directions we expect that evolution to take. We…
This story is about concurrent data structures in the context of Ruby. The goal here is to demonstrate how true parallelism can be achieved with global mutable state (which at the time of writing, is not supported by built-in Ruby primitives).
Types in coding projects are good. Don’t be afraid to create them when you need to.
After the Graz, Austria February 2025 WG14 Meeting, I am now confident in the final status of the defer TS, and it is now time.
Welcome to kmx.io
Embarking on a native port of the existing TypeScript compiler and toolset to achieve a 10x performance speed-up.
A deep dive into the performance of Python 3.14's tail-call interpreter: How the performance results were confounded by an LLVM regression, the surprising complexity of compiling interpreter loops, and some reflections on performance work, software engineering, and optimizing compilers.