From ... Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.esat.net!nslave.kpnqwest.net!nloc.kpnqwest.net!nmaster.kpnqwest.net!nreader3.kpnqwest.net.POSTED!not-for-mail Newsgroups: comp.lang.lisp Subject: Re: In praise of Java. References: <1b6g0ucbo2t91c6cqf6bm6qq8iq896gphc@4ax.com> Mail-Copies-To: never From: Erik Naggum Message-ID: <3216157553591016@naggum.net> Organization: Naggum Software, Oslo, Norway Lines: 69 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sat, 01 Dec 2001 01:05:56 GMT X-Complaints-To: newsmaster@KPNQwest.no X-Trace: nreader3.kpnqwest.net 1007168756 193.71.66.49 (Sat, 01 Dec 2001 02:05:56 MET) NNTP-Posting-Date: Sat, 01 Dec 2001 02:05:56 MET Xref: archiver1.google.com comp.lang.lisp:21589 * Christian Lynbech > Sometimes people get the impression that we lisp programmers are a > stubborn and arrogant bunch of zealots, unable to ever see the > advatnages of other approaches. * Andrzej Lewandowski | This is exactly my impression after watching some discussions here | and participating in other. If your general outlook on things is that once you have found the Right Thing, you can stop looking, you will also see others in the same light, and you will not change your mind when you get more information, either. If your general outlook on things is that once you have found something to be Wrong, it is important to avoid repeating it, you will tire quickly of people who repeat old errors in new wrappings. If you are fairly inexperienced and do not know much of what has already proved to be bad ideas, _and_ you are of the "One Right Thing" type, it will take an inordinate amount of intellectual effort to realize that you are watching the consequences of the "Avoid Repeating the Wrong Things" type unfold themselves if you offer up a "new" idea that is anything but. Overall, Lisp programmers are very experienced, know a dozen languages well enough to think in them, have been through their rise and fall and their accumulation of crud and their fragmentation into more communities because they went wrong at a crucial step by adopting some really stupid idea too early because they wanted to be "competitive" and then were unable to back out of it, and so do not consider "new" ideas that were shown to be wrong years ago to be particular fascinating reading. We do not know yet whether Common Lisp has made that kind of mistake, but some people are forever obsessing about little details that they want to re-open and raise awareness about that really should be left alone and just be relegated to the same unquestioned "this is how we do it" status that _successful_ elements of a culture has. As long as people think that there is value in discussing things that have been defeated hundreds of times before and refuse to consult the literature because they cannot fathom that language with longer histories than the Internet (i.e., WWW, in their view, since the Internet really started pre-1970) even exist. In my view, Common Lisp made very few mistakes that should bar future progress from occurring within the language, but it takes serious effort for some people to come to terms with the choices that have been made and especially that they are _not_ fundamental, which they would have been in most other languages. One of the things that are so great about Common Lisp is that serious changes may be made which can be implemented in some inefficient way in the existing language with existing compilers and then inspire compiler or other system changes if they seem worthwhile. In particular, the lack of "reserved words" and "operators" with special syntactic status, makes it possible to design the next Common Lisp within Common Lisp just by changing the package name. Since optimizing the hell out of everything is no longer necessary on modern computers, serious experimentation can be conducted non-intrusively. Many people, even some who claim to be Lisp programmers, have not really understood this and go the way of much lesser languages and create their own compilers and all the development system and everything from scratch. Since it is so easy to create something new, the ability to work on something privately until it gets to a _realistic_ level is so good that it is important to keep the stupid and bad ideas from spreading too far when they are published. In other languages, the sheer effort of building something is a very good control mechanism that keeps bad ideas from spreading. /// -- The past is not more important than the future, despite what your culture has taught you. Your future observations, conclusions, and beliefs are more important to you than those in your past ever will be. The world is changing so fast the balance between the past and the future has shifted.