Sixteen Years Later: GNU Still Needs An Extension Language 425
Fresh from the 2011 GNU Hackers Meeting, Andy Wingo has written a long piece on the status of Guile Scheme, the woefully underutilized official user extension language of GNU. Wingo argues that Guile is the best choice for extension in GNU given the ability of Scheme to adapt to change over time. Presented with using e.g. Javascript instead of Scheme for its popularity: 'We should also consider the costs of using hastily designed languages. JavaScript has some crazy bad stuff, like with, var hoisting, a poor numeric model, dynamic this scoping, lack of modularity regarding binding lookup ... Finally, we have the lifespan issue. If GNU had chosen Tcl because it was popular, we would have a mass of dead code' (it should be noted that Guile does partially support Javascript syntax). With the proliferation of Firefox extensions, Greasemonkey, etc. it is clear there is a large set of power users who want to modify the programs they use without spending years becoming skilled programmers. Perhaps after Emacs has been ported to Guile the philosophy of user extensibility will spread to other parts of the GNU system.
People hate paren languanges (Score:1, Insightful)
(Besides a few hardcore geeks, (people (hate (shit that (looks) like ((this))))))
I'm coining a new term: (Score:4, Insightful)
1. Saturation. If there are already established tools that do more-or-less the same thing, then there is little incentive for developers to learn something different (often radically) for no tangible gains.
2. Non-problems: Developers often get excited by "problems" that don't exist outside of their niche or mind, and then develope something to solve it. While this might work in the niche, it rarely works in the general case (thoguh there are a few notable exceptions).
Re:People hate paren languanges (Score:4, Insightful)
function Besides() { a(); few(); hardcore(); function geeks() {people(function hate(){shit(); that(looks()); like ((this();));})}}
I think that's harder to read.
Re:Lua? (Score:5, Insightful)
Here is an idea instead of adding Lua support, I don't know, USE LUA... Wow what a concept!
This is what gets me with the GNU team. Instead of actually reusing what other people develop they rather stick to their own little ivory tower and get very little done. I am being serious here.
I appreciate the work that the original GNU people did about two decades ago. It was needed. But for crying out loud these people remind of an older generation that does certain things because well that is how they did it two decades ago. And if it was good enough then, then gosh darn it, it's good enough today...
Re:People hate paren languanges (Score:5, Insightful)
It is only harder for you.
If you had 18 fingers, six on each of three hands, dividing by 3, 6 and 18 would be trivial for you.
As you have 10 fingers, five on each of two hands, dividing by 2, 5 and 10 is trivial for you.
It is not that dividing by 10 is any harder or easier than dividing by 18, but as an animal with 10 digits that evolved counting with those digits, you find a base 10 number system familiar and dividing by the base of that number system is easy for you.
Dividing by 10 is not just inherently easy, just easy for humans spending a lifetime working in decimal.
Reading LISP is hard for you because you have been trained in a different standard syntax common to most other programming languages. LISP was one of the first languages I learned and I find its syntax far more readable than that of "normal" languages.
(+ 1 2 3 4 5 6 7 8 9 10) is much more obvious to me than 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10.
I know I am adding, why do I need to show that operator 10 times when one operator will do?
</LISP RANT>