Before you call it "RUBBISH". READ IT, and understand what was said.
You seem to have ignored the first line of each and every paragraph.
You consistently misquoted me as saying that everything had to be written
in assembly language.
I did NOT say that ANY of those items had to be written in assembly
language. I said that doing them well required an "understanding of
assembly language".
Surely you can understand the difference.
And, in response to your STRAWMAN argument,
NO, you can NOT "excel in driving" without
an understanding of how a car works.
You can get by as an adequate driver,
but you will NEVER "excel" if you don't understand the engine.
[Yes, I CAN build an engine from scratch. But I have always
built them from existing auto parts. I have extensive
professional automotive experience.]
I will concede a total lack of experience with MODERN games.
In the "vast array of criteria", which kinds of optimization
do you think are not helped by an understanding of machine language?
What do you think "optimization" means?
--
Grumpy Ol' Fred cisin(a)xenosoft.com
On Tue, 22 Jun 2004, Ken Seefried wrote:
I'm a big proponent of teaching my students
assembly, though not machine
language, but the following was simply silly...
From: Fred Cisin <cisin(a)xenosoft.com>
Regardless of whether you actually USE it in the
project,
if you do not have an understanding of machine language,
then you can not write a good "driver", or anything else
that directly addresses hardware.
True. But what percentage of programmers write drivers (clue: it's small).
Regardless of whether you actually USE it in the
project,
if you do not have an understanding of machine language,
then you can not write a good operating system, or any
other system software.
True. But what percentage of programmers write operating systems (clue:
it's small).
Regardless of whether you actually USE it in the
project,
if you do not have an understanding of machine language,
then you can not write a good game, or anything else that
needs to be efficient.
Completely not true.
Modern games (as in most anything past the 8-bit era) are written
predominately if not exclusively in higher level languages (C, C++ or C#)
and rely much more on content (story, textures, skins, etc.) than anything
that has to be written in machine language for success. And the engines
driving these games haven't been written in machine (or assembly) in a long,
long time. Modern games use DirectX or OpenGL and are written in high level
languages.
Even Carmack doesn't program in machine language in modern history, and he's
the demi-god of game optimization.
You can download the source to many older games if you don't agree.
I don't even need to go into things like Cg and how far they absract writing
good games from machine language.
Regardless of whether you actually USE it in the
project,
if you do not have an understanding of machine language,
then you can not do a good job of optimizing ANYTHING.
Total rubbish.
There are lot's of kinds of "optimizing", not all of which mean "doing
it
the way that Fred thinks it should be done" or "doing it in the absolute
fewest instructions". If you are going to use words like "ANYTHING"
(esp.
with the caps), you need to include optimizing for a vast array of criteria.
Is machine language the only way to optimize for user interface? Probably
not, except for extremely narrow definitions of optimized.
Is machine language the way to optimize for dynamic logic (like different
tax laws from one year to the next)? Probably not.
Is machine language the way to optimize for realistic, modern deadline or
budget? Almost certainly not.
Regardless of whether you actually USE it in the
project,
if you do not have an understanding of machine language,
then you can not do a GOOD job of programming anything.
Total rubbish.
I can't build an engine from scratch, therefore I can't excel at driving a
car?
I can't build a spin cast reel, therefore I can't fish.
The folks who program Quicken have to know machine language to do a GOOD job
at writing tax software? Rubbish.
The folks at Adobe have to know machine language to do a GOOD job of
rendering Acrobat pages? Rubbish.
The Gnome, KDE, QT, etc., folks haven't done a GOOD job, for all values of
GOOD, because they use high level languages. Rubbish.
You can do anything in machine language. Can you do nothing well without
it? Rubbish...Obviously you can.