|
Posted by cwdjrxyz on 07/16/06 21:03
Toby Inkster wrote:
> cwdjrxyz wrote:
>
> > Yes, [C++ is] higher level than, for example, Javascript, in that it is
> > a much more complete and extensive language.
>
> Your usage of the term "higher level" is seriously at odds with the way
> most programmers would use it. High level languages are the most abstract
> ones -- the ones that hide away the internal workings of the computer.
>
> C++ allows, and in some cases requires you to specify memory addresses,
> data type sizes and so forth, so is generally considered a fairly low
> level programming language. C is even lower level as it doesn't include
> object-orientation; Assembly language is very low level; and machine code
> is about as low level as you can get.
>
> Javascript, being an interpreted programming language with no direct
> access to memory addresses, built-in functions for common input/output,
> and object orientation is generally considered fairly high-level.
>
> See:
> http://en.wikipedia.org/wiki/High-level_programming_language
Which includes:
"Note that the terms "high-level" and "low-level" are inherently
relative. Originally, assembly language was considered low-level and
COBOL, C, etc. were considered high-level, as they allowed the
abstractions of functions, variables and expression evaluation, and
also that they had to be compiled to assembly before being compiled
into machine code. Many programmers today might refer to C as
low-level, as it still allows memory to be accessed by address, and
provides direct access to the assembly level."
An about face, if I ever saw one. I much prefer the earlier usage
refered to above. Of course, with such a history of usage, the term low
and high level now should not be used because it now can cause
confusion. So I guess we should all just specify the language involved.
By the way, I try not to use Wikipedia and other such online sources
that depend on user input. Too much garbage often creeps in such
sources. I either want a reference that has been properly edited by a
better publisher(university presses etc) or that comes from a properly
peer reviewed scientific or engineering journal source.
I have programmed in Fortran IV, but never Cobol, which mainly was
used by business types. I even earlier programmed in Algo and Intercom
for the Bendix (G15?) which was one of the earliest computers with
widespread usage in the US. Algo was a modified watered down version of
Algol and this language looked a bit like Fortran. Intercom was much
closer to a machine language. I know were there was still one of the
old Bendix computers in usage just a few years ago. It had been highly
modified in the distant past to automate collection of thermodymanic
data. It still did what was needed, and since a new computer would have
required extensive program development, no one wanted to replace it
until they absolutely had to. The computer output was to huge magnetic
tape units and a modified IBM electric typewriter operated by solenoids
attached to the keys. I hear that some who used this machine once tried
to get a steno to have a speed typing contest with the machine, but she
would have nothing to do with it.
About the lowest level computer(in the sense that I and many others
used it at the time) that I ever programmed was an ancient control
computer made by some division of North American Philips. It had core
memory and used octal. I hear that it was once used in military
airplanes, and it was extremely reliable. The programs were all octal
numbers. The first part of the number specified what type of operation
was to be done, and the second part specified core memory location. The
main thing the computer did was interface to about 20 controls that
monitored temperatures, water flow, positions etc. It ran a stepping
motor that changed angles by increments of a few tenths of seconds of
one degree. The machine ran unattended overnight. If problems were
detected, it was automatically shut down. Since the control computer
was good for only the most basic calculations, data was collected on
tape. The next day the data was routed into the large house computer
for analysis. This was in the earlier days of large house computers
with many terminals scattered around labs and offices. Many were tape
and print only rather than CRT displays. My programs were monsters for
the time and required repeated inversion of huge matrices, and
sometimes required hours to run. Time sharing was then still a bit
crude. My programs would slow down the system for others to a snails
pace at certain points. The computing department had to call in
programmers from the computer company several times to make the time
sharing work better.
[Back to original message]
|