1/ Q: What is Urbit?https://twitter.com/M_C_Masters/status/1502277549338107909 …
-
-
9/ Each line in the above image represents one action that can be done in the VM. There are 16 or so actions this micro / baby / software defined computer can do. Everything else is built atop those.
Show this thread -
10/ The first two lines say "there is an operation which, given some piece of data, will tell you if that piece of data is a number, or a datastructure". The next two lines say "there is an operation that adds 1 to an integer, but does not modify a datastructure".
Show this thread -
11/ The next three lines say "there is a function which tests if two things are identical to each other". Etc.
Show this thread -
12/ The VM operations get weirder as you descend the list. In the middle we get data access...and this is where it is revealed that the VM does not use linear memory like every other bit of computation ever in the history of the world. See, in computers, memory works like >
Show this thread -
13/ a long row of mailboxes. The first mailbox is number 0, the next one is 1, next is 2, next is 3... etc. And computers operate, at a base level, by taking the data in mailbox 13, adding it to the data in mailbox 98, and storing the result in #9971. or ...
Show this thread -
14/ looking at the number stored in location 931, and if it's 0 next moving on to mailbox 932 and performing whatever operation is stored there, but if that first number ISN'T zero, then instead going somewhere else and etching an instruction from that location.
Show this thread -
15/ but, key thing here, is the memory is linear. Addresses get bigger and bigger. In the urbit VM, memory is a tree structure. The first memory location has two children. Each of those children has two children. Etc. So to get to a certain memory location you can't just >>
Show this thread -
16/ start at location 0, check your notes, see "ahh, we're going to location 9 million and 6 ...let's speed walk along this row of mailboxes till we get there". Instead you start at location 0 and then take a forking path: left, left, left, right, left, right, right right...
Show this thread -
17/ The language, the 16 opcodes, that run on this virtual machine, are called Nock. Nock is insanely difficult to program in, so Curtis wrote a higher level language ON TOP of Nock, called Hoon ... which is ALSO insanely difficult to program in.
Show this thread -
18/ OK, we're back to the part of the thread that normal people can follow. So, we've got this new programming language called Hoon, which runs on top of a new virtual machine. So what? Well, the software is free. You can download it and run it on your windows, linux, Mac >
Show this thread -
19/ and when you do, the software on your machine is in connection with every other person in the Urbit-verse, or, rather, the software running on THEIR machines. You can type at your local Urbit, and interact with other people and their local Urbits. These local things >>>
Show this thread -
20/ were once called "ships", then "yachts", and after three or four renamings they are now called "planets" or "comets". A planet or a comet is a bunch of things at once:
Show this thread -
21/ * a window you can type into * a store of information on your local disk * a "mailing address" that is unique from every other "mailing address" in the urbit-verse (kinda like an email addr, or a domain name, or an IP address) * NFT "property" that can be subdivided & sold
Show this thread -
21.5/ Twitter apparently broke threading here. Thread continues ---> (tho if you go here and look for context, you can see that I threaded it correctly and 21 precedes it )https://twitter.com/MorlockP/status/1502285486865403911 …
Show this thread
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.