4 ms·
I work on a PHP compiler and runtime for a living, so I'm reasonably familiar with its past, present and future. While Ruby and Python are superior in many ways
by kmavm 15y ago
I work on a PHP compiler and runtime for a living, so I'm reasonably familiar with its past, present and future. While Ruby and Python are superior in many ways, these three languages (and Perl and JS) have much more in common than they do separating them: Algol syntax, runtime typing, hash-table like duck-typed objects, automatic memory management, some half-baked (for all but JS) concessions to functional style, etc. If you consider them in a world that includes C++, Haskell, Prolog, x64 assembly, Smalltalk, and Lisp, all of these languages form an incredibly tight cluster in the configuration space.
And granting for the sake of argument that Larry Wall wasn't thinking of ksh, sed, grep and awk were just as AT&T proprietary as ksh was.
- MostAwesomeDude 15y agoRuby and Python have strong types, no automatic coercion besides numeric promotion, customizable and extensible type models, the ability to create new first-class types, a complete type system, dynamic attribute and method dispatch; these things are not in the flavors of ECMAScript used in browsers and Node, to the point where there is no "class" keyword, or an equivalent, in JS. I object to Ruby and Python being lumped with JS mostly on account of features, and additionally because JS does not occupy the same systems-programming niche that Ruby and Python can easily fill. (And some companies, like Google, would not permit Ruby and Python to be grouped, nor Python with C++ and Java.) Edit: Nevermind, you're right. I concede.
- loup-vaillant 15y ago> cluster in the configuration space 10 bits of evidence that you read LessWrong. (Sorry, couldn't help it.)
- jholman 15y agoWithout disagreeing with you about their overall similarity, your claim that "descendants of Perl and javascript ... include Python, Ruby, and PHP" is obviously mistaken. Maybe you meant "descendents of Perl and Python include JavaScript, Ruby, and PHP". Just a question of historical accuracy. Either way, this nit-picking doesn't affect your main claim that most revolutionary technologies came from closed companies, and that languages seem to be the main exception. In response to that main point, it seems to me that in a lot of cases, the amazing closed-source technologies are actually rooted in technologies developed in the open, before FLOSS had a name (indeed, before AT&T's crackdown pushed RMS to coin Free Software). Consider the success of Unix: initial development by a closed not-for-profit lab, and elaborated by an informal open process. Consider the open and collaborative processes that gave us all sorts of networking technologies, including TCP/IP, including hypertext, etc. And Javascript would have died in a ghetto if it had been limited to one company's browser.
- gujk 15y agoAT&T may have invented these, but the versions everyone uses are the GNU ones.