Thursday, January 14, 2010 34 Comments

Urbit: functional programming from scratch

My good friend, C. Guy Yarvin, continues the saga at his new blog, Moron Lab.

In case all this programming stuff bores you and you're looking for more traditional UR material, I suggest the Adams-Adams letters. Or, more topically, Lothrop Stoddard's French Revolution in San Domingo... discuss.


Blogger G. M. Palmer said...

This comment has been removed by the author.

January 14, 2010 at 5:32 AM  
Anonymous josh said...

I think Newt won a prize (math major at Cal Tech?). Bravo!

I tried to make it through that whole post, but I have pretty much no idea what he's talking about. It sure sounds important though.

January 14, 2010 at 5:42 AM  
Blogger G. M. Palmer said...

I fear we've seen the last of Mencius for a while. Mr. Yarvin appears to be on a bit of a manic kick. I hope he remembers to feed the baby.

January 14, 2010 at 5:57 AM  
Blogger G. M. Palmer said...

Josh: did you finish? Nock/Watt/Urbit allows for the SF cryptography MM needs for Neocameralism to work.

January 14, 2010 at 6:53 AM  
Blogger Leonard said...

Without having read anything, let me assure you that crypto exists already. It does not need the intellectual ramblings of an geek like "Yarvin". And outside of that, neocameralism doesn't need crypto to work; it needs it for stability on longer time scales.

January 14, 2010 at 7:26 AM  
Blogger G. M. Palmer said...


Tell that to the masses who chalk it all up to SF every time MM mentions it (I'd tell you to search the archives but you've been here long enough to see the comments).

Also, Yarvin's work appears solid. Though I can barely evaluate it, I've sent it to CS buddies of mine & they give it the thumbs up (though as WHY?!)

January 14, 2010 at 7:28 AM  
Anonymous josh said...

I gave up after half. I don't even know what a "noun" is. At the half-way point, I started just reading topic sentences.

Nice pick-up on the cryptography angle. Although, MM mentioned way back in the beginning of the blog that he was working on a programming language. I suppose that is what this is. From what I glean he is trying to solve a general problem, not a specific one.

January 14, 2010 at 8:27 AM  
Blogger G. M. Palmer said...

well both.

you have to have a problem to solve (this is in about the last 1/4 of the post) and it's better to have more than one for motivational purposes.

also, doing it all for free/open source gives MM skreet cred.

January 14, 2010 at 8:34 AM  
Blogger drank said...

@g.m.palmer "Tell that to the masses who chalk it all up to SF every time MM mentions it "

Have you considered that the existence of strong crypto may not be what makes MM's scenarios sound like SF?

January 14, 2010 at 9:09 AM  
Blogger G. M. Palmer said...


Folks specifically reference the crypto as being non-existent future-ware.

Yarvin's working on that, apparently.

January 14, 2010 at 10:13 AM  
Blogger Leonard said...

josh, a noun is a discrete chunk of data. An integer (and they be many, you know). As Yarvin says, a reasonable implementation is that of files in Unix, which are untyped.

January 14, 2010 at 10:23 AM  
Blogger Leonard said...

GMP, I think the refs as SF are not all unfriendly. That is, some commenters have used in the friendly way SF people use it: meaning, "something that does not exist but could". Others do use SF disparagingly, as in, "it does not exist and will not". But I think that is less the crypto per se, but rather the entire encrypted power-structure, particularly the control of weapons via crypto.

January 14, 2010 at 10:27 AM  
Blogger G. M. Palmer said...


It's amazing how much you can glean from Yarvin's description.


Perhaps that's true; folks were saying no one could have cryptographically-locked weapons (or that they would only exist in SF, etc.); maybe I need to look at the archives ;)

January 14, 2010 at 10:41 AM  
Blogger drank said...

I have no doubts that effectively unbreakable crypto exists, and could be used for scenarios like "Board key authorizes the CEO key, CEO Key authorizes the minions' keys, ...".

I do think it a fantasy to suggest that this can be combined with weapon locks and gun control to provide the Board with an unbreakable monopoly on violence within a territory. The reasons have nothing to do with the crypto math employed.

