Reproducible SBCL builds – a month ahead of schedule
I think this might be my last blog entry on the subject of building SBCL for a while.
Topics /
The most popular blog posts about software engineering on Hacker News. 21,842 posts.
I think this might be my last blog entry on the subject of building SBCL for a while.
This blog post is meant to help my friends get started in reading my other blog posts, that is, this post is a crash course on the notation ...
One of my projects over the past couple of years has been Synit , a Syn dicate init (really, systemd and D-Bus ) replacement. Synit underpins another project, #squeak-phone , a sketch of an alternative to Android for personal computing on a mobile device.
This post explores Git commit history as a database where ‘git log’ is the query language. Learn about Git’s custom query index – the commit-graph file – and how to make sure it's enabled in your repositories.
Upon hearing the word 'bootloader', many people cower in fear. It seems like a scary low-level thing that's very easy to mess up. To dispel some of this fear, I'm going to walk through making a super simple bootloader/OS, assuming only a basic level of familiarity with assembly language and how computers work.
Updated: 2023-01-06 About a year ago I was bitten by the PL bug. It started with reading Crafting Interpreters and discovering the wonders hidden under the hood of a compiler. I am also been a big fan of Emacs, and this started to get me interested in how its interpreter works. At the same time, I was reading the Rust…
In this post we will learn the useful skill of writing a device driver for Unix V6 and run it on an emulator.
Rubinius began as a metacircular implementation of Ruby and was billed as Ruby in Ruby . Today the core and much of the standard library, parser, bytecode compiler, and other components are implemented in Ruby, but the interpreter, runtime, GC and other components, are written in C++.
This blog post focuses on our second Spring Lisp Game Jam 2023 entry, wasm4-wireworld , an implementation of Wireworld on top of Hoot 's lower-level assembly tools which are a part of our Guile → Wasm project to bring Spritely Goblins -powered distributed applications to the common web browser.
Writing a minimal x86-64 JIT compiler in C++ that runs on macOS, Linux and WSL - Part 2
Codemancers is an AI-first engineering and product studio. We design, build, and ship intelligent products — combining deep software craftsmanship with modern AI to solve real-world problems at scale.
My last name is "Graham-Cumming". But here's a typical form response when I enter it: Does the web site have any idea how rude it is to cla...
Types in coding projects are good. Don’t be afraid to create them when you need to.
Hot takes and cold truths on software, startups, and the lies we tell ourselves.
Why the claim that 99 in 100 programmers can't program says more about a company's job ads and interviews than about programmers.
Great code doesn’t save you, but bad code will kill you #HoskWisdom
Update: This post got a sequel, Breaking our latin-1 assumptions. I’ve seen misconceptions about Unicode crop up regularly in posts discussing it. …
Stop trying to make customElement happen. Do this instead.
With hundreds of millions of people using over 250,000 items in the Chrome Web Store, extensions have become essential to how m...
Regarding the example #5, I must be confused about the definition of a sequence point because the resulting assembly output seems to be non-ANSI C:
What do you think about when writing a new function in Python? The function name, parameter names, optional/required parameters, and default arguments are all on the list. Here is a simple Python f...
Over the past 6 years or so, I’ve failed each item on “The Turkey Test.” It’s very simple: will your code work properly on a person’s machine in or around th...
Written pieces, talks, and other bits by Zach Holman.
So, Windows 10 has just been released, and with it Ahead Of Time (AOT) compilation feature .NET native . Google also just recently introduc...
It's not about technology for its own sake. It's about being able to implement your ideas.