diff --git a/src/latin/CatLat.gf b/src/latin/CatLat.gf index 273a0d607..5fe626a66 100644 --- a/src/latin/CatLat.gf +++ b/src/latin/CatLat.gf @@ -83,7 +83,7 @@ concrete CatLat of Cat = CommonX-[Adv] ** open ResLat, ParamX, Prelude in { N = Noun ; N2 = Noun ** { c : Prep } ; N3 = Noun ** { c : Prep ; c2 : Prep } ; - PN = Noun ; + PN = { s : Case => Str ; n : Number ; g : Gender } ; A2 = Adjective ** { c : Prep} ; linref diff --git a/src/latin/LexiconLat.gf b/src/latin/LexiconLat.gf index 53bccb51c..644756ba0 100644 --- a/src/latin/LexiconLat.gf +++ b/src/latin/LexiconLat.gf @@ -154,7 +154,7 @@ lin open_V2 = mkV2 (mkV "aperire") ; -- aperio, aperui, apertum 4 (Langenscheidts) paint_V2A = mkV2A (mkV "pingere" "pingo" "pinxi" "pictum" ) Acc_Prep ; -- pingo, pinxi, pictum 3 (Langenscheidts) paper_N = mkN "charta" ; -- -ae f. (http://la.wikipedia.org/wiki/Charta / Pons) - paris_PN = mkPN (mkN "Lutetia") ; -- -ae f. (http://la.wikipedia.org/wiki/Lutetia) + paris_PN = mkPN (mkN "Lutetia") singular ; -- -ae f. (http://la.wikipedia.org/wiki/Lutetia) peace_N = mkN "pax" "pacis" feminine ; -- pacis f. (Langenscheidts) pen_N = mkN "stilus" ; -- -i m. (Langenscheidts) planet_N = mkN "planeta" ; -- -ae m. (http://la.wikipedia.org/wiki/Planeta) @@ -384,7 +384,7 @@ lin rule_N = mkN "regula" ; -- -ae f. (Langenscheidts) -- added 4/6/2007 - john_PN = mkPN (mkN "Iohannes") ; -- (http://en.wikipedia.org/wiki/John_(given_name)) + john_PN = mkPN (mkN "Iohannes") singular ; -- (http://en.wikipedia.org/wiki/John_(given_name)) question_N = mkN "rogatio" "rogationis" feminine; -- -onis f. (Langenscheidts) ready_A = mkA "paratus" ; -- 3 (Langenscheidts) reason_N = mkN "causa" ; -- -ae f. (Langenscheidts) diff --git a/src/latin/NounLat.gf b/src/latin/NounLat.gf index ec17ec69a..fa521d109 100644 --- a/src/latin/NounLat.gf +++ b/src/latin/NounLat.gf @@ -16,16 +16,14 @@ concrete NounLat of Noun = CatLat ** open ResLat, Prelude, ConjunctionLat in { -- UsePN : PN -> NP ; -- John UsePN pn = - lin NP - { - s = pn.s ! Sg ; - g = pn.g ; - n = Sg ; - p = P3 ; - adv = "" ; - preap, postap = { s = \\_ => "" } ; - det = { s,sp = \\_,_ => "" ; n = Sg } - } ; + pn ** + { + s = \\_ => pn.s ; + p = P3 ; + adv = "" ; + preap, postap = { s = \\_ => "" } ; + det = { s,sp = \\_,_ => "" ; n = Sg } + } ; -- UsePron : Pron -> NP ; -- he UsePron p = diff --git a/src/latin/ParadigmsLat.gf b/src/latin/ParadigmsLat.gf index 38f396324..360789ab9 100644 --- a/src/latin/ParadigmsLat.gf +++ b/src/latin/ParadigmsLat.gf @@ -128,7 +128,7 @@ oper -- } ; -- To be implemented, just place holders - mkPN : N -> PN = \n -> lin PN n ; + mkPN : N -> Number -> PN = \noun,num -> lin PN (noun ** { s = noun.s ! num ; n = num } ) ; mkN2 : N -> Prep -> N2 = \n,p -> lin N2 ( n ** { c = p } ); mkN3 : N -> Prep -> Prep -> N3 = \n,p1,p2 -> lin N3 ( n **{ c = p1 ; c2 = p2 } ) ; mkV2S : V -> Prep -> V2S = \v,p -> lin V2S ( v ** { c = p } ) ; diff --git a/src/latin/SymbolLat.gf b/src/latin/SymbolLat.gf index 92654d642..7ef5d7904 100644 --- a/src/latin/SymbolLat.gf +++ b/src/latin/SymbolLat.gf @@ -3,10 +3,10 @@ concrete SymbolLat of Symbol = CatLat ** open Prelude, ResLat, ParadigmsLat, TenseX in { lin - SymbPN i = {s = \\n,c => i.s ; g = Neutr} ; --- c - IntPN i = {s = \\n,c => i.s ; g = Neutr} ; --- c - FloatPN i = {s = \\n,c => i.s ; g = Neutr} ; --- c - NumPN i = {s = \\n,c => i.s ! Neutr ! c; g = Neutr} ; --- c + SymbPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c + IntPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c + FloatPN i = {s = \\c => i.s ; g = Neutr ; n = Sg } ; --- c + NumPN i = {s = \\c => i.s ! Neutr ! c; g = Neutr ; n = Pl } ; --- c CNIntNP cn i = { s = \\c => (cn.s ! Sg ! Nom ++ i.s) ; g = cn.g ;