Files
gf-core/lib/resource-1.0/doc/gfdoc/Combinators.html
2006-12-22 13:23:50 +00:00

127 lines
3.8 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<TITLE> Combinators: a High-Level Syntax API</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1> Combinators: a High-Level Syntax API</H1>
<FONT SIZE="4">
<I>Last update: 2006-12-22 14:10:19 CET</I><BR>
</FONT></CENTER>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<UL>
<LI><A HREF="#toc1">Predication</A>
<LI><A HREF="#toc2">Function application</A>
<LI><A HREF="#toc3">Coordination</A>
<LI><A HREF="#toc4">Modification</A>
<LI><A HREF="#toc5">Text append</A>
</UL>
<P></P>
<HR NOSHADE SIZE=1>
<P></P>
<P>
Produced by
gfdoc - a rudimentary GF document generator.
(c) Aarne Ranta (<A HREF="mailto:aarne@cs.chalmers.se">aarne@cs.chalmers.se</A>) 2002 under GNU GPL.
</P>
<P>
This module defines some <I>grammatical functions</I> that give shortcuts to
typical constructions. <A HREF="Constructors.html"><CODE>Constructors</CODE></A> and the
language-specific <CODE>Paradigms</CODE> modules are usually needed
to construct arguments of these functions.
</P>
<PRE>
incomplete resource Combinators = open Grammar in {
oper
</PRE>
<P></P>
<A NAME="toc1"></A>
<H2>Predication</H2>
<PRE>
pred : overload {
pred : V -&gt; NP -&gt; Cl ;
pred : V2 -&gt; NP -&gt; NP -&gt; Cl ;
pred : V3 -&gt; NP -&gt; NP -&gt; NP -&gt; Cl ;
pred : V -&gt; NP -&gt; NP -&gt; Cl ;
pred : A -&gt; NP -&gt; Cl ;
pred : A2 -&gt; NP -&gt; NP -&gt; Cl ;
pred : A -&gt; NP -&gt; NP -&gt; Cl ;
pred : N -&gt; NP -&gt; Cl ;
pred : CN -&gt; NP -&gt; Cl ;
pred : NP -&gt; NP -&gt; Cl ;
pred : N -&gt; NP -&gt; NP -&gt; Cl ;
pred : Adv -&gt; NP -&gt; Cl ;
pred : Prep -&gt; NP -&gt; NP -&gt; Cl
} ;
</PRE>
<P></P>
<A NAME="toc2"></A>
<H2>Function application</H2>
<PRE>
app : overload {
app : N -&gt; NP ;
app : N2 -&gt; NP -&gt; NP ;
app : N3 -&gt; NP -&gt; NP -&gt; NP ;
app : N2 -&gt; NP -&gt; NP -&gt; NP ;
app : N2 -&gt; N -&gt; CN
} ;
</PRE>
<P></P>
<A NAME="toc3"></A>
<H2>Coordination</H2>
<PRE>
coord : overload {
coord : Conj -&gt; Adv -&gt; Adv -&gt; Adv ;
coord : Conj -&gt; AP -&gt; AP -&gt; AP ;
coord : Conj -&gt; NP -&gt; NP -&gt; NP ;
coord : Conj -&gt; S -&gt; S -&gt; S ;
coord : DConj -&gt; Adv -&gt; Adv -&gt; Adv ;
coord : DConj -&gt; AP -&gt; AP -&gt; AP ;
coord : DConj -&gt; NP -&gt; NP -&gt; NP ;
coord : DConj -&gt; S -&gt; S -&gt; S ;
coord : Conj -&gt; ListAdv -&gt; Adv ;
coord : Conj -&gt; ListAP -&gt; AP ;
coord : Conj -&gt; ListNP -&gt; NP ;
coord : Conj -&gt; ListS -&gt; S ;
coord : DConj -&gt; ListAdv -&gt; Adv ;
coord : DConj -&gt; ListAP -&gt; AP ;
coord : DConj -&gt; ListNP -&gt; NP ;
coord : DConj -&gt; ListS -&gt; S
} ;
</PRE>
<P></P>
<A NAME="toc4"></A>
<H2>Modification</H2>
<PRE>
mod : overload {
mod : A -&gt; N -&gt; CN ;
mod : AP -&gt; CN -&gt; CN ;
mod : AdA -&gt; A -&gt; AP ;
mod : Quant -&gt; N -&gt; NP ;
mod : Quant -&gt; CN -&gt; NP ;
mod : Predet -&gt; N -&gt; NP ;
mod : Numeral -&gt; N -&gt; NP
} ;
</PRE>
<P></P>
<A NAME="toc5"></A>
<H2>Text append</H2>
<P>
This is not in ground API, because it would destroy parsing.
</P>
<PRE>
appendText : Text -&gt; Text -&gt; Text ;
</PRE>
<P></P>
<!-- html code generated by txt2tags 2.3 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -thtml -\-toc api/Combinators.txt -->
</BODY></HTML>