Subject: Re: To Paul Graham: Please put your books online. From: Erik Naggum <erik@naggum.net> Date: Thu, 07 Jun 2001 02:40:47 GMT Newsgroups: comp.lang.lisp Message-ID: <3200870443762452@naggum.net> * "Biep @ http://www.biep.org/" <reply-via@my-web-site.com> > While PAIP is a great book, and can be used as an introduction to Common > Lisp, it wasn't meant as such, and in fact the code in the book is > inetntionally fairly basic, with a few exceptions, such as the stuff on > macros (which, by the way, is mainly complex because writing a serious > macro in CL involves a lot of "fighting the system"). Thsoe who do not know or do not like the rules are always fighting the system regardless of what "the system" is, while those who know and like the system cannot generally fathom what it is that people _want_ to fight. The same goes with laws and regulations, codes of conduct, cultures, etc. Programming languages are social constructs. Some people enjoy rebelling more than they enjoy living in a society. Some are able to appreciate the societies they live in higher than what rebelling against it and its people would entail, regardless of whether they think everybody would appreciate whatever is on the other side of rebellion more than the present. I, for instance, think it is far better to fight incompetence than to live peacefully with incompetent people. Some people feel this way about drugs, abortion, communism, etc. That macros in Common Lisp should be such an issue should come as a surprise to no one. However, there is much, much less _force_ involved in having to accept macros than any of the other issues that cause similar reactions, so I have a really hard time understanding the underlying desires of the people who go nuts about "unhygienic" macros and the like. Matter of fact, I think they are insane and fanatical because there is absolutel no _point_ in rebelling against macros. Just understand them. This is how it works. Deal with it. If you want to change the way they work, you definitely have to understand how they work today and all the discarded alternatives. If you want _any_ system to change, exploit it, do not fight it. Exploitation causes people who see undesirable consequences of their goals to review their means of achieving them, perhaps even changing their goals. Fighting them causes people who are under attack to shut down all critical processes in self-preservation and defend themselves, regardless of the cost to their real goals. (Exploitation of (massive) incompetence, however, is so unethical only Bill Gates and his like could do it for a long period of time.a) Now, how to exploit the system-fighters so they themselves implode? I think Guile is an excellent way to exploit the dislike of Common Lisp and the adherence to "simpler" ways to do things. With any luck, it turns into a _complete_ disaster before it has a chance of getting better. #:Erik -- Travel is a meat thing.