1
0
forked from GitHub/gf-rgl

(Hun) Combine the parameters on definiteness and Quant/Det type

This commit is contained in:
Inari Listenmaa
2020-04-26 15:51:34 +02:00
parent b6b462ca35
commit 22cadd2ac6
3 changed files with 37 additions and 26 deletions
+26 -8
View File
@@ -18,13 +18,15 @@ oper
param
QuantType =
Article -- Needed to prevent "a 2 cars"
| Other -- Not poss, not article
IndefArticle -- Needed to prevent "a 2 cars"
| IndefQuant -- Not IndefArt, not poss, not def
| DefQuant
| QuantPoss PossStem -- Which possessive stem it takes
;
DetType =
NoPoss -- distinction between Article and Other no longer needed
DefDet -- distinction between Article and Other no longer needed
| IndefDet -- still need def or indef
| DetPoss PossStem -- Sill need to know which stem it takes if Poss
;
@@ -33,13 +35,29 @@ param
oper
-- standard trick to prevent "a one car"
isIndefArt : {qt : QuantType ; objdef : ObjDef} -> Bool = \quant ->
case <quant.qt,quant.objdef> of {
<Article,Indef> => True ;
_ => False
isIndefArt : {qt : QuantType} -> Bool = \quant ->
case quant.qt of {
IndefArticle => True ;
_ => False
} ;
agr2PossStem : Person*Number -> PossStem = \pn ->
dt2objdef : DetType -> ObjDef = \dt -> case dt of {
IndefDet => Indef ;
_ => Def
} ;
objdef2dt : ObjDef -> DetType = \od -> case od of {
Def => DefDet ;
Indef => IndefDet
} ;
qt2dt : QuantType -> DetType = \qt -> case qt of {
QuantPoss x => DetPoss x ;
DefQuant => DefDet ;
_ => IndefDet
} ;
agr2pstem : Person*Number -> PossStem = \pn ->
case <pn.p1,pn.p2> of {
<P1,Pl> => dSg_rPl1 ;
<P3,n> => dSg_rP3 n ;