Path: utzoo!mnetor!tmsoft!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!wuarchive!uunet!mcsun!ukc!slxsys!ibmpcug!mantis!mathew From: mathew@mantis.co.uk (mathew) Newsgroups: comp.sys.acorn Subject: Re: More about BASIC vs. Pascal vs. C (the flame war continues !) Message-ID: Date: 12 Feb 91 13:43:54 GMT Organization: Mantis Consultants, Cambridge. UK. Lines: 89 rkl@and.cs.liv.ac.uk (Richard K Lloyd) writes: >In article <1991Feb10.180855.17062@cns.umist.ac.uk>, >rogersh%t1a@uk.ac.man.cs writes: >> Pascal & C are block structured, BASIC isn't. > >Hmmm...a slightly rash statement there. Of the three, I'd say that >Pascal was the *most* structured, BASIC second and C last of all... Come off it. BASIC doesn't even have proper block structuring for variable scopes. >> and the fact >> that the language of *choice* in almost all commercial systems >> software is C. > >Ahem. It's COBOL and FORTRAN actually...sorry to disappoint you there. He said commercial SYSTEMS software. Little commercial systems software is written in FORTRAN, and almost none in COBOL. FORTRAN is restricted almost exclusively to scientific software, and COBOL is used almost exclusively for business data processing. >Really good Pascals (i.e. Borland's Turbo and VAX/VMS Pascal) give C more >than a run for its money for advanced users. It's the lousier Pascals >(UCSD et al) that give the language a bad name. That's because these "lousy" Pascals are ones which stick to the standard, whereas things like Borland Turbo "Pascal" are so extended as to be Pascal in name only. This, of course, means that you have zero portability from Turbo "Pascal" to anything else. >I was dabbling in C on our HP UNIX boxes a while back and I was shocked at >the complete lack of warning about the following: > >hello(param1,param2) >int param1,param2; >{ > printf("Param 2 = %d\n",param2); >} > >main() >{ > hello(1); >} > >Yes folks, I forgot a parameter and THERE WAS NOT EVEN A WARNING FROM THE >COMPILER! Congratulations. You've realized why nobody makes non-ANSI compilers any more. Have a peanut. >I put it through lint too and NO WARNING AGAIN! I'm suspicious of this; lint ought to be able to notice things like that. I've heard some very nasty comments about HP compilers, so I suspect that you're being misled. >> Dodgy - in a library ok - *not* in the language thanks. The >> great advantage of C is it's *lack* of built in rubbish. All the i/o >> etc. is in standard libraries, reducing the load image size of programs >> which don't need (or want) a pile of utility functions linked in. > >And then you get DUMB linkers that include ALL the routines in the library >that you've specified on the command line, even through you may use only a >few (or even NONE !) in the program :-( Better than linking in all the libraries though, isn't it? That's what dumb Pascal linkers do. >> Absolute not true - compiled BASIC is only a tenth the speed of >> efficiently written compiled C, and 1/12 that of raw ARM code. > >I wish that Hearsay was written in BASIC instead of C...it might be quicker >than a dead (mutant ?) turtle then :-) One thing omitted from the argument >is the fact that a "Hello World" program in C for the Archimedes can turn >out to be big (30 K ?) *and* you need the Shared C library (60K). The >equivalent BASIC program ? About 30 bytes :-) :-) The BASIC interpreter for the Archimedes takes up 30 bytes? I'm impressed. >Richard K. Lloyd, >Computer Science Dept. I don't wish to be unnecessarily insulting, but what are you doing in the computer science department? Did you just drop in on your way to the Arts Faculty? mathew.