January 14, 2010 at 10:55 AM  
Anonymous Alda said...

So is it "Gai" or "Gee"?

January 14, 2010 at 11:50 AM  
Anonymous Anonymous said...

From pages 7-8 of "The French revolution in San Domingo".

"Port au Prince although dating only from the middle of the eighteenth century was a thriving town of some eight thousand inhabitants. [...]
Its appearance however was far inferior to that of Le Cap for the prevalence of earthquakes made it a town of low wooden houses which European visitors slightingly compared to a Tartar camp.

I haven't laughed so hard in a long time....

January 14, 2010 at 1:06 PM  
Anonymous Michael S. said...

G. M. Palmer's mention of cryptography reminds me of Trithemius, and Trithemius reminds me in turn of Raymond Lully, whose attempt at a universal taxonomy was at the base of his and many other subsequent encyclopaedic efforts.

They were usually couched in terms of training the human memory, but were described by terms such as "mnemotechnics" and "artificiose memorie." Giulio Camillo, along similar lines, conceived a "theatre of memory," but never quite finished it. It occurs to me that the seminal idea of artificial memory from so long ago has finally come to fruition in the development of the computer. The human memory need not be trained at all; a machine can be made to serve as a memory theatre. And it all relies on an abstruse 'language' not unlike that produced by Lully's volvelles and ladders, and Trithemius's combinatory tables.

January 14, 2010 at 1:57 PM  
Blogger TGGP said...

The new head of the Minnesota fed claims that money is equivalent to a kind of memory. I'm not sure what "inflation" or "the money supply" means under that view.

January 14, 2010 at 9:33 PM  
Anonymous Anonymous said...

A window into the tortured soul of Mencius Moldbadger.

January 14, 2010 at 11:30 PM  
Anonymous Pals said...


I've been trying to make some sense out of all of this but have failed utterly.

Would it be possible for any of you nerds to explain to those of us not smart/sad/lonely enough to know any programming what all of this means? Please do so for a target audience with no familiarity with computers beyond internet browsing.

What is the gist of MM's attempts at programming? Why are they important? What's the big deal with this Maxwell dude and his equations? What does all of this have to do with neocameralism, formalism and patchworks?

January 15, 2010 at 12:21 AM  
Anonymous Erik said...

Maxwell's Equations explained:

January 15, 2010 at 2:35 AM  
Blogger Leonard said...

What is the gist of MM's attempts at programming? Why are they important?

The gist is that Guy Yarvin is attempting to create a better formalization of computation. This is not novel, as he admits. What is a "formalization"? A complete description of how something works; a description so mind-numbingly complete, in steps so simple and stupid and small, that a machine can perform the steps and thus a computer can run the language.

But there is a bit more than just that: Yarvin wants to have a formalization of computers that are actually used. As versus what we have now: formalizations of various sorts exist in the detached world of "computer science", but they have no relation to 99.999% of all computation that is actually performed. So he has taken upon himself to create a formalization that will be used. This idea that computers based on his formalization will "take over" is roughly similar in its delusion/hopefulness/arrogance as the idea that neocameralism will eventually win.

As for the importance of this work: well, if you are a geek, maybe it would be interesting. But you are not, and there is thus no importance to you. Putting the best spin on it, it is about as important to you as, say, a better understanding of magnetism might be. You can use the technological products of any such knowledge without knowing anything about them, or even that they exist. Similarly for computation.

January 15, 2010 at 7:25 AM  
Blogger G. M. Palmer said...


Well, sort of.
Except that what CGY/MM is trying to do hasn't ever been accomplished--but is possible. This raises it above his political thought as technology tends to take quickly to proven, usable ideas.

January 15, 2010 at 7:44 AM  
Blogger George Weinberg said...

What is the gist of MM's attempts at programming? Why are they important? What's the big deal with this Maxwell dude and his equations? What does all of this have to do with neocameralism, formalism and patchworks?

It's part of his indictment of our educational system at the graduate level. The main points anyone not a computer scientist should glean from Nock and such are 1) one can spend endless amounts of time playing around with such things, if one has the opportunity and inclination and 2) from a practical standpoint it is obviously a waste of time.

