4 ms·
Sometimes when there's a discussion on alternative operating systems, people bring up Urbit. Urbit advertises itself as an OS with simple foundation: Nock VM. H
by m1el 6y ago
Sometimes when there's a discussion on alternative operating systems, people bring up Urbit.
Urbit advertises itself as an OS with simple foundation: Nock VM.
Here's the entire specification for Nock: https://github.com/urbit/urbit/blob/master/doc/spec/nock/5.txt https://github.com/urbit/urbit/blob/master/doc/spec/nock/5.t...
You may notice that there's barely any English in this specification, or even examples.
But that's not the main problem. The main problem for me is that this VM lacks support for arithmetic operations.
Well that's not quite true. It has all the necessary components to support arithmetic operations: it has comparison and increment.
Congratulations, now go build your own Peano from scratch.
The author claims that this is not a problem! The VM will optimize your increments in the loop to subtraction, and it will optimize those nested loops to multiplication and division.
But now you have an even worse problem! How the hell are you going to detect that a loop is a subtraction?! It's a halting problem hard task.
So instead what you end up having is a VM with an informal specification, and if you stray away too much from it, your program is going to run hundreds of loops just to subtract two values, which means the program may boil up the oceans until it finishes.
And if you're being so smarty-pants about increment and equality being sufficient for arithmetics, why not use Church numerals?
That's an even simpler foundation that the Nock VM!
https://tromp.github.io/cl/Binary_lambda_calculus.html https://tromp.github.io/cl/Binary_lambda_calculus.html
- imglorp 6y agoAnother critical work here: https://github.com/tibru/tibru https://github.com/tibru/tibru Tibru is Urbit spelled backwards. But these are implementation concerns. How about the user experience: is there any substance there to learn from or improve?
- m1el 6y agoI sincerely can't tell. I tried reading what is it about, and 6 years later I still don't understand what is it about. If you feel like it, please tell me if I'm missing anything: https://urbit.org/understanding-urbit/ https://urbit.org/understanding-urbit/ > 1 - Technology Well, step one is explaining the brand new VM and OS built on top of it. Non-starter. Then explanation follows by claiming global IDs, allocated using a blockchain. > 2 - User experience > We want Urbit to be a single, simple interface for your whole digital life. > A picture of nokia 3110 signifying OSv1, > iPhone v1 signifying OSv2, > and a blank space, signifying the supposed new OS version 3 What? I've re-read the entire website multiple times and I'm yet to understand the problem they're trying to solve, or lessons I'm supposed to learn. Maybe it's me, maybe nobody just told me that I don't understand new technology. But this seems like an elaborate toy for nothing.
- imglorp 6y agoNo, it's not you. I can't tell anything either, the doc is both too abstract (aspirational marketing) and too low level (buzzwords) at the same time. I can't tell what the entities are, what they do, and what the actual user experience is. What would help is put on the front page (1) a concrete system architecture diagram and (2) a UI screenshot. That would go a long way to answering WTF is this thing. They seem pretty active though! https://github.com/urbit https://github.com/urbit
- magnusmagnusson 6y agoIt's an operating system and personal server designed for the cloud era. You should be able to test it with a comet, they have guides in their page. "What does OS for the Cloud mean?" It attempts to make personal server as easy to use as browsers made front end, motivated heavily by idea of owning your social graph - instead of it being owned by the big tech companies. Pretty cool thing in my opinion, I own 1 planet. I recommend "Understanding Urbit" podcast if you are even remotely interested about their ideas/motivations.