A Lisp interpreter implemented in Conway's Game of Life (2021)
Lisp in Life is a Lisp interpreter implemented in Conway’s Game of Life.
The latest blog posts to take off on Hacker News. 1,733 posts.
Lisp in Life is a Lisp interpreter implemented in Conway’s Game of Life.
There are roughly three classes of language features: Features that the language is effectively designed around, such that you can't add it after the fact....
There are two types of programmers in the world: the practical, sensible, shell-resigned people who need to google the correct argument order for ln -s ; and those twisted, Stockholmed souls who will gleefully run their company’s entire infrastructure on 57 commands stitched together into a single-line bash script.
This year I got a very special gift for Christmas: a broken DualShock 4. :smile:You may say it’s a relatively poor gift, but the person who gave me this know...
In this post, I’ll iteratively optimize an implementation of matrix multiplication written in CUDA.My goal is not to build a cuBLAS replacement, but to deepl...
A small Figma war story.
Funding In total urllib3 received $26,615 USD in financial support and distributed $18,622 USD to maintainers and community contributors. We're thankful for the financial support we receive from o...
L.C. Bakken technical blog
I don’t know what you were doing on 25th of December 2022. I was eating pierogis, while Ruby team did some epic sh***!
Assembly code scares people. There’s a good reason for that. For many people, writing code in assembly language seems equivalent to writing code in ancient dwarven runes, or calculating pi in roman numerals. The fact that RollerCoaster Tycoon was almost completely written in assembly language sounds almost too amazing…
Dissecting why everybody keeps talking about microservices.
I recently wrote about completing Advent of Code 2022 using a different programming language (or two) every day for 25 days.
9 Must-Read Books for Software Engineers in 2023 — As a software engineer, staying up-to-date with the latest developments and best practices...
This is a short introduction to Rust, intended for developers that already know another language. In the examples, Rust is compared with TypeScript, JavaScript or Java, sometimes with C++ or Kotlin.
Note: On the back of some feedback I’ve created a follow-up of this post where I refine the thesis. I’ve left this post as-is for the sake of comparison
Let's start with an example. In Advent of Code 2022 day 1 we get groups of numbers as input like: 1000 2000 3000 4000 5000 6000 7000 8000 ...
The Lua programming language is unusual among its peers. It’s a dynamically typed, scripting language with a really small core (100-200kB), but runs efficiently, has far simpler semantics than other similar languages, and is just as old as the giants like JavaScript, Python, and Ruby – first made in a research lab…
Design-by-Contract's invariant attribute allows you to enforce important properties of systems and data structures, making it an incredibly useful tool for developers. In this blog post, we'll be exploring the development of a GCC plugin that adds support for [[invariant]] conditions in C++ classes and structs. We'll…
In this post, I am going to talk about the N + 1 queries problem. While trying to solve this problem myself recently, I noticed most of the blog posts only talk about the very simple version of the problem and the proposed solutions would break down when the use cases get complex. I will try to get into more depth and…
A rant about "year of Linux on the desktop" from a tired old man. I've been part of the Linux community since before Linux was called Linux. Over the years there's been many people telling me directly that Linux is silly or wrong or imperfect, or that free and open source software is foolish or pointless. A lot more…
Binary search is a workhorse of competitive programming. There are occasional easy problems where binary search is the solution in and of itself; more often, it’s used as a primitive building block…
An alternate to traditional <code>deleted_at</code> soft deletion that stays out of the way and minimizes bugs.