Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions src/romance/AdjectiveRomance.gf
Original file line number Diff line number Diff line change
Expand Up @@ -4,67 +4,67 @@ incomplete concrete AdjectiveRomance of Adjective =
lin

PositA a = {
s = a.s ! Posit ;
s = \\_p => a.s ! Posit ;
isPre = a.isPre ;
copTyp = a.copTyp
} ;
ComparA a np = {
s = \\af => a.s ! Compar ! af ++ conjThan ++ (np.s ! Nom).ton ;
s = \\_p,af => a.s ! Compar ! af ++ conjThan ++ (np.s ! Nom).ton ;
isPre = False ;
copTyp = a.copTyp
} ;
CAdvAP ad ap np = {
s = \\af => ad.s ++ ap.s ! af ++ ad.p ++ (np.s ! Nom).ton ;
s = \\_p,af => ad.s ++ ap.s ! _p ! af ++ ad.p ++ (np.s ! Nom).ton ;
isPre = False ;
copTyp = ap.copTyp
} ;
UseComparA a = {
s = \\af => a.s ! Compar ! af ;
s = \\_p,af => a.s ! Compar ! af ;
isPre = a.isPre ;
copTyp = a.copTyp
} ;
AdjOrd ord = {
s = \\af => ord.s ! aform2aagr af ; ----
s = \\_p,af => ord.s ! aform2aagr af ; ----
isPre = False ; ----
copTyp = serCopula
} ;

-- $SuperlA$ belongs to determiner syntax in $Noun$.

ComplA2 adj np = {
s = \\af => adj.s ! Posit ! af ++ appCompl adj.c2 np ;
s = \\_p,af => adj.s ! Posit ! af ++ appCompl adj.c2 np ;
isPre = False ;
copTyp = serCopula
} ;

ReflA2 adj = {
s = \\af =>
s = \\p,af =>
adj.s ! Posit ! af ++
adj.c2.s ++ prepCase adj.c2.c ++ reflPron Sg P3 Nom ; --- agr
adj.c2.s ++ prepCase adj.c2.c ++ reflPron Sg p Nom ; --- agr
isPre = False ;
copTyp = serCopula
} ;

SentAP ap sc = {
s = \\a => ap.s ! a ++ sc.s ! dative ; -- prête à dormir --- mood
s = \\_p,a => ap.s ! _p ! a ++ sc.s ! dative ; -- prête à dormir --- mood
isPre = False ;
copTyp = ap.copTyp
} ;

AdAP ada ap = {
s = \\a => ada.s ++ ap.s ! a ;
s = \\_p,a => ada.s ++ ap.s ! _p ! a ;
isPre = ap.isPre ;
copTyp = ap.copTyp
} ;

UseA2 a = {
s = a.s ! Posit ;
s = \\_p => a.s ! Posit ;
isPre = False ; ---- A2 has no isPre
copTyp = serCopula ---- A2 has no copTyp (yet)
} ;

AdvAP ap adv = {
s = \\a => ap.s ! a ++ adv.s ;
s = \\_p,a => ap.s ! _p ! a ++ adv.s ;
isPre = False ;
copTyp = ap.copTyp
} ;
Expand Down
2 changes: 1 addition & 1 deletion src/romance/CatRomance.gf
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ incomplete concrete CatRomance of Cat = CommonX - [SC,Pol]

-- Adjective

AP = {s : AForm => Str ; isPre : Bool ; copTyp : CopulaType} ;
AP = {s : Person => AForm => Str ; isPre : Bool ; copTyp : CopulaType} ;

-- Noun

Expand Down
8 changes: 4 additions & 4 deletions src/romance/ConjunctionRomance.gf
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ incomplete concrete ConjunctionRomance of Conjunction =
a = conjAgr (Ag Masc conj.n P3) ss.a ;
hasClit = False ; isNeg = ss.isNeg
}) ;
ConjAP conj ss = conjunctDistrTable AForm conj ss ** {
ConjAP conj ss = conjunctDistrTable2 Person AForm conj ss ** {
isPre = ss.isPre ;
copTyp = ss.copTyp
} ;
Expand Down Expand Up @@ -41,8 +41,8 @@ incomplete concrete ConjunctionRomance of Conjunction =
s2 = \\c => xs.s2 ! c ; ----e (conjunctCase c) ;
a = conjAgr x.a xs.a ; isNeg = orB x.isNeg xs.isNeg
} ;
BaseAP x y = twoTable AForm x y ** {isPre = andB x.isPre y.isPre ; copTyp = y.copTyp} ;
ConsAP x xs = consrTable AForm comma x xs ** {isPre = andB x.isPre xs.isPre ; copTyp = xs.copTyp} ;
BaseAP x y = twoTable2 Person AForm x y ** {isPre = andB x.isPre y.isPre ; copTyp = y.copTyp} ;
ConsAP x xs = consrTable2 Person AForm comma x xs ** {isPre = andB x.isPre xs.isPre ; copTyp = xs.copTyp} ;
BaseRS x y = twoTable2 Mood Agr x y ** {c = y.c} ;
ConsRS xs x = consrTable2 Mood Agr comma xs x ** {c = xs.c} ;
BaseIAdv = twoSS ;
Expand All @@ -56,7 +56,7 @@ incomplete concrete ConjunctionRomance of Conjunction =
[AdV] = {s1,s2 : Str} ;
[IAdv] = {s1,s2 : Str} ;
[NP] = {s1,s2 : Case => Str ; a : Agr ; isNeg : Bool} ;
[AP] = {s1,s2 : AForm => Str ; isPre : Bool ; copTyp : CopulaType} ;
[AP] = {s1,s2 : Person => AForm => Str ; isPre : Bool ; copTyp : CopulaType} ;
[RS] = {s1,s2 : Mood => Agr => Str ; c : Case} ;
[CN] = {s1,s2 : Number => Str ; g : Gender} ;

