1
0
forked from GitHub/gf-core

gfcc from GF now works for LangEng (except literals)

This commit is contained in:
aarne
2007-10-02 11:15:00 +00:00
parent 2db416a76c
commit a63b56ba38
5 changed files with 107 additions and 50 deletions

View File

@@ -5,7 +5,7 @@ cat S ; NP ; VP ;
fun
Pred : NP -> VP -> S ;
He, She : NP ;
Je, Tu, Il, Elle, Nous, Vous, Ils, Elles : NP ;
Strong : VP ;

View File

@@ -3,16 +3,21 @@ concrete KoeFre of Koe = {
param
Gen = Masc | Fem ;
Num = Sg | Pl ;
Per = P1 | P2 | P3 ;
oper
Agr : Type = {g : Gen ; n : Num} ;
Agr : Type = {g : Gen ; n : Num ; p : Per} ;
predA : Str -> {s : Agr => Str} = \adj ->
{s = \\a => copula a.n ++ regA adj a.g a.n} ;
{s = \\a => copula a.n a.p ++ regA adj a.g a.n} ;
copula : Num -> Str = \n -> case n of {
Sg => "est" ;
Pl => "sont"
copula : Num -> Per -> Str = \n,p -> case <n,p> of {
<Sg,P1> => "suis" ;
<Sg,P2> => "es" ;
<Sg,P3> => "est" ;
<Pl,P1> => "sommes" ;
<Pl,P2> => "êtes" ;
<Pl,P3> => "sont"
} ;
regA : Str -> Gen -> Num -> Str = \s,g,n -> case <g,n> of {
@@ -29,8 +34,14 @@ lincat
lin
Pred np vp = {s = np.s ++ vp.s ! np.a} ;
He = {s = "il" ; a = {g = Masc ; n = Sg}} ;
She = {s = "elle" ; a = {g = Fem ; n = Sg}} ;
Je = {s = "je" ; a = {g = Masc ; n = Sg ; p = P1}} ;
Tu = {s = "tu" ; a = {g = Masc ; n = Sg ; p = P2}} ;
Il = {s = "il" ; a = {g = Masc ; n = Sg ; p = P3}} ;
Elle = {s = "elle" ; a = {g = Fem ; n = Sg ; p = P3}} ;
Nous = {s = "nous" ; a = {g = Masc ; n = Pl ; p = P1}} ;
Vous = {s = "vous" ; a = {g = Masc ; n = Pl ; p = P2}} ;
Ils = {s = "ils" ; a = {g = Masc ; n = Pl ; p = P3}} ;
Elles = {s = "elles" ; a = {g = Fem ; n = Pl ; p = P3}} ;
Strong = predA "fort" ;