[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

using Lisp in astronomical data analysis



Dear friends,

to make it absolutely clear, I posted the verbatim message 

    "There were two serious candidates for aips++ and one "dark horse" 
    Fortran90, C++, and Eiffel. One goal of AIPS++ is to allow casual 
    astronomer/programmers to more easily try out new algorithms than in the 
    existing AIPS1 system. The decision to adopt a fairly conventional 
    language like C++ was controversial enough; a "weird" language like lisp 
    would have been impossible to sell to our conservative audience."

not because I objected against the characterization of Lisp as
"weird" - it was in quotes already - but to illustrate that a major 
obstacle against using Lisp in our science community is the perceived
conservatism, i.e. a psychological factor paired with a lack of formal
education in computer science and modern computer languages. And
radio astronomers know more about computers than optical astronomers
which I am surrounded with.

Don't be harsh with me. Don't be harsh with a reasonable person
involved in a major astronomical software project. Don't try to
convince me by counting up all the nice features Lisp possesses 
compared to Fortran and C. I know about them (or at least about most
of them) by practical experience, since I have been using Lisp for
more than 5 years now.

If you have the task of selling something to someone you must find
the argument your customer listens to (and likes). People in my
community have grown up with Fortran and many have not seen much more.
Some have changed over to C, more in the US than in Europe. And one
thing they know is that Fortran is damn efficient! So they
will inevitably forward that argument and you (or poor me) have to 
counter it.

Tell me what to do to get FP-performance out of Lisp now! With the 
compilers we have. I wouldn't mind a factor of 2. I *do* mind a 
factor of five. I want this to be taken serious by the Lisp compiler 
vendors and not to be talked away or glossed over with lukewarm 
words. If I need to be educated on what kind of declarations to
put in (or to use MAPping instead of a DO-loop or ...), well, I need 
to be educated. I am willing to listen and learn. 
Sorry to be so direct, but I want to make my point clear.

Thanks for reading so far.

Hans-Martin Adorf
ST-ECF/ESO