Show HN: Mechanical Computer Kit (Roons)
76 uncial 23 5/1/2025, 3:57:43 PM whomtech.com ↗
I built a mechanical computer kit: https://whomtech.com/show-hn
tl;dr: it's a cellular automaton on a "loom" of alternating bars, using contoured tiles to guide marbles through logic gates.
It's not just "Turing complete, job done"; I've tried to make it actually practical. Devices are compact, e.g. you can fit a binary adder into a 3cm square. It took me nearly two years and dozens of different approaches.
There's a sequence of interactive tutorials to try out, demo videos, and a janky simulator. I've also sent out a few prototype kits and have some more ready to go.
Please ask me anything, I will talk about this for hours.
-- Jesse
Are the designs you've come up with 3D printed? I feel like there's a huge possibility of community advancement into this ecosystem (fully appreciating you should make a return on all of your time and creativity).
Thanks again for sharing something so cool.
Spintronics is really wonderful, not just for its cleverness (which is extreme) but also the total concept and aesthetics -- absolutely something I'm aspiring to.
And yeah these are all 3D printed. Agree with your sentiments around community stuff, I don't have any fixed ideas there but I would be absolutely delighted to see how people can build on this. There are so many possible physical cellular automata to explore; this is just one.
perhaps the correct term is "key" [0]? only thing i could find to contribute to this masterful project, by pointing out unimportant details like this.
[0] https://en.wikipedia.org/wiki/Key_(engineering)
> Do you want to work with a company servicing 6,000 Clients across 8 Different Countries, with turnover of more than 125 Million USD?...Are you looking for a Proven Track Record delivered by an Award-Winning Multinational Conglomerate with over Two Hundred Years of Business Experience?...If not, whomtech has you covered.
We've had this technology for centuries.
Seriously. This doesn't need transistors or clever materials. Mechanically, it's much less complicated than what (say) 18th century clockmakers were doing -- it's just bars going up and down!
So if you'd asked me 200+ years ago, I'd say: this device can compute nautical charts, calculate differential equations, and some third incredibly useful thing. Nowadays we can do all that much better with silicon etc, and I don't see this competing practically on that playing field...
... but I think it's useful mental technology to notice that there were simple ways to perform arbitrary computations, accessible much earlier on in the tech tree, that sort of got skipped for some reason. So while roons is probably siloed to education/experimentation/fun, I really hope it inspires someone to go -- what else are we missing?
Very cool, I'll check back for the Kickstarter!
Is there any use for something like a hopper that dispenses new marbles continuously?
Maybe it would need 5 minutes to show a prompt, but, if it works, it would be the greatest homage to computing (and Chuck Moore) ever.
There's Eforth for subleq, and the muxleq version feels almost like a native Forth on speed.
https://github.com/howerj/muxleq
The muxleq repo has the original subleq too. You can set the options for floating point and the do...loop (among others) in the Forth file and then you could just recompile the DEC file.
With the do...loop it's closer to the standards. And, yes, I can mimic for...next with ease with most ans forths such as pforth.
If any, I can link an already recompiled and more featured DEC file here.
BTW: You would like the book from the author too.
https://howerj.github.io/subleq.htm
You could almost certainly do a subleq in roons! Tbh it may end up being a practical approach to making a compact full computer -- though seems like it might compromise legibility. This is way outside my wheelhouse, thank you for the links, I have a lot of reading to do.
Re: an ASCII grid -- I explore this a little bit in the tutorials, but because of the up/down nature of the loom, each marble only occupies 25% of the surrounding whitespace, so this kind of display doesn't end up very visible. This is why I'm leaning more towards the peripherals approach for rendering stuff.