Files
gf-core/examples/nlg/NLGEng.gf
2011-08-30 17:29:13 +00:00

70 lines
1.6 KiB
Plaintext

--# -path=present
concrete NLGEng of NLG = LogicCnc ** open (Eng=GrammarEng), ParadigmsEng, ResEng in {
lincat
Det = Eng.Det;
N = Eng.N;
A = Eng.A;
CN = Eng.CN;
PN = Eng.PN;
NP = Eng.NP;
AP = Eng.AP;
VP = Eng.VP;
VPSlash = Eng.VPSlash;
V2 = Eng.V2;
V = Eng.V;
Comp=Eng.Comp;
Pol= Eng.Pol;
Cl = Eng.Cl;
ClSlash = Eng.ClSlash;
S = Eng.S;
Utt= Eng.Utt;
Conj = Eng.Conj;
ListNP = Eng.ListNP;
ListS = Eng.ListS;
lin
DetCN _ _ = Eng.DetCN;
UseN _ = Eng.UseN;
UsePN _ = Eng.UsePN;
SlashV2a _ = Eng.SlashV2a;
ComplSlash _ _ = Eng.ComplSlash;
SlashVP _ _ = Eng.SlashVP;
ComplClSlash _ _ cl np = lin Cl {
s = \\t,a,p,o => cl.s ! t ! a ! p ! o ++ cl.c2 ++ np.s ! NCase Nom
} ;
UseComp _ = Eng.UseComp ;
CompAP _ = Eng.CompAP ;
CompNP _ = Eng.CompNP ;
PredVP _ _ = Eng.PredVP;
PositA _ = Eng.PositA;
AdjCN _ _ = Eng.AdjCN;
UseV _ = Eng.UseV;
PPos = Eng.PPos;
PNeg = Eng.PNeg;
BaseNP _ _ = Eng.BaseNP;
ConsNP _ _ = Eng.ConsNP;
ConjNP _ _ = Eng.ConjNP;
BaseS _ _ = Eng.BaseS;
ConsS _ _ = Eng.ConsS;
ConjS _ _ = Eng.ConjS;
UseCl _ _ p x = Eng.UseCl (Eng.TTAnt Eng.TPres Eng.ASimul) p x;
UttS _ s = Eng.UttS s;
john_PN = mkPN "John";
mary_PN = mkPN "Mary";
love_V2 = mkV2 (mkV "love");
leave_V = mkV "leave" "left" "left";
somebody_NP = Eng.somebody_NP;
everybody_NP = Eng.everybody_NP;
boy_N = mkN "boy";
every_Det = Eng.every_Det;
some_Det = Eng.someSg_Det;
a_Det = Eng.DetQuant Eng.IndefArt Eng.NumSg;
smart_A = mkA "smart";
and_Conj = Eng.and_Conj;
or_Conj = Eng.or_Conj;
}