From b6881e1521228786e211a1f6d819ea0b48b1f86d Mon Sep 17 00:00:00 2001 From: aarne Date: Tue, 17 Jun 2014 15:45:57 +0000 Subject: [PATCH] ParadigmsFin.foreignPN, to deal with foreign names --- lib/src/finnish/ParadigmsFin.gf | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/src/finnish/ParadigmsFin.gf b/lib/src/finnish/ParadigmsFin.gf index 9d4f25008..e2e2c25fb 100644 --- a/lib/src/finnish/ParadigmsFin.gf +++ b/lib/src/finnish/ParadigmsFin.gf @@ -155,6 +155,10 @@ oper mkPN : N -> PN -- any noun made into name } ; +-- A special function for foreign names: no grade alternation, no final aspiration. + + foreignPN : Str -> PN ; -- Dieppe-Dieppen + --2 Adjectives -- Non-comparison one-place adjectives are just like nouns. @@ -605,6 +609,16 @@ mkVS = overload { mkPN_1 : Str -> PN = \s -> lin PN (snoun2spn (mk1N s)) ; + foreignPN : Str -> PN = \s -> (lin PN (snoun2spn (nforms2snoun (noun s)))) where { + noun : Str -> NForms = \s -> case s of { + _ + "i" => dPaatti s (s + "n") ; + _ + "e" => dNukke s (s + "n") ; + _ + ("a" | "o" | "u" | "y" | "ä" | "ö" | "ü") => dUkko s (s + "n") ; + _ => dUnix s + } + } ; + + -- adjectives mkA = overload {