WWDC 93
Volume Number: 9
Issue Number: 7
Column Tag: From the Field
WWDC ‘93 Report
A quick look at this year’s Apple World Wide Developers Conference
By Neil Ticktin, Editor-in-Chief
Once a year, Apple pays a lot of attention to Macintosh developers. This year’s
World Wide Developers Conference took place May 10-14 at the San Jose Convention
Center. As you might imagine with a full week of developer information, we’ll only be
able to touch the surface on the conference happenings.
Apple - the King Marketeer
This year Apple made a lot of progress in their presenting - they trimmed the
marketing and presented the meat. Although many developers considered day one to be
(as one developer put it) “content free”, day two and three were so content intensive
they left everyone overloaded. Apple got this message and hopefully they are headed in
the right direction for future WWDCs. I imagine that it is hard for Apple to keep the
hype down - they had a great year and they have a lot to be proud of.
In 1986, John Sculley came up with the idea of the Knowledge Navigator. This
computer [which is actually a video demonstrating a concept] is the ultimate digital
assistant. Today, several years later, we are still striving towards this kind of
technology. And although we are a long way off from Knowledge Navigator, we have
made a lot of progress. There are a couple of important parts to the direction that
Apple is taking - most importantly is the notion of “Agents”. It’s hard to define an
agent, but think of them as the intelligent little pieces of software that do what you
want because they know what you want them to do.
There are a lot of technologies to cover beyond Agents and also that make Agents
possible. We’ll take a look at these one by one.
PowerPC - The Chip
Before WWDC, I didn’t care too much about PowerPC. Apple takes many
“strategic directions” and sometimes you get burnt if you aren’t sure they’re serious
first. I have news for you - they are serious about PowerPC!
For those of you living in your local cave who don’t know what PowerPC is -
here’s a quick description. PowerPC is a family of CPUs designed and manufactured
through a joint effort of Apple, IBM and Motorola. This chip family is based on the
architecture for the processor in IBM’s RS/6000 workstation. It is a Reduced
Instruction Set Computer (RISC) as compared with the 680x0 series which is a
Complex Instruction Set Computer (CISC). Originally (40 years ago), computers had
very small instruction sets. As they became faster, designers added more instructions.
RISC is coming full circle back to where computers started - very few instructions,
but done as fast as possible. It is the intelligent reduction of instructions based on the
experience that came with CISC processors. Today’s thinking (unless you’re Intel) is
that it’s better to be a very fast RISC than a fairly fast CISC.
Intel is a standout in their thinking. They’ve created Pentium in the belief that
you don’t need to be RISC to be fast. They’re right - Pentium is very fast. In fact,
Pentium is a little faster than the PowerPC 601 (the first chip in the PowerPC
family) when it comes to Integer instructions. On the other hand, PowerPC is
significantly faster than Pentium when it comes to Floating Point.
Pentium has some problems though. First, it’s late. Second, there are rumors
that the first version which was supposed to be 66MHz will end up being 60MHz for
production reasons. Third, it’s expensive - under $1000 compared to PowerPC 601
being under $400. Fourth, the chip generates so much heat that some PC vendors are
considering a fan within a heat sink to deal with the problem. The joke going around is
that you can cook a hot dog on a Pentium!
But more important than all the current problems is the notion of Pentium and
its future. Intel has consistently tried to convince people that RISC is not necessary.
Now, they’ve produced a chip with an enormous surface area and production problems.
It consumes so much power and so much heat that a laptop version may prove to be
very difficult. PowerPC is the beginning of a new family. Pentium is [towards] the
end - where are they going to go next?
One interesting note: other companies are coming up with other uses for
PowerPC. You may already know about IBM using PowerPC in their computers, but did
you know that Ford Motor Company is going to use PowerPC in their Electronic Engine
Control modules as early as 1997? Now if they would only build in that Macintosh!
PowerPC - The Macintosh
So there’s this hot new chip. Who cares? If you buy Macs, you do. Apple expects
to ship the first of the PowerPC based Macintoshes in the first half of 1994. These
will be relatively inexpensive, very fast machines. Apple engineers showed demos of
the PowerPC running 2-6 times faster than a Quadra.
But, you won’t be able to take advantage of the speed unless you have software
that will run on the new chip. Apple realizes this. So they’ve created an LC68040
emulator that will allow you to run all of your current software without a hitch. Then,
you can slowly move to PowerPC versions of software. There will be no FPU
emulation, but 68K emulation of SANE is faster than a native 68K FPU anyway. The
MMU is also not emulated, but their solution is also faster and virtual memory is
supported. You should expect the emulation speed to roughly be a 25 MHz 68040.
Not all of the toolbox will be ported to native PowerPC code right away. They
have analyzed the code to see what is most important to translate first. This analysis is
based on a number of different applications currently on the market (including System
7). The tentative list of accelerations includes: DrawText, QuickDraw, Font Manager,
QuickTime Components, Resource Manager, Memory Manager, Fixed point math
package, BlockMove, Trap dispatching and SANE. This list may change.
From the Macintosh developer point of view, the transition will be relatively
painless. There are a few things that you will have to watch out for. For example,
ProcPtrs need to become routine descriptors. You’ll need to make changes if you are
executing code resources. There is no segment loader. And if you are using 80- and
96-bit floating point data types then you’ll have to change to new data types. We’ll try
to bring you some detailed information in issues to come. However, rest assured, we