January 15, 2010 at 7:50 AM  
Anonymous Pals said...


Thanks for that.

Would you care to elaborate on what the technological products of such knowledge might be? Would this thing revolutionize computing in meaningful practical ways? I know the problems of predicting science and knowledge, but is there some view of what some intended consequences might be?

And is there any specific tie-in with MM’s political nutjobbery?

Also, is MM near solving this problem or has he just begun? Or does he have the solution and is now giving it out one blogpost at a time? If MM does solve this thing, would it be big news outside of the geekoblogosphere? Would industry take note? Could it make it into a newspaper?

January 15, 2010 at 8:48 AM  
Anonymous Anonymous said...

I may be a bit slow and disoriented, but I assume that MM and CY are the same fellow, yes?

January 15, 2010 at 1:00 PM  
Blogger Daniel A. said...

@josh: How come you don't understand what a "noun" is? He defines it right there, in the very beginning. To quote Humpty Dumpty ("Through the Looking Glass" by L. Carroll):

"When I use a word" -- said Humpty Dumpty in rather a scornful tone -- "it means just what I choose it to mean. Neither more, nor less."

You may have problems with unsigned, which is CS-speak for non-negative and has nothing to do with signatures. Everything else is very well defined in very simple terms.

January 15, 2010 at 2:50 PM  
Blogger Mitchell said...

Anonymous @1PM - indeed. First Roissy outed, now Moldbug. Who's next?

January 15, 2010 at 11:49 PM  
Anonymous josh said...

"A noun is an atom or a cell. An atom is any unsigned integer.
A cell is an ordered pair of any two nouns."

I really, really don't know anything about computer science. I know what an integer is, I figured unsigned might mean it could be either positive or negative. So, I guess I knew that a noun is an integer or ordered pair of integers, but functionally, I have no idea what any of this has to do with the price of tea in China.

January 16, 2010 at 8:54 AM  
Blogger Daniel A. said...

@josh: as I have written, you can be excused for mis-understanding "unsigned". In computer science, it means numbers that can be written without a sign, so it's either positive or zero. In plain English, non-negative.

The rest, however, can be figured out, but for those who are not used to mathematics, it requires extra care and attention.

A noun is an integer or an ordered pair of any two nouns (and not atoms!). So not only are 15 and [23 45] nouns, but so is [15 [23 45]] (the ordered pair of the previous two). Then we are introduced a shorthand notation turning [15 [23 45]] into [15 23 45]. It's the same thing, just denoted differenlty: a noun that is a cell, that is the ordered pair of two nouns, the first one of which is an atom, an unsigned integer (15), while the second one is a cell, an ordered pair of nouns, both of which are atoms, that is unsigned integers (23 and 45, respectively).

All this serves the purpose of representing structured data, but also software. The rules that follow explain how this data should be interpreted as software.

All this assumes no knowledge of CS. It does require a certain way of thinking that is second nature to those who have mathematical training, but seems difficult at first to those who are not used to it. I would recommend reading L. Carroll's and then R. Smullyan's books for an entertaining introduction to this way of thinking.

January 16, 2010 at 12:37 PM  
Anonymous josh said...

I guess I should admit that I didn't really put in any effort. I pretty much threw up my hands at "s-expressions" and started reading topic sentences.

January 16, 2010 at 4:37 PM  
Anonymous Billare said...

I'm tired of this bullshit. You haven't written any really thought-provoking essay since "From Cromer to Romer and Back Again" Mencius, and that was more than 6 months ago. (Although IMO that particular one was was a very sating piece.) Less maturity mismatching and climate change logorrhea and more meaty explicitly political stuff.

January 17, 2010 at 1:40 AM  
Anonymous Anonymous said...

That climate change stuff seemed like the very soul of politics to me

January 17, 2010 at 4:29 AM  
Anonymous Peter A. Taylor said...

I would like to put in a kind word for the maturity mismatching stuff. I found it very helpful. Milton Friedman's discussion of the banking industry in _Free to Choose_ left me scratching my head.

January 17, 2010 at 8:19 AM  

Post a Comment

Subscribe to Post Comments [Atom]

<< Home