6

ADDITIONAL INFORMATION /or COMMENTS:
PORTING from page 4
be able to do even simple things you
have to know a lot from each of those
five volumes, so the problem is that
there’s no way to get in a little bit at a
time. It’s like being thrown into the
middle of the ocean.
So if you’ve ever memorized War
and Peace you probably won’t have
any problem.
DF: I think that’s not a bad com-
ment. I would say that doing this Mac
product was for me the most difficult
intellectual exercise since I was in
graduate school. I think everyone
here would agree.
I should add that along the way we
were fortunate enough to pick up a
ringer, a fellow named Marty Sedluk
who happened to be a Mac zealot.
He was very useful; first, because he
was very familiar with the Toolbox,
and second, because he would argue
with us about whether things were or
weren’t Mac-like, and that was of
great assistance, too.
Believe me, if you haven’t con-
tacted the Mac zealots, you haven’t
lived. It’s literally a secular religion,
and they are deadly serious. They’ve
forgotten it’s a computer program
somewhere along the line.
Aside from the difficulties in-
volved in learning how to use the
Toolbox effectively, did you en-
counter other frustrations during
the port process that were tied to the
design of the Mac?
DF: Not to the design of the Mac
hardware, but the architecture of the
Mac system. We started with the idea
that we’d sort of”Mac-ize” FoxBASE
a little bit, but not turn our applica-
tion inside out.
Let me explain what I mean by
that. As Bill hinted, the Mac requires
you to be event-driven; that is, every-
thing responds to external events,
which is the exact reverse of the way
you normally program on the DOS
side. These events, moreover, hap-
pen somewhat asynchronously, so the
architecture of a Mac application
typically is centered around a single
event-processing loop, and the entire
system is driven by events that are
picked, which is more or less the in-
verse of what you’re accustomed to in
the DOS environment.
We started off with the idea we’d
do a minimum of that, and, bit by bit,
kicking and screaming, with great
pain, we were forced, item by item, to
turn our product inside out. And
once it’s inverted it’s never going
back. In fact, the Mac product
source would be the mother source
for all of our future products.
So we will be emulating the event-
driven environment even in a charac-
ter-driven DOS. For one thing, that
particular configuration of a program
is far more amenable to take ad-
vantage of multi-threading in OSt2,
for instance. So you respond to
asynchronous external events and it’s
in that formal set-up that you do that.
continued on page 7

LA. FOX

6