mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-10 21:39:32 -06:00
132 lines
4.0 KiB
Plaintext
132 lines
4.0 KiB
Plaintext
concrete StructuralEng of Structural = CatEng **
|
|
open MorphoEng, (P = ParadigmsEng), Prelude in {
|
|
|
|
flags optimize=all ;
|
|
|
|
lin
|
|
above_Prep = ss "above" ;
|
|
after_Prep = ss "after" ;
|
|
all_Predet = ss "all" ;
|
|
almost_AdA, almost_AdN = ss "almost" ;
|
|
although_Subj = ss "although" ;
|
|
always_AdV = ss "always" ;
|
|
and_Conj = ss "and" ** {n = Pl} ;
|
|
because_Subj = ss "because" ;
|
|
before_Prep = ss "before" ;
|
|
behind_Prep = ss "behind" ;
|
|
between_Prep = ss "between" ;
|
|
both7and_DConj = sd2 "both" "and" ** {n = Pl} ;
|
|
but_PConj = ss "but" ;
|
|
by8agent_Prep = ss "by" ;
|
|
by8means_Prep = ss "by" ;
|
|
can8know_VV, can_VV = {
|
|
s = table {
|
|
VVF VInf => ["be able to"] ;
|
|
VVF VPres => "can" ;
|
|
VVF VPPart => ["been able to"] ;
|
|
VVF VPresPart => ["being able to"] ;
|
|
VVF VPast => "could" ; --# notpresent
|
|
VVPastNeg => "couldn't" ; --# notpresent
|
|
VVPresNeg => "can't"
|
|
} ;
|
|
isAux = True
|
|
} ;
|
|
during_Prep = ss "during" ;
|
|
either7or_DConj = sd2 "either" "or" ** {n = Sg} ;
|
|
everybody_NP = regNP "everybody" Sg ;
|
|
every_Det = mkDeterminer Sg "every" ;
|
|
everything_NP = regNP "everything" Sg ;
|
|
everywhere_Adv = ss "everywhere" ;
|
|
few_Det = mkDeterminer Pl "few" ;
|
|
--- first_Ord = ss "first" ; DEPRECATED
|
|
for_Prep = ss "for" ;
|
|
from_Prep = ss "from" ;
|
|
he_Pron = mkNP "he" "him" "his" Sg P3 ;
|
|
here_Adv = ss "here" ;
|
|
here7to_Adv = ss ["to here"] ;
|
|
here7from_Adv = ss ["from here"] ;
|
|
how_IAdv = ss "how" ;
|
|
how8many_IDet = mkDeterminer Pl ["how many"] ;
|
|
if_Subj = ss "if" ;
|
|
in8front_Prep = ss ["in front of"] ;
|
|
i_Pron = mkNP "I" "me" "my" Sg P1 ;
|
|
in_Prep = ss "in" ;
|
|
it_Pron = mkNP "it" "it" "its" Sg P3 ;
|
|
less_CAdv = ss "less" ;
|
|
many_Det = mkDeterminer Pl "many" ;
|
|
more_CAdv = ss "more" ;
|
|
most_Predet = ss "most" ;
|
|
much_Det = mkDeterminer Sg "much" ;
|
|
must_VV = {
|
|
s = table {
|
|
VVF VInf => ["have to"] ;
|
|
VVF VPres => "must" ;
|
|
VVF VPPart => ["had to"] ;
|
|
VVF VPresPart => ["having to"] ;
|
|
VVF VPast => ["had to"] ; --# notpresent
|
|
VVPastNeg => ["hadn't to"] ; --# notpresent
|
|
VVPresNeg => "mustn't"
|
|
} ;
|
|
isAux = True
|
|
} ;
|
|
no_Phr = ss "no" ;
|
|
on_Prep = ss "on" ;
|
|
---- one_Quant = mkDeterminer Sg "one" ; -- DEPRECATED
|
|
only_Predet = ss "only" ;
|
|
or_Conj = ss "or" ** {n = Sg} ;
|
|
otherwise_PConj = ss "otherwise" ;
|
|
part_Prep = ss "of" ;
|
|
please_Voc = ss "please" ;
|
|
possess_Prep = ss "of" ;
|
|
quite_Adv = ss "quite" ;
|
|
she_Pron = mkNP "she" "her" "her" Sg P3 ;
|
|
so_AdA = ss "so" ;
|
|
somebody_NP = regNP "somebody" Sg ;
|
|
someSg_Det = mkDeterminer Sg "some" ;
|
|
somePl_Det = mkDeterminer Pl "some" ;
|
|
something_NP = regNP "something" Sg ;
|
|
somewhere_Adv = ss "somewhere" ;
|
|
that_Quant = mkQuant "that" "those" ;
|
|
that_NP = regNP "that" Sg ;
|
|
there_Adv = ss "there" ;
|
|
there7to_Adv = ss "there" ;
|
|
there7from_Adv = ss ["from there"] ;
|
|
therefore_PConj = ss "therefore" ;
|
|
these_NP = regNP "these" Pl ;
|
|
they_Pron = mkNP "they" "them" "their" Pl P3 ;
|
|
this_Quant = mkQuant "this" "these" ;
|
|
this_NP = regNP "this" Sg ;
|
|
those_NP = regNP "those" Pl ;
|
|
through_Prep = ss "through" ;
|
|
too_AdA = ss "too" ;
|
|
to_Prep = ss "to" ;
|
|
under_Prep = ss "under" ;
|
|
very_AdA = ss "very" ;
|
|
want_VV = P.mkVV (P.regV "want") ;
|
|
we_Pron = mkNP "we" "us" "our" Pl P1 ;
|
|
whatPl_IP = mkIP "what" "what" "what's" Sg ;
|
|
whatSg_IP = mkIP "what" "what" "what's" Sg ;
|
|
when_IAdv = ss "when" ;
|
|
when_Subj = ss "when" ;
|
|
where_IAdv = ss "where" ;
|
|
whichPl_IDet = mkDeterminer Pl ["which"] ;
|
|
whichSg_IDet = mkDeterminer Sg ["which"] ;
|
|
whoSg_IP = mkIP "who" "whom" "whose" Sg ;
|
|
whoPl_IP = mkIP "who" "whom" "whose" Pl ;
|
|
why_IAdv = ss "why" ;
|
|
without_Prep = ss "without" ;
|
|
with_Prep = ss "with" ;
|
|
yes_Phr = ss "yes" ;
|
|
youSg_Pron = mkNP "you" "you" "your" Sg P2 ;
|
|
youPl_Pron = mkNP "you" "you" "your" Pl P2 ;
|
|
youPol_Pron = mkNP "you" "you" "your" Sg P2 ;
|
|
|
|
|
|
oper
|
|
mkQuant : Str -> Str -> {s : Number => Str} = \x,y -> {
|
|
s = table Number [x ; y]
|
|
} ;
|
|
|
|
}
|
|
|