attempto almost complete to spec now

This commit is contained in:
aarne
2008-11-14 17:39:05 +00:00
parent 65c6f8548a
commit 6b21e170e8
7 changed files with 73 additions and 29 deletions

View File

@@ -24,6 +24,7 @@ cat IP ;
cat IAdv ; cat IAdv ;
cat QS ; cat QS ;
cat Text ; cat Text ;
cat RP ;
fun aNP : CN -> NP ; fun aNP : CN -> NP ;
fun theNP : CN -> NP ; fun theNP : CN -> NP ;
@@ -81,12 +82,12 @@ fun they_NP : NP ;
-- reflexive pronouns: itself, himself, herself, himself/herself, themselves -- reflexive pronouns: itself, himself, herself, himself/herself, themselves
fun someone_NP : NP ; --fun someone_NP : NP ;
fun somebody_NP : NP ; fun somebody_NP : NP ;
fun something_NP : NP ; fun something_NP : NP ;
fun noone_NP : NP ; --fun noone_NP : NP ;
fun nothing_NP : NP ; fun nothing_NP : NP ;
fun not_everyoneNP : NP ; --fun not_everyoneNP : NP ;
fun not_everybodyNP : NP ; fun not_everybodyNP : NP ;
fun not_everythingNP : NP ; fun not_everythingNP : NP ;
@@ -127,13 +128,14 @@ fun relCN : CN -> RS -> CN ;
fun relNP : NP -> RS -> NP ; fun relNP : NP -> RS -> NP ;
fun andRS : RS -> RS -> RS ; fun andRS : RS -> RS -> RS ;
fun orRS : RS -> RS -> RS ; fun orRS : RS -> RS -> RS ;
fun eachRS : RS -> RS ; -- each of who
fun suchCN : CN -> S -> CN ; fun suchCN : CN -> S -> CN ;
fun predRS : VP -> RS ; fun predRS : RP -> VP -> RS ;
fun slashRS : NP -> V2 -> RS ; fun slashRS : RP -> NP -> V2 -> RS ;
fun which_RP : RP ;
fun eachRP : RP ;
-- 2.2.4 -- 2.2.4
@@ -191,8 +193,8 @@ fun coordS : Conj -> S -> S -> S ;
fun and_Conj : Conj ; fun and_Conj : Conj ;
fun or_Conj : Conj ; fun or_Conj : Conj ;
fun comma_and_Conj : Conj ; -- lower precedence fun commaAnd_Conj : Conj ; -- lower precedence
fun comma_or_Conj : Conj ; fun commaOr_Conj : Conj ;
-- 3.4.3 -- 3.4.3

View File

