Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 v7 ucbtopaz-1.8; site ucbtopaz.CC.Berkeley.ARPA Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!decvax!ucbvax!ucbtopaz!mwm From: mwm@ucbtopaz.CC.Berkeley.ARPA Newsgroups: net.lang Subject: (qualityp BASIC) -> NIL Message-ID: <733@ucbtopaz.CC.Berkeley.ARPA> Date: Sat, 16-Feb-85 23:38:17 EST Article-I.D.: ucbtopaz.733 Posted: Sat Feb 16 23:38:17 1985 Date-Received: Tue, 19-Feb-85 08:33:19 EST References: <7873@brl-tgr.ARPA> <706@ucbtopaz.CC.Berkeley.ARPA> <467@houxj.UUCP> Reply-To: mwm@ucbtopaz.UUCP (Praiser of Bob) Organization: Missionaria Phonibalonica Lines: 43 Summary: Yes, you can find external reasons for using a language. Including BASIC, COBOL, PL/I and FORTRAN (the whipping boys of the CS community). Just such reasons have had me writing machine code. However, first and foremost, a programming language is a tool for using a tool (your computer) to solve problems. [Ohmigod, I said that like it was a fact! Gulp! Get out the asbestos suite.] Like any other class of tools, some languages are better for solving a specific problem than other languages. For example: I've as yet to find a better tool for most raw number crunching than FORTRAN (but give me 77!). For building tools to work on my tools, where speed is important but not vital (kernel hackery & such), C does a good job. For shuffling symbols, and breadboarding algorithms, LISP is marvelous (but I may change my mind, now that Little Smalltalk is here...). For tweaking strings, Icon. For quick and dirty calculations, one of calc, bc, or LISP. As a side flame, I'm bothered by the number of people who don't seem to understand this, and start thinking about the code before they consider the language. Does nobody teach that choosing the right tool for a job is important? Now, back to the subject line (maligning BASIC :-). I know of *no* class of problems for which anything even close to ANSI minimal BASIC is the best tool for the job. True, there are extended BASICs that are useful, but most of those look more like Pascal than BASIC. However, those aren't portable to other BASICs, and some of them choke on ANSI minimal BASIC. It's like the Pascal problem: you either get something inadaquate, or you get something unportable. Even COBOL does better than that, as there is a small class of problems where COBOL would be preferable - at least until somebody puts the CORRESPONDING keyword into a modern language. (Hmm x CORR= y?).