> im talking from the kernel writer point of view. and im most familiar
> with the x86. c assumes there is a system already running. and most
> probably that system is brought up using assembly coded initialization
> code.

No one said that assembler is obsolete, only deprecated.  Like many
"we have always done it this way" paradigms, it dies hard and it is
difficult to persuade "aficionados" that they would be better off
programming at a higher level and reserve their skills for those rare
occasions where they are ahead of the compilers or, as you rightly
point out, where there are no alternatives, such as in setting up the
stack or posting a kernel trap.

Also note that subjectivity tends to creep into this argument.  It is
easier to believe that one can write extremely efficient assembler
code, where common wisdom is that good compiler optimisation
techniques exceed the skills of the most sophisticated assembler
programmers.  At a visceral level even I have trouble believeing it,
but experience shows it to be true.  And the GCC developers certainly
put a lot of effort into proving it true.

Still, like in Fortran, assembler programming is challenging and
rewarding in the product rather than its functionality.  If we could
reduce this macho appeal, perhaps we could also convince engineers to
design processors with higher level instruction sets.

++L

Reply via email to