Expand Down
5 changes: 3 additions & 2 deletions src/romance/NounRomance.gf
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,8 @@ incomplete concrete NounRomance of Noun =
let
g = cn.g
in {
s = \\n => preOrPost ap.isPre (ap.s ! genNumPos2Aform g n ap.isPre) (cn.s ! n) ;
s = \\n => preOrPost ap.isPre (ap.s ! P3 ! genNumPos2Aform g n ap.isPre)
(cn.s ! n) ;
g = g ;
} ;

Expand Down Expand Up @@ -190,7 +191,7 @@ incomplete concrete NounRomance of Noun =
a = np.a ** {n = det.n} } ;

AdjDAP det ap = {
s = \\g => det.s ! g ++ ap.s ! genNum2Aform g det.n ;
s = \\g => det.s ! g ++ ap.s ! P3 ! genNum2Aform g det.n ;
n = det.n ;
} ;

Expand Down
2 changes: 1 addition & 1 deletion src/romance/PhraseRomance.gf
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ incomplete concrete PhraseRomance of Phrase =
UttVP vp = {s = infVP vp (agrP3 Fem Sg)} ; --- Agr
UttAdv adv = adv ;
UttCN n = {s = n.s ! Sg} ;
UttAP ap = {s = ap.s ! genNum2Aform Masc Sg} ;
UttAP ap = {s = ap.s ! P3 ! genNum2Aform Masc Sg} ;
UttCard n = {s = n.s ! Masc} ;
UttInterj i = i ;

Expand Down
10 changes: 5 additions & 5 deletions src/romance/VerbRomance.gf
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ incomplete concrete VerbRomance of Verb =
ComplVS v s = insertExtrapos (\\b => conjThat ++ s.s ! (v.m ! b)) (predV v) ;
ComplVQ v q = insertExtrapos (\\_ => q.s ! QIndir) (predV v) ;
ComplVA v ap =
insertComplement (\\a => let agr = complAgr a in ap.s ! genNum2Aform agr.g agr.n) (predV v) ;
insertComplement (\\a => let agr = verbAgr a in ap.s ! agr.p ! genNum2Aform agr.g agr.n) (predV v) ;

SlashV2a v = mkVPSlash v.c2 (predV v) ;

Expand Down Expand Up @@ -50,15 +50,15 @@ incomplete concrete VerbRomance of Verb =
in
mkVPSlash v.c2
(insertComplement
(\\_ => v.c3.s ++ prepCase v.c3.c ++ ap.s ! af)
(\\a => let agr = verbAgr a in v.c3.s ++ prepCase v.c3.c ++ ap.s ! agr.p ! af)
(predV v)) ;

ComplSlash vp np = insertObject vp.c2 np vp ;

ReflVP v = case v.c2.isDir of {
True => insertRefl v ;
False => insertComplement
(\\a => let agr = verbAgr a in v.c2.s ++ reflPron agr.n agr.p v.c2.c) v
(\\a => let agr = verbAgr a in v.c2.s ++ reflPron agr.n agr.p v.c2.c) v
} ;

SlashVV v vp =
Expand Down Expand Up @@ -94,8 +94,8 @@ incomplete concrete VerbRomance of Verb =
CompAP ap = {
s = \\ag =>
let
agr = complAgr ag
in ap.s ! genNum2Aform agr.g agr.n ;
agr = verbAgr ag
in ap.s ! agr.p ! genNum2Aform agr.g agr.n ;
cop = ap.copTyp
} ;
CompCN cn = { s = \\ag =>
Expand Down
2 changes: 1 addition & 1 deletion src/spanish/DiffSpa.gf
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ instance DiffSpa of DiffRomance - [iAdvQuestionInv,otherInv,partAgr,vpAgrSubj,vp
reflPron : Number -> Person -> Case -> Str = \n,p,c ->
let pro = argPron Fem n p c
in
case p of {
case p of {
P3 => case c of {
Acc | CPrep P_a => "se" ;
_ => "sí"
Expand Down