Subject: Re: A Philosophical Diversion From: Erik Naggum <erik@naggum.no> Date: 1998/10/08 Newsgroups: comp.lang.lisp Message-ID: <3116861180270826@naggum.no> * Reini Urban <rurban@sbox.tu-graz.ac.at> | my general opinion (having only IQ 130) is that c++ would require a much | higher iq, so i'm doing just lisp which satisfies me and which is a | simple language i am able to understand. your problem is not your IQ (as if it could have been), but that you are conscientious and want to understand what you're doing. this is bad for you if you want to deal with C++ and Perl and the like. the less you actually care, the better these languages become. if all you need is for something to "work", and you don't give a damn when and how it fails, C++ and Perl is for you. if you care deeply about not having your software fail, you would naturally feel a correspondingly deep sense of betrayal from the authors of both languages -- because they make it so damn hard to express the fact that you do care about the failure modes. if you read the ludicrously complicated document they call the language specification for C++, you will probably arrive at the same conclusion I did: "these guys must be _real_ slow". I'm reminded of the saying that "complexity is the hallmark of stupidity"¹. the elegant, simple solution is the result of smart people thinking a lot and solving something that might not even have looked like a very complex problem to begin with. (incidentally, "smart" in this context refers more to one's attention to detail and a desire for elegance than high IQ scores. intelligence is only a labor-saving device. less intelligent people can in principle create just as elegant solutions, but it would normally take them more effort to get there. achieving elegance is never painless, however, and you actually need to _want_ that quality in your code to get it.) | inferior development system certainly requires more manpower and | iq-power, just to express and understand your intentions, which are | certainly much easier to express in lisp or other clearly functional | and/or object-orientated languages. intelligent people would rather develop a new development environment than continue to prove the inferiority of a bad environment. (that's about the only redeeming quality of C++ and Perl.) | it must be the language not the iq! it's both, semantics and syntax which | either makes me feel desperate (c++) or bright (lisp). I share this impression. C++ left me feeling that I was never in control of anything, in particular because the dimwits who wrote the soi-disant "specification" left so much to the implementation and were so inept at expressing their intentions. Common Lisp gave me a feeling that the vendor would (or should) be sufficiently competent and trustworthy that I could trust the specification and go from there. | maybe that's the point why guile and not perl will be used as general | purpose scripting language for desktop environments in unix (gnome). incidentally, I think GUILE is _really_ stupidly designed, too, and Emacs Lisp started losing its charm quickly in 1995, and by the time MULE had been "integrated", had become just another god-awful "design-free" mess. #:Erik ------- ¹ if it isn't a saying, it should be