ExistIP (still unfinished)

This commit is contained in:
aarne
2006-05-16 13:07:02 +00:00
parent 95e2333598
commit cd276cbebe
6 changed files with 42 additions and 8 deletions

View File

@@ -6,10 +6,12 @@ abstract Idiom = Cat ** {
-- often different even in closely related languages.
fun
ExistNP : NP -> Cl ; -- there is a house
ImpersCl : VP -> Cl ; -- it rains
GenericCl : VP -> Cl ; -- one sleeps
ProgrVP : VP -> VP ; -- sleeping
ExistNP : NP -> Cl ; -- there is a house
ExistIP : IP -> QCl ; -- which houses are there
ProgrVP : VP -> VP ; -- be sleeping
}

View File

@@ -3,11 +3,20 @@ concrete IdiomEng of Idiom = CatEng ** open Prelude, ResEng in {
flags optimize=all_subs ;
lin
ExistNP np =
mkClause "there" (agrP3 np.a.n) (insertObj (\\_ => np.s ! Acc) (predAux auxBe)) ;
ImpersCl vp = mkClause "it" (agrP3 Sg) vp ;
GenericCl vp = mkClause "one" (agrP3 Sg) vp ;
ExistNP np =
mkClause "there" (agrP3 np.a.n) (insertObj (\\_ => np.s ! Acc) (predAux auxBe)) ;
ExistIP ip =
let cl =
mkClause (ip.s ! Nom) (agrP3 ip.n) (insertObj (\\_ => "there") (predAux auxBe))
in {
s = \\t,a,b,_ => cl.s ! t ! a ! b ! ODir --- "what is there", no "what there is"
} ;
ProgrVP vp = insertObj (\\a => vp.ad ++ vp.prp ++ vp.s2 ! a) (predAux auxBe) ;
}

View File

@@ -4,11 +4,19 @@ concrete IdiomFre of Idiom = CatFre **
flags optimize=all_subs ;
lin
ImpersCl vp = mkClause "il" (agrP3 Masc Sg) vp ;
GenericCl vp = mkClause "on" (agrP3 Masc Sg) vp ;
ExistNP np =
mkClause "il" (agrP3 Masc Sg)
(insertClit2 "y" (insertComplement (\\_ => np.s ! Ton Acc) (predV avoir_V))) ;
ImpersCl vp = mkClause "il" (agrP3 Masc Sg) vp ;
GenericCl vp = mkClause "on" (agrP3 Masc Sg) vp ;
ExistIP ip = {
s = \\t,a,p,_ =>
(mkClause (ip.s ! Nom) (agrP3 ip.a.g ip.a.n)
(insertClit2 "y" (predV avoir_V))).s ! t ! a ! p ! Indic
} ;
ProgrVP vp =
insertComplement

View File

@@ -4,11 +4,24 @@ concrete IdiomSwe of Idiom = CatSwe **
flags optimize=all_subs ;
lin
ImpersCl vp = mkClause "det" (agrP3 neutrum Sg) vp ;
GenericCl vp = mkClause "man" (agrP3 neutrum Sg) vp ;
ExistNP np =
mkClause "det" (agrP3 neutrum Sg) (insertObj
(\\_ => np.s ! accusative) (predV (depV finna_V))) ;
ImpersCl vp = mkClause "det" (agrP3 neutrum Sg) vp ;
GenericCl vp = mkClause "man" (agrP3 neutrum Sg) vp ;
ExistIP ip = {
s = \\t,a,p =>
let
cls =
(mkClause "det" (agrP3 neutrum Sg) (predV (depV finna_V))).s ! t ! a ! p ;
who = ip.s ! accusative
in table {
QDir => who ++ cls ! Inv ;
QIndir => who ++ cls ! Sub
}
} ;
ProgrVP vp =
insertObj (\\a => "att" ++ infVP vp a) (predV (partV hålla_V "på")) ;

View File

@@ -109,6 +109,7 @@ concrete IrregSwe of IrregSweAbs = CatSwe ** open ParadigmsSwe in {
ljuda_V = irregV "ljuda" "ljöd" "ljudit" ;
ljuga_V = irregV "ljuga" "ljög" "ljugit" ;
ljuta_V = irregV "ljuta" "ljöt" "ljutit" ;
lägga_V = irregV "lägga" "lade" "lagt" ;
mottaga_V = irregV "mottaga" "mottog" "mottagit" ;
nerstiga_V = irregV "nerstiga" "nersteg" "nerstigit" ;
niga_V = irregV "niga" "neg" "nigit" ;

View File

@@ -103,6 +103,7 @@ abstract IrregSweAbs = Cat ** {
ljuda_V : V ;
ljuga_V : V ;
ljuta_V : V ;
lägga_V : V ;
mottaga_V : V ;
nerstiga_V : V ;
niga_V : V ;