Topics /
Programming Languages
The most popular blog posts about programming languages on Hacker News. 5,634 posts.
Bicameral, Not Homoiconic
Parenthetically Speaking: Articles by Shriram Krishnamurthi
Taming Undefined Behavior in LLVM
Interesting post, but you lost me at “Let’s try to do that using undef”. Why bother with notions of an “undef value” (or “deferred UB”), when plain UB is all you need?
A few examples of Lisp code typography (2013)
The code formatting and typography is frequent, controversial but probably unavoidable topic among programmers. This document contains some representative and possibly, relevant examples of the Lisp code.
A crash course in Python “comprehensions” and “generators”
Master them in 20 minutes. Use them every day.
Implementing Rust's dbg! in Python
Rust has an amazing dbg macro that lets you quickly set up an expression printer that will also put in the source line. It also returns the value of the expression so you can even easily inline the printing when you want to!
A toy programming language in 137 lines of Python code
I thought it would be fun to go outside of my comfort zone of web development topics and write about something completely different and new, something I have never written about before. So today, I'm…
Understanding Serde
Serde is one of the most popular Rust crates, and deservedly so. If you aren't familiar, Serde describes itself as "a framework for serializing and deserializing Rust data structures efficiently and generically." What is most impressive to me is how robust the Serde data model has proven to be, allowing it to support…
Why APL is worth knowing
Let me show you characteristics of APL that will influence your understanding of programming concepts and the way you use other languages.
Towards Crystal 1.0
Currently the main goal of the Crystal core team is to reach 1.0 in the near future. Since achieving that goal involves a number of non-obvious tradeoffs, we want to use this post to shed some light on those inherent tensions and how they drive our work and priorities for the next few releases.
Quirks of Common Lisp Types
Humans have a tendency toward binary thinking (pardon the pun). If it's not A, it's B. Perhaps because Lisps have REPLs, they are often thought of from the outside as being dynamic, interpreted languages. Our years of Python have taught us that such languages don't really have strong typing - it's all a wild guess…
Async Rust: Panics vs. Cancellation
One of the things people often complain about when doing Async Rust is cancellation. This has always been a bit confusing to me, because it seems to me that async cancellation should feel a lot like panics in practice, and people don’t complain about panics very often (though they do sometimes). This post is the start…
Static checking of units in Servo
Web browsers do a lot of calculations on geometric coordinates, in many different coordinate systems and units of measurement. For example, a browser may need to translate a position expressed ...
Writing a competitive BZip2 encoder in Ada from scratch in a few days – part 2
Note for subscribers: if you are interested in my Ada programming articles only, you can use this RSS feed link. Link to Part 3 here . As ...
LLVM 3.0 Type System Rewrite
One of the most pervasive IR (and thus compiler API) changes in LLVM 3.0 was a complete reimplementation of the LLVM IR type system. This change was long overdue (the original type system lasted from LLVM 1.
A Rust shaped hole
Without writing a single line of Rust, why I feel it might be right
The truth about Lisp (2006)
In which the truth about lisp is revealed, and some alternatives are enumerated.