On Thu, Oct 07, 2004 at 09:08:26AM +0900, James Wages wrote:
> But wouldn't it be even more fun to have a 32-bit clean MultiFinder! :-)

Yeap!

> On 10/7/04 2:30 AM, "John Niven" <[EMAIL PROTECTED]> wrote:
> Seriously, imagine if you will how fast the MacOS and OS X apps in general
> would run if they were coded in assembly.  Forget the amount of work it
> would require and just concentrate on the speed.  That's the appeal of
> System 6.

Warning: everything said below comes from the mouth of an "astronomer"
and "physicist".  While we do have a lot of experience with low
level computer stuff, we aren't real life computer scientists or
computer engineers.

It isn't as simple as that.  Speed depends upon the quality of the
algorithm and the programmer.

An algorithm is a general set of instructions to complete a task.
For example: pretend that you were looking for somebody's name in
a phone book, and you flipped through page by page to find it.
Clearly it would take a very long time.  So you try something
different, such as going to the middle of the phone book then
determining whether the name comes before or after that page.  Say
it comes before, so you flip to the middle of the first half of
the phone book.  And so on.  The latter approach is clearly superior
because you can find a name in a 1000 page phone book by flipping
to 10 different pages.  Clearly you can use a good or bad technique
in both a low level language (assembler) and a high level language
(C or Pascal).  Actually, it would be easier to implement better
algorithms in high level languages because they are easier to read.
(Humans read code, believe it or not! ;) )

The other issue is the quality of the programmer.  Now modern
programmers don't have much experience with assembly language: they
usually go through a course on computer architecture, where they
are exposed to it and forced to do some of it.  They then promptly
forget about it.  (Usually.  There are exceptions.)  So the average
assembly language programmer is pretty bad.  On the other hand,
the high level language compilers have become smarter about optimising
code for programmers.  Now I'm not going to say these optimisers
are brilliant.  Somebody would have to solve some pretty interesting
problems in computer science for that to be the case.  On the other
hand, compiler writers know much more about computer architecture
than most programmers do.  (And I'm fairly certain that compiler
optisations are at the architecture level.  If compilers were
finding better algorithms, then some brilliant soul would have
solved and extraordinarily interesting problem in computer science.)
So that said, a good assembly language programmer will probably be
better than a good compiler -- though some compiler writers would
debate that statement.

But there is more to software speed than the quality of the code.
There is a lot going on under the hood: it takes time to switch
between programs in a multitasking system, so speed depends upon
the OS process manager.  (Don't worry about what that means.)  A
lot of programs use dynamic libraries, which means they load a bit
of themself at runtime (a bit like plugins).  These take a while
to load, and I imagine this is why program launch times vary so
much.

It also depends upon the user's expectations: people expect 24-bit
graphics which fill a good chunk of a 1024x768 screen.  Well the
dimensions mean that there is four times the pixels to shuffle
around memory, and there is 24 times more information per pixel.
So people want the program to do 100 times more for eye candy!  In
fact, people have a greater expectation for graphics today (ever
notice how there are fewer icons in System 6 era programs).
Likewise, sound effects are more sophisticated.  And so on.

So assembly language programming isn't the solution.  It is simply
a solution if you have a good assembly language programmer at hand.
Hopefully we do. :D

Byron.

-- 
System6 is sponsored by <http://lowendmac.com/> and...

123Inkjets.com <http://lowendmac.com/ad/123inkjets.html>

      Support Low End Mac <http://lowendmac.com/lists/support.html>

  System 6 Heaven <http://www.euronet.nl/users/mvdk/system_6_heaven.html>

System6 info:           <http://lowendmac.com/lists/system6.html>
  --> AOL users, remove "mailto:";
Send list messages to:  <mailto:[EMAIL PROTECTED]>
To unsubscribe, email:  <mailto:[EMAIL PROTECTED]>
For digest mode, email: <mailto:[EMAIL PROTECTED]>
Subscription questions: <mailto:[EMAIL PROTECTED]>
Archive: <http://www.mail-archive.com/system6%40mail.maclaunch.com/>

Using a Mac? Free email & more at Applelinks! http://www.applelinks.com

Reply via email to