/Language Design

Software Mimicry

- Hillel Wayne tl;dr: "Mimicry is when software X reimplements at a higher level a core feature of software Y. The produced facsimile has some, but not all, of the same properties, enough to “look like” it’s the same thing but missing many of the nuances. This exists in every kind of software. One language can mimic another, a library can mimic a language, a database engine can mimic a product, etc."

featured in #348


Wrong By Default

- Kevin Cox tl;dr: "The moral of the story is that the best way to avoid bugs is to make them difficult to write. Ideally make bugs harder to write than correct code. defer and try-with-resources are “wrong by default” and require explicit work on behalf of the programmer to become correct."

featured in #318


In Defense Of Complicated Programming Languages

- Jakob Nybo Nissen tl;dr: "All the language features in the examples above - classes, advanced types, and the borrow checker - have an important trait in common: They all feel like they emerge spontaneously from existing code independently of whether the language designer has thought about them. In that sense, they are the best kind of feature; instead of adding new things to worry about, they merely provide a vocabulary and tooling for dealing with already existing problems."

featured in #306


A Love Of Languages

tl;dr: "There is so much to learn, to experiment with, to experience. There are thousands of languages out there, each with their own story to tell, and their own way of telling that story. We should never settle for just one language or one way of doing something, because new languages and new approaches change how we view the world."

featured in #298


A Brief Introduction To Esoteric Languages

- Hillel Wayne tl;dr: Includes (1) Brainfuck, the most famous Esoteric language with a compiler of 240 bytes, (2) Shakespeare, a language designed to look like a Shakespeare play, (3) Piet, a visual programming language in the truest sense: every Piet program is an executable picture.

featured in #230


Hello World

- Drew DeVault tl;dr: Drew counts the number of syscalls a language performs when printing "Hello World." This should take 2 syscalls but, for most languages, there's a lot more happening under the hood.

featured in #168


A Response To Hello World

- Caleb Doxsey tl;dr: A response to the post above, Caleb argues that decreasing syscalls in a "Hello World" program results in "imperceptible performance improvement" while extra syscalls can provide value. Pursuing "software minimalism" doesn't always lead to improvements.

featured in #168


What Makes Python A Great Language?

- Steve Dower tl;dr: Steve believes that Python's has an "incredibly well-balanced sense of what developers need to know." Examples of what this means are highlighted throughout. 

featured in #166