🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #2277

Re: Fortran vs. C for numerical work

#2277
From: Bill Poser
Date: Tue, 04 Dec 1990 01:14
54 lines
3329 bytes
Would someone care to enlighten me as to why he or she thinks that C has
a difficult syntax and is difficult to learn? I just didn't have this
experience, and I came to C after having learned Fortran, Assembler
(MIX, on paper, and then the assembler for an obscure Japanese laboratory
mini) and BASIC. I understand the position of LISP fans with respect to
C syntax, since LISP syntax is clearly simpler (though I don't entirely
agree that this is a good thing, but that's another issue), but why
Fortran fans think that C syntax is more difficult is something that I
find mysterious. As far as I can tell, the difficulties that people
find in C stem from three sources:

	(a) C provides (via pointers and recursive functions) the
		ability to construct elaborate recursive data
		structures and the ability to traverse them.
		I suggest that the difficulties here are due to
		the fact that many programmers, especially Fortran
		programmers, are unfamiliar with data structures and
		recursion, but the problem is that these people need
		to learn these concepts, not a defect in the language.
		To make an analogy, most Algol-class languages lack
		closures, and people brought up on them may find
		it difficult at first to manipulate closures in a
		language like Scheme, but surely it is not
		a defect of Scheme that it provides them.

	(b) A few C constructs resemble constructs in other
		languages but are not the same. People brought
		up on these other languages don't like this.
		For example, gripes about the C switch statement
		seem basically to amount to the fact that it
		isn't the same as the Pascal case statement.

	(c) C doesn't provide run-time array bounds checking
		and some other safety features. I just don't
		see that this is that important. Surely it
		can be avoided by careful coding, and systems
		like Saber-C are available to do this at
		least at development time. But in any case,
		it isn't a syntax issue.

In short, there are a number of modern language features that
I like that C doesn't have, such as automatic storage allocation
and garbage collection, closures, first class functions, out of
band success/failure, and procedure suspension. These make me
sympathetic to arguments for using languages like ICON and Scheme,
at least for some purposes. But I really don't understand the
arguments coming from Fortran enthusiasts. So, would someone care
to explain why, from the point of view of Fortran, C can be
said to have a complex syntax and to be difficult to learn?

N.B.: I am aware of the efficiency arguments having to do with
aliasing. That's a different issue.

						Bill
Technical Details
Message-ID: <16671@csli.Stanford.EDU>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!usc!apple!agate!shelby!csli!poser
References: <2392:Nov2902:59:0590@kramden.acf.nyu.edu> <7339@lanl.gov> <1990Nov30.145649.17688@ux1.cso.uiuc.edu> <1990Nov30.163613.9562@alchemy.chem.utoronto.ca> <1980@mts.ucs.UAlberta.CA> <18016@hydra.gatech.EDU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!usc!apple!agate!shelby!csli!poser
From: poser@csli.Stanford.EDU (Bill Poser)
Newsgroups: comp.lang.misc
Subject: Re: Fortran vs. C for numerical work
Message-ID: <16671@csli.Stanford.EDU>
Date: 4 Dec 90 01:14:41 GMT
References: <2392:Nov2902:59:0590@kramden.acf.nyu.edu> <7339@lanl.gov> <1990Nov30.145649.17688@ux1.cso.uiuc.edu> <1990Nov30.163613.9562@alchemy.chem.utoronto.ca> <1980@mts.ucs.UAlberta.CA> <18016@hydra.gatech.EDU>
Reply-To: poser@csli.stanford.edu (Bill Poser)
Organization: Center for the Study of Language and Information, Stanford U.
Lines: 54