Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!ub!jung From: Gavin.Flower@comp.vuw.ac.nz Newsgroups: comp.sys.acorn Subject: Re: Languages Message-ID: <9102142149.AA04166@kio.comp.vuw.ac.nz> Date: 14 Feb 91 21:49:40 GMT References: <2282@cybaswan.UUCP> <5046@acorn.co.uk> <1991Feb9.075251.16439@rtf.bt.co.uk> <1991Feb10.180855.17062@cns.umist.ac.uk> Sender: news@acsu.Buffalo.EDU Organization: Dept. of Comp. Sci., Victoria Uni. of Wellington, New Zealand. Lines: 34 Nntp-Posting-Host: autarch.acsu.buffalo.edu To: jung@einstein.physics.buffalo.edu Originator: jung@autarch.acsu.buffalo.edu Although my days of writing systems in BASIC (on an 8-bit BBC model "B") are over. I think that the BASIC on the ARC is highly structured. For writing small programs, and simple systems, it beats both "C" and COBOL. "C" and COBOL come into there own when at least one of the following apply:- - you are very fluent in "C" or COBOL, but not Arc BASIC - writing large complex programs - writing of medium to large systems - several people sharing the programming effort - established libraries of code in "C" or COBOL - portability is important - speed of run time execution is a significant factor Where the elapsed time between having an idea and having a working program is crucial, Arc BASIC has a great advantage over compiled languages in several situations. Assembly language is fine for speed, but it is not very portable. Optimising for one procesor such as an ARM2 means you have rewrite to optimise for an ARM3 which has a cache. "C" versus COBOL: COBOL tends to be mini/mainframe based - a lot of people have been trained in it (including me - shock horror) and there is massive mnumber of large systems needing to be maintained in it. "C" exists on the most number of processor architectures and varieties of operating system as well providing the greatest flexibility in developing systems on "micros" or in UNIX (my own micro, A310, has 8 times the processing power of an old ICL4/72 mainframe which used to control a thousand banking terminals). I think the best answer is to develope good optimising "C" compilers and use assembly code only for really crucially time dependent functions.