January, 1992 This is a port of the Haskell-like functional programming language Gofer by Mark P Jones for the Commodore Amiga. It should run on any Amiga with about 2Mb of ram (or more), though it will run the smoothest under Kickstart 2.0 with ARexx. Currently, it must be run from the Shell (or CLI). To get started quickly, try entering the gofer/ directory and typing something like (using KS 2.0): 3.> Execute start_gofer_amiga [ gofer banner and messages is printed ] ? :l demos/calendar [ gofer loads the calendar demo ] ? calendar 1992 [ gofer prints out a nice calendar ] ? :q [ gofer exits ] 3.> The following environment variables are used: GOFER Set to full path for prelude (usually '...gofer/prelude') EDITOR Editor to use (default 'Ed'). EDITLINE Command line to execute to start editor at a specified line number, started as 'editcommand LINE %d FILE %s' (defualt is Arexx-script that starts Ed). SHELL Command for starting a new shell, default 'NewShell'. I would recommend that you set the stack to at least 10000. Use a command like 3.> stack 10000 from the shell before using gofer. This document describes only things that are different in the Amiga version from the Unix version. Read the Readme's and doc files for how to get started with gofer. Notes on compiling the program. The program should compile with Lattice/SAS C v5.10b. Other compilers will probably require small changes, notably the makefile (use the large code model), and the error handling (Lattice/SAS hasn't got an ANSI atexit() function, so I've used onexit() instead). Also, the Lattice function chkufb() is used to obtain the AmigaDOS filehandle of stdin for putting the console in RAW mode. Note that I had to switch off the Optimizer on some of the modules in order to get the garbage collection to work. Also note that I have been unable to translate the parser file parser.y with either Berkeley yacc or bison. Instead, the file parser.c (which is the result of running yacc on grammar.y under Unix) is provided. - Kristian. -------------- If you have any comments or questions, you should be able to reach me with e-mail to bombadil@freja.diku.dk (try bombadil@diku.dk if mail bounces) or you could write me at Kristian Nielsen, Groenjordskollegiet room 6111, Groenjordsvej, 2300 Koebenhavn S, Denmark