vollum@rtp47.UUCP (Rob Vollum) (08/16/85)
In article <909@oddjob.UUCP> paul@oddjob.UUCP (Paul Schinder) writes: > >I've been curious for a while what scientist/engineering types on the net >use for scientific programming. > <some editing> >The advantages of fortran in my opinion are 1. >at least two real precisions, 2. standard and powerful i/o routines, and 3. >very wide availability with great portability (because of the existance of a >standard for the language). Is there any other language which shares these >properties but also has some of the constructs I would like to use (while, >do ... while, case, structures, pointers). > >Reply via e-mail; if there is a large enough response, I'll summarize in a >few weeks. Thanks. >-- > Paul Schinder (I did reply, at length, via e-mail, but I had to post here as well. I'll keep it short.) I vote for Common Lisp. Beyond the excellent programming environment it provides, it gives a rich set of numerical operations as well. It has: infinite precision integers, complex numbers, many flavors of floating point numbers, and for those who don't like roundoff error, true rational numbers. As for control structure, it provides iteration, conditionals, lexical closures of functions (i.e. functions as first class citizens), and recursion, to name some important ones. It also uses lexical scoping for semantic cleanliness, and for when you need(?) global variables, it provides "special variables", which are essentially globals where you can stack values by binding, or assign new global values by straight assignment. Common Lisp supports a robust structure facility for data abstraction, and a macro-defining facility for language extension. For I/O, the FORMAT statement and use of the abstract notion of I/O streams provide a more robust I/O engine than most people could ever fully use (a good point?). For a standard language, well, it's trying. One of the ideas of Common Lisp is to unify the Lisp community. We'll see if a 'real' standard ever happens. Concerning efficiency, there is no reason, given improved compilers that handle type-inferencing and type-propagation, for example, that compiled Common Lisp can't be as fast as compiled anything else in most cases; certainly in most 'simple' numerical applications that would be handled by a Fortan program (simple here means 32-bit integer or single- or double-precision arithmetic). (Did I keep that short?) --- -- Rob Vollum Data General Corp. Research Triangle Park, NC <the world>!mcnc!rti-sel!rtp47!vollum
mff@wuphys.UUCP (Swamp Thing) (08/23/85)
In article <147@rtp47.UUCP> vollum@rtp47.UUCP (Rob Vollum) writes: >Concerning efficiency, there is no reason, given improved compilers that >handle type-inferencing and type-propagation, for example, that >compiled Common Lisp can't be as fast as compiled anything else in most >cases; certainly in most 'simple' numerical applications that would >be handled by a Fortan program (simple here means 32-bit integer or >single- or double-precision arithmetic). >-- >Rob Vollum >Data General Corp. >Research Triangle Park, NC ><the world>!mcnc!rti-sel!rtp47!vollum Most people are concerned with what's available now, not what will be available sometime, mabye. As for the original question, most scientists I know crunch there numbers in Fortran (myself included, although I've done some other programing in C). Most people who have switched to C now consider Fortran to be slime. And most people who refuse to program in C have never done so. (This all applies to people I know, not in general). F66 certainly had it's problems, most notably a serious lack of control strucures. F77 is much better. As a side note, while we've all heard that the Cray-2 will be running Unix, the one curently running at Livermore is not (it has the same operating system as the Cray-1's there) and all the number crunching will still be done in Fortran. There will be a C compiler for support of the Unix system. I suspect that it will be a long time before someone comes up with a C compiler that's as vectorizing and as optimized as the Fortran compilers that they use. Mark F. Flynn Department of Physics Washington University St. Louis, MO 63130 ihnp4!wuphys!mff "There is no dark side of the moon, really. Matter of fact, it's all dark." P. Floyd