Garbage collection without unsafe code
Many people, including myself, have implemented garbage collection (GC)libraries for Rust. Manish Goregaokar wrote up a fantastic survey of thisspace a few y...
The latest blog posts to take off on Hacker News. 5,634 posts.
Many people, including myself, have implemented garbage collection (GC)libraries for Rust. Manish Goregaokar wrote up a fantastic survey of thisspace a few y...
Modern tooling for parsing, searching, formatting, editing R code, just like for other programming languages.
We've launched an experimental Rust library for Tailscale via tsnet. Help test tailscale-rs and shape it with your feedback.
C interpreters are a common language implementation technique and the basis for the reference implementations of languages such as Lua, Ruby, and Python. Unfortunately, C interpreters are slow, especially compared to language implementations powered by JIT compilers. In this post I’m going to show that it is possible…
Zig is a general-purpose programming language and toolchain for maintaining robust , optimal , and reusable software.
The Nim Team is happy to announce the next instalment of NimConf! NimConf 2026 will happen June 20, 2026 in the traditional online format where the talks are pre-recorded and revealed as premiers on YouTube while the viewers can ask questions and the presenter can answer them in the live chat.
I made a programming language. I'm sorry.
At a party, Sydney Von Arx asked if I could name 40 programming languages. Yeah, that's the Bay for you. Racket, Agda, Clean, Elm, TypeScript, sh, ASP, Verilog, JavaScript, Scheme, Rust, Nim, INTERCAL, sed, Isabelle, Visual Basic, zsh, AlokScript, Coq, Idris, Hack, Prolog, Whitespace, PureScript, Go, Odin, Haskell…
Ever wondered how Clojure's persistent vector actually works? This is part 1 of a blog series which aims to explain them.
You can now write Swift in a broader range of popular IDEs, including Cursor, VSCodium, AWS’s Kiro, and Google’s Antigravity. By leveraging VS Code extension compatibility, these editors tap directly into the Open VSX Registry, where the official Swift extension is now live.
Exploring tail-call-style interpreter implementation with an optimized Uxn emulator, on ARM, x86, and WebAssembly
C# 15 introduces union types — declare a closed set of case types with implicit conversions and exhaustive pattern matching. Try unions in preview today and see the broader exhaustiveness roadmap.
How a dialect of LISP can help developping modern enterprise applications
You already know that a + b * c + d is calculated as a + (b * c) + d. But how do you encode that knowledge precisely enough for a machine to act on it?
News flash: C++26 is done! 🎉 On Saturday, the ISO C++ committee completed technical work on C++26 in (partly) sunny London Croydon, UK. We resolved the remaining international comments on the C++26…
TruffleRuby started as my internship project at Oracle Labs in early 2013. It is an implementation of the Ruby programming language on the JVM, using the Graal dynamic compiler and the Truffle AST interpreter framework . TruffleRuby can achieve peak performance well beyond that possible in JRuby at the same time as…
Swift is designed to be the language you reach for at every layer of the software stack. Whether you’re building embedded firmware, internet-scale services, or full-featured mobile apps, Swift delivers strong safety guarantees, performance control when you need it, and expressive language features and APIs.
My new book guides you through the start-to-finish build of a real world web application in Go — covering topics like how to structure your code, manage dependencies, create dynamic database-driven pages, and how to authenticate and authorize users securely .
Writing, compiling, loading, and querying eBPF programs in one Lisp form.
Coherence and the orphan rules are a frequent source of complaints about Rust, and a common topic of language proposals. This post covers most of the existing proposals around coherence and my vision for how we should solve coherence once and for all.
A deep dive into the intricacies of the LLVM optimisation pipeline.
Curried functions are probably one of the first new things you come across if you go from an imperative language to a functional language. In purely functional languages, the convention is to define an n-parameter function inductively by staggering the parameters: applying the function to argument #1 returns a…
I spend a lot of time developing and teaching people about Clojure's open source tools for working with data. Almost everybody who wants to use Clojure…
I had seen many talks about coroutines but it never really clicked where I could use them outisde of async IO. Until I looked at how Unity uses them in C#.
A beginner's exploration of the many layers of Common Lisp development environments.
Java 26 is here, and its main purpose seems to be to provide a solid foundation for future things to come. It comes with a few new features, some performance improvements and multiple enhancements that mention Project Valhalla as the inspiration for their existence. This post has all the info!
Python 3.15’s JIT is now back on track
Learn what it means to conform to the Python typing spec, why it matters, and the conformance status of each type checker including Pyrefly, Ty, Pyright and Mypy.
A draft design document describing lightweight userland cooperative threads for SBCL.