|
Jim wrote: >Years ago (10 or so) I would of said, yes, Perl was a high level >language, but I think with the advent of improved technology >that a shift has occurred, and it is more of a mid level language. > >I do agree, however, that my concept of a "high level language" >is probably not what the rest of the computer community thinks >of, so I should of probably said it was not a higher level language? > >Or perhaps it is just that I do not understand Perl enough to >know of it's capabilities. > >To me, the higher level the language the more machine code is >produced for each line of source. Optimized machine code too. > >C is not considered a high level language (or it used to not be) >because it was very close to the hardware. C has gotten a bit >higher level, but not as much as some. > >Assembly is extremely low level because there is almost a 1:1 >correlation between source code and machine code. > >Perl and Rexx, however, are somewhat hard for me to place, >the same as Basic used to be, because they are interpreted. >I really don't know where to place interpreted languages in the >scheme of things. Anything that is interpreted and not compiled >to executable format, in my opinion, is a little bit lower level >than if the same source was compiled. Oh dear oh dear oh dear! Where to begin! You said "To me, the higher level the language, the more machine code is produced for each line of source." This is one source of problems for you since you later admit that you don't know where to fit interpreted languages, like Perl and Rexx. Add Java to that and you'll really see how inadequate your definition is! Perhaps a more useful definition would be "the higher level the language, the more stuff is done for you by the language." No, that still doesn't seem quite right to me, but perhaps that fits more what you had in mind. - - - - - Personally, I like to think of programming languages as consisting of various levels of abstraction above the hardware. In the past, a lot of people talked about generations of programming languages - I like to classify languages by decade. In each decade during the recent history of computing, languages featured additional levels of abstraction: 1940's - bare hardware 1950's - operations were abstracted - Fortran 1960's - control structures were abstracted - Algol 1970's - data structures were abstracted - Pascal, C 1980's - module interfaces were abstracted - Modula 1990's - abstraction of objects - C++, Java As the decades progressed, higher level concepts were abstracted into language features. Where does Rexx fit in? Since it has poor data structuring capabilities, it fits into the 1960's. OTOH, Object Rexx fits nicely into the 1990's. Since Perl has features that facilitate OOP, I'd place Perl squarely in the 1990's. Whether or not a language can be compiled down to machine code is irrelevant, or at least fast becoming so. Todays personal computers are at least 3-4 orders of magnitude faster than the first IBM PC. Today's interpreted programs run at least as fast, if not much faster, than the compiled programs of yesterday. In many cases, it's insignificant anyways. For example, in GUI programs, much of the work happens in widget toolkit libraries anyways, and so there's little performance advantage to compiling your program down to machine code. Cheers! Hans Hans Boldt, ILE RPG Development, IBM Toronto Lab, boldt@ca.ibm.com +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.