mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-14 21:52:51 -06:00
See https://github.com/daherb/GF orhttps://gitlab.cip.ifi.lmu.de/langeh/gf for full git commit history
457 lines
12 KiB
Plaintext
457 lines
12 KiB
Plaintext
--# -path=.:prelude:../abstract:../common
|
|
|
|
concrete IrregLat of IrregLatAbs = CatLat ** open Prelude, ParadigmsLat, ResLat in {
|
|
--
|
|
--flags optimize=values ;
|
|
--
|
|
|
|
lin
|
|
-- Bayer-Lindauer 93 1
|
|
be_V =
|
|
let
|
|
pres_stem = "s" ;
|
|
pres_ind_base = "su" ;
|
|
pres_conj_base = "si" ;
|
|
impf_ind_base = "era" ;
|
|
impf_conj_base = "esse" ;
|
|
fut_I_base = "eri" ;
|
|
imp_base = "es" ;
|
|
perf_stem = "fu" ;
|
|
perf_ind_base = "fu" ;
|
|
perf_conj_base = "fueri" ;
|
|
pqperf_ind_base = "fuera" ;
|
|
pqperf_conj_base = "fuisse" ;
|
|
fut_II_base = "fueri" ;
|
|
part_stem = "fut" ;
|
|
verb = mkVerb "esse" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base
|
|
imp_base perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) n p =>
|
|
table Number [ table Person [ "sum" ; "es" ; "est" ] ;
|
|
table Person [ "sumus" ; "estis" ; "sunt" ]
|
|
] ! n ! p ;
|
|
a => verb.act ! a
|
|
};
|
|
pass =
|
|
\\_ => "######" ; -- no passive forms
|
|
inf =
|
|
verb.inf ;
|
|
imp =
|
|
table {
|
|
VImp1 Sg => "es" ;
|
|
VImp1 Pl => "este" ;
|
|
VImp2 Pl P2 => "estote" ;
|
|
a => verb.imp ! a
|
|
} ;
|
|
sup =
|
|
\\_ => "######" ; -- no supin forms
|
|
ger =
|
|
\\_ => "######" ; -- no gerund forms
|
|
geriv =
|
|
\\_ => "######" ; -- no gerundive forms
|
|
part = table {
|
|
VActFut =>
|
|
verb.part ! VActFut ;
|
|
VActPres =>
|
|
\\_ => "######" ; -- no such participle
|
|
VPassPerf =>
|
|
\\_ => "######" -- no such participle
|
|
}
|
|
} ;
|
|
|
|
-- Bayer-Lindauer 93 2.2
|
|
can_VV =
|
|
let
|
|
pres_stem = "pos" ;
|
|
pres_ind_base = "pos" ;
|
|
pres_conj_base = "possi" ;
|
|
impf_ind_base = "potera" ;
|
|
impf_conj_base = "posse" ;
|
|
fut_I_base = "poteri" ;
|
|
imp_base = "" ;
|
|
perf_stem = "potu" ;
|
|
perf_ind_base = "potu" ;
|
|
perf_conj_base = "potueri" ;
|
|
pqperf_ind_base = "potuera" ;
|
|
pqperf_conj_base = "potuisse" ;
|
|
fut_II_base = "potueri" ;
|
|
part_stem = "" ;
|
|
verb = mkVerb "posse" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base
|
|
imp_base perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) n p =>
|
|
table Number [ table Person [ "possum" ; "potes" ; "potest" ] ;
|
|
table Person [ "possumus" ; "potestis" ; "possunt" ]
|
|
] ! n ! p ;
|
|
a => verb.act ! a
|
|
} ;
|
|
pass =
|
|
\\_ => "######" ; -- no passive forms
|
|
inf =
|
|
table {
|
|
VInfActFut _ => "######" ;
|
|
a => verb.inf ! a
|
|
} ;
|
|
imp =
|
|
\\_ => "######" ;
|
|
sup =
|
|
\\_ => "######" ;
|
|
ger =
|
|
\\_ => "######" ;
|
|
geriv =
|
|
\\_ => "######" ;
|
|
part = table {
|
|
VActFut =>
|
|
\\_ => "######" ; -- no such participle
|
|
VActPres =>
|
|
\\_ => "######" ; -- no such participle
|
|
VPassPerf =>
|
|
\\_ => "######" -- no such participle
|
|
} ;
|
|
isAux = False
|
|
};
|
|
|
|
-- Bayer-Lindauer 94
|
|
bring_V =
|
|
let
|
|
pres_stem = "fer" ;
|
|
pres_ind_base = "fer" ;
|
|
pres_conj_base = "fera" ;
|
|
impf_ind_base = "fereba" ;
|
|
impf_conj_base = "ferre" ;
|
|
fut_I_base = "fere" ;
|
|
imp_base = "fer" ;
|
|
perf_stem = "tul" ;
|
|
perf_ind_base = "tul" ;
|
|
perf_conj_base = "tuleri" ;
|
|
pqperf_ind_base = "tulera" ;
|
|
pqperf_conj_base = "tulisse" ;
|
|
fut_II_base = "tuleri" ;
|
|
part_stem = "lat" ;
|
|
verb = mkVerb "ferre" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base
|
|
imp_base perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) n p =>
|
|
table Number [ table Person [ "fero" ; "fers" ; "fert" ] ;
|
|
table Person [ "ferimus" ; "fertis" ; "ferunt" ]
|
|
] ! n ! p ;
|
|
a => verb.act ! a
|
|
} ;
|
|
pass =
|
|
table {
|
|
VPass (VPres VInd) n p =>
|
|
table Number [ table Person [ "feror" ; "ferris" ; "fertur" ] ;
|
|
table Person [ "ferimur" ; "ferimini" ; "feruntur" ]
|
|
] ! n ! p ;
|
|
a => verb.pass ! a
|
|
} ;
|
|
inf =
|
|
verb.inf ;
|
|
imp =
|
|
table {
|
|
VImp1 n => table Number [ "fer" ; "ferte" ] ! n ;
|
|
VImp2 Sg ( P2 | P3 ) => "ferto" ;
|
|
VImp2 Pl P2 => "fertote" ;
|
|
a => verb.imp ! a
|
|
} ;
|
|
sup =
|
|
verb.sup ;
|
|
ger =
|
|
verb.ger ;
|
|
geriv =
|
|
verb.geriv ;
|
|
part = verb.part ;
|
|
};
|
|
|
|
-- Bayer-Lindauer 95
|
|
want_V =
|
|
let
|
|
pres_stem = "vel" ;
|
|
pres_ind_base = "vol" ;
|
|
pres_conj_base = "veli" ;
|
|
impf_ind_base = "voleba" ;
|
|
impf_conj_base = "volle" ;
|
|
fut_I_base = "vole" ;
|
|
imp_base = "" ;
|
|
perf_stem = "volu" ;
|
|
perf_ind_base = "volu" ;
|
|
perf_conj_base = "volueri" ;
|
|
pqperf_ind_base = "voluera" ;
|
|
pqperf_conj_base = "voluisse" ;
|
|
fut_II_base = "volueri" ;
|
|
part_stem = "volet" ;
|
|
verb = mkVerb "velle" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base
|
|
imp_base perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) n p =>
|
|
table Number [ table Person [ "volo" ; "vis" ; "vult" ] ;
|
|
table Person [ "volumus" ; "vultis" ; "volunt" ]
|
|
] ! n ! p ;
|
|
a => verb.act ! a
|
|
} ;
|
|
pass =
|
|
\\_ => "######" ;
|
|
ger =
|
|
verb.ger ;
|
|
geriv =
|
|
verb.geriv ;
|
|
imp =
|
|
\\_ => "######" ;
|
|
inf =
|
|
verb.inf ;
|
|
part = table {
|
|
VActFut =>
|
|
\\_ => "######" ;
|
|
VActPres =>
|
|
verb.part ! VActPres ;
|
|
VPassPerf =>
|
|
\\_ => "######"
|
|
} ;
|
|
sup =
|
|
verb.sup ;
|
|
} ;
|
|
|
|
-- Bayer-Lindauer 96 1
|
|
go_V =
|
|
let
|
|
pres_stem = "i" ;
|
|
pres_ind_base = "i" ;
|
|
pres_conj_base = "ea" ;
|
|
impf_ind_base = "iba" ;
|
|
impf_conj_base = "ire" ;
|
|
fut_I_base = "ibi" ;
|
|
imp_base = "i" ;
|
|
perf_stem = "i" ;
|
|
perf_ind_base = "i" ;
|
|
perf_conj_base = "ieri" ;
|
|
pqperf_ind_base = "iera" ;
|
|
pqperf_conj_base = "isse" ;
|
|
fut_II_base = "ieri" ;
|
|
part_stem = "it" ;
|
|
verb = mkVerb "ire" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base
|
|
imp_base perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) n p =>
|
|
table Number [ table Person [ "eo" ; "is" ; "it" ] ;
|
|
table Person [ "imus" ; "itis" ; "eunt" ]
|
|
] ! n ! p ;
|
|
VAct VAnt (VPres VInd) Sg P2 => "isti" ;
|
|
VAct VAnt (VPres VInd) Pl P2 => "istis" ;
|
|
a => verb.act ! a
|
|
} ;
|
|
pass =
|
|
\\_ => "######"; -- no passive forms
|
|
ger =
|
|
table VGerund [ "eundum" ; "eundi" ; "eundo" ; "eundo" ] ;
|
|
geriv =
|
|
verb.geriv ;
|
|
imp =
|
|
table {
|
|
VImp2 Pl P3 => "eunto" ;
|
|
a => verb.imp ! a
|
|
} ;
|
|
inf =
|
|
table {
|
|
VInfActPerf _ => "isse" ;
|
|
a =>verb.inf ! a
|
|
};
|
|
part = table {
|
|
VActFut =>
|
|
verb.part ! VActFut ;
|
|
VActPres =>
|
|
table {
|
|
Ag ( Fem | Masc ) n c =>
|
|
( mkNoun ( "iens" ) ( "euntem" ) ( "euntis" )
|
|
( "eunti" ) ( "eunte" ) ( "iens" )
|
|
( "euntes" ) ( "euntes" ) ( "euntium" )
|
|
( "euntibus" )
|
|
Masc ).s ! n ! c ;
|
|
Ag Neutr n c =>
|
|
( mkNoun ( "iens" ) ( "iens" ) ( "euntis" )
|
|
( "eunti" ) ( "eunte" ) ( "iens" )
|
|
( "euntia" ) ( "euntia" ) ( "euntium" )
|
|
( "euntibus" )
|
|
Masc ).s ! n ! c
|
|
} ;
|
|
VPassPerf =>
|
|
\\_ => "######" -- no such participle
|
|
} ;
|
|
sup =
|
|
\\_ => "######" -- really no such form?
|
|
} ;
|
|
|
|
-- Bayer-Lindauer 97
|
|
become_V =
|
|
let
|
|
pres_stem = "fi" ;
|
|
pres_ind_base = "fi" ;
|
|
pres_conj_base = "fia" ;
|
|
impf_ind_base = "fieba" ;
|
|
impf_conj_base = "fiere" ;
|
|
fut_I_base = "fie" ;
|
|
imp_base = "fi" ;
|
|
perf_stem = "" ;
|
|
perf_ind_base = "" ;
|
|
perf_conj_base = "" ;
|
|
pqperf_ind_base = "" ;
|
|
pqperf_conj_base = "" ;
|
|
fut_II_base = "" ;
|
|
part_stem = "fact" ;
|
|
|
|
verb =
|
|
mkVerb "fieri" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base imp_base
|
|
perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) Sg P1 => "fio" ;
|
|
VAct VAnt _ _ _ => "######" ; -- perfect expressed by participle
|
|
a => verb.act ! a
|
|
} ;
|
|
pass =
|
|
\\_ => "######" ; -- no passive forms
|
|
ger =
|
|
\\_ => "######" ; -- no gerund form
|
|
geriv =
|
|
\\_ => "######" ; -- no gerundive form
|
|
imp =
|
|
verb.imp ;
|
|
inf =
|
|
table {
|
|
VInfActPerf _ => "factus" ;
|
|
VInfActFut Masc => "futurum" ;
|
|
VInfActFut Fem => "futura" ;
|
|
VInfActFut Neutr => "futurum" ;
|
|
a => verb.inf ! a
|
|
} ;
|
|
part = table {
|
|
VActFut =>
|
|
\\_ => "######" ; -- no such participle
|
|
VActPres =>
|
|
\\_ => "######" ; -- no such participle
|
|
VPassPerf =>
|
|
verb.part ! VPassPerf
|
|
} ;
|
|
sup =
|
|
\\_ => "######" -- no supin
|
|
} ;
|
|
|
|
-- Source ?
|
|
rain_V =
|
|
{
|
|
act =
|
|
table {
|
|
VAct VSim (VPres VInd) Sg P3 => "pluit" ;
|
|
VAct VSim (VPres VInd) Pl P3 => "pluunt" ;
|
|
VAct VSim (VImpf VInd) Sg P3 => "pluebat" ;
|
|
VAct VSim (VImpf VInd) Pl P3 => "pluebant" ;
|
|
VAct VSim VFut Sg P3 => "pluet" ;
|
|
VAct VSim VFut Pl P3 => "pluent" ;
|
|
VAct VAnt (VPres VInd) Sg P3 => "pluvit" ;
|
|
VAct VAnt (VPres VInd) Pl P3 => "pluverunt" ;
|
|
VAct VAnt (VImpf VInd) Sg P3 => "pluverat" ;
|
|
VAct VAnt (VImpf VInd) Pl P3 => "pluverat" ;
|
|
VAct VAnt VFut Sg P3 => "pluverit" ;
|
|
VAct VAnt VFut Pl P3 => "pluverint" ;
|
|
VAct VSim (VPres VConj) Sg P3 => "pluat" ;
|
|
VAct VSim (VPres VConj) Pl P3 => "pluant" ;
|
|
VAct VSim (VImpf VConj) Sg P3 => "plueret" ;
|
|
VAct VSim (VImpf VConj) Pl P3 => "pluerent" ;
|
|
VAct VAnt (VPres VConj) Sg P3 => "pluverit" ;
|
|
VAct VAnt (VPres VConj) Pl P3 => "pluverint" ;
|
|
VAct VAnt (VImpf VConj) Sg P3 => "pluvisset" ;
|
|
VAct VAnt (VImpf VConj) Pl P3 => "pluvissent" ;
|
|
_ => "######" -- no such forms
|
|
} ;
|
|
pass =
|
|
\\_ => "######" ; -- no passive forms
|
|
inf = table {
|
|
VInfActPres => "pluere" ;
|
|
VInfActPerf _ => "pluvisse" ;
|
|
_ => "######"
|
|
} ;
|
|
imp =
|
|
table {
|
|
VImp2 Sg ( P2 | P3 ) => "pluito" ;
|
|
VImp2 Pl P2 => "pluitote" ;
|
|
VImp2 Pl P3 => "pluunto" ;
|
|
_ => "######"
|
|
} ;
|
|
ger =
|
|
\\_ => "######" ; -- no gerund forms
|
|
geriv =
|
|
\\_ => "######" ; -- no gerundive forms
|
|
sup =
|
|
\\_ => "######" ; -- no supin forms
|
|
part = table {
|
|
VActPres =>
|
|
\\_ => "pluens" ;
|
|
VActFut =>
|
|
\\_ => "######" ; -- no such participle
|
|
VPassPerf =>
|
|
\\_ => "######" -- no such participle
|
|
}
|
|
} ;
|
|
|
|
-- Bayer-Lindauer 98
|
|
hate_V =
|
|
let
|
|
pres_stem = "" ;
|
|
pres_ind_base = "" ;
|
|
pres_conj_base = "" ;
|
|
impf_ind_base = "" ;
|
|
impf_conj_base = "" ;
|
|
fut_I_base = "" ;
|
|
imp_base = "" ;
|
|
perf_stem = "od" ;
|
|
perf_ind_base = "od" ;
|
|
perf_conj_base = "oderi" ;
|
|
pqperf_ind_base = "odera" ;
|
|
pqperf_conj_base = "odissem" ;
|
|
fut_II_base = "oderi" ;
|
|
part_stem = "os" ;
|
|
verb =
|
|
mkVerb "odisse" pres_stem pres_ind_base pres_conj_base impf_ind_base impf_conj_base fut_I_base imp_base
|
|
perf_stem perf_ind_base perf_conj_base pqperf_ind_base pqperf_conj_base fut_II_base part_stem ;
|
|
in {
|
|
act = table {
|
|
VAct VSim t n p => verb.act ! VAct VAnt t n p ;
|
|
_ => "######" -- no such verb forms
|
|
} ;
|
|
pass = \\_ => "######" ; -- no passive forms
|
|
ger = \\_ => "######" ; -- no gerund forms
|
|
geriv = \\_ => "######" ; -- no gerundive forms
|
|
imp = \\_ => "######" ; -- no imperative form
|
|
inf = table {
|
|
VInfActPres => verb.inf ! VInfActPres ;
|
|
VInfActFut g => verb.inf ! VInfActFut g ; -- really ?
|
|
_ => "######"
|
|
} ;
|
|
part = table {
|
|
VActFut =>
|
|
verb.part ! VActFut ;
|
|
VActPres =>
|
|
\\_ => "######" ; -- no such participle form
|
|
VPassPerf =>
|
|
\\_ => "######" -- no such participle form
|
|
} ;
|
|
sup = \\_ => "######" ; -- no such supine form
|
|
} ;
|
|
}
|