1
0
forked from GitHub/gf-core
Files
gf-core/lib/next-resource/latin/ParadigmsLat.gf
2008-09-18 13:29:53 +00:00

66 lines
1.6 KiB
Plaintext

--# -path=.:../abstract:../../prelude:../common
--1 Latin Lexical Paradigms
--
-- Aarne Ranta 2008
--
-- This is an API for the user of the resource grammar
-- for adding lexical items. It gives functions for forming
-- expressions of open categories: nouns, adjectives, verbs.
--
-- Closed categories (determiners, pronouns, conjunctions) are
-- accessed through the resource syntax API, $Structural.gf$.
resource ParadigmsLat = open
(Predef=Predef),
Prelude,
ResLat,
CatLat
in {
--2 Parameters
--
-- To abstract over gender names, we define the following identifiers.
oper
masculine : Gender ;
feminine : Gender ;
neuter : Gender ;
mkN = overload {
mkN : (verbum : Str) -> N
= \n -> noun n ** {lock_N = <>} ;
mkN : (verbum, verbi : Str) -> Gender -> N
= \x,y,z -> noun_ngg x y z ** {lock_N = <>} ;
} ;
mkA = overload {
mkA : (verbum : Str) -> A
= \n -> adj n ** {isPre = False ; lock_A = <>} ;
mkA : (verbum, verbi : Str) -> A
= \x,y -> adj123 x y ** {isPre = False ; lock_A = <>} ;
mkA : (bonus,bona,bonum : N) -> A
= \x,y,z -> mkAdjective x y z ** {isPre = False ; lock_A = <>} ;
} ;
mkV = overload {
mkV : (tacere : Str) -> V
= \v -> verb v ** {lock_V = <>} ;
mkV : (iacio,ieci,iactus,iacere : Str) -> V
= \v,x,y,z -> verb_pppi v x y z ** {lock_V = <>} ;
} ;
mkV2 = overload {
mkV2 : (amare : Str) -> V2
= \v -> verb v ** {c = {s = [] ; c = Acc} ; lock_V2 = <>} ;
mkV2 : (facere : V) -> V2
= \v -> v ** {c = {s = [] ; c = Acc} ; lock_V2 = <>} ;
} ;
--.
masculine = Masc ;
feminine = Fem ;
neuter = Neutr ;
}