Topics /
Programming Languages
The most popular blog posts about programming languages on Hacker News. 5,634 posts.
Memory-efficient enum arrays in Zig
Proper support for sum types or tagged unions have become table stakes for systems programming languages. However, they can incur a lot of memory fragmentation that's not trivial to avoid without good support for metaprogramming. This post goes into Zig's powerful comptime feature, and how it allows some radical…
Swift Homomorphic Encryption
We’re excited to announce a new open source Swift package for homomorphic encryption in Swift: swift-homomorphic-encryption.
Leaving Haskell behind
For almost a complete decade—starting with discovering Haskell in about 2009 and right up until switching to a job where I used primarily...
Lua is so underrated
Introduction The more I learn about Lua's design and implementation, the more impressed I am. It's very rare to see software that does so much with so lit...
What I think about Lua after shipping a project with 60k lines of code
Lead programmer talks Lua’s flexibility, challenges, and integration with Defold game engine after 60k lines of code in Craftomation 101.
Not Your Grandfather’s Perl
That Perl interpreter you have on your Linux machine? Update it and check out the present.
New Features in C# 7.0
Here is a description of all the new language features in C# 7.0, which came out last Tuesday as part of the Visual Studio 2017 release. C# 7.0 adds a number of new features and brings a focus on data consumption, code simplification and performance. Perhaps the biggest features are tuples, which make it easy […]
Go: Ten years and climbing
Drawing Copyright ©2017 Renee French This week marks the 10th anniversary of the creation of Go. The initial discussion ...
Stunned by Go
The original working title for this post was "Go is hostile to developers". This was named at a time of extreme frustration, and it didn't ...
A fundamental introduction to x86 assembly programming
The x86 instruction set architecture is at the heart of CPU s that power our home computers and remote servers for over two decades. Being able to read and write code in low-level assembly language is a powerful skill to have. It enables you to write faster code, use machine features unavailable in C, and…
A practical introduction to functional programming (2013)
Many functional programming articles teach abstract functional techniques. That is, composition, pipelining, higher order functions. This one is different. I...
My thoughts after using Clojure for about a month
I am now generating this website with Clojure (yes, right after rewriting it in GNU Make and shell ; I have a problem, ok?). In a personal tradition, I used writing a static site generator as the project to play with and learn Clojure as a new language. While I’ve long scoffed at Clojure for its copious syntax ( three…
X86 is a high-level language
Just so you know, x86 machine-code is now a "high-level" language. What instructions say, and what they do, are very different things. I m...
TinyCompiler: A compiler in a week-end
Have you ever wondered how a compiler works, but you never found courage to find out? Then this series of articles is for you. I have never had the chance to look under the hood either, but one week-end I have decided to to write a translator from the esoteric programming language wend (short for week-end), which I…
The paradigms of programming
The paradigms of programming Floyd, CACM 1979 (Also available in ) A couple of weeks ago we looked at Dan Bernstein’s very topical “thoughts on security after ten years of qmail 1.0.” From the gene…
Transducers are coming to Clojure
Transducers are a powerful and composable way to build algorithmic transformations that you can reuse in many contexts, and they're coming to Clojure core an...
How to speed up the Rust compiler one last time
Due to recent changes at Mozilla my time working on the Rust compiler is drawing to a close. I am still at Mozilla, but I will be focusing on Firefox work for the foreseeable future.
Python developers are embracing type hints
What is Typed Python? Why is it important for Python developers today? How to can you get started?
Python performance: it’s not just the interpreter
I have a particular view of Python performance from my experience on the Pyston project, and since this view is somewhat nonstandard I wanted to take some time to explain it and give a motivating e…
JSC loves ES6
Update: The previous version of this post showed performance data from ARES-6 version 1.0.
Gleam doesn't compile to Erlang source anymore
News post: Gleam v1.19.0 released!