LFGW 0.9 General Nature and Use LFGW is a basic LFG system adapted for doing small (homework-assignment sized) grammar fragments. It includes simple morphology and lexical inheritance, as well as an `error-tolerant parsing' facility (to help find mistakes in the grammar), but does not implmenent any of the advanced features of recent LFG (functional uncertainy, anaphoric binding), and also lacks a workable treatment of long-distance dependencies (this seems odd, but the purpose of this program is to help students master the basics of LFG, I've never encountered a student who understood the basics who had any trouble at all with long-distance dependencies). LFGW is a Windows port of the DOS-based `LFG-PC' system (`Avery Andrews' LFG system'), but this version lacks the LFG-PC facilities for semantic display, but has added the error-tolerant parsing scheme. the `0.9' version number indicates that it is pretty raw, and not too extensively tested (though I have been using it in a class for a few weeks). It ought to run under 32 bit Windows systems (Win95/Win NT), and under Windows 3.1 with Win32's installed (which can be obtained by ftp-ing the file PW1118.EXE from: ftp.microsoft.com/Softlib/MSLFILES (in ftp don't try to list the MSLFILES directory, it's HUGE. Also don't go to it as a Web URL). Since it's a newish Windows program, in incorporates a `crash-recovery' system that writes out your current grammar to a temporary file before it does anything exciting. If it crashes, it usually manages to recover the grammar from this file (but it will loose any changes you have made to other files). It can also be configured for lab use, so that students can conveniently keep their work on personal floppies. License LFGW may be freely distributed, as long as it is distributed in its entirety. Distribution of parts of the system is prohibited. If you include additional grammars that you have created yourself, keep them separate from the supplied examples. LFGW licensed for free use for any educational or noncommercial purpose. Commercial use is prohibited without specific written permission. The use of this program is entirely at your own risk, and it is not guaranteed suitable for any particular purpose. Avery Andrews accepts no responsibility for any consequences of the use of LFGW. Notes on Setup Put lfgw09.zip into the directory you want to install LFGW into, and unpack it with pkunzip, using the -d option (to preserve the directory structure of the archive): pkunzip -d lfgw You then need to move the file: ctl3d32.dll into your windows\system directory (you may well already have it there, in which case you can just deleted it from the LFGW directory. You should then create a Program Group and a Program Item for LFGW. The command line should give the full directory path for the program, e.g. if you've put LFGW into c:\lfgw, the command line should be c:\lfgw\lfgw The Working Directory can be set to anything you like, the LFGW directory will do fine (more on what it does below). You can start up by clicking on the icon (any ideas for a better one?), and consult the help menu items (just text files in NotePad, at this point) for help in getting started. A good place to start would be the series of tutorial problems, in the tutorial subdirectory of the lfgw directory. The Working Directory & lfgw.ini On startup, LFGW looks in the working directory for a file lfgw.ini, where information is stored about what you were doing in your last session. So if you want to work on several projects at once, you can have different icons specifying different Working Directories, and the information about each will be recorded separately. Lab Notes LFGW is designed so that it can be run in a computer lab, with students keeping their individual work on a floppy. This can be done conveniently by putting into the Working Directory a file lfgw.stp, which specifies what directory the program should write crash-recovery information into, and where it should look for the user's files. The lfgw.stp file for the setup at ANU is: lfgw0.9 crash_recovery c:\temp\ user_directory a:\ The order has to be as shown, with the name and version first, then crash_recovery and user_directory, the directory names ending with a a backslash. This file should reside in the Working Directory as specified by the program item. The user directory specification overrides the Working Directory as the location where information about sessions is recorded and read from. For example, in the ANU setup, the program icon specifies the Working Directory as `f:\ling2006' (a network drive that students can read from but not write to), so that's where the lfgw.stp file is. I put copies of the tutorial and examples subdirectories onto the students floppies, so they can modify them, but restore them from the network drive if they mess them beyond all recovery. Bugs Are surely legion. Notify them to: Avery.Andrews@anu.edu.au Implementation Notes The interface and some low-level functions are written in BC4/OWL2; the parser code in Amzi Prolog. At this point I don't want to distribute the source code, because its too embarrassing of a mess, but I'd probably be willing to send it to anyone who promised not to sneer too much.