Finally we now have a port of GAP for the Macintosh. GAP for MAC is a
standalone application not an MPW Tool. I include the full 'README.MAC'
The binaries are available on 'ftp.math.rwth-aachen.de' in the directory
'/pub/gap/bin'. They should also make it to the other servers soon.
GAP for MAC was compiled using MPW with the SIOW library. Because of
limitations of this library it is still a bit awkward to use. Currently
we do not have the resources to improve the port so that it does not need
the SIOW library and becomes a wellbehaved Macintosh program.
If you would like to help us to improve this port, please contact us, so
that we can coordinate such efforts.
-- .- .-. - .. -. .-.. --- ...- . ... .- -. -. .. -.- .- Martin Sch"onert, Martin.Schoenert@Math.RWTH-Aachen.DE, +49 241 804551 Lehrstuhl D f"ur Mathematik, Templergraben 64, RWTH, 52056 Aachen, Germany ========================================================================== GAP for MAC ===========
This section contains information about GAP that is specific to the
port of GAP for the Apple Macintosh (simply called GAP for MAC below).
To run GAP for MAC you need an Apple Macintosh. GAP for MAC should
run in emulation mode on PowerMacs, but this has not been tested yet.
The computer must have at least 6 MByte of memory and a harddisk. The
operating system must be System 7 (earlier versions may work, but this
has not been tested yet).
The section "Copyright of GAP for MAC" describes the copyright as it
applies to the executable version that we distribute. The section
"Installation of GAP for MAC" describes how you install GAP for MAC,
and the section "Features of GAP for MAC" describes the special
features of GAP for MAC.
Copyright of GAP for MAC ========================
In addition to the general copyright for GAP set forth in 'README' the
following terms apply to GAP for MAC.
The system dependent part for GAP for MAC was written by Dave Bayer
('email@example.com'). He assignes the copyright to Lehrstuhl D
fuer Mathematik. Many thanks to Dave Bayer for his work.
The application of GAP for MAC that we distribute was compiled with
Apple's Mac Programmers Workshop (MPW) C compiler version 3.3.1 using
the Simple Input/Output Window (SIOW) library. The MPW copyright
allows us free redistribution of the application.
Installation of GAP for MAC ===========================
Installation of GAP for MAC is fairly easy. As already mentioned
above, GAP must be installed on a harddisk, because it is too large to
be run from floppy disks.
First create a folder where you want to install GAP, e.g., 'HD:GAP:'.
GAP will be installed in a subfolder ':gap3r4p1:' of this directory.
You can later move GAP to another location, for example you can first
install it in 'HD:temp:' and once it works move it to 'HD:GAP:'.
Get the GAP distribution onto your Macintosh into that folder. One
usual way would be to get the distribution with 'ftp' onto some UNIX
workstation and to download it from there onto your Macintosh, for
example with 'kermit'. Remember that the distribution consists of
binary files and that you must transmit them in binary mode.
If you get the distribution via 'ftp', you must get the distribution
'gap3r4p1.zoo', the zoo archive extractor
'unzoo-mac-m68k-system7-siow.hqx', which is in the subdirectory 'bin'
and which you should rename to 'unzoo.hqx', and the application
'bin3r4p1-mac-m68k-system7-siow.zoo', which is in the subdirectory
'bin' and which you should rename to 'bin3r4p1.zoo'. You may have to
get the latter 2 files from 'ftp.math.rwth-aachen.de', because some
'ftp' servers may not keep them. We recommend that you use 'unzoo'
even if you already have 'zoo' on you system, because 'unzoo'
automatically translates text files to the appropriate local format.
Unpack the 'unzoo' application, which comes in *BinHex 4* format, for
example using the 'Convert FROM BinHex4...' command in 'Compact Pro'.
Start the 'unzoo' application and unpack the application and the
distribution with the following commands, using <control>-'Q' to
terminate 'unzoo' afterwards.-x -o bin3r4p1 -x -o gap3r4p1
You must use the distributed binary, because the source that we
currently distribute is not ready to be compiled with MPW, since we
haven't yet merged the latest modifications into the source.
Set the amount of memory that the GAP applications is given with the
'Info' command in the 'File' menu of the Finder. The minimal amount
should be 5632 KByte. The preffered amount should not be larger than
the amount of real memory in your machine approximately 1024 KByte for
the system (even if you have virtual memory). The Finder will
allocate the preffered amount, or less if less memory is available.
The size of GAP's workspace is the allocated amount minus 1536 KByte.
If you have a big version of LaTeX available, you may now want to make
a printed copy of the manual. The LaTeX source is in the ':doc:'
subdirectory. You must run LaTeX *twice* to resolve all references.
Then print the *dvi* file.
Try something in GAP, e.g., the following exercises GAP quite a bitgap> m11 := Group((1,2,3,4,5,6,7,8,9,10,11),(3,7,11,8)(4,10,5,6));; gap> Number( ConjugacyClasses( m11 ) );
The result should be 10.
Thats all, finally you are done. We hope that you will enjoy using
GAP. If you have problems, do not hesitate to contact us.
Features of GAP for MAC =======================
GAP for the MAC has been ported using the Simple Input/Output Window
(SIOW) library of MPW. This library makes it possible to port
programs that read from 'stdin' and write to 'stdout', such as GAP, to
the Macintosh, where the interaction is displayed in a single text
window. Unfortunately this library has a few peculiarities, which
make GAP for MAC awkward to use.
To terminate GAP it is not enough to enter 'quit;' at the GAP prompt.
You must also choose the 'Quit' command from the 'File' menu or enter
<command>-'Q'. This gives you the option of saving the contents of
the window to a file.
To interrupt a computation enter <command>-'.' or <control>-'C'.
While <command>-'.' is more correct, because it follows the Macintosh
convention, it has the disadvantage that it terminates GAP if you
enter it at the prompt. We thus suggest that you use <control>-'C'.
The usual command line editing is *not* available. Especially <tab>
cannot be used to complete identifier, and <control>-'P' will not
recall previous input lines.
As if that is not bad enough, cutting and pasting does not work
correct either. If you paste something to the current input line,
SIOW will duplicate it. E.g. if you paste '2 * 2;' to the input line,
SIOW sends 'gap> gap> 2 * 2;2 * 2;' to GAP, which complains that the
variable 'gap' has no assigned value.
GAP for MAC keeps up to 32 KByte of Input/Output in the window. If
your session contains more than that, it will discard text at the top
of the window. This restriction is not due to SIOW, it is build into
the TextEdit class in the *Toolbox*, and circumventing it requires
quite a bit of work.
Help texts are displayed in one piece without stoppign to ask you to
enter '-- <space> for more --'. Instead you can scroll around.
Luckily there is no individual section larger than 32 KByte.
You can only scroll, cut&paste, and switch to other applications when
GAP is waiting for your input. This is because this is the only time
that SIOW, which knows about windows, events, and cooperative
multitasking, is in control.
I still hope you will find GAP usefull, Martin.
-- .- .-. - .. -. .-.. --- ...- . ... .- -. -. .. -.- .- Martin Sch"onert, Martin.Schoenert@Math.RWTH-Aachen.DE, +49 241 804551 Lehrstuhl D f"ur Mathematik, Templergraben 64, RWTH, 52056 Aachen, Germany