13 ms·
Urbit: a personal cloud computer
- youngthugger 12y agoCan someone explain what is going on? Is this a new OS built from the ground up with it's own technologies ?
- deleted 12y ago[deleted]
- rm445 12y agoAt present it's a bunch of programs that run on UNIX systems. I guess the Hoon interpreter is a C program that uses readline, talks to the network over sockets and the like. But everything on top is quite self-contained and in principle one might remove the layers underneath. But I'm not sure that's necessarily the aim. As I understand the project's aims (and I'm not involved, I just read all the docs a few months back), it's more important that the Internet of the future is not a tangled mess of technologies that are insecure on different layers. Then it doesn't matter so what OS people's local machines are running. I hope the essay at the URL below is still relevant, it seems to describe the aims rather well. "The result: Martian code, as we know it today. Not enormous and horrible - tiny and diamond-perfect." http://moronlab.blogspot.co.uk/2010/01/urbit-functional-programming-from.html http://moronlab.blogspot.co.uk/2010/01/urbit-functional-prog...
- comboy 12y ago> http://moronlab.blogspot.co.uk/2010/01/urbit-functional-programming-from.html http://moronlab.blogspot.co.uk/2010/01/urbit-functional-prog... My brain did not enjoy any wall of text that much since I read the bitcoin whitepaper. Now I want to learn more and be up to date.
- jacquesm 12y ago> I guess the Hoon interpreter is a C program that uses readline "or even readline - this is not readline, it's internal to Arvo"
- pxndx 12y agoThis is either a very elaborate joke or the future of computing.
- johnloeber 12y agoI can't tell what this is, but it looks very impressive.
- weinzierl 12y agoI think it's neither, it's an interesting experiment.
- jeremyrwelch 12y agoIt's both.
- deleted 12y ago[deleted]
- gfodor 12y agoThey had me going in the Nock spec until "We should note that in Nock and Hoon, 0 (pronounced "yes") is true, and 1 ("no") is false. Why? It's fresh, it's different, it's new. And it's annoying. And it keeps you on your toes. And it's also just intuitively right."
- pavlov 12y agoThe same spirit seems to apply everywhere. The Hoon tutorial shows an incredibly elaborate way to build a decrement function, and it notes: "As you may remember, to decrement 'a' we need to count up to it."
- tel 12y agoThat's completely standard for Peano arithmetic though.
- callahad 12y agoTo be fair, that's also pretty close to exit code semantics on most POSIX systems, where 0 is success and non-zero is failure...
- deleted 12y ago[deleted]
- chatmasta 12y agoDocs: http://doc.urbit.org/doc/ http://doc.urbit.org/doc/
- olh 12y agoIs it for real? Finally a computational machine based on hyperoperations I can use.
- 1ris 12y agoSo, is it back? Launched again?
- zerker2000 12y agoNot as such, http://urbit.org http://urbit.org stands. If people still want to explore unofficially, github is their oyster.
- dtf 12y agoFor some reason I feel like I'm reading a Jorge Luis Borges story.
- rsofaer 12y agoIt's probably the Jorge Luis Borges quote on the setup page.
- chops 12y agoCode on Github: https://github.com/urbit/urbit https://github.com/urbit/urbit This seems crazy ambitious on its own, and add to it that it's public domain. Very curious where this will be headed.
- deleted 12y ago[deleted]
- krick 12y agoCould you please explain what being "public domain" adds to it?
- jevinskie 12y agoIt enables use (personal and especially corporate) with as little licensing fretting as possible.
- krick 12y agoIt just sounded as if being public domain somehow makes project more ambitious (that is, means to be more difficult to complete than if it wasn't public domain), so I probably just misunderstood.
- kelnos 12y agoExcept that some jurisdictions in the world don't have the concept of public domain, so, in those places, this code is legally in a very weird place. It's much better (IMO) to assert copyright, and then release under the most permissive license possible.
- urbit 12y agoYes, some people have made this criticism. We'll be thinking about it.
- gfodor 12y agoIs there an EAP for "Urbit in Action?"
- deleted 12y ago[deleted]
- eluos 12y agoThis video does a good job explaining Urbit: https://vimeo.com/75312418 https://vimeo.com/75312418
- marknadal 12y agoI really like the foundations of this, but I like design - how could I start building a UX interface for this?
- jqm 12y agoBy re-writing CSS to use a different syntax? You could call it Noom....
- yebyen 12y agoSpoiler: there is already/about to be a new interface you haven't seen yet. Do you mean the webshell, or the templating markup language? There is something you might want to look at called "Sail" Having trouble finding you a link, but there are some mentions about it here: https://github.com/urbit/urbit/search?utf8=✓&q=sail https://github.com/urbit/urbit/search?utf8=✓&q=sail Ah.. https://github.com/urbit/urbit/blob/master/urb/zod/main/pub/src/doc/sail-moveme.md https://github.com/urbit/urbit/blob/master/urb/zod/main/pub/...
- marknadal 12y agoand how long till Urbit can render marl marx and mane? aka how long till I can make a UX using web technologies that runs on Urbit?
- yebyen 12y agoAll of that stuff works now. If you're asking how long until it's supported, I'm not an employee of Tlon, so don't ask me. I can tell you that most of this stuff is still very slow, even if it works. Check out the demo app, you can click a button and increment a number on the page, and it generates an event that gets reflected out (through some like AJAX) through the server, back out to as many subscribers as are currently viewing the page in their javascript-supporting browsers, happens almost instantly. I have to apologize I have no short instructions to get you to this demo, it exists but I'm sure it may still rust more before it becomes a priority to build things based on it. I'm not sure if you're meant to be impressed by this demo, but there's also twitter API client you can use to tweet which is more obviously useful if not quite as whiz-bang.
- sjclemmy 12y agoI know enough to be interested. Not enough to know if its nonsense. Although, I read this: "A pier is an Urbit virtual machine that hosts one or more Urbit identities, or ships. When you run bin/vere -c, it automatically creates a 128-bit ship, or submarine. Your name (a hash of a randomly-generated public key) will look something like: ~machec-binnev-dordeb-sogduc--dosmul-sarrum-faplec-nidted,... and I laughed. A lot.
- GuiA 12y agoUrbit is a weird thing that feels like it comes from a parallel universe of computing. It's a bit hard to wrap your head around it at first, but it has some neat ideas. I like this article which introduces it: Urbit is perhaps how you'd do computing in a post-singularity world, where computational speed and bandwidth are infinite, and what's valuable is security, trust, creativity, and collaboration. It's essentially a combination of a programming language, OS, virtual machine, social network, and digital identity platform. http://alexkrupp.typepad.com/sensemaking/2013/12/a-brief-introduction-to-urbit.html http://alexkrupp.typepad.com/sensemaking/2013/12/a-brief-int...
- walterbell 12y ago"Despite messages between ships being encrypted, the founders state that they've purposely designed the network to make it as easy as possible for governments to regulate and control. It's not entirely clear why this is supposed to be a good thing."
- Quequau 12y agoMy take on that is that this design choice arrises from the anti-democratic authoritarian sentiments which (at least one of) the developers apparently hold. At least they have repeatedly expressed these sorts of sentiments in their rather long winded blog(s).
- yebyen 12y agoHave you considered that democracy is not actually immune to authority, and it's really a reflection of this, rather than a window into the designs of one crazy person? (hi Curtis) Maybe every system that comes along and says "impossible to be subverted by centralized governments" in reality is just saying "come and try to stop me, Federales". Do you think that is that what we all should be doing instead?
- Quequau 12y agoActually, I have. I understand that there is complex tension between fundamental human rights (like freedom of expression, freedom of association, & privacy) and realities of the intrusion & abridgment of these rights carried out by various state security agencies and corporations. I agree that any project which claims "impossible to be subverted by centralized governments" is just saying "come and try to stop me, Federales". Moreover, I feel that such claims are extremely difficult to substantiate (and so not particularly credible) and for the most part made by groups I'm not really motivated to associate myself with. Speaking in a very general sense (having kept up with the news & goings on related to technology, privacy, corporate activities, and state security activities for the past few decades); it's my opinion that this tension is not only not in an ethically defensible or sustainable state, it's not in the state that most of the people in the western capitalist nations believe & expect it is. So I find assertions like: "Despite messages between ships being encrypted, the founders state that they've purposely designed the network to make it as easy as possible for governments to regulate and control. It's not entirely clear why this is supposed to be a good thing." to be similarly worthy of skepticism and disconcerting as the "impossible to be subverted by centralized governments" claims. My feeling is that this statement translates fairly directly into "all user data is available to any corporate entity or state security agency for any purpose" and that this includes purposes like backchannel monetization through data aggregation and industrial scale warrantless surveillance & data collection. It's pretty obvious to me that you are pretty invested in this project and I've only spent a few hours perusing the various docs, repositories, and blogs. So I'm fairly hesitant to make any sweeping statements or claims of certainty. So, with those qualifications in mind, my conclusion after my perusal is that this architectural design choice is unlikely to be a reflection of some sort of pragmatic policy coming from a non-ideological position of social responsibility that's striving to minimize any intrusion & abridgment of rights while still allowing for the realistic needs of businesses and state security agencies. Frankly spoken, I personally find a number of the abstract concepts and architectural design choices in Urbit project to be fascinating and compelling. I've spent far too much time dredging around the information that is currently publicly available... Time I honestly can't afford. So it's really disappointing to me to find that there is a pervasive toxicity which is deeply intertwined with the project. My conclusion is that this toxicity makes the project broadly unusable (seriously) & and possibly even unfixable. Elsewhere in this thread I saw someone claim that there were big things coming in a few months. If this is accurate I look forward to it. Perhaps there will be changes and new developments which will demonstrate my current assessment inaccurate. Honestly, that would make me pretty happy... but from what I've seen so far, I suspect that's really, really unlikely.
- amelius 12y agoSo let me get this straight. This project is going to define 1. A new computing model, similar to how combinators work. 2. A programming language which produces expressions involving these combinators. 3. An operating system built on the above. 4. A cloud computing environment built on the above. Sorry, but while interesting, this sounds a little too ambitious, even by HN standards :)
- callahad 12y agoGoing to? All of those already exist and run, today. :)
- GuiA 12y agos/This project is going to define/This project is defining/ There's code that you can run and can play with. It may sound super far fetched (and it is), but the guy behind it is putting sweat into it.
- amelius 12y agoAnd what is the reason why an existing language and compiler doesn't suffice for 1 and 2? For example, Haskell and GHC took decades to become what they are now (a powerful language and compiler). It seems quite wasteful to rebuild that work. If absolutely desired, Haskell can also be converted into combinator form, and vice versa, so why not use it? Seriously.
- cdcarter 12y agoBecause it's incredibly fun to work on? It's a brilliant VM once you wrap your brain around it, and the hackers behind it got to really try something new?
- deleted 12y ago[deleted]
- implicit 12y agoJudging by the documentation, Urbit looks to be less about leveraging pre-existing work and more about reinventing computer science and software engineering from the ground up.
- tyrion 12y agoIs this free software? I don't see a license in the Github repository.
- SEMW 12y agoOh the author's blog[0], he states that all his code is in the public domain. [0] http://moronlab.blogspot.co.uk/2010/01/moron-lab-goals-principles-rules.html http://moronlab.blogspot.co.uk/2010/01/moron-lab-goals-princ...
- happybeing 12y agoThat description sounds like http://MaidSafe.net http://MaidSafe.net, which is rapidly approaching launch.
- abrichr 12y agoThis seems super interesting. One of the people behind it is David Irvine [1], who apparently "was Designer / Project Manager of one of the World’s largest private networks (Saudi Aramco, over $300M)." [2] [1] http://www.forbes.com/sites/kashmirhill/2014/04/08/beyond-bitcoin-crypto-ownership-companies-hope-youre-ready-to-decentralize-everything-on-the-internet/ http://www.forbes.com/sites/kashmirhill/2014/04/08/beyond-bi... [2] https://github.com/maidsafe/MaidSafe/wiki/unpublished_papers/SelfAuthentication.pdf?raw=true https://github.com/maidsafe/MaidSafe/wiki/unpublished_papers...
- melchebo 12y agoMaidSafe looks more similar to the original idea of Wuala. But they noticed they basically needed storage servers anyways, because the p2p nodes on people's computers and laptops had too much churn to keep enough copies online.
- rogerbraun 12y agoIt's made to confuse and mystify. The Borges quote from ' Tlön, Uqbar, Orbis Tertius' gives it away. Really well done, though!
- sjclemmy 12y agoThis guy should have been a comedy writer, not (and?) a programmer. I found this whilst backtracking: http://moronlab.blogspot.co.uk/2010/01/moron-lab-goals-principles-rules.html http://moronlab.blogspot.co.uk/2010/01/moron-lab-goals-princ...
- hawkice 12y ago"Comedy writer" isn't quite how I'd describe it, but I'm surprised no one has mentioned that Urbit is run by the guy who writes/wrote under Mencius Moldbug, who is perhaps one of the more controversial people to achieve internet fandom. If you read through all the archives on his site and have no opinion (probably somewhere in the "I hate him" or "I find this reasonably convincing" statistical clusters), then your sense of outrage has been diminished, I would say. http://unqualified-reservations.blogspot.com/ http://unqualified-reservations.blogspot.com/ Note: I myself am unconvinced by his writings, and find him to be just another ironic instance of the ironic nature of American culture, eager to avoid the appearance of naivete by abandoning all hopes that are fragile. Do with that what you will.
- deleted 12y ago[deleted]
- vezzy-fnord 12y agoUrbit is to computing what Thelema is to spirituality.
- egypturnash 12y agoThis sentence made me laugh more than it should have. Or maybe exactly as much as it should have, given that I spent a year drawing a Tarot deck that riffs on the Crowley/Harris Thoth...
- samatman 12y agoYou have no idea. http://mnemnion.github.io/blog/2013/12/19/commentary-on-ax/ http://mnemnion.github.io/blog/2013/12/19/commentary-on-ax/
- sz4kerto 12y agoPrevious discussion: https://news.ycombinator.com/item?id=6438320 https://news.ycombinator.com/item?id=6438320 I've been watching this since it's started. It has some magical atmosphere around it and you never now whether it's serious or not; whether it's a real technical project or some kind of artistic performance. I think I have a destroyer somewhere.
- canjobear 12y agoLots of negativity in the previous discussion. Did the page used to be phrased in a combative way or something?
- djur 12y agoEarlier versions of the site featured a larger quantity of Moldbug's baroque, trollish prose style. Plus there was an extended argument about language design, due to the author being present in the thread. Frankly, I'm disappointed. It used to be clearly the personal work of a lunatic. Now it feels more like a quirky open source project.
- Adlai 12y agoWhat's a quirky open source project, if not the communal work of collected lunatics?
- state 12y agoI hate to break it to you, but it's quite real.
- thibauts 12y agoI can't decide if it's a science fiction novel written in code form, a programming environment, a game, a radical creative take on computing and networking ... Whatever it is, it's genius.
- deleted 12y ago[deleted]
- Animats 12y agoWas this written by a program?
- pbhjpbhj 12y agoUber-hackers of the future will write code for nanobots that cause them to self-assemble in to an android, the android will then write a program that generates a system like this that describes a new programming paradigm. Or, something. This reminds me of the Newton-Liebniz debate on creation.
- sheerun 12y agoStop wasting my time...
- cwyers 12y ago"More specifically, Urbit is a personal cloud computer. Right now, the cloud computers we use run OSes designed for minicomputers in the '70s. An ordinary user can no more drive a Linux box in the cloud than fly an A320. So she has to sit in coach class as a row in someone else's database. It's definitely air travel. It's not exactly flying." I doubt very much that the average person wants to either fly their own airplane or manage their own cloud computers, no matter how simple you try to make either of them.
- lexcorvus 12y agoI doubt very much that the average person wants to…fly their own airplane You don't think the average person would want to fly their own airplane if it were as easy as driving a car?
- cwyers 12y agoWhat's so easy about driving a car? Over 30,000 people die per year in the United States due to automobile accidents. And that's after requiring every driver get a license, and teaching basic driving skills as part of our high school system. Driving a car isn't all that easy, and we're terrible at it. There's a reason that Google is inventing self-driving cars, not personal airplanes. And the amount of possible simplicity is constrained by the problem you're trying to solve -- you can't manage to make a plane as simple as driving a car, because the car only has to navigate in two dimensions while the plane has to navigate in three. If a car stops, the car's just sitting there, whereas if a plane stops gravity is going to pull you down in a likely to be fatal incident. You can't make a plane as simple to use as a car without changing it into something other than a plane.
- Jedd 12y agoI suggest the car / airplane analogy was already strained before we got here. Driving a car is easy, as evinced by the large numbers of people that are capable of it. Whether driving a car successfully (ie. without dying) is easy is obviously a matter for debate. With 0.000015% failing in this severe way, it might be argued that driving a car and dying is not particularly common, and could (no disrespect to the people involved) be thought of as a rounding error. We have no evidence that Google isn't trying to invent self-driving or personal airplanes. Try suddenly stopping your car on the autobahn, and see how tranquil the 'just sitting there' experience is. Anyway, perhaps we are all missing the underlying point - an overly complicated solution (to an otherwise straightforward problem) has been the received wisdom for decades, and a re-think from fundamentals is almost definitely worth the effort.
- kungfooguru 12y agoIt is so purposely obfuscated it has to be a troll.
- Estragon 12y agoIs nock designed to run untrusted, potentially hostile code with guaranteed identical results on all platforms? I'm looking for a virtual machine (or NaCl-like sandbox) which does this. Edit: To anyone who downvoted me, could you please let me know why?
- lexcorvus 12y agoI'm just speculating, but the HN upvote/downvote arrows are tiny, and it's easy to click on the wrong one accidentally. (This is especially true on tablet devices.) Your comment clearly doesn't deserve a downvote, though, so I've thrown you an upvote to help make up for it. :-)
- urbit 12y agoYes - although actually achieving this result in practice (and efficiently) takes a lot of doing right.
- Estragon 12y agoThanks. How close are you to achieving that?
- urbit 12y agoNock works perfectly, of course, but it's poorly optimized. The various "jets" (optimized implementations) in our runtime haven't been adequately tested and there are probably a few corner cases, errors, etc, where the behavior doesn't match. Even the new Nock runtime (I just rewrote more or less the whole interpreter) is probably a little too bound to Urbit specifically. But the system has been self-hosting for quite some time, and there's certainly no doubt that the general approach works...
- k2enemy 12y agoI found this video helpful in understanding the project: http://vimeo.com/75312418 http://vimeo.com/75312418
- hyyypr 12y agoThanks, sums it up pretty good. And somehow makes it even more magical than when you read the docs.
- jevinskie 12y ago128-bit submarine vs 32-bit destroyer reminded me of IPv6 vs IPv4.
- javaexpert101 12y agoIts fairly distinct. A destroyer is like owning a bunch of submarines, in a way. This is the one point where the model kind of breaks this layer, though. Basically, it can't run out of address space because of the abundance of subs.
- state 12y agoI can't say we were expecting this, but it's nice to see that people are still interested in what we're working on. Thanks! What we're brewing in the lab has diverged quite a bit from what's publicly available. Even these docs are quite out of date. If you're interested in keeping up with what we're doing: either sign up at http://urbit.org http://urbit.org or send me an email, galen at tlon.io.
- _dps 12y agoFrom the article: "It's definitely air travel. It's not exactly flying." This phrase has an Alan Kay-ish quality, and was enough to pique my interest. Anyone seriously trying to execute on a project that addresses this concern seems worth following. Who knows, you might even succeed :)
- andyidsinga 12y agoi thought that was interesting too. i find it an interesting exercise to explain to non-technical folks that i have several virtual computers running in the cloud. .. looks on their faces says it all.
- duckingtest 12y agoSeems fun, because I didn't understand everything while skimming the website. >We use so many of these ASCII glyphs that we like to be able to read them out loud. A language is meant to be said. That's a very weird idea there. A painting is a form of language, but can a painting be said?
- meepmorp 12y ago> A painting is a form of language, but can a painting be said? I suppose if you use a very broad definition of language, that might be true, but in the sense of natural languages, paintings are not generally a form of language. They may be a form of symbolic expression, but that doesn't make them a language.
- duckingtest 12y agoA programming language is not a natural language. The quote refers to Hoon specifically.
- tree_of_item 12y agoThe programming languages you're familiar with don't consider themselves to be similar to natural languages. This one apparently does, and why not? Why do we even use the word "language" to refer to our computer UIs when we balk at mundane language phenomena like context-sensitivity?
- krick 12y agoI definitely was thinking about something like this, but not exactly this. I mean, yeah, the only way to save ourselves from damnation is to finally announce "enough of 70's!" and rewrite everything from scratch, so the idea is dear to me, but that actual implementation of the idea is… maybe "weird" is the right word. I'll continue reading, but I already have a feeling that after I'll get myself completely familiar with it, I will hope it will not succeed.
- jacquesm 12y agoI hope it will succeed but that it won't be the only thing that will succeed and that some will take inspiration from it to build something even better. Challenging the status quo as such is a useful property and showing that you can in fact reboot is useful as well. That said, the more I read about it (a couple of hours so far) the more I'm thinking it will not succeed because of some of the weirder philosophical decisions that have already been cast in stone. It's basically a variation on the 'landgrab' theme. Think bitcoin or the domain name system with half the space grabbed up by the ruling corporation, with an arbitrary 'ingroup' and a very large 'outgroup'. You'd think that by now the whole point the web rammed home with its unbridled success is that open is better but I guess the mobile walled gardens have whetted the appetite of future wannabe corporate overlords. Anyway, I still wish them best of luck, that's an economic move on my part, it costs nothing and I suspect they are self limiting enough that it will not achieve the world domination they are dreaming of. See also: the singularity.
- urbit 12y agoI prefer to think of it as: you can be "free as in beer" or "free as in speech," but not both. Sith Lord Zuck has set you free as in beer, but not in speech. Urbit will set you free as in speech, but not as in beer. The difference is simply that while there are a limited number of Urbit identities (or at least memorable identities, ie, 32-bit "destroyers") in the world, and therefore they can't possibly be made free as in beer, neither I nor my evil minions have any practical power over a destroyer once we create it. Moreover, if you genuinely think of any individual or organization involved with Urbit as evil, there are plenty of independent carrier-holders you can get a destroyer from. (~del, for instance, will ship destroyers when we do, I think. He's some guy in Rochester whom I don't know from Adam. So, we'll let him serve the first 16 million people who want to escape from our evil dictatorship.) Yes, by default the normal way to get onto Urbit will feel like the normal way to get onto Facebook. However, even if you are initially issued and hosted by us, you can move your image at any time to any other host, or to your own machine. Currently there's no way to stop using your issuing carrier for network services, such as firewall hole punching, but this is obviously a 1.0 feature. By design, there is no sort of leverage you can't escape from. So Urbit strikes a sort of balance between governed and ungoverned networks. The limited address space will hopefully make it economically impractical to abuse the network for profit - a spammer is always a Sybil attacker. But as a destroyer you are not ruled by any master you can't easily escape from. The only thing you can't escape is your own reputation. Which you shouldn't be able to escape from. We should probably highlight this difference a little more in the doc...
- macu 12y agoI read partway through and began to worry that maybe old age has finally caught up to me at 25.
- Zillion 12y agoThe choice of 0 for true and 1 for false is _wrong:_ On the Curry-Howard correspondence (and above) a type corresponds to a false sentence when it is not inhabited, like 0, and to a true sentence when it is. The Curry-Howard correspondence is fundamental, and so that is the. correct way to go, absent evidence in the other direction. I don't know whether Nock is a better foundation for a programming language than the Lambda Calculus, but it is at least as elegant—I'm glad someone is seeing where it leads I'm a fan of internet freedom, which often requires anonymity, and so I have my doubts about an OS that preserves exerything as a feature of the design.
- jdpage 12y agoAside from the zero/one thing, if I'm understanding this right, Nock is based on the SKI combinator calculus, where the combinators are S: λxyz.xz(yz) K: λxy.x I: λx.x From there, you can express anything from the lambda calculus, and vice-versa. So I think it's reasonable to say that Nock is just a machine-friendly way of expressing the lambda calculus.
- urbit 12y agoI wouldn't say it's based on SKI - just relatively similar. There are a lot of ways to skin this cat. SKI is obviously a lot simpler mathematically, but I wouldn't want to try to use it as a compiler target...
- jacquesm 12y agoThe 'I' is optional, all you need is S and K. I = (SKK) You can go simpler still: Iota.
- urbit 12y agoIANAM, but I thought really if there was one great lesson of 20th-century mathematics, it's that nothing (ie, no system of axioms) is fundamental and superior to all others. For instance, Church-Turing equivalence does not tell you that Church's model of computing is more fundamental than Turing's or vice versa. If you look at where lambda comes from, it comes out of this same project of metamathematics that originates in the 19th century with people like Frege - how do you describe math in terms of math? Then it was discovered that this project could be repurposed as a definition of computing. Reusing old standards is a thing that happens, but sometimes you'd come up with a different approach if you were starting from scratch. As I've pointed out elsewhere on this thread, the shared theoretical foundation of lambda does not lead to a family of languages that are compatible in any meaningful sense. It was probably a bad decision to make 0 true and 1 false, but not for mathematical reasons. There is always a lot of C coupled to Urbit, and what ends up happening is that the easiest way to handle this problem is to write C in a sort of dialect in which 0 is true and 1 is false. This is slightly cumbersome, and the perceived elegance of 0 == true isn't at all worth it. However, it's also nowhere near awful enough to revisit the question, which would be quite tricky considering the self-compiling nature of the system!
- jqm 12y agoI'm just wondering if it will run on TempleOS.
- urbit 12y agoTempleOS is a competitor, not a partner. Privately, between you and me - that guy is going down.
- macu 12y agoIt seems like a work of genius, but it may be many years before an artificial intelligence can fully interpret its unique significance. In fact it reminds me about a massive book on cellular automation that I once picked up, which went to incredible length in interpreting the potential of dynamic patterns in 2D space. It was a monument to extreme intellectual rigour and dedication, if nothing else. If only I could remember the title.
- zenlikethat 12y agoWas it "A New Kind of Science" by Stephen Wolfram?
- macu 12y agoThat's the one. Thank you
- tunesmith 12y agoSounds like Wolfram's New Kind Of Science.
- santoshalper 12y agoCurtis Yarvin is a grand fool, and everything with which he is involved in entirely bullshit. If you find bullshit amusing, some of his writing is worth a few hours of your time. Just don't expect any of this to amount to anything.
- BorisMelnik 12y agoDon't really get what this is technically, but conceptually I do understand it and would love to back a company like this. Technologies like this could kill Microsoft (Windows) and many others.
- jabits 12y agoWhy would this be any better? Then this is the big company that screws things up.
- emmanueloga_ 12y agoInteresting distribution of contributors [1]. Usually what I see on most projects is one or two guys contributing the most of the code since the start of the repository, with minor contributors coming and going. These contributors chart seem to show different guys taking the helm at different points on time though. 1: https://github.com/urbit/urbit/graphs/contributors https://github.com/urbit/urbit/graphs/contributors
- Scaevolus 12y agoNot quite. It looks like urbit has imported the histories of multiple other projects. LibUV: https://github.com/joyent/libuv/graphs/contributors https://github.com/joyent/libuv/graphs/contributors Re2: https://code.google.com/p/re2/source/list https://code.google.com/p/re2/source/list
- state 12y agoHm. Not sure how that happened. We have had a number of different contributors.
- emmanueloga_ 12y agoBTW, since I know how much does the hackernews crowd appreciate baseless speculation (sorry!), I'd add this: I wonder if Ryan Dahl is involved with this project. Working on something like this would be compatible with some of the things he wrote about before disappearing [1]. 1: http://xahlee.info/comp/Ryan_Dahl_on_software_complexity.html http://xahlee.info/comp/Ryan_Dahl_on_software_complexity.htm...
- andyidsinga 12y agoi loved everything i read on that page ...especially the part about it being not good formanyting but screwin around! BTW - re Hoon ...a reference to the sea faring settlers in Brin's uplift series?
- hunnypot 12y agoThis gives me a weird Daemon vibe.
- comrh 12y agoThis is like if Douglas Adams and Greg Egan did pair coding. Super interesting.
- JDulin 12y agoOh, Urbit! Where to begin?... First of all, this is staggeringly brilliant. You should pay attention to it in the coming months. I am not sure if it's destined to be the future, but I sure as hell hope it is. I had the privilege of interning at Tlon, the company working on Urbit's development, this summer. It owns most of the namespace (Personal cloud computer IP addresses, essentially.) and is where the architect of the system works full-time. They are funded, well enough, by VCs you know of. Urbit is not really launched yet though - We spent the summer doing a lot of work getting the network, file system, protocols, and application layer in "Industrial grade" shape, and I believe more of that is happening this fall. Because the system is still unlaunched and the docs are being retooled, I imagine these pages are discombobulating. That's... expected. Urbit has a lot of odd ideas that take time to appreciate. However, if you do take the time to understand the motivation behind the design of everything from Hoon's appearance to the network protocol replacement for TCP to the vision for future social networks, you'll find some of the best and most complete computer science research done in decades in networks, systems, and functional programming. The essential idea is not an outlandish one - We need a new basis of computing and networking to build digital identities with, and 1970s system software is not up to the task. It's unfortunate that ambition and a sense of humor can be misinterpreted as a joke today. For now, you'll just have to take my word for it [1] that these guys are deadly serious and have the technical chops to back up their ambition. Future documentation and applications built on the OS should soon make that more immediately evident. [1] Or start reading the tutorials!
- lumpypua 12y agohttps://github.com/urbit/urbit/blob/master/urb/zod/arvo/ames.hoon#L470 https://github.com/urbit/urbit/blob/master/urb/zod/arvo/ames... There are hundreds of lines of noise. This makes perl and forth look absurdly readable. What on earth do the directory and file names mean? I dunno how familiar people on HN are but the original author of urbit is Mencius Moldbug, a neoreactionary blogger. His style of writing is absurdly obfuscated and purposely impenetrable if containing some interesting ideas. The exact same thing is true of urbit. Interesting ideas but obfuscated the point of utter inaccessibility. Here's sort of the wider group of blogs he philosophically aligns with: http://rationalwiki.org/w/images/d/d5/Scharlachs-visualizing-neoreaction.png http://rationalwiki.org/w/images/d/d5/Scharlachs-visualizing... His views are likely unpopular around here but I am a fan of a bunch of those other blogs, and I've tried to dive into Moldbug's blog Unqualified Reservations a few times. It's kind of insane—the guy is clearly very intelligent—yet writes in his own discursive style that is absolutely opaque.
- nnq 12y agoIt's probably the second time that I come across Urbit and found it attention worthy, but... how hard would it be to explain at least some of the concepts in plain English and with some nice intuitive drawings/schemas on the side, really? I mean, this http://doc.urbit.org/doc/hoon/tut/1/ http://doc.urbit.org/doc/hoon/tut/1/ is supposed to be a "tutorial" but it's definitely not what anyone else would call a "tutorial". It's more like a "philosophical introduction" to a PhD paper, which would be ok if labeled as such. A tutorial should be about "how do I do X using Y, without bothering to really understand Y" because this is what a tutorial is about, a "mostly wrong" "mental shortcut" that you take in order to gain some kind of "feel for how something works" before actually delving deeper and reading up on the theory.
- state 12y agoThis is solid and thoughtful feedback. Thanks. Our documentation has advanced since this was posted. I'd be interested to talk more out of band, but can't find your email. If you're up for it I'm galen at tlon.io.
- jacquesm 12y agoThis is fun stuff. Reading around a bit I found this: "While nowhere near the simplest such automaton known, and certainly not of any theoretical interest, Nock is so stupid that if you gzip the spec, it's only 374 bytes. Nock's only arithmetic operation is increment. So decrement is an O(n), operation; add is O(m * n)... " Don't they mean 'subtraction' rather than 'add'? edit: This is so fascinating, it has me totally enthralled. Think smalltalk meets lisp meets some wild eyed programmer who knows just how to appeal to the general frustration most programmers should have (do they?) about the state of our art. Best post on HN in a long time, very curious how this one will turn out in the long term. May all your ships come in ;) edit2: Digging around a bit more: Peter Thiel and a bunch of others have apparently invested in this through a vehicle called 'Tion', https://angel.co/tlon https://angel.co/tlon (the Thiel reference is that Thiel backed John Burnham, who is co-founder in Tion).
- Chattered 12y agoI'm not sure on the specifics here, but I'd have thought that subtraction would be O(n). To perform n - m on a simple register machine with only increment, you just count from m up to n (and count from 0 up to n, outputting 0 if you reach n, since subtraction is partial). EDIT: It seems they are going for a naive implementation where subtract just repeatedly calls decrement, so yes, that's going to be O(m*n).
- auggierose 12y agoIt depends on what the n means in O(n). If n means anything other than "the number of digits of x" (i.e., n = log(x)), then this is absurdly slow.
- Chattered 12y agoThe n is just n: it's the number you are subtracting from. Of course, it's impractically slow, but I believe it's just example code in a opening tutorial for the Nock language.
- 12y ago
- WorldWideWayne 12y agoAre there a lot of women using Urbit or something?
- path411 12y agoI always find the forceful use of female gender pronouns to be very odd. If you are conscious of and disagree with the general use of male gender pronouns, wouldn't you wan't to push the use of gender neutral pronouns? Personally, I'd rather see the use of some of the new made up neutral pronouns than thinking swapping male to female pronouns is a viable long-term solution.
- vesche 12y agoWhen I read through the urbit git page and it finally clicked to me what this is and what it could mean, I literally said out loud in my room "Oh, that's really fucking cool."
- DennisP 12y agoFor those of us who it hasn't clicked for, could you lend us a hand?
- newuser88273 12y agoThe project is based on a fundamental insincerity, which makes me suspicious. All material about Urbit makes a big point of their minimal spec, again so in the linked piece: "The spec fits on a T-shirt and gzips to 340 bytes." What do people expect when they read a thing like that? I don't know about you, bit I'd expect that I could ignore the obfuscated strangeness of their higher level languages etc and just implement stuff to that minimal spec. So you expect you can do that. But you can't. That minimal spec might as well not exist; you can't just read it and go on to implement, say, a programming language on top of Urbit. "But you can!" you might object. Try it. Read nothing but that spec and implement, say, a tiny BASIC on top of it. Compile some simple programs. Run them. Now, what happens? Nothing, for now. But look, my processor core is heating up. Something must be happening! Just wait. Wait. Wait. No, still nothing. Wait some more. Just a few years, maybe? No, still nothing (except heat). Etc. So no, that elegant spec doesn't give you anything but a way to heat your computing cabinet. Realizing this, I put Urbit in the "suspicious, may be a con" bin. Hasn't escaped from there, yet.
- perlgeek 12y ago> The project is based on a fundamental insincerity, which makes me suspicious. All material about Urbit makes a big point of their minimal spec, again so in the linked piece: "The spec fits on a T-shirt and gzips to 340 bytes." Last I read something like this (I don't know if it was about Urbit or something else), it turned out that there was no IO included in that spec. So, useless for any real-world purpose, and as you said, insincere.
- yebyen 12y agoThe IO are events, and the events come from unix (for example: signals, files and sockets). Urbit is not meant to replace Unix. "They call us, we don't call them" is the fundamental precept in play here. I assure you there is I/O in Urbit, the vanes include an HTTP server, a Hoon-interpreting shell which accepts keyboard input from a terminal, and a UDP layer for facilitating ship-to-ship communications. All of that is written in Hoon, which compiles into Nock.
- roboben 12y agothe only bad things seems that everyone is dependent from a server run by one company. why is there a need for this kind of registry? wouldn't be a distributed system better for this?
- yebyen 12y agoMan, I just wrote you a big long explanation of how you can update your filesystem even if your parent ship is gone, with shell command examples, but then my battery died before I had a chance to post it, and I'm totally not rewriting it now because I'm sure you don't care that much, and the real punchline is all of this information is about to be obsolete anyway. The long and the short is, there are carriers (I have one), who are enumerated in the source code (like by public keys) and they are not dependant on each other, except for the sake of being able to route to child ships. So if ~zod is down, and everyone depends on ~zod, the network is indeed hosed. Everyone with active links can continue talking to each other, but nobody new can find anyone, and nobody can find anyone new. Every ship depends on a carrier for routing. By convention, every time you launch from your pier, you get a new random port number and any ship that was looking for you at your old address needs to hear about your new address from a higher-up ship. So it is distributed, but finitely distributed. There are only 256 carriers allowed, and they are the only ships that are really independent. Though there has been talk about fleshing out how ships can be separable from their "sein" domain, or parent ships, currently almost everyone is from the same lineage and thus depends on the same pair of servers for pretty much everything regarding the network. This "centralized" design is indeed a core feature of the network, and it even relies on DNS to be bootstrapped, another centralized system. Now, can you show me a decentralized system that doesn't need any of that? I don't know exactly how magnet links or tor, or freenet work, but I am skeptical that they are honestly less centralized than this when it comes to bootstrapping.
- yebyen 12y agoFollow-up: As I suspected, regarding magnet links > The first time a client joints the DHT network it generates a random 160-bit ID from the same space as infohashes, and then bootstraps its connection to the DHT network using hard-coded addresses of clients controlled by the client developer. This sounds really quite like the process of creating a submarine, and reaching out to the carrier ~zod. The fact that the init process is hardcoded to trust ~zod doesn't change that you can really init your ship's filesystem from any other ship, provided you can reach it. Carriers are all found through the existing DNS infrastructure. Other ships are able to be reached "in-band" by asking a carrier for an introduction. Without this seed or hardcoded list (or by conducting a brute-force search), or some kind of broadcast mechanism, bootstrapping a distributed network is not actually possible.
- jacquesm 12y agomore interesting reading here: http://alexkrupp.typepad.com/sensemaking/2013/12/a-brief-introduction-to-urbit.html http://alexkrupp.typepad.com/sensemaking/2013/12/a-brief-int...
- juanbyrge 12y agoMENCUIS MODLBUG IS OUR DEAR LEADER, lol
- deleted 12y ago[deleted]
- yongjik 12y agoIs it just me, or is anyone else reminded of the story of Project Xanadu? (A great read[1], if you have an hour to spare.) Especially this part: > Shapiro also discovered that the group had been working together so long it had developed a kind of private slang. It took months to comprehend what the programmers were talking about. Most of them were book lovers and trivia mongers who enjoyed developing a metaphor based on obscure sources and extending it via even more unlikely combinations. For instance, the object in the Xanadu system that resembled a file was called a bert, after Bertrand Russell. With files called bert, there had to be something called an ernie, and so in the Xanadu publishing system, an ernie was the unit of information for which users would be billed. To understand the details of Xanadu, Shapiro had to learn not only the names for things, but also the history of how those names had come to be. [1] http://archive.wired.com/wired/archive/3.06/xanadu_pr.html http://archive.wired.com/wired/archive/3.06/xanadu_pr.html
- urbit 12y agoI resemble this remark. We're making progress more than twice as fast than Xanadu!