Jim wrote:
Hundreds of years from now, there will be a new
definition of "low
level", > and people will still understand and work
with it.
Possibly. But it likely won't be anything at all like assembly language.
I wrote about the prevalence of assembly language programming:
> certainly seems to be much less used
> relative to other languages than it was even just ten years ago.
Jim wrote:
*Much* is opinion,
Sure, it's opinion. I don't have solid numbers, and I don't know
where to get them. But I'd be willing to wager real money that if
well-researched figures on this subject existed, they would show that
there are at least a thousand times more lines of code written worldwide
per year in languages other than assembler, than there are in assembler.
In fact, it wouldn't surprise me if the factor was over a million or
even ten million.
And I'm fairly sure that whatever the ratio is, it's larger than it
was ten years ago, and still on an upward trend.
and gives away your viewpoint as outside professional
programming industries.
I've been a programmer for 29 years now, professionally for more
than 20 of that. Much of that has been in embedded systems, which
in general are *more* likely to use assembly than software for
general purpose computing. I even write a lot of assembly myself
for microcontrollers. But even so, I *still* see that the industry
as a whole appears to be using a very much lower percentage of
assembly code than it was ten years ago.
Is it used less? Depends on what you're trying
to build. I find myself using assembly *more* than I did 20 years ago
simply because I understand it better (and understand what my compiler
doesn't).
I understood assembly well back then, and still do now. Yet I write
a much lower percentage of my code in assembly now than I did back
then. Why? Because it's rarely necessary, and even though I'm fluent
in assembly language, I still have better productivity in C or Ada.
When profiling shows that an inner loop is a bottleneck, sure I'll
consider recoding it in assembly. And when I'm writing timing-critical
code to control hardware, which I've done plenty of (e.g., generate
an NTSC composite color video signal in real time entirely in software),
I'll do it in assembly. When I'm writing test routines for the PDP-1
restoration project, or for my own PDP-8, PDP-10, and PDP-11 systems,
I do that in assembly. But for me, and for most programmers, those
are the exceptions, not the rule.
while in-line assembly may be less than 1% of a
program, it can
provide 50% of the optimization (above the algorithm itself, obviously)
and is very much in use.
I never said that it wasn't still in use. But a program that uses
1% assembly code today probably would have been written using more
like 5% assembly code ten years ago.
Eric