%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%                   HPSG Grammar Development System
%                              HPSG-PL
%
%                            Version 1.2
%                            May 12, 1992
%
%                           Fred Popowich
%                           Carl M. Vogel
%			    Sandi Kodric
%
%  This system can be used for noncommercial purposes with the permission
%  of the authors, and provided that the authors are appropriately 
%  acknowledged in the related research. The system may be obtained by:
%          1) writing to the Natural Language Laboratory
%                            School of Computing Science,
%                            Simon Fraser University,
%                            Burnaby, B.C., CANADA V5A 1S6,
%       or 2) sending electronic mail to popowich@cs.sfu.ca.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

The implementation is based on the parser developed for Tree Unification 
Grammar (TUG) but it has been influenced by a range of other grammar 
development systems and parsers, including ProGram (Evans and Gazdar, Sussex),
SAUMER (Popowich, SFU) and the UCG system  (Calder, Klein, Moens, Reape,
Zeevat, Univeristy of Edinburgh).  The system runs under Quintus,
and Sicstus.  

See the file "main.pl" for more information.

Certain section of the code are specific to an application being developed at
SFU.  These sections of the code are commented as "Rogers specific" and can
be ignored.

The file TerminalSession contains a sample terminal session involing the
"example" files.  A sample lexicon and the appropriate type definitions can
be found in the files example.typ and example.lex.


%%%%%

	?- gram(Name).       Loads the files Name.typ and Name.lex
	                     It also clears out the old grammar.

        ?- +tracer.          Turns on the tracing facility to summarize
	                     the creation of edges. 

	?- +phrasal.         Have the system reconstruct phrasal signs
	                     for successful parses.
	
	?- +printsem.	     Print out the semantic value of successful parses.

	?- +optimize.        Use faster version of parsing algorithm.

	?- look(N).          Causes the system to call the Prolog predicate
	                     "trace" when edge N is processed.

	?- nolook(N).        Cancels the "look(N)" command.

	?- gparse.           Call TreeTool to display the successful parse.

	?- gchart.           Call TreeTool to display all the edges in the
	                     chart.  

