Path: utzoo!mnetor!uunet!husc6!mit-eddie!uw-beaver!cornell!rochester!PT.CS.CMU.EDU!SPICE.CS.CMU.EDU!skef From: skef@SPICE.CS.CMU.EDU (Skef Wholey) Newsgroups: comp.lang.lisp Subject: Re: FORTRAN,ADA Message-ID: <525@PT.CS.CMU.EDU> Date: 16 Dec 87 00:11:50 GMT References: <4732@well.UUCP> Sender: netnews@PT.CS.CMU.EDU Organization: Carnegie-Mellon University, CS/RI Lines: 77 Well, I see it's time for JJJJacob's semi-annual Common Lisp flame. Rob did a good job with this guy last time, but is sitting this round out. I'll take a turn at it, not because I believe that a person this far gone can be straightened out, or because I'm afraid his ignorance is contagious, but because I'm collecting some memory-usage statistics on this Lisp-based text editor I'm using, and I need the keystrokes... >In <4732@well.UUCP>, jjacobs@well.UUCP (Jeffrey Jacobs) writes: >I have to disagree; Common LISP is the PL/I of Lisps. Too big and >too incomprehensible, with no examiniation of the real world of >software engineering. Incomprehensibility, like boredom, usually springs from a deficiency in the beholder rather than the beheld. >It should >be embarassing to everybody in the field that most shells and tools are >no longer written in LISP. I assume that by "the field" he means AI, and that by "shells" he means expert system shells and the like. The reason a lot of applied AI and expert systems work is being done in other languages has little to do with Common Lisp. The development of Common Lisp was coincident with a lot of work that pinned down just how one should go about implementing rule-based systems, effectively removing such systems from the arena of exploratory programming. Exploratory programming is what Lisp is all about -- it also happens to be what a lot of AI is about: that's why they've existed side by side for so long. But neither has any hard ties to the other. You can do AI in C, and you can write window systems in Lisp. When the cost of such things as software maintenance and delivery vehicles for "AI" systems is important, C can often beat Lisp hands down. Any Lisp. There are far more C hackers and C compilers out there than there are Lispers and Lisps, and I doubt that this will ever change. However, the latter numbers have grown by leaps and bounds since the introduction of Common Lisp. >To quote Dick Gabriel, the "father of Common LISP": Funny that he goes on to quote a man who is profiting from the commercial viability that, earlier, he asserts doesn't exist. Also, Gabriel is "a father" of CL, not "the father." Every one of the five principal designers will tell you he could have designed a better language by himself, or with one or two of the others, and many were trying to do just that when the standards effort began. If all had proceeded undisturbed, there might be several beautiful Lisps by now, but they would be largely incompatible, and each would run only on one or a few machines. Probably none would be supported by any large computer manufacturers. Common Lisp is not perfect. The problem with perfection is that different people have different ideas of what it is. When you put a group of smart, experienced people together and tell them to create something, you'll usually end up with a compromise. If you're lucky (and I believe in the case of Common Lisp we were lucky), that compromise will not be so bad. I imagine that JJacobs wasn't around when the initial design of Common Lisp was going on over the ARPAnet, and I'm sure he wasn't at either of the two face-to-face meetings. I'll bet that he hasn't even read any of the old Common Lisp mailing list archives, in which much of the rationale for various design points of Common Lisp can be found. Sorry, JJacobs, but you're just not very well informed. >ADA, despite it's problems, is o well thought out, engineered language. >Any comparision with CL is odious; but comparing CL to PL/I, that incredibly >ancient monster, is perfect... When one stretches a metaphor hard it often becomes limp and useless (that's a meta-metaphor!). The more one tries to draw from these comparisons the less meaningful they become. I suppose I could say, "Jeffrey M. Jacobs is the punched card of the comp.lang.lisp community," but I would risk the possibility that someone might find something nice to say about punched cards. -- Skef Wholey (Wholey@C.CS.CMU.EDU)