Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!rpi!uupsi!sugar!peter From: peter@sugar.hackercorp.com (Peter da Silva) Newsgroups: comp.sys.amiga.advocacy Subject: Re: Is C a High-level Language? (was Re: Computer Architecture question ) Message-ID: <1991May15.114537.22616@sugar.hackercorp.com> Date: 15 May 91 11:45:37 GMT References: <1991May8.042432.27636@NCoast.ORG>> <1991May10.055512.29552@metapro.DIALix.oz.au> Organization: Sugar Land Unix -- Houston, TX Lines: 39 In article <1991May10.055512.29552@metapro.DIALix.oz.au> bernie@metapro.DIALix.oz.au (Bernd Felsche) writes: > I have always believed that C is little more than protable > assembly language. Although it pretends to be an HLL, before > ANSI, there was no way it would fit many people's ideas of a > HLL. You been spoiled, mate: > Language Generations: > 1GL: Machine code > 2GL: Assembler > 2.5GL: C > 3GL: C++, Eiffel > 4GL: Any language that hides how the data is stored and presented. > 5GL: Something that writes itself from your specifications. > 6GL: Something that works out the specifications. > 7GL: Somebody else's problem :-) Well, other than these sort of categories being pointless, in terms of how high level they are I'd rank languages like so: Machine language Assembly language Forth, BLISS, etc... (structured assemblers) C, Pascal, Modula (Statically typed procedural languages) C++, Simula (statically typed object-oriented languages), and Basic, Perl (statically typed interpreted languages) Smalltalk, Scheme, Lisp, REXX, TCL (dynamically typed languages) UNIX shell, dBase, etc (database/dataflow languages) Prolog, Make, etc (goal-seeking languages) There are a mixture of old and new languages here, so don't be surprised by where older stuff finds itself. Also, you can write higher level programs in lower level languages by applying a little discipline and maybe implementing an interpreter... so the fact that you can do goal-seeking in Eniac machine code isn't relevant. -- Peter da Silva. `-_-' .