Houyhnhnm Computing
ngnghm.github.io · Personal blog · on HN since 2016
François-René Rideau writes a series imagining a computing culture, the Houyhnhnms, to critique current software design and systems like Urbit.
What HN saysHN commenters connect it to his TUNES project and link it for its fictional-universe look at programming practices and building down the tower.
21HN people shared it
10linked it in comments
15stories submitted
103story points
3 months agolast shared
2016people per year2026
Most-shared posts
- 1The Way Houyhnhnms Compute (2015)5 people · 16 points · first shared 2016 · 3 comments on HN
- 2Houyhnhnms vs. Martians [Fare on Urbit]5 people · 7 points · first shared 2016 · 1 comments on HN
- 3Houyhnhnm Computing4 people · 73 points · first shared 2016 · 22 comments on HN
- 4Platforms not Applications2 people · 4 points · first shared 2017 · discussion on HN
- 5Computing vs. Computers [pdf]2 people · 2 points · first shared 2016 · discussion on HN
- 6Homepage2 people · first shared 2021
- 7A Work-Horse and Its Tools1 people · 1 points · first shared 2023 · discussion on HN
- 8Chapter 4 turtling down the tower of babel1 people · first shared 2026
What HN people wrote when they linked it
tazjin · 2021-06-15
> as a preserved island of fun and "hacking for the sake of it"
Somehow this sentiment is anything but fun to me. Emacs is the last bastion of a different path down the tree of personal computing than the one our species took, one in which individual users are empowered and not - as is now the case - held hostage by us[0] in our ivory towers of impenetrable layers of cryptic technology.
Emacs was made for humans to use as a real tool. Barely anything else in the tech world really qualifies to the same degree. I'd love to peek into the parallel universe where we stuck to introspectable, malleable software and ended up with something closer to the Houyhnhnm computing stack[1]. Alas, for now that ship has sailed.
See also: That old story about Emacs at Amazon, etc.
[0]: "tech people"
[1]: https://ngnghm.github.io/
attila-lendvai · 2026-07-28
if you are pondering about that, then i think you'll like this:
https://ngnghm.github.io/
_mhr_ · 2016-05-30
This appears to be connected to François-René Rideau's TUNES project (http://ngnghm.github.io/talks/cc-lc2016.pdf). These slides are probably worthy of a submission themselves.
Twey · 2026-01-17
When you can build down as well as up (https://ngnghm.github.io/blog/2015/08/24/chapter-4-turtling-down-the-t… — or, equivalently, do away with the up/down orientation entirely, you can have your cake and eat it too.
And as a bonus if you control both slices of bread it's much easier to change the sandwich filling as well! (Though if the original sandwich-builder wasn't careful you might find some sticky residue left over on your bread… maybe someone should take this metaphor away before I do more damage.)
catern · 2021-04-20
The conceit of this article reminds me of http://ngnghm.github.io/index.html which has the same conceit - examining programming practices in a different universe.
nsm · 2020-09-15
There is this entertaining series called Houyhnhnm Computing that imagines computing invented by a different species.
https://ngnghm.github.io/index.html
pietroglyph · 2018-11-16
This is an entire (delightful) series: https://ngnghm.github.io/index.html
I have often wondered how a hypothetical alien would perceive our computer systems... It's wonderful to see someone has thought about it too (and they made it fun to read about!)
geofft · 2020-05-01
I think you won't be surprised that a) I don't disagree with any of what you wrote, b) I don't think it's super on topic, and c) I think claim b isn't obvious.
For the sake of argument, let's say "a deterministic, permanent virtual machine definition" is a desirable quality. LLVM IR at the latest version is a poor tool for this, yes. But LLVM IR at some fixed version of LLVM works fine. It's weird because now you can't use up-to-date versions of LLVM with it, but it's doable: pNaCl did exactly this, and dealt with forking the LLVM codebase in order to freeze the IR definition. If you don't like that, Java bytecode at some fixed version of the JVM probably works, .NET CIL probably works, WASM works (although it didn't exist when Nock was designed), etc. In fact, Urbit's web page compares itself to the JVM and WASM. Perhaps you could use Infocom's Z-machine, or BPF, or something. Alternatively, maybe you just want i386 assembly or ARM2 assembly or MIPS II or whatever. With a validator to make sure you're not using undefined/newer operations, and with some restrictions on threading and input (including input randomness), they're deterministic and permanent, and you've got a wide array of software tools for generating it.
But I think "why would anyone want a deterministic, permanent virtual machine definition" needs to be answered, if we're going to have any idea of what the topic of this comment chain is. We're talking about whether Nock and Hoon are intentionally obscure,…
ianbicking · 2020-04-30
After reading a few articles I felt like I finally figured out what Urbit was and wrote down my sense in a Tweet thread: https://twitter.com/ianbicking/status/1249862161758916609
In summary: Urbit is a functional/deterministic VM. That's mostly it. It runs a bytecode called Nock. The only language that really compiles to Nock is a weird language called Hoon. Because the VM is functional and deterministic, it is (in theory) also portable – you pick up the (ever-evolving) VM image and move it somewhere else, and it should act the same. Since the VM may move around there's also an identity/networking layer so you can talk to the VM wherever it is.
Right now Urbit is a program called u3 (runs on Linux or whatever) that runs Nock programs. OS 1 is such a program that does a couple things. It's unclear to me if they've really built an OS or just a library of routines that can be used to build a single multipurpose application.
The most direct article I found was "Review of Urbit": https://medium.com/@noahruderman/review-of-urbit-e7cc4c35f149
Urbit's own "Common Objections to Urbit" was helpful, in a methinks-he-doth-protest-too-much sort of way: https://urbit.org/blog/common-objections-to-urbit/
And that article pointed me to "Houyhnhnms vs Martians" which was helpful though also as weird as Urbit: http://ngnghm.github.io/blog/2016/06/11/chapter-10-houyhnhnms-vs-marti…
While some people say Urbit is feudalistic, I tend to agree more with those that call it simply…