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
|
--2 Proper Names
|
||||||
--
|
--
|
||||||
|
|
||||||
|
masculine : Gender = Masc ;
|
||||||
|
feminine : Gender = Fem ;
|
||||||
|
neutr : Gender = Neut ;
|
||||||
|
|
||||||
mkPN = overload {
|
mkPN = overload {
|
||||||
|
mkPN : Str -> PN = \s -> {s = s; gn = GSg Masc ; lock_PN = <>} ;
|
||||||
mkPN : Str -> Gender -> PN =
|
mkPN : Str -> Gender -> PN =
|
||||||
\s,g -> {s = s; gn = GSg g ; lock_PN = <>} ;
|
\s,g -> {s = s; gn = GSg g ; lock_PN = <>} ;
|
||||||
mkPN : Str -> GenNum -> PN =
|
mkPN : Str -> GenNum -> PN =
|
||||||
|
|||||||
@@ -132,6 +132,7 @@ oper
|
|||||||
mkPN : overload {
|
mkPN : overload {
|
||||||
|
|
||||||
mkPN : Str -> PN ;
|
mkPN : Str -> PN ;
|
||||||
|
mkPN : Str -> Gender -> PN ;
|
||||||
|
|
||||||
-- Sometimes a common noun can be reused as a proper name, e.g. "Bank"
|
-- 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 = overload {
|
||||||
mkPN : Str -> PN = regPN ;
|
mkPN : Str -> PN = regPN ;
|
||||||
|
mkPN : Str -> Gender -> PN = regGenPN ;
|
||||||
mkPN : N -> PN = nounPN
|
mkPN : N -> PN = nounPN
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
@@ -78,7 +78,11 @@ resource ParadigmsMlt = open
|
|||||||
mkNDual : Str -> Str -> Str -> Str -> Gender -> N ; -- Noun paradigm 4x: Explicit gender
|
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 : overload {
|
||||||
mkN2 : N -> Prep -> N2 ;
|
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
|
-- Proper noun
|
||||||
mkPN : Str -> Gender -> Number -> ProperNoun = \name,g,n -> {
|
regPN : Str -> Gender -> Number -> PN = \name,g,n -> lin PN {
|
||||||
s = name ;
|
s = name ;
|
||||||
a = mkAgr n P3 g ;
|
a = mkAgr n P3 g ;
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -142,6 +142,11 @@ resource ParadigmsTur = open
|
|||||||
-- Paradigm for regular noun
|
-- Paradigm for regular noun
|
||||||
regN : Str -> N ;
|
regN : Str -> N ;
|
||||||
|
|
||||||
|
mkPN = overload {
|
||||||
|
mkPN : Str -> PN = regPN ;
|
||||||
|
mkPN : Str -> Str -> PN = makePN ;
|
||||||
|
} ;
|
||||||
|
|
||||||
-- Paradigm for proper noun
|
-- Paradigm for proper noun
|
||||||
regPN : Str -> PN ;
|
regPN : Str -> PN ;
|
||||||
|
|
||||||
@@ -405,7 +410,7 @@ resource ParadigmsTur = open
|
|||||||
pln
|
pln
|
||||||
har ;
|
har ;
|
||||||
|
|
||||||
makePN sn sy = makeHarPN sn sy (getHarmony sn) ;
|
makePN sn sy = lin PN (makeHarPN sn sy (getHarmony sn)) ;
|
||||||
|
|
||||||
linkNoun n1 n2 lt ct =
|
linkNoun n1 n2 lt ct =
|
||||||
let n1sn = n1.s ! Sg ! Nom ;--tere
|
let n1sn = n1.s ! Sg ! Nom ;--tere
|
||||||
|
|||||||
Reference in New Issue
Block a user