Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 3,709 posts.
Clojure is cool
I had heard of it years ago, but never really gave it a lot of thought (or time) to it, despite being a huge fan of Common Lisp and a bit of a language polyglot. I think part of my initial reluctance may have been 'java' - as I would typically associate just the negatives to it (cumbersome language syntax, slow start…
V Language Review (2023)
Review about V programming language in 2023
Four MLs (and a Python)
I wrote a small command-line text processing program in four different ML-derived languages, to try to get a feel for how they compare in terms of syntax, library, and build-run cycles. ML is a fam…
Which Parsing Approach?
We all know that parsing is an important part of designing and implementing programming languages, but it’s the equivalent of Brussels sprouts: good for the diet, but a taste that only a select few enjoy. Unfortunately, I’ve come to realise that our general distaste for parsing is problematic. While many of us think…
My experience crafting an interpreter with Rust (2021)
Last year I finally decided to learn some Rust. The official book by Steve Klabnik and Carol Nichols is excellent, but even after reading it and working on some small code exercises, I felt that I needed more to really understand the language. I wanted to work on a small project to get some hands-on experience, but…
Get a Life
When I was a kid, I wrote a BASIC program to explore Conway’s Game of Life on my 8088. It was painfully slow, so I began an assembly rewrite. But I failed at Life: I abandoned the project in frustration because I kept freezing up my system.
To save C, we must save ABI
After that first Firebrand of an article on Application Binary Interface (ABI) Stability, I’m not sure anyone expected this to be the title of the next one, huh? It seems especially bad,
Anecdotally, programmers dislike "reduce"
From my experience, people like functions like "map" and "filter", but not "reduce".
Catching use-after-move C++ bugs with Clang's consumed annotations
This post describes a compile-time technique for catching use-after-move bugs in modern C++. It’s currently used to prevent some mistakes in the Serenity Operating System.
Java JIT vs. Java AOT vs. Go for Small, Short-Lived Processes
Mario Macias' handcrafted blog
C: Simple Defer, Ready to Use
With this post I will concentrate on the here and now: how to use C’s future lifesaving defer feature with existing tools and compilers.
Getting silly with C, part (void*)2
They won't be able to find bugs in your code if they can't figure out how it works.
Learn Perl in about 2 hours 30 minutes
Perl is a dynamic, dynamically-typed, high-level, scripting (interpreted) language most comparable with PHP and Python. Perl's syntax owes a lot to ancient shell scripting tools, and it is famed for its overuse of confusing symbols, the majority of which are impossible to Google ...
C extensions, portability, and alternative compilers
Anyone who's written C knows that full ISO C standard-adhering code is an impractical rarity. Most real world C code out there relies on non-standard behaviors and language extensions to varying extents, and a lot of this isn't for extra features, but just to work around bugs and gaps in different compilers and…
How Python became the language of choice for data science
Nowadays Python is probably the programming language of choice (besides R) for data scientists for prototyping, visualization, and running data analyses on small and medium sized data sets. And...
F (2006)
F is a pure functional concatenative language originally designed as an extension of False . F contains the list-operations of K3 and the dip combinator of Joy . Floating-point and symbolic datatypes are supported. One-time assignment is enforced in syntax. A theory of function-valence and -charge is outlined. F also…
Compiling Rust for .NET, using only tea and stubbornness
In this article, I describe my journey creating a barely functional rust backend enabling compilation for the .NET runtime (Usually used to run C# and F#).
Peter Seebach: How I learned C
I would like to thank Greg Bacon for saving this article, and converting it to HTML. I didn't have any saved copies of this, and thought I'd lost it.
Lisp Hackers: Peter Seibel
Peter Seibel has helped more people (including me) discover and become user of Lisp as probably noone else in the last decade with his Pract...
Never trust a programmer who says they know C++
I’ve been in an interviewing mindset for awhile and I’ve come to realize something important about C++ in particular. C++ is a “two peak” language. That is to say C++ is the only language I know of where two very different sets of programmers consider themselves well versed in the language. Let me show you in fake…