Subject: RE: programming language

From: "Robinson, James" <[email-masked]>
Date: Thu, 1 Feb 2001 12:42:18 -0000

These students will need jobs and you must give the skills they will need in
an ever evolving workplace. How many companies use Fortran as opposed to
C++/Java? The ability to program comes from the ability to think in the
correct manner, not from learning a single language. Joe Leonard is right in
declaring that programming skills are more important that language
familiarity. 

James

-----Original Message-----
From: Joe M Leonard [mailto:[email-masked]]
Sent: 01 February 2001 00:44
To: [email-masked]
Subject: CCL:programming language

Folks,

I've tried to avoid emailing a reply to this, as it's
basically a flame war with no real resolution - but I like
wearing Nomex underwear...

Learning Fortran alone is career-limiting, period.  There
are too many restrictions - no memory allocation, limited
system calls, poor string handling, etc.  "Good code"
written in many languages will outperform "bad code" written
in Fortran.  Algebraic/formulaic code looks pretty much the
same in any language...

If one has to maintain dusty-deck codes, then yeah, Fortran
is required.  However, knowing a second language lets one
do the CPU-intensive stuff in Fortran (if one desires) and
the "interacts with world" stuff in a more-suited language.
Select the tool for the task.

Rather than concentrating on a language, concentrate on
how programs are designed, constructed and maintained.  A
small bit of C lets one, for example, ship a single binary
which is capable of sizing itself - rather than forcing a
set of binaries for differing problem-size memory requirements.

Finally, Fortran has never been loved by those who write
compilers (except for some for-purchase versions).  Therefore,
if you're limiting yourself to Open Source tools, writing
in Fortran will slow you down as nobody's taken the time to
add the necessary optimizing stuff to g77.

Times change - I've written miles of stuff in various languages,
and (repeating myself, sorry) the trick is to write code which
solves the problem and can be maintained.  Don't teach "Fortran
Programming", teach "Programming".  If you want to teach numerically
intensive programming, use whatever language you want, and avoid
the language features which do not positively contribute to
performance...

Also consider the effect of debugging and testing tools - graduate
student time is cheap, but it can be hard on the grad student.

Joe
[email-masked]

-= This is automatically added to each message by mailing script =-
[email-masked] -- To Everybody  | [email-masked] -- To Admins
[email-masked] -- HELP CHEMISTRY or HELP SEARCH
[email-masked] -- archive search    |    Gopher: gopher.ccl.net 70
Ftp: ftp.ccl.net  |  WWW: http://www.ccl.net/chemistry/   | Jan: [email-masked]

---

From: Tom Sundius <[email-masked]>
Date: Thu, 1 Feb 2001 23:25:59 +0200 (EET)

So now we have also got this language debate here in CCL.
I have the same opinion as James. It is not so important what
computer language is being taught in introductory programming
courses for science students. It is more important that some
simple principles of programming are taught, and for that purpose
you can use Fortran, C, C++, Java,... I have taught introductory
programming courses for Physics students for many years now.
In the beginning I used Pascal, but later on I switched over to
Fortran (lately Fortran 90). One of my colleagues gives a
similar course based on C.

Object-oriented stuff etc. can be saved for more advanced courses.
In the beginning it is most important to get some familiarity with
principles. We usually start with MATLAB, which is easier, since programs
written in MATLAB can be immediately checked. After that we proceed to
simple programming.

> declaring that programming skills are more important that language
....

      Greetings,
          Tom

Tom Sundius
University of Helsinki, Department of Physics    phone +358-9-191 8339
P.O.Box 9, FIN-00014 Helsinki, Finland           fax   +358-9-191 8680