@@ -27,6 +27,7 @@ lincat IAdv = Syntax.IAdv ;
lincat QS = Syntax.QS ; lincat QS = Syntax.QS ;
lincat Text = Syntax.Text ; lincat Text = Syntax.Text ;
lincat ACEText = Syntax.Text ; lincat ACEText = Syntax.Text ;
lincat RP = Syntax.RP ;
lincat MCN = Syntax.CN ; lincat MCN = Syntax.CN ;
lincat PP = Adv ; lincat PP = Adv ;
@@ -67,6 +68,7 @@ lin floatNP = symb ;
lin it_NP = mkNP it_Pron ; lin it_NP = mkNP it_Pron ;
lin he_NP = mkNP he_Pron ; lin he_NP = mkNP he_Pron ;
lin she_NP = mkNP she_Pron ; lin she_NP = mkNP she_Pron ;
lin he_she_NP = mkNP slash_Conj (mkNP he_Pron) (mkNP she_Pron) ;
lin they_NP = mkNP they_Pron ; lin they_NP = mkNP they_Pron ;
lin conjNP = mkNP and_Conj ; lin conjNP = mkNP and_Conj ;
@@ -89,10 +91,10 @@ lin not_at_mostNP ca cn = mkNP not_Predet (mkNP (mkCard at_most_AdN ca) cn) ;
lin more_thanNP ca = mkNP (mkCard (mkAdN more_CAdv) ca) ; lin more_thanNP ca = mkNP (mkCard (mkAdN more_CAdv) ca) ;
lin not_more_thanNP ca cn = mkNP not_Predet (mkNP (mkCard (mkAdN more_CAdv) ca) cn) ; lin not_more_thanNP ca cn = mkNP not_Predet (mkNP (mkCard (mkAdN more_CAdv) ca) cn) ;
lin nothing_butNP cn = mkNP nothing_but_Predet (mkNP a_Art plNum cn) ; lin nothing_butNP cn = mkNP nothing_NP (mkAdv except_Prep (mkNP a_Art plNum cn)) ;
lin nothing_butMassNP cn = mkNP nothing_but_Predet (mkNP cn) ; lin nothing_butMassNP cn = mkNP nothing_NP (mkAdv except_Prep (mkNP cn)) ;
--lin nobody_butNP : PN -> NP ; -- nobody but John lin nobody_butNP pn = mkNP nobody_NP (mkAdv except_Prep (mkNP pn)) ;
--lin no_butNP : CN -> PN -> NP ; -- no man but John lin no_butNP cn pn = mkNP (mkNP no_Quant plNum cn) (mkAdv except_Prep (mkNP pn)) ;
lincat Unit = CN ; lincat Unit = CN ;
@@ -118,16 +120,16 @@ lin superlAP a = mkAP (mkOrd a) ;
lin relCN = mkCN ; lin relCN = mkCN ;
--lin relNP = mkNP ; --lin relNP = mkNP ;
{-
lin andRS : RS -> RS -> RS ; lin andRS = mkRS and_Conj ;
lin orRS : RS -> RS -> RS ; lin orRS = mkRS or_Conj ;
lin eachRS : RS -> RS ; -- each of who lin eachRP = mkRP part_Prep (mkNP each_Det) Syntax.which_RP ;
-}
lin suchCN cn s = mkCN (mkAP (mkAP such_A) s) cn ; lin suchCN cn s = mkCN (mkAP (mkAP such_A) s) cn ;
lin predRS vp = mkRS (mkRCl which_RP vp) ; lin predRS rp vp = mkRS (mkRCl rp vp) ;
lin slashRS np v2 = mkRS (mkRCl which_RP np v2) ; lin slashRS rp np v2 = mkRS (mkRCl rp np v2) ;
lin which_RP = Syntax.which_RP ;
-- 2.2.4 -- 2.2.4
@@ -140,8 +142,7 @@ lin genOwnNP np cn = genitiveNP np (mkCN own_A cn) ;
lin vpS np vp = mkS (mkCl np vp) ; lin vpS np vp = mkS (mkCl np vp) ;
lin neg_vpS np vp = mkS negativePol (mkCl np vp) ; lin neg_vpS np vp = mkS negativePol (mkCl np vp) ;
lin not_provably_vpS np vp = mkS negativePol (mkCl np (mkVP vp provably_Adv)) ;
--lin not_provably_vpS : NP -> VP -> S ;
lin vVP = mkVP ; lin vVP = mkVP ;
lin v2VP = mkVP ; lin v2VP = mkVP ;
@@ -194,15 +195,17 @@ lin coordS = mkS ;
lin and_Conj = Syntax.and_Conj ; lin and_Conj = Syntax.and_Conj ;
lin or_Conj = Syntax.or_Conj ; lin or_Conj = Syntax.or_Conj ;
--lin comma_and_Conj : Conj ; -- lower precedence lin commaAnd_Conj = comma_and_Conj ;
--lin comma_or_Conj : Conj ; lin commaOr_Conj = comma_or_Conj ;
-- 3.4.3 -- 3.4.3
lin for_everyS cn = mkS (mkAdv for_Prep (mkNP every_Det cn)) ; lin for_everyS cn = mkS (mkAdv for_Prep (mkNP every_Det cn)) ;
lin for_eachS cn = mkS (mkAdv for_Prep (mkNP each_Det cn)) ; lin for_eachS cn = mkS (mkAdv for_Prep (mkNP each_Det cn)) ;
--lin for_each_ofS : Card -> CN -> S -> S ; -- for each of 3 men lin for_each_ofS card cn =
--lin for_allMassS : MCN -> S -> S ; -- for all water mkS (mkAdv for_Prep (mkNP (mkNP each_Det) (mkAdv part_Prep (mkNP card cn)))) ;
lin for_allMassS cn =
mkS (mkAdv for_Prep (mkNP all_Predet (mkNP cn))) ;
-- 3.4.4 -- 3.4.4
@@ -219,7 +222,7 @@ lin necessaryS s = mkS (adj_thatCl necessary_A s) ;
lin not_necessaryS s = mkS negativePol (adj_thatCl necessary_A s) ; lin not_necessaryS s = mkS negativePol (adj_thatCl necessary_A s) ;
--lin thatS s t = mkS ; --lin thatS s t = mkS s (mkAdv that_Subj t) ;
-- 3.5 -- 3.5

