5 ms·
For the record, not that it matters, Sergey Brin was born in 1973 and started a CS PhD at Stanford, specializing in OS, in 1993. I was born in 1973 and started
by urbit 13y ago
For the record, not that it matters, Sergey Brin was born in 1973 and started a CS PhD at Stanford, specializing in OS, in 1993. I was born in 1973 and started a CS PhD at Berkeley, specializing in OS, in 1992. Alas, neither of us finished.
Intellectuals are no different from anyone else - they live in the same reality and must be judged by their results. I don't think anyone would disagree that PL theory, as a body of work, has produced a set of languages whose penetration in the real world is oddly small both given (a) the investment in these technologies, and (b) the many real advantages of typed higher-order programming.
As a general pattern, usually when I see this outcome explained, it takes the form of blaming the user. We wouldn't let anyone else get away with this excuse, so why should intellectuals be treated as a privileged class?
To be anti-intellectual is to judge intellectuals more harshly than they deserve. To be pro-intellectual, also a cognitive bias, is to judge them more leniently than they deserve. In a world whose bias is generally pro-intellectual, it's easy for a neutral assessment to seem relatively anti-intellectual, but perhaps what you are perceiving is not an exceptional bias but the absence of a systemic bias which you've grown used to.
- tikhonj 13y agoYes, your background isn't relevant--and Brin's even less so--but it does make for some nice anchoring. PL theory, as a "body of work" has produced a wide range of languages ranging from Agda to Scala to Java. Some of these have actually seen use! Everything from classical music to Justin Beiber. TAPL, for example, is certainly not limited to the less popular languages: it talks about the foundation for Java-style types as well. Some of the same people working on ML and Haskell are also behind designs of Java and C#. The point of a language like Haskell is to be expressive and useful, not to appeal to a large base population. Popularity and industry uptake are not the only measures of success. (This is, coincidentally, one of the things I don't like much about Berkeley's graduate program, or at least the systems lab I spent a bit of time in: they did seem to think industry uptake to be the only metric that mattered.) Beyond languages, PL theory serves the role of all theory: it's the foundation upon which everything else is built. Things like the JVM memory model are based on the theory themselves and designed with tools stemming directly from that theory. Sure, the average programmer on the street is never going to use a theorem prover, but they will use the JVM where the memory model has been verified with one. All this reminds of nothing more than the usual arguments that Linux is a complete failure because nobody uses it on the desktop. But I think that argument is not true even if you limit yourself to "Linux on the desktop is a failure": sure, not many people use Linux on the desktop, but the ones who do find it very useful and are exceptionally productive. Same principle applies to PL theory and functional programming languages. There are many different ways to have an effect in the world, and the most obvious and direct one is not necessarily best. Even if it feels best.
- urbit 13y agos/the foundation upon which everything else is built/a foundation on which everything else can be built. If you'll accept this change, we don't disagree at all. (Also, it is a serious overstatement to attribute Java and C# to PL theorists. Gilad Bracha is not James Gosling. PL theorists have contributed to some extensions to these languages. Typically, the extensions that confuse people and make them feel stupid.) The difference between the foundation and a foundation is enormous, because (with your very large expensive foundation) you are asking programmers either to program without knowing the foundations of their work, or to learn a large and challenging body of mathematics. And you know, higher-order typed programming is good enough that it's almost worth it. For most potential customers, however, learning PL theory does not seem to be worth it. Nor are they comfortable in programming in Haskell, a very powerful and complex environment, without understanding it. It's this "the customer is just wrong" attitude that makes some of us sense an area ripe for disruption. Pride goeth before a fall.
- effn 13y ago> It's this "the customer is just wrong" attitude that makes some of us sense an area ripe for disruption. Pride goeth before a fall. Doesn't this apply to syntax as well?
- urbit 13y agoIt does. And the best I can say is that I'm genuinely interested in the results of my experiment. It would certainly be an interesting practical experiment to try to adapt a conventional syntax to the same semantics, or even to discard Hoon and create a more conventional language targeting Nock (which Urbit would have no trouble running).
- adultSwim 13y agoThis is an excellent line of reasoning. PL research just hasn't had much affect at all on mainstream programming. It's too bad. The PL world has a lot of good ideas. It's unfortunate they try to make them totally inaccessible. Worse still that industry has no interest in raiding the PL world. A lot of the languages that have been designed are perfectly usable by mere mortals and a real step up from languages coming out of industry. Compare OCaml and Java in 1996. OCaml (then Caml Special Light) was clearly the better language. Why didn't anyone get to use it?
- chrismonsanto 13y ago> I don't think anyone would disagree that PL theory, as a body of work, has produced a set of languages whose penetration in the real world is oddly small both given (a) the investment in these technologies, and (b) the many real advantages of typed higher-order programming. I'm a PL theorist, and I disagree. Who cares about your opinion on PL theory, its practitioners, and its textbooks? Is internalizing your hate for TAPL necessary for understanding the semantics of Urbit and related technologies? Why don't you just state succinctly what your ideas are and let them stand on their own merits. That being said, I have no idea what your ideas are. Your website is unintelligible. Ironically, one of the things PL theory provides is a common vocabulary amongst practioners, which helps us communicate. I shouldn't have to learn a new alphabet (or in your parlance, a set of runes?) to figure out what new ideas you bring to the table. That kind of stuff is just not interesting to me. It's like if you 'rejected' English and wrote the rest of your work in Esperanto.
- urbit 13y agoAm I not entitled to an opinion? You certainly are. You could tell me _why_ you disagree. And I would listen. We may mean different things by "practitioners." I mean programmers. Unfortunately, your vocabulary is not common to programmers and shows no signs of becoming so. Mine isn't either. But at least I've only been trying for a week. I know it seems strange to introduce new designs in the 21st century - most people assume, rightly of course, that everything worthwhile got figured out in the 20th.
- chrismonsanto 13y ago> Am I not entitled to an opinion? ...You could tell me _why_ you disagree. Why I disagree with your disparaging remarks aimed at PL theorists is irrelevant. The Urbit documentation should say what Urbit is, why it is important, and how to use it. Your disparaging remarks do not help to answer these questions. In fact, they do the opposite by antagonizing many readers and unfortunately giving you the appearance of a crank. Therefore, you should remove the remarks. Knocking down PL theory does not boost Urbit up. > We may mean different things by "practitioners." I mean programmers. Unfortunately, your vocabulary is not common to programmers and shows no signs of becoming so. This is flamebait. > I know it seems strange to introduce new designs in the 21st century - most people assume, rightly of course, that everything worthwhile got figured out in the 20th. This is a strawman, and a particularly odd thing to say to someone who is also interested in advancing the state of the art.