|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xxv
|
|
Foreword:
|
|
MacPerl Escapes
From The Laboratory
|
|
I also record those events which led, by insensible steps,
to my after tale of misery, for when I would account to myself
for the birth of that passion which afterwards ruled my destiny
I find it arise, like a mountain river,
from ignoble and almost forgotten sources;
but, swelling as it proceeded, it became the torrent which,
in its course, has swept away all my hopes and joys.
|
|
- All quotes from Mary Shelley,Frankenstein
|
|
In summer 1991, I was called by the Swiss army to do my compulsory 17
weeks of military basic training. Soon, I had settled into a reasonably com-
fortable office job and arranged myself with the funny habits and dress code
expected from me. However, I experienced severe withdrawal from my pro-
gramming habits, and started looking for a programming project to do on
weekends. Since I had ported Gawk (GNU Awk) to the Macintosh the pre-
ceding winter, and recently had become aquainted with Perl on UNIX
machines, I decided to attempt a port of Perl.
|
|
It was on a dreary night of November
that I beheld the accomplishment of my toils.
With an anxiety that almost amounted to agony,
I collected the instruments of life around me,
that I might infuse a spark of being
into the lifeless thing that lay at my feet.
|
|
The port proceeded quickly, and in August 1991, I was able to report the
first partial successes. Tim Endres saw one of my USENET postings and
started getting involved in cleaning up my initial attempts. When my mili-
tary service ended in November, I had a little more spare time for the port.
In January, we announced the first release of MacPerl, 4.0.2, to the public.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The first release was written for the Macintosh Programmer's Workshop
(MPW), a command line oriented programming environment. MPW provides
a natural habitat for tools like perl, and I had assumed that my target
audience would have MPW anyway. The release consisted mainly of an
MPW tool looking very similar to the way it looks today, supporting perl
4.019, which back then was the latest and greatest release of Perl.
|
|
As a gesture to the Macintosh Human Interface, there were the commands
"ask", "answer", and "pick", which would put up simple dialog boxes.
Almost as an afterthought, I also created a very primitive standalone
application, so people could run a script on a machine where they didn't
have MPW installed.
|
|
The favorable reception of our efforts encouraged me to do further work on
library functions, and during 1992, I added first DBM support and then, in
December, socket support. By that time, it had become clear that I wouldn't
get rid of MacPerl-related email anytime soon, so in January 1993, I created
a mailing list to support it.
|
|
I had gazed on him while unfinished; he was ugly then,
but when those muscles and joints were rendered capable of motion,
it became a thing such as even Dante could not have conceived.
|
|
The original Macintosh port of Perl was written for the Macintosh Pro-
grammer's Workshop (MPW), a command line oriented programming envi-
ronment. MPW provides a natural habitat for tools like Perl, and I had
assumed that my target audience would have MPW anyway. User feed-
back, however, quickly proved that the primitive standalone application I
had included in the first release as a last-minute thought was more popular
than the MPW-based version, and users urged me to make the standalone
version friendlier.
|
|
1993 turned out to be an evenful year for MacPerl. In Spring, Apple asked for
permission to put MacPerl on their E * T * O (Essentials * Tools * Objects)
CD-ROM series. I was thrilled to see my work immortalized in this way
and looked forward to seeing it spread to a wider audience.
|
|
The wider audience, however, also meant new users who no longer agreed
with my original view of what MacPerl was about. User feedback increas-
ingly proved that the primitive standalone application was more popular
than the MPW-based version, and users urged me to make the standalone
version friendlier.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In summer 1993, I was finally ready to address the requests for an imple-
mentation of Perl in a real Macintosh application with better online help.
By fall 1993, the MacPerl user interface had a look that it has kept (with
minor adjustments) until today. In October 1993, I released version 4.1.0, the
first version with a true Macintosh human interface.
|
|
For the first time, also, I felt what the duties
of a creator towards his creature were,
and that I ought to render him happy
before I complained of his wickedness.
|
|
The next three years, I focused on keeping MacPerl up to date with the big
external changes that occurred: I spent most of 1994 getting MacPerl to run
natively on Apple's new PowerPC architecture (and borrowing PowerPC
machines for my development and debugging work). By the time I released
MacPerl 4.1.4, the first PowerPC native version, in December 1994, Perl 5
had come out, so I spent most of 1995 porting Perl 5 and reexamining all my
old code in the process. The MacPerl user base had grown a lot by then, and
new users kept finding new bugs and shortcomings, so 1996 was a year for
various bug fixes and user interface tweaks.
|
|
Once the basic porting work for Perl 5 was done, I finally was able to pursue
another project which I had wanted to try for a long time, and in 1997, I
could finally start creating MacPerl interfaces for the Macintosh Toolbox,
in order to make it possible to tackle a wider range of tasks with MacPerl
and to use it for creating prototypes of Macintosh applications This project
is still a work in progress (I just did the Sound Manager interfaces a few
weeks ago).
|
|
Although 1998 will bring great changes to my professional and personal
life, I suppose there will always remain some room in it for MacPerl, and
always something to be improved: New OS versions, new versions of Perl,
maybe even a new, improved, user interface for MacPerl itself. Who knows?
|
|
What do you demand from your captain?
Are you, then, so easily turned from your design?
Did you not call this a glorious expedition?
And wherefore was it glorious?
Not because the way was smooth
and placid like a southern sea,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
but because it was full of dangers and terror,
because at every new incident your fortitude
was to be called forth and your courage exhibited,
because danger and death surrounded it,
and these you were to brave and overcome.
|
|
Now, in early 1998, a little more than six years after the initial release of
MacPerl, I'm happy and proud to be invited to write a foreword for this
book, the first ever book to be devoted entirely to MacPerl.
|
|
With the publication of MacPerl: Power and Ease, MacPerl has escaped
from the laboratory for good: With a book and a CD-ROM to its name, it
has now undoubtedly become a bona fideproduct, and with Vicki Brown's
and Chris Nandor's excellent presentation, I'm confident that it is now
accessible to a much wider range of users than ever before.
|
|
All that remains for me to do is to exhort you to go forth, put MacPerl to use,
and, above all, never to forget to have fun!
|
|
Matthias Neeracher, April 1998
|
Copyright © 1997-1998 by Prime Time Freeware. All Rights Reserved.