View File

@@ -17,5 +17,9 @@ oper
-- kg_Unit : Unit ; -- kg_Unit : Unit ;
each_Det : Det ; each_Det : Det ;
that_Subj : Subj ;
comma_and_Conj : Conj ;
comma_or_Conj : Conj ;
} }

View File

@@ -4,6 +4,7 @@ instance LexAttemptoEng of LexAttempto =
SyntaxEng, SyntaxEng,
ParadigmsEng, ParadigmsEng,
ConstructX, ConstructX,
MakeStructuralEng,
IrregEng in { IrregEng in {
oper oper
@@ -22,4 +23,11 @@ oper
each_Det = ExtraEng.each_Det ; each_Det = ExtraEng.each_Det ;
that_Subj = mkSubj "that" ;
comma_and_Conj = mkConj [] ", and" plural ;
comma_or_Conj = mkConj [] ", or" singular ;
slash_Conj = mkConj [] "/" singular ;
} }

View File

@@ -1,5 +1,7 @@
instance LexAttemptoFre of LexAttempto = instance LexAttemptoFre of LexAttempto =
open ExtraFre, SyntaxFre, ParadigmsFre, ConstructX, IrregFre in { open ExtraFre, SyntaxFre, ParadigmsFre, ConstructX,
MakeStructuralFre,
IrregFre in {
oper oper
possible_A = mkA "possible" ; possible_A = mkA "possible" ;
@@ -15,4 +17,11 @@ oper
each_Det = every_Det ; ---- each_Det = every_Det ; ----
that_Subj = mkSubj "que" ; ---- qu'
comma_and_Conj = mkConj [] ", et" plural ;
comma_or_Conj = mkConj [] ", ou" singular ;
slash_Conj = mkConj [] "/" singular ;
} }

View File

@@ -1,5 +1,7 @@
instance LexAttemptoGer of LexAttempto = instance LexAttemptoGer of LexAttempto =
open ExtraGer, SyntaxGer, ParadigmsGer, ConstructX, IrregGer in { open ExtraGer, SyntaxGer, ParadigmsGer, ConstructX,
MakeStructuralGer,
IrregGer in {
oper oper
possible_A = mkA "möglich" ; possible_A = mkA "möglich" ;
@@ -15,4 +17,11 @@ oper
each_Det = every_Det ; each_Det = every_Det ;
that_Subj = mkSubj "daß" ;
comma_and_Conj = mkConj [] ", und" plural ;
comma_or_Conj = mkConj [] ", oder" singular ;
slash_Conj = mkConj [] "/" singular ;
} }

View File

@@ -1,5 +1,6 @@
instance LexAttemptoSwe of LexAttempto = instance LexAttemptoSwe of LexAttempto =
open ExtraSwe, SyntaxSwe, ParadigmsSwe, ConstructX, IrregSwe in { open ExtraSwe, SyntaxSwe, ParadigmsSwe, ConstructX,
MakeStructuralSwe, IrregSwe in {
oper oper
possible_A = mkA "möjlig" ; possible_A = mkA "möjlig" ;
@@ -14,4 +15,12 @@ oper
genitiveNP np = mkNP (GenNP np) ; genitiveNP np = mkNP (GenNP np) ;
each_Det = every_Det ; ---- each_Det = every_Det ; ----
that_Subj = mkSubj "att" ;
comma_and_Conj = mkConj [] ", och" plural ;
comma_or_Conj = mkConj [] ", eller" singular ;
slash_Conj = mkConj [] "/" singular ;
} }