Subject: Re: Lisp in the "real world" From: Erik Naggum <erik@naggum.no> Date: 1997/07/04 Newsgroups: comp.lang.lisp,comp.lang.scheme Message-ID: <3077005983957293@naggum.no> * Martin Rodgers | I agree. However, if you're talking about _my_ time, that's already | committed. In my spare time, I'm writing a Lisp to C++ compiler, while | I'm being paid to use C++ and Java. If you'd like to convince my boss | that I should be using Lisp, you're very welcome to try. I was paid to write C++ once. I couldn't stomach the redundancy and the syntax, so I wrote more Emacs Lisp to write C++ for me than I wrote C++. a good C++ programmer I asked to review the code told me I wrote "clean, good C++", which I found very amusing at the time. (no, it's not reusable -- I embedded a lot of the knowledge I couldn't express in C++ in the Lisp form.) in the end, I could generate all the C++ code from the Lisp files, and indeed, I did. it was faster to generate everything and build all than to try to figure out what had changed and use make, so it's obvious that this approach doesn't scale very well in the form I wrote it. now, I'm a _big_ fan of metaprogramming, but I find few others who are, so this may not give you anything. C++ with Lisp syntax is a cool project. not only does it give you that good feeling of unbraindamaging C++, it can save you from many stupid bugs and needless writing, especially if you put most of your efforts into type inference and propagation. ("static typing" doesn't mean _you_ have to do it!) writing a Lisp to C++ compiler from the Lisp point of view is a waste of time, unless you're doing it as a commercial project, like the Elwood Corporation is doing a Lisp compiler that produces readable C code as output. there are many ways to be productive with Lisp without being able to deploy Lisp code. all the very good programming modes for Emacs and the ease with which more support for special needs can be added sort of prove this point, even if you don't use Emacs. for instance, that WinMain->LibMain thing of yours is probably not in any particular need of human intelligence, so the right thing is to mechanize the task and thus get rid of it for godd. that humans should repeatedly perform simple manual tasks so computers can do less work is in my view a fundamentally wrong approach to computing, yet this is what made Microsoft big and Windows a commercial success. #\Erik -- if DUI is "Driving Under the Influence" then GUI must be "Graphics Under the Influence"