Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!apple!fernwood!franz!jkf From: jkf@Franz.COM (Sean Foderaro) Newsgroups: comp.lang.lisp Subject: misinformation in lucid newsletter Message-ID:Date: 15 Jan 91 21:31:00 GMT Sender: news@Franz.COM Organization: Franz Inc., Berkeley, CA Lines: 179 I've just read the winter 1991 edition of the Lucid newsletter Lucid Moments. While the previous editions I've seen have contained little bits of news about Lisp applications, this edition is quite different: it contains two big interviews with Kadarauch (Lucid's CEO) and Gabriel, plus an announcement of Lucid's purchase of a C++ compiler company. The interviews are clearly defensive, probably because Lucid is afraid of what people will do when they perceive Lucid is moving from Lisp to C++. What really bugs me about the interviews are unjustified blasts at their competitors and the distortion of truth (a polite term for lies). I don't know about Kadarauch but I just can't believe that Gabriel spoke some of the words attributed to him, I have to believe that it was some misguided person in their publicity department. What makes me really angry is that Gabriel's name is associated with these statements and that people might believe them. I'd like to have this published in a Letters to the Editor column of Lucid Moments but there is little chance of that happening, so hopefully through this forum I'll reach some of the people who read the Lucid publication: A few of the the points: * Regarding CLOS implementations, Gabriel says: "Symbolics is the only other U.S. Lisp company that's done their own version of CLOS. Franz hasn't, Ibuki hasn't, and most of the European companies haven't either." Yes, it is true that Franz's CLOS is based on and includes parts of PCL. We're quite proud of our version. Franz's goal was not to have a system with *its own* version of CLOS written from scratch, rather it was to develop a system with the *best* version of CLOS. In other words Franz doesn't subscribe to the Not Invented Here philosophy. PCL was designed by some very bright people and refined over many years and the designers left a number of places where individual implementations could speed up the code. We're so happy with our CLOS that all stream code (much of it speed-critical) in our 4.0 release is written in CLOS (following the Gray stream proposal). Lucid has yet to do this. * Regarding object oriented programming, Gabriel says: "We're really on the forefront. Lots of companies stood by saying that object-oriented programming was a good thing to do, but they weren't willing to jump in and help get it going.". He's forgetting that Franz was the first stock hardware Common Lisp with a serious version of Flavors. This satisfied people during the long period of time while CLOS was debated and designed and continues to satisify customers with real applications. As for CLOS, there is definitely a too-many-cooks problems in language design. Who's to say that without Lucid's help, CLOS wouldn't be better? I would have preferred to see one or two people propose a definition for CLOS, instead of the committee that eventually did it. Believe me, people in our marketing department did tell me over the years "you should get yourself on that committee since it will be good for publicity to say that you were involved". I told them that I was more concerned that it get done correctly and that required a small non-partisan group. But they were right about using this membership for publicity purposes, as this quote from Gabriel attests: "Anyway, there were seven people who defined the CLOS system. Of those seven, two were originally from Lucid..." * On programming environments, Gabriel says: "Lucid is the only company using any of the new technology [object-oriented programming] in developing programming environments" I'm not sure what Gabriel is referring to, but I think that it is their C++ environment. What have they done for Lisp? In any event Franz's programming environment Composer introduced in early 1989 was written in CLOS (actually it was in PCL which was a close as anyone was to CLOS at the time). And as I've mentioned we've preceded Lucid in using CLOS in parts of our main product (e.g. the stream code). * Then there is a section on Lucid 'firsts'. Being first isn't as important as being best so maybe I shouldn't be so angry but the errors, however it is galling to see history being rewritten. Gabriel says: garbage collection: "We were the first ones to implement a non-intrusive garbage collector in software" "As far as I can tell, no other system has as effective a memory management system as we do right now". The fact is that Franz introduced it's generation based gc in 1987 and Lucid didn't introduce their's until late 1988. They are based on the same idea but I don't know how to compare them for 'effectiveness'. In our code non-intrusiveness is a function of the size of 'newspace' since that determines the maximum amount of copying that is done in the newest generation. In my position I only hear bad things about Lucid's gc (from disgruntled Lucid customers), so I'm in no position to make a scientific comparison of the two systems and I'd like to know on what basis Gabriel makes the statement "no other system has as effective a ...". stock hardware: "We were the first ones to produce a stock hardware Lisp that has performance that was competitive with special-purpose hardware" Wrong again, ever since the days of the 68010, Franz has always been out before Lucid on each platform. The current example is that the newest hot machine is the RS/6000 and Franz is shipping a version and Lucid is not. clos again: "We were the first U.S company to have our own implementation of CLOS". Ok you did do your own CLOS, but that alone isn't something to be proud of (see above). Both companies are now shipping a lisp with CLOS. compiler: "We were also the first to have a development compiler that produces code that is, in many cases, comparable to the production code speed of other Common Lisp compilers but which is dramatically faster than anything else". First of having two compilers, a development compiler and a production compiler is bad for users (two different 'looks', two different optimization behaviors) and for Lucid's developers (porting and maintaining two compilers). The reason that the development compiler effort was started was because the original compiler was so slow, but for internal reasons Lucid couldn't dump it and start from scratch. So the new compiler effort was created under the project name "development compiler". Isn't it about time to dump that production compiler now, no one buys the "We have two compilers and our competitors only have one so we're better" story. Yes, you're first with two compilers, but maybe that's because everyone else did it right the first time. * local variables "we were the first ones to allow people to debug their code on stock hardware where all the local variable names were available" Wrong, Franz came out with this in our original 68010 port (which preceeded Lucid's). * window systems "And we were the first ones to produce a window system for Lisp on stock hardware" True, but would you do it again? Franz has always realized that in order for Lisp to be an effective tool on a Unix workstation, it has to fit into the Unix environment. Thus we've worked on linking to standard window system (initially sunview, now the X window system) and standard editors (such as GNU emacs). End of blast. It's one thing to for Kadarauch to say random "We're the best" things in his interview, after all he's the team leader and that's the kind of thing a leader is supposed to say (whether it's true or not). But people will look to a technical person for plain and honest facts and frankly I'm very disappointed by what I've read in Gabriel's interview. - John Foderaro Senior Scientist Franz Inc. 415 548 3600