mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-27 08:58:55 -06:00
make mkPN more portable across languages
This commit is contained in:
@@ -266,7 +266,13 @@ oper
|
||||
|
||||
--2 Proper Names
|
||||
--
|
||||
|
||||
masculine : Gender = Masc ;
|
||||
feminine : Gender = Fem ;
|
||||
neutr : Gender = Neut ;
|
||||
|
||||
mkPN = overload {
|
||||
mkPN : Str -> PN = \s -> {s = s; gn = GSg Masc ; lock_PN = <>} ;
|
||||
mkPN : Str -> Gender -> PN =
|
||||
\s,g -> {s = s; gn = GSg g ; lock_PN = <>} ;
|
||||
mkPN : Str -> GenNum -> PN =
|
||||
|
||||
@@ -132,6 +132,7 @@ oper
|
||||
mkPN : overload {
|
||||
|
||||
mkPN : Str -> PN ;
|
||||
mkPN : Str -> Gender -> PN ;
|
||||
|
||||
-- Sometimes a common noun can be reused as a proper name, e.g. "Bank"
|
||||
|
||||
@@ -435,6 +436,7 @@ mkVoc s = lin Voc (ss s) ;
|
||||
|
||||
mkPN = overload {
|
||||
mkPN : Str -> PN = regPN ;
|
||||
mkPN : Str -> Gender -> PN = regGenPN ;
|
||||
mkPN : N -> PN = nounPN
|
||||
} ;
|
||||
|
||||
|
||||
@@ -78,7 +78,11 @@ resource ParadigmsMlt = open
|
||||
mkNDual : Str -> Str -> Str -> Str -> Gender -> N ; -- Noun paradigm 4x: Explicit gender
|
||||
} ;
|
||||
|
||||
mkPN : Str -> Gender -> Number -> ProperNoun ; -- Proper noun
|
||||
mkPN : overload {
|
||||
mkPN : Str -> PN ;
|
||||
mkPN : Str -> Gender -> PN ;
|
||||
mkPN : Str -> Gender -> Number -> PN ;
|
||||
} ;
|
||||
|
||||
mkN2 : overload {
|
||||
mkN2 : N -> Prep -> N2 ;
|
||||
@@ -324,8 +328,14 @@ resource ParadigmsMlt = open
|
||||
}
|
||||
) ;
|
||||
|
||||
mkPN = overload {
|
||||
mkPN : Str -> PN = \s -> regPN s masculine singular ;
|
||||
mkPN : Str -> Gender -> PN = \s,g -> regPN s g singular ;
|
||||
mkPN : Str -> Gender -> Number -> PN = \s,g,n -> regPN s g n ;
|
||||
} ;
|
||||
|
||||
-- Proper noun
|
||||
mkPN : Str -> Gender -> Number -> ProperNoun = \name,g,n -> {
|
||||
regPN : Str -> Gender -> Number -> PN = \name,g,n -> lin PN {
|
||||
s = name ;
|
||||
a = mkAgr n P3 g ;
|
||||
} ;
|
||||
|
||||
@@ -142,6 +142,11 @@ resource ParadigmsTur = open
|
||||
-- Paradigm for regular noun
|
||||
regN : Str -> N ;
|
||||
|
||||
mkPN = overload {
|
||||
mkPN : Str -> PN = regPN ;
|
||||
mkPN : Str -> Str -> PN = makePN ;
|
||||
} ;
|
||||
|
||||
-- Paradigm for proper noun
|
||||
regPN : Str -> PN ;
|
||||
|
||||
@@ -405,7 +410,7 @@ resource ParadigmsTur = open
|
||||
pln
|
||||
har ;
|
||||
|
||||
makePN sn sy = makeHarPN sn sy (getHarmony sn) ;
|
||||
makePN sn sy = lin PN (makeHarPN sn sy (getHarmony sn)) ;
|
||||
|
||||
linkNoun n1 n2 lt ct =
|
||||
let n1sn = n1.s ! Sg ! Nom ;--tere
|
||||
|
||||
Reference in New Issue
Block a user