mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-24 18:28:55 -06:00
spaces before semicolons in ParadigmsPol to help synopsis generation
This commit is contained in:
@@ -34,53 +34,53 @@
|
|||||||
CatPol
|
CatPol
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
flags coding=utf8;
|
flags coding=utf8 ;
|
||||||
|
|
||||||
|
|
||||||
oper Gender = MorphoPol.Gender;
|
oper Gender = MorphoPol.Gender ;
|
||||||
Case = MorphoPol.Case;
|
Case = MorphoPol.Case ;
|
||||||
Number = MorphoPol.Number;
|
Number = MorphoPol.Number ;
|
||||||
Animacy = MorphoPol.Animacy;
|
Animacy = MorphoPol.Animacy ;
|
||||||
Aspect = MorphoPol.Aspect;
|
Aspect = MorphoPol.Aspect ;
|
||||||
-- Voice = MorphoPol.Voice;
|
-- Voice = MorphoPol.Voice ;
|
||||||
-- Tense = Tense;
|
-- Tense = Tense ;
|
||||||
Bool = Prelude.Bool;
|
Bool = Prelude.Bool ;
|
||||||
|
|
||||||
|
|
||||||
-- Used abbreviations
|
-- Used abbreviations
|
||||||
|
|
||||||
masculineA = Masc Animate;
|
masculineA = Masc Animate ;
|
||||||
masculineI = Masc Inanimate;
|
masculineI = Masc Inanimate ;
|
||||||
masculineP = Masc Personal;
|
masculineP = Masc Personal ;
|
||||||
feminine = Fem;
|
feminine = Fem ;
|
||||||
neuter = Neut;
|
neuter = Neut ;
|
||||||
nominative = Nom;
|
nominative = Nom ;
|
||||||
genitive = Gen;
|
genitive = Gen ;
|
||||||
dative = Dat;
|
dative = Dat ;
|
||||||
accusative = Acc;
|
accusative = Acc ;
|
||||||
instrumental = Instr; -- new, is like instrumental in russian
|
instrumental = Instr ; -- new, is like instrumental in russian
|
||||||
locative = Loc; -- new, is like prepositional in russian
|
locative = Loc ; -- new, is like prepositional in russian
|
||||||
vocative = VocP;
|
vocative = VocP ;
|
||||||
singular = Sg;
|
singular = Sg ;
|
||||||
plural = Pl;
|
plural = Pl ;
|
||||||
animate = Animate;
|
animate = Animate ;
|
||||||
inanimate = Inanimate;
|
inanimate = Inanimate ;
|
||||||
personal = Personal;
|
personal = Personal ;
|
||||||
|
|
||||||
true = True;
|
true = True ;
|
||||||
false = False;
|
false = False ;
|
||||||
|
|
||||||
--1 Nouns
|
--1 Nouns
|
||||||
|
|
||||||
-- Parameters --------
|
-- Parameters --------
|
||||||
|
|
||||||
Gender : Type;
|
Gender : Type ;
|
||||||
|
|
||||||
masculineP : Gender; -- personal
|
masculineP : Gender ; -- personal
|
||||||
masculineA : Gender; -- animate
|
masculineA : Gender ; -- animate
|
||||||
masculineI : Gender; -- inanimate
|
masculineI : Gender ; -- inanimate
|
||||||
feminine : Gender;
|
feminine : Gender ;
|
||||||
neuter : Gender;
|
neuter : Gender ;
|
||||||
|
|
||||||
-- In Polish there are as in German 3 Genders: masculine, feminine and neuter.
|
-- In Polish there are as in German 3 Genders: masculine, feminine and neuter.
|
||||||
-- But !!! in masculine declension we distinguish between:
|
-- But !!! in masculine declension we distinguish between:
|
||||||
@@ -95,22 +95,22 @@
|
|||||||
|
|
||||||
|
|
||||||
-- Animacy is only for masculine Nouns.
|
-- Animacy is only for masculine Nouns.
|
||||||
Animacy: Type;
|
Animacy: Type ;
|
||||||
|
|
||||||
animate: Animacy;
|
animate: Animacy ;
|
||||||
inanimate: Animacy;
|
inanimate: Animacy ;
|
||||||
personal : Animacy;
|
personal : Animacy ;
|
||||||
|
|
||||||
|
|
||||||
Case : Type;
|
Case : Type ;
|
||||||
|
|
||||||
nominative : Case;
|
nominative : Case ;
|
||||||
genitive : Case;
|
genitive : Case ;
|
||||||
dative : Case;
|
dative : Case ;
|
||||||
accusative : Case;
|
accusative : Case ;
|
||||||
instrumental : Case;
|
instrumental : Case ;
|
||||||
locative : Case;
|
locative : Case ;
|
||||||
vocative : Case;
|
vocative : Case ;
|
||||||
|
|
||||||
-- To abstract over case names, I defined seven cases.
|
-- To abstract over case names, I defined seven cases.
|
||||||
-- The seventh case vocative is like in english the phrase
|
-- The seventh case vocative is like in english the phrase
|
||||||
@@ -123,23 +123,23 @@
|
|||||||
|
|
||||||
|
|
||||||
-- To abstract over number names, I define the following.
|
-- To abstract over number names, I define the following.
|
||||||
Number : Type;
|
Number : Type ;
|
||||||
|
|
||||||
singular : Number;
|
singular : Number ;
|
||||||
plural : Number;
|
plural : Number ;
|
||||||
|
|
||||||
|
|
||||||
--1 Paradigms
|
--1 Paradigms
|
||||||
|
|
||||||
-- Best case is for indeclinable nouns. They are: "alibi", "boa", "emu", "jury", "kakao", "menu", "zebu".
|
-- Best case is for indeclinable nouns. They are: "alibi", "boa", "emu", "jury", "kakao", "menu", "zebu".
|
||||||
|
|
||||||
mkIndeclinableNoun: Str -> Gender -> N; --function declaration
|
mkIndeclinableNoun: Str -> Gender -> N ; --function declaration
|
||||||
|
|
||||||
mkIndeclinableNoun = \str, g -> -- function definition
|
mkIndeclinableNoun = \str, g -> -- function definition
|
||||||
{
|
{
|
||||||
s = table { SF _ _ => str };
|
s = table { SF _ _ => str } ;
|
||||||
g = g
|
g = g
|
||||||
} ** {lock_N = <>};
|
} ** {lock_N = <>} ;
|
||||||
|
|
||||||
|
|
||||||
-- Worst case gives many forms.
|
-- Worst case gives many forms.
|
||||||
@@ -168,457 +168,457 @@
|
|||||||
|
|
||||||
---------- Patterns for feminine nouns ----------
|
---------- Patterns for feminine nouns ----------
|
||||||
|
|
||||||
nKapiel : Str -> N; -- feminine, subject ending in "-l"
|
nKapiel : Str -> N ; -- feminine, subject ending in "-l"
|
||||||
nKapiel = \s -> l_End_F_1 s ** {lock_N = <>};
|
nKapiel = \s -> l_End_F_1 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nLodz : Str -> N; -- feminine, subject ending in "-dź"
|
nLodz : Str -> N ; -- feminine, subject ending in "-dź"
|
||||||
nLodz = \x -> dzx_End_VA1_CAL_F x ** {lock_N = <>};
|
nLodz = \x -> dzx_End_VA1_CAL_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSul : Str -> N; -- feminine, subject ending in "-l"
|
nSul : Str -> N ; -- feminine, subject ending in "-l"
|
||||||
nSul = \x -> l_End_VA1_F x ** {lock_N = <>};
|
nSul = \x -> l_End_VA1_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKonew : Str -> N; -- feminine, subject ending in "-w"
|
nKonew : Str -> N ; -- feminine, subject ending in "-w"
|
||||||
nKonew = \s -> w_End_FleetingEminus_F s ** {lock_N = <>};
|
nKonew = \s -> w_End_FleetingEminus_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWies : Str -> N; -- feminine, subject ending in "-ś"
|
nWies : Str -> N ; -- feminine, subject ending in "-ś"
|
||||||
nWies = \x -> sx_End_CAL_FleetingIEminus_F x ** {lock_N = <>};
|
nWies = \x -> sx_End_CAL_FleetingIEminus_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDlon : Str -> N; -- feminine, subject ending in "-ń"
|
nDlon : Str -> N ; -- feminine, subject ending in "-ń"
|
||||||
nDlon = \x -> nx_End_CAL_F x ** {lock_N = <>};
|
nDlon = \x -> nx_End_CAL_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSiec : Str -> N; -- feminine, subject ending in "-ć" (sieć),"-ść" (miłość)
|
nSiec : Str -> N ; -- feminine, subject ending in "-ć" (sieć),"-ść" (miłość)
|
||||||
nSiec = \x -> cx_End_CAL_F_1 x ** {lock_N = <>};
|
nSiec = \x -> cx_End_CAL_F_1 x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDrzwi : Str -> N; -- drzwi, wnętrzności, usta
|
nDrzwi : Str -> N ; -- drzwi, wnętrzności, usta
|
||||||
nDrzwi = \x -> onlyPlNoun x ** {lock_N = <>};
|
nDrzwi = \x -> onlyPlNoun x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKosc : Str -> N; -- feminine, subject ending in "-ść"(kość), "-ć" (nić),
|
nKosc : Str -> N ; -- feminine, subject ending in "-ść"(kość), "-ć" (nić),
|
||||||
nKosc = \x -> cx_End_CAL_F_2 x ** {lock_N = <>};
|
nKosc = \x -> cx_End_CAL_F_2 x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nNoc : Str -> N; -- feminine, subject ending in "-c", "-cz", "-rz", "-ż"
|
nNoc : Str -> N ; -- feminine, subject ending in "-c", "-cz", "-rz", "-ż"
|
||||||
nNoc = \s -> hardened_End_F_1 s ** {lock_N = <>};
|
nNoc = \s -> hardened_End_F_1 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWesz : Str -> N; -- feminine, subject ending in "-sz"
|
nWesz : Str -> N ; -- feminine, subject ending in "-sz"
|
||||||
nWesz = \s -> sz_End_FleetingEminus_F s ** {lock_N = <>};
|
nWesz = \s -> sz_End_FleetingEminus_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKrolowa : Str -> N; -- feminine, subject ending in "-wa", but also for "księżna"
|
nKrolowa : Str -> N ; -- feminine, subject ending in "-wa", but also for "księżna"
|
||||||
nKrolowa = \s -> wa_na_End_F s ** {lock_N = <>};
|
nKrolowa = \s -> wa_na_End_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nReka : Str -> N; -- feminine "ręka", irregularly noun
|
nReka : Str -> N ; -- feminine "ręka", irregularly noun
|
||||||
nReka = \x -> k_End_Unregulary_VA3_CA_F x ** {lock_N = <>};
|
nReka = \x -> k_End_Unregulary_VA3_CA_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nApteka : Str -> N; -- feminine, subject ending in "-k", -"g", consonant alternation k:c, g:dz
|
nApteka : Str -> N ; -- feminine, subject ending in "-k", -"g", consonant alternation k:c, g:dz
|
||||||
nApteka = \s -> g_k_End_CA_F s ** {lock_N = <>};
|
nApteka = \s -> g_k_End_CA_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDroga : Str -> N; -- feminine, subject ending in "g", consonant alternation d:dz, vowel alternation o:ó
|
nDroga : Str -> N ; -- feminine, subject ending in "g", consonant alternation d:dz, vowel alternation o:ó
|
||||||
nDroga = \s -> g_End_VA1_CA_F s ** {lock_N = <>};
|
nDroga = \s -> g_End_VA1_CA_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMatka : Str -> N; -- feminine, subject ending in -k,consonant alternation k:c, fleeting e
|
nMatka : Str -> N ; -- feminine, subject ending in -k,consonant alternation k:c, fleeting e
|
||||||
nMatka = \s -> k_End_CA_FleetingEplus_F s ** {lock_N = <>};
|
nMatka = \s -> k_End_CA_FleetingEplus_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nZiemia : Str -> N; -- feminine, subject ending in "-ia"
|
nZiemia : Str -> N ; -- feminine, subject ending in "-ia"
|
||||||
nZiemia = \s -> ia_End_F_1 s ** {lock_N = <>};
|
nZiemia = \s -> ia_End_F_1 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nFala : Str -> N; -- feminine, subject ending in "-l"
|
nFala : Str -> N ; -- feminine, subject ending in "-l"
|
||||||
nFala = \s -> l_End_F_2 s ** {lock_N = <>};
|
nFala = \s -> l_End_F_2 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nLilia : Str -> N; -- feminine, subject ending in "-ia"
|
nLilia : Str -> N ; -- feminine, subject ending in "-ia"
|
||||||
nLilia = \s -> ia_End_F_2 s ** {lock_N = <>};
|
nLilia = \s -> ia_End_F_2 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKobieta : Str -> N; -- feminine, subject ending in "-t"
|
nKobieta : Str -> N ; -- feminine, subject ending in "-t"
|
||||||
nKobieta = \s -> hard_End_CAL_F s ** {lock_N = <>};
|
nKobieta = \s -> hard_End_CAL_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nLiczba : Str -> N; -- feminine, subject ending in "-b", "-p", "-n"
|
nLiczba : Str -> N ; -- feminine, subject ending in "-b", "-p", "-n"
|
||||||
nLiczba = \s -> hard_End_CL_F s ** {lock_N = <>};
|
nLiczba = \s -> hard_End_CL_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSila : Str -> N; -- feminine, subject ending in "-ł", "-r"
|
nSila : Str -> N ; -- feminine, subject ending in "-ł", "-r"
|
||||||
nSila = \s -> hard_End_CA_F s ** {lock_N = <>};
|
nSila = \s -> hard_End_CA_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDoba : Str -> N; -- feminine, subject ending in "-b", "-p"
|
nDoba : Str -> N ; -- feminine, subject ending in "-b", "-p"
|
||||||
nDoba = \s -> hard_End_VA1_CL_F s ** {lock_N = <>};
|
nDoba = \s -> hard_End_VA1_CL_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWoda : Str -> N; -- feminine, subject ending in "-d"
|
nWoda : Str -> N ; -- feminine, subject ending in "-d"
|
||||||
nWoda = \s -> hard_End_VA1_CAL_F s ** {lock_N = <>};
|
nWoda = \s -> hard_End_VA1_CAL_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSzkola : Str -> N; -- feminine, subject ending in "-oła", "-ra"
|
nSzkola : Str -> N ; -- feminine, subject ending in "-oła", "-ra"
|
||||||
nSzkola = \s -> hard_End_VA1_CA_F s ** {lock_N = <>};
|
nSzkola = \s -> hard_End_VA1_CA_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWojna : Str -> N; -- feminine, subject ending in two consonants: jn, łz, łn, ćm,żw
|
nWojna : Str -> N ; -- feminine, subject ending in two consonants: jn, łz, łn, ćm,żw
|
||||||
nWojna = \s -> hard_End_CL_FleetingEplus_F s ** {lock_N = <>};
|
nWojna = \s -> hard_End_CL_FleetingEplus_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWiosna : Str -> N; -- feminine, subject ending in two consonants: sn
|
nWiosna : Str -> N ; -- feminine, subject ending in two consonants: sn
|
||||||
nWiosna = \s -> sn_End_CAL_FleetingIEplus_F s ** {lock_N = <>};
|
nWiosna = \s -> sn_End_CAL_FleetingIEplus_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMgla : Str -> N; -- feminine, subject ending in "-gł"
|
nMgla : Str -> N ; -- feminine, subject ending in "-gł"
|
||||||
nMgla = \x -> hard_l_End_CA_FleetingIEplus_F x ** {lock_N = <>};
|
nMgla = \x -> hard_l_End_CA_FleetingIEplus_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nGwiazda : Str -> N; -- feminine, subject ending in "-zd"
|
nGwiazda : Str -> N ; -- feminine, subject ending in "-zd"
|
||||||
nGwiazda = \s -> zd_st_End_VA2_CAL_F s ** {lock_N = <>};
|
nGwiazda = \s -> zd_st_End_VA2_CAL_F s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nUlica : Str -> N; -- feminine, subject ending mainly in "-c", but also in "-ż", "-rz", "-dz"
|
nUlica : Str -> N ; -- feminine, subject ending mainly in "-c", but also in "-ż", "-rz", "-dz"
|
||||||
nUlica = \s -> hardened_End_F_2 s ** {lock_N = <>};
|
nUlica = \s -> hardened_End_F_2 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nOwca : Str -> N; -- feminine, subject ending in "-c"
|
nOwca : Str -> N ; -- feminine, subject ending in "-c"
|
||||||
nOwca = \x -> c_End_FleetingIEplus_F x ** {lock_N = <>};
|
nOwca = \x -> c_End_FleetingIEplus_F x ** {lock_N = <>} ;
|
||||||
|
|
||||||
|
|
||||||
-------- Patterns for neuter nouns ----------
|
-------- Patterns for neuter nouns ----------
|
||||||
|
|
||||||
|
|
||||||
nDanie : Str -> N; -- neuter, subject ending in "-ni"
|
nDanie : Str -> N ; -- neuter, subject ending in "-ni"
|
||||||
nDanie = \s -> ci_ni_week_End_CA_N s ** {lock_N = <>};
|
nDanie = \s -> ci_ni_week_End_CA_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSerce : Str -> N; -- neuter, subject ending in a hardened consonant "-c", "-rz"
|
nSerce : Str -> N ; -- neuter, subject ending in a hardened consonant "-c", "-rz"
|
||||||
nSerce = \s -> hardened_End_N s ** {lock_N = <>};
|
nSerce = \s -> hardened_End_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nNasienie : Str -> N; -- neuter, subject ending in "-ni" (only for "nasienie")
|
nNasienie : Str -> N ; -- neuter, subject ending in "-ni" (only for "nasienie")
|
||||||
nNasienie = \x -> ni_End_VA2_N x ** {lock_N = <>};
|
nNasienie = \x -> ni_End_VA2_N x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMorze : Str -> N; -- neuter, subject ending in "-rz", "-ż"
|
nMorze : Str -> N ; -- neuter, subject ending in "-rz", "-ż"
|
||||||
nMorze = \x -> rz_zx_End_VA1_N x ** {lock_N = <>};
|
nMorze = \x -> rz_zx_End_VA1_N x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nImie : Str -> N; -- neuter, subject ending in "-ę"
|
nImie : Str -> N ; -- neuter, subject ending in "-ę"
|
||||||
nImie = \x -> ex_End_VA2_N x ** {lock_N = <>};
|
nImie = \x -> ex_End_VA2_N x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nCiele : Str -> N; -- neuter, subject ending in "-ę"
|
nCiele : Str -> N ; -- neuter, subject ending in "-ę"
|
||||||
nCiele = \s -> ex_End_VA3_N s ** {lock_N = <>};
|
nCiele = \s -> ex_End_VA3_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nUdo : Str -> N; -- neuter, subject ending in hard consonant + "o"
|
nUdo : Str -> N ; -- neuter, subject ending in hard consonant + "o"
|
||||||
nUdo = \s -> hard_End_CAL_N s ** {lock_N = <>};
|
nUdo = \s -> hard_End_CAL_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPiwo : Str -> N; -- neuter, subject ending in a hard consonant + "o"
|
nPiwo : Str -> N ; -- neuter, subject ending in a hard consonant + "o"
|
||||||
nPiwo = \s -> hard_End_CL_N s ** {lock_N = <>};
|
nPiwo = \s -> hard_End_CL_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nZero : Str -> N; -- neuter, subject ending in "-r"
|
nZero : Str -> N ; -- neuter, subject ending in "-r"
|
||||||
nZero = \s -> r_End_CA_N s ** {lock_N = <>};
|
nZero = \s -> r_End_CA_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nNiebo : Str -> N; -- neuter, declension for "niebo"
|
nNiebo : Str -> N ; -- neuter, declension for "niebo"
|
||||||
nNiebo = \x -> niebo_Unregulary_N x ** {lock_N = <>};
|
nNiebo = \x -> niebo_Unregulary_N x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nTlo : Str -> N; -- neuter, subject ending in "-ło"
|
nTlo : Str -> N ; -- neuter, subject ending in "-ło"
|
||||||
nTlo = \s -> lx_End_CA_FleetingEplus_N s ** {lock_N = <>};
|
nTlo = \s -> lx_End_CA_FleetingEplus_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nZebro : Str -> N; -- neuter, subject ending in "-r"
|
nZebro : Str -> N ; -- neuter, subject ending in "-r"
|
||||||
nZebro = \s -> hard_End_CA_FleetingEplus_N s ** {lock_N = <>};
|
nZebro = \s -> hard_End_CA_FleetingEplus_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nOkno : Str -> N; -- neuter, subject ending in "-n"
|
nOkno : Str -> N ; -- neuter, subject ending in "-n"
|
||||||
nOkno = \s -> n_End_CL_FleetingIEplus_N s ** {lock_N = <>};
|
nOkno = \s -> n_End_CL_FleetingIEplus_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nGniazdo : Str -> N; -- neuter, subject ending in "-zd", "-st"
|
nGniazdo : Str -> N ; -- neuter, subject ending in "-zd", "-st"
|
||||||
nGniazdo = \s -> hard_End_VA_CAL_N s ** {lock_N = <>};
|
nGniazdo = \s -> hard_End_VA_CAL_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWojsko : Str -> N; -- neuter, subject ending in "-k"
|
nWojsko : Str -> N ; -- neuter, subject ending in "-k"
|
||||||
nWojsko = \s -> k_End_CL_N s ** {lock_N = <>};
|
nWojsko = \s -> k_End_CL_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nJajo : Str -> N; -- neuter, subject ending in "-j"
|
nJajo : Str -> N ; -- neuter, subject ending in "-j"
|
||||||
nJajo = \s -> j_End_N s ** {lock_N = <>};
|
nJajo = \s -> j_End_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nJablko : Str -> N; -- neuter, subject ending in "-k"
|
nJablko : Str -> N ; -- neuter, subject ending in "-k"
|
||||||
nJablko = \s -> k_End_CL_FleetingEplus_N s ** {lock_N = <>};
|
nJablko = \s -> k_End_CL_FleetingEplus_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nStudio : Str -> N; -- neuter, subject ending in "-n"
|
nStudio : Str -> N ; -- neuter, subject ending in "-n"
|
||||||
nStudio = \s -> o_End_N s ** {lock_N = <>};
|
nStudio = \s -> o_End_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDziecko : Str -> N; -- neuter, subject ending in "-n"
|
nDziecko : Str -> N ; -- neuter, subject ending in "-n"
|
||||||
nDziecko = \s -> k_End_CAL_N s ** {lock_N = <>};
|
nDziecko = \s -> k_End_CAL_N s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nUcho : Str -> N; -- neuter, subject ending in "-ch"
|
nUcho : Str -> N ; -- neuter, subject ending in "-ch"
|
||||||
nUcho = \x -> ch_End_Unregulary_CA_N x ** {lock_N = <>};
|
nUcho = \x -> ch_End_Unregulary_CA_N x ** {lock_N = <>} ;
|
||||||
|
|
||||||
nOko : Str -> N; -- neuter, subject ending in "-k"
|
nOko : Str -> N ; -- neuter, subject ending in "-k"
|
||||||
nOko = \x -> k_End_Unregulary_CAL_N x ** {lock_N = <>};
|
nOko = \x -> k_End_Unregulary_CAL_N x ** {lock_N = <>} ;
|
||||||
|
|
||||||
|
|
||||||
---- Patterns for personal masculine nouns ------
|
---- Patterns for personal masculine nouns ------
|
||||||
|
|
||||||
nFacet : Str -> N; -- masculine personal, subject ending in a hard consonant "-t", -"n", nom pl "-i"
|
nFacet : Str -> N ; -- masculine personal, subject ending in a hard consonant "-t", -"n", nom pl "-i"
|
||||||
nFacet = \s -> hard_End_CAL_MP_1 s ** {lock_N = <>};
|
nFacet = \s -> hard_End_CAL_MP_1 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nArab : Str -> N; -- masculine personal, subject ending in a hard consonant "-t", -"n", nom pl "-y"
|
nArab : Str -> N ; -- masculine personal, subject ending in a hard consonant "-t", -"n", nom pl "-y"
|
||||||
nArab = \s -> hard_End_CAL_MP_2 s ** {lock_N = <>};
|
nArab = \s -> hard_End_CAL_MP_2 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPrzyjaciel : Str -> N; -- masculine personal, subject ending in a hard consonant "-l"
|
nPrzyjaciel : Str -> N ; -- masculine personal, subject ending in a hard consonant "-l"
|
||||||
nPrzyjaciel = \s -> przyjaciel_VA1_VA2_CA_MP s ** {lock_N = <>};
|
nPrzyjaciel = \s -> przyjaciel_VA1_VA2_CA_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKowal : Str -> N; -- masculine personal, subject ending in a hard consonant "-l"
|
nKowal : Str -> N ; -- masculine personal, subject ending in a hard consonant "-l"
|
||||||
nKowal = \s -> l_End_MP s ** {lock_N = <>};
|
nKowal = \s -> l_End_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nLekarz : Str -> N; -- masculine personal ending in -rz, -ż, -cz, -sz (piekarz, lekarz, papież, tłumacz, piwosz)
|
nLekarz : Str -> N ; -- masculine personal ending in -rz, -ż, -cz, -sz (piekarz, lekarz, papież, tłumacz, piwosz)
|
||||||
nLekarz = \s -> hardened_End_MP s ** {lock_N = <>};
|
nLekarz = \s -> hardened_End_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKrol : Str -> N; -- masculine personal, subject ending in "-ul"
|
nKrol : Str -> N ; -- masculine personal, subject ending in "-ul"
|
||||||
nKrol = \s -> ul_End_MP s ** {lock_N = <>};
|
nKrol = \s -> ul_End_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMaz : Str -> N; -- masculine personal
|
nMaz : Str -> N ; -- masculine personal
|
||||||
nMaz = \s -> maz_MP s ** {lock_N = <>};
|
nMaz = \s -> maz_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWrog : Str -> N; -- masculine personal, subject ending in "-g"; only for "wróg"
|
nWrog : Str -> N ; -- masculine personal, subject ending in "-g" ; only for "wróg"
|
||||||
nWrog = \s -> wrog_VA1_CL_MP s ** {lock_N = <>};
|
nWrog = \s -> wrog_VA1_CL_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
-- nCzlowiek : Str -> N; -- masculine personal
|
-- nCzlowiek : Str -> N ; -- masculine personal
|
||||||
-- nCzlowiek = \s -> ul_End_MP s ** {lock_N = <>};
|
-- nCzlowiek = \s -> ul_End_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKsiadz : Str -> N; -- masculine personal
|
nKsiadz : Str -> N ; -- masculine personal
|
||||||
nKsiadz = \s -> ksiadz_VA3_CA_MP s ** {lock_N = <>};
|
nKsiadz = \s -> ksiadz_VA3_CA_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nOjciec : Str -> N; -- masculine personal for "ojciec"
|
nOjciec : Str -> N ; -- masculine personal for "ojciec"
|
||||||
nOjciec = \s -> ciec_End_CA_FleetingIEminus_MP s ** {lock_N = <>};
|
nOjciec = \s -> ciec_End_CA_FleetingIEminus_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nBrat : Str -> N; -- masculine personal
|
nBrat : Str -> N ; -- masculine personal
|
||||||
nBrat = \s -> hard_End_CAL_MP s ** {lock_N = <>};
|
nBrat = \s -> hard_End_CAL_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nBog : Str -> N; -- masculine personal
|
nBog : Str -> N ; -- masculine personal
|
||||||
nBog = \s -> bog_VA1_CAL_MP s ** {lock_N = <>};
|
nBog = \s -> bog_VA1_CAL_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nChlopiec : Str -> N; -- masculine personal
|
nChlopiec : Str -> N ; -- masculine personal
|
||||||
nChlopiec = \s -> iec_End_CA_FleetingIEminus_MP s ** {lock_N = <>};
|
nChlopiec = \s -> iec_End_CA_FleetingIEminus_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMezczyzna : Str -> N; -- masculine personal
|
nMezczyzna : Str -> N ; -- masculine personal
|
||||||
nMezczyzna = \s -> zna_End_CAL_MP s ** {lock_N = <>};
|
nMezczyzna = \s -> zna_End_CAL_MP s ** {lock_N = <>} ;
|
||||||
|
|
||||||
|
|
||||||
------------------- Patterns for animate masculine nouns -------
|
------------------- Patterns for animate masculine nouns -------
|
||||||
|
|
||||||
|
|
||||||
nKon : Str -> N; -- masculine animate, for "koń"
|
nKon : Str -> N ; -- masculine animate, for "koń"
|
||||||
nKon = \s -> kon_CAL_MA s ** {lock_N = <>};
|
nKon = \s -> kon_CAL_MA s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWaz : Str -> N; -- masculine animate, for "wąż"
|
nWaz : Str -> N ; -- masculine animate, for "wąż"
|
||||||
nWaz = \s -> waz_VA3_MA s ** {lock_N = <>};
|
nWaz = \s -> waz_VA3_MA s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPtak : Str -> N; -- masculine animate, subject ending in "-k"
|
nPtak : Str -> N ; -- masculine animate, subject ending in "-k"
|
||||||
nPtak = \s -> k_End_CL_MA s ** {lock_N = <>};
|
nPtak = \s -> k_End_CL_MA s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKot : Str -> N; -- masculine animate, for "kot"
|
nKot : Str -> N ; -- masculine animate, for "kot"
|
||||||
nKot = \s -> kot_CAL_MA s ** {lock_N = <>};
|
nKot = \s -> kot_CAL_MA s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPies : Str -> N; -- masculine animate, for "pies"
|
nPies : Str -> N ; -- masculine animate, for "pies"
|
||||||
nPies = \s -> pies_CL_FleetingIEminus_MA s ** {lock_N = <>};
|
nPies = \s -> pies_CL_FleetingIEminus_MA s ** {lock_N = <>} ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
------------------ Patterns for inanimate masculine nouns -----
|
------------------ Patterns for inanimate masculine nouns -----
|
||||||
|
|
||||||
nBat : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nBat : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nBat = \s -> vowel_hard_CAL_MI s ** {lock_N = <>};
|
nBat = \s -> vowel_hard_CAL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nChleb : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nChleb : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nChleb = \s -> vowel_hard_CL_MI s ** {lock_N = <>};
|
nChleb = \s -> vowel_hard_CL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSer : Str -> N; -- masculine inanimate, subject ending in "-r"
|
nSer : Str -> N ; -- masculine inanimate, subject ending in "-r"
|
||||||
nSer = \s -> r_End_CA_MI s ** {lock_N = <>};
|
nSer = \s -> r_End_CA_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nZab : Str -> N; -- masculine inanimate, subject ending in "-ąb"
|
nZab : Str -> N ; -- masculine inanimate, subject ending in "-ąb"
|
||||||
nZab = \s -> ab_End_VA3_CL_MI s ** {lock_N = <>};
|
nZab = \s -> ab_End_VA3_CL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKosciol : Str -> N; -- masculine inanimate, for "kosciół"
|
nKosciol : Str -> N ; -- masculine inanimate, for "kosciół"
|
||||||
nKosciol = \s -> kosciol_VA1_VA2_CA_MI s ** {lock_N = <>};
|
nKosciol = \s -> kosciol_VA1_VA2_CA_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nCien : Str -> N; -- masculine inanimate, subject ending in a week consonant
|
nCien : Str -> N ; -- masculine inanimate, subject ending in a week consonant
|
||||||
nCien = \s -> week_End_CAL_MI s ** {lock_N = <>};
|
nCien = \s -> week_End_CAL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPien : Str -> N; -- masculine inanimate, subject ending in a week consonant
|
nPien : Str -> N ; -- masculine inanimate, subject ending in a week consonant
|
||||||
nPien = \s -> week_End_CAL_FleetingIEminus_MI s ** {lock_N = <>};
|
nPien = \s -> week_End_CAL_FleetingIEminus_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nLisc : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nLisc : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nLisc = \s -> lisc_CAL_MI s ** {lock_N = <>};
|
nLisc = \s -> lisc_CAL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKoc : Str -> N; -- masculine inanimate, subject ending in a hardened consonant
|
nKoc : Str -> N ; -- masculine inanimate, subject ending in a hardened consonant
|
||||||
nKoc = \s -> hardened_End_MI_1 s ** {lock_N = <>};
|
nKoc = \s -> hardened_End_MI_1 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWiersz : Str -> N; -- masculine inanimate, subject ending in a hardened consonant
|
nWiersz : Str -> N ; -- masculine inanimate, subject ending in a hardened consonant
|
||||||
nWiersz = \s -> hardened_End_MI_2 s ** {lock_N = <>};
|
nWiersz = \s -> hardened_End_MI_2 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDzien : Str -> N; -- masculine inanimate, for "dzień"
|
nDzien : Str -> N ; -- masculine inanimate, for "dzień"
|
||||||
nDzien = \s -> dzien_MI s ** {lock_N = <>};
|
nDzien = \s -> dzien_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKajak : Str -> N; -- masculine inanimate, subject ending in -g or -k
|
nKajak : Str -> N ; -- masculine inanimate, subject ending in -g or -k
|
||||||
nKajak = \s -> g_k_End_CL_MI_1 s ** {lock_N = <>};
|
nKajak = \s -> g_k_End_CL_MI_1 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMlotek : Str -> N; -- masculine inanimate, subject ending in -ek
|
nMlotek : Str -> N ; -- masculine inanimate, subject ending in -ek
|
||||||
nMlotek = \s -> k_End_CL_FleetingEminus_MI s ** {lock_N = <>};
|
nMlotek = \s -> k_End_CL_FleetingEminus_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nMiech : Str -> N; -- masculine inanimate, subject ending in -ch
|
nMiech : Str -> N ; -- masculine inanimate, subject ending in -ch
|
||||||
nMiech = \s -> ch_End_MI s ** {lock_N = <>};
|
nMiech = \s -> ch_End_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nSad : Str -> N; -- masculine inanimate, subject ending in a hard consonant
|
nSad : Str -> N ; -- masculine inanimate, subject ending in a hard consonant
|
||||||
nSad = \s -> hard_End_CAL_MI s ** {lock_N = <>};
|
nSad = \s -> hard_End_CAL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDym : Str -> N; -- masculine inanimate, subject ending in a hard consonant
|
nDym : Str -> N ; -- masculine inanimate, subject ending in a hard consonant
|
||||||
nDym = \s -> hard_End_CL_MI s ** {lock_N = <>};
|
nDym = \s -> hard_End_CL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWal : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nWal : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nWal = \s -> hard_End_CA_MI s ** {lock_N = <>};
|
nWal = \s -> hard_End_CA_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDol : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nDol : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nDol = \s -> hard_End_VA1_CA_MI s ** {lock_N = <>};
|
nDol = \s -> hard_End_VA1_CA_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nOgrod : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nOgrod : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nOgrod = \s -> hard_End_VA1_CAL_MI s ** {lock_N = <>};
|
nOgrod = \s -> hard_End_VA1_CAL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nKwiat : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nKwiat : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nKwiat = \s -> hard_End_VA2_CAL_MI s ** {lock_N = <>};
|
nKwiat = \s -> hard_End_VA2_CAL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nLas : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nLas : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nLas = \s -> hard_End_VA2_CL_MI s ** {lock_N = <>};
|
nLas = \s -> hard_End_VA2_CL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nWiatr : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nWiatr : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nWiatr = \s -> wiatr_VA2_CA_MI s ** {lock_N = <>};
|
nWiatr = \s -> wiatr_VA2_CA_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPopiol : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant
|
nPopiol : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant
|
||||||
nPopiol = \s -> popiol_VA2_CA_MI s ** {lock_N = <>};
|
nPopiol = \s -> popiol_VA2_CA_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nPokoj : Str -> N; -- masculine inanimate, subject ending in -ój
|
nPokoj : Str -> N ; -- masculine inanimate, subject ending in -ój
|
||||||
nPokoj = \s -> onlySgNoun s ** {lock_N = <>};
|
nPokoj = \s -> onlySgNoun s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nGaj : Str -> N; -- masculine inanimate, subject ending in a vowel + hard consonant j
|
nGaj : Str -> N ; -- masculine inanimate, subject ending in a vowel + hard consonant j
|
||||||
nGaj = \s -> vowel_j_or_handened_End_MI s ** {lock_N = <>};
|
nGaj = \s -> vowel_j_or_handened_End_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nBrzeg : Str -> N; -- masculine inanimate, subject ending in -g or -k
|
nBrzeg : Str -> N ; -- masculine inanimate, subject ending in -g or -k
|
||||||
nBrzeg = \s -> g_k_End_CL_MI_2 s ** {lock_N = <>};
|
nBrzeg = \s -> g_k_End_CL_MI_2 s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nRok : Str -> Str -> N; -- masculine inanimate for "rok", form in pl irregular
|
nRok : Str -> Str -> N ; -- masculine inanimate for "rok", form in pl irregular
|
||||||
nRok = \s, t -> rok_UnregularyPl_CL_MI s t ** {lock_N = <>};
|
nRok = \s, t -> rok_UnregularyPl_CL_MI s t ** {lock_N = <>} ;
|
||||||
|
|
||||||
nProg : Str -> N; -- masculine inanimate, subject ending in -óg
|
nProg : Str -> N ; -- masculine inanimate, subject ending in -óg
|
||||||
nProg = \s -> ug_End_VA1_CL_MI s ** {lock_N = <>};
|
nProg = \s -> ug_End_VA1_CL_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nStatek : Str -> N; -- masculine inanimate, subject ending in -ek
|
nStatek : Str -> N ; -- masculine inanimate, subject ending in -ek
|
||||||
nStatek = \s -> k_End_CL_FleetingEmins_MI s ** {lock_N = <>};
|
nStatek = \s -> k_End_CL_FleetingEmins_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
nDom : Str -> N; -- masculine inanimate, subject ending in -ch and for dom
|
nDom : Str -> N ; -- masculine inanimate, subject ending in -ch and for dom
|
||||||
nDom = \s -> ch_End_dom_MI s ** {lock_N = <>};
|
nDom = \s -> ch_End_dom_MI s ** {lock_N = <>} ;
|
||||||
|
|
||||||
|
|
||||||
-- Nominative, Genetive, Dative, Accusative, Instrumental, Locative and Vocative;
|
-- Nominative, Genetive, Dative, Accusative, Instrumental, Locative and Vocative ;
|
||||||
-- corresponding seven plural forms and the gender.
|
-- corresponding seven plural forms and the gender.
|
||||||
|
|
||||||
mkN : (nomSg, genSg, datSg, accSg, instrSg, locSg, vocSg,
|
mkN : (nomSg, genSg, datSg, accSg, instrSg, locSg, vocSg,
|
||||||
nomPl, genPl, datPl, accPl, instrPl, locPl, vocPl: Str) -> Gender -> N;
|
nomPl, genPl, datPl, accPl, instrPl, locPl, vocPl: Str) -> Gender -> N ;
|
||||||
|
|
||||||
|
|
||||||
mkN = \nomSg, genSg, datSg, accSg, instrSg, locSg, vocSg,
|
mkN = \nomSg, genSg, datSg, accSg, instrSg, locSg, vocSg,
|
||||||
nomPl, genPl, datPl, accPl, instrPl, locPl, vocPl, g ->
|
nomPl, genPl, datPl, accPl, instrPl, locPl, vocPl, g ->
|
||||||
{
|
{
|
||||||
s = table {
|
s = table {
|
||||||
SF Sg Nom => nomSg;
|
SF Sg Nom => nomSg ;
|
||||||
SF Sg Gen => genSg;
|
SF Sg Gen => genSg ;
|
||||||
SF Sg Dat => datSg;
|
SF Sg Dat => datSg ;
|
||||||
SF Sg Acc => accSg;
|
SF Sg Acc => accSg ;
|
||||||
SF Sg Instr => instrSg;
|
SF Sg Instr => instrSg ;
|
||||||
SF Sg Loc => locSg;
|
SF Sg Loc => locSg ;
|
||||||
SF Sg VocP => vocSg;
|
SF Sg VocP => vocSg ;
|
||||||
SF Pl Nom => nomPl;
|
SF Pl Nom => nomPl ;
|
||||||
SF Pl Gen => genPl;
|
SF Pl Gen => genPl ;
|
||||||
SF Pl Dat => datPl;
|
SF Pl Dat => datPl ;
|
||||||
SF Pl Acc => accPl;
|
SF Pl Acc => accPl ;
|
||||||
SF Pl Instr => instrPl;
|
SF Pl Instr => instrPl ;
|
||||||
SF Pl Loc => locPl;
|
SF Pl Loc => locPl ;
|
||||||
SF Pl VocP => vocPl
|
SF Pl VocP => vocPl
|
||||||
};
|
} ;
|
||||||
g = g;
|
g = g ;
|
||||||
} ** {lock_N = <> } ;
|
} ** {lock_N = <> } ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Nouns used as functions need a preposition. The most common is with Genitive.
|
-- Nouns used as functions need a preposition. The most common is with Genitive.
|
||||||
|
|
||||||
mkN2 : N -> N2 ;
|
mkN2 : N -> N2 ;
|
||||||
mkN2 n = mkFun n nullPrep ;
|
mkN2 n = mkFun n nullPrep ;
|
||||||
|
|
||||||
mkFun : N -> Prep -> N2;
|
mkFun : N -> Prep -> N2 ;
|
||||||
mkFun f p = { s = f.s; g = f.g; c = { c = p.c; s=p.s}; lock_N2=<> } ;
|
mkFun f p = { s = f.s ; g = f.g ; c = { c = p.c ; s=p.s} ; lock_N2=<> } ;
|
||||||
|
|
||||||
-- The commonest cases are functions with Genitive.
|
-- The commonest cases are functions with Genitive.
|
||||||
nullPrep : Prep = {s = []; c= GenNoPrep; lock_Prep=<>};
|
nullPrep : Prep = {s = [] ; c= GenNoPrep ; lock_Prep=<>} ;
|
||||||
|
|
||||||
mkN3 : N -> Prep -> Prep -> N3;
|
mkN3 : N -> Prep -> Prep -> N3 ;
|
||||||
mkN3 f p r = { s = f.s; g = f.g; c = {s=p.s; c=p.c} ; c2 = {s=r.s; c=r.c}; lock_N3=<>};
|
mkN3 f p r = { s = f.s ; g = f.g ; c = {s=p.s ; c=p.c} ; c2 = {s=r.s ; c=r.c} ; lock_N3=<>} ;
|
||||||
|
|
||||||
--6 Preposition
|
--6 Preposition
|
||||||
|
|
||||||
-- A preposition is formed from a string and a case.
|
-- A preposition is formed from a string and a case.
|
||||||
|
|
||||||
mkPrep : Str -> Case -> Prep;
|
mkPrep : Str -> Case -> Prep ;
|
||||||
mkPrep s c = mkCompl s c ** {lock_Prep = <>};
|
mkPrep s c = mkCompl s c ** {lock_Prep = <>} ;
|
||||||
|
|
||||||
|
|
||||||
-- Often just a case with the empty string is enough.
|
-- Often just a case with the empty string is enough.
|
||||||
-- the directly following noun without a preposition
|
-- the directly following noun without a preposition
|
||||||
|
|
||||||
genPrep : Prep;
|
genPrep : Prep ;
|
||||||
genPrep = mkPrep [] genitive;
|
genPrep = mkPrep [] genitive ;
|
||||||
|
|
||||||
datPrep : Prep;
|
datPrep : Prep ;
|
||||||
datPrep = mkPrep [] dative;
|
datPrep = mkPrep [] dative ;
|
||||||
|
|
||||||
accPrep : Prep;
|
accPrep : Prep ;
|
||||||
accPrep = mkPrep [] accusative;
|
accPrep = mkPrep [] accusative ;
|
||||||
|
|
||||||
instrPrep : Prep;
|
instrPrep : Prep ;
|
||||||
instrPrep = mkPrep [] instrumental;
|
instrPrep = mkPrep [] instrumental ;
|
||||||
|
|
||||||
|
|
||||||
-- A great many of common prepositions are always with the genitive.
|
-- A great many of common prepositions are always with the genitive.
|
||||||
|
|
||||||
bez_Prep : Prep; --without
|
bez_Prep : Prep ; --without
|
||||||
bez_Prep = mkPrep "bez" genitive;
|
bez_Prep = mkPrep "bez" genitive ;
|
||||||
|
|
||||||
dla_Prep : Prep; --for
|
dla_Prep : Prep ; --for
|
||||||
dla_Prep = mkPrep "dla" genitive;
|
dla_Prep = mkPrep "dla" genitive ;
|
||||||
|
|
||||||
do_Prep : Prep; --to
|
do_Prep : Prep ; --to
|
||||||
do_Prep = mkPrep "do" genitive;
|
do_Prep = mkPrep "do" genitive ;
|
||||||
|
|
||||||
dookola_Prep : Prep; --(a)round
|
dookola_Prep : Prep ; --(a)round
|
||||||
dookola_Prep = mkPrep "dookoła" genitive;
|
dookola_Prep = mkPrep "dookoła" genitive ;
|
||||||
|
|
||||||
kolo_Prep : Prep; --near
|
kolo_Prep : Prep ; --near
|
||||||
kolo_Prep = mkPrep "koło" genitive;
|
kolo_Prep = mkPrep "koło" genitive ;
|
||||||
|
|
||||||
obok_Prep : Prep; --beside, next to
|
obok_Prep : Prep ; --beside, next to
|
||||||
obok_Prep = mkPrep "obok" genitive;
|
obok_Prep = mkPrep "obok" genitive ;
|
||||||
|
|
||||||
od_Prep : Prep; --from
|
od_Prep : Prep ; --from
|
||||||
od_Prep = mkPrep "od" genitive;
|
od_Prep = mkPrep "od" genitive ;
|
||||||
|
|
||||||
oprocz_Prep : Prep; --out of
|
oprocz_Prep : Prep ; --out of
|
||||||
oprocz_Prep = mkPrep "oprócz" genitive;
|
oprocz_Prep = mkPrep "oprócz" genitive ;
|
||||||
|
|
||||||
podczas_Prep : Prep; --during
|
podczas_Prep : Prep ; --during
|
||||||
podczas_Prep = mkPrep "podczas" genitive;
|
podczas_Prep = mkPrep "podczas" genitive ;
|
||||||
|
|
||||||
mimo_Prep : Prep; -- despite
|
mimo_Prep : Prep ; -- despite
|
||||||
mimo_Prep = mkPrep "mimo" genitive;
|
mimo_Prep = mkPrep "mimo" genitive ;
|
||||||
|
|
||||||
spod_Prep : Prep; --under
|
spod_Prep : Prep ; --under
|
||||||
spod_Prep = mkPrep "spod" genitive;
|
spod_Prep = mkPrep "spod" genitive ;
|
||||||
|
|
||||||
u_Prep : Prep; --by, with (I was by Peter last sunday.)
|
u_Prep : Prep ; --by, with (I was by Peter last sunday.)
|
||||||
u_Prep = mkPrep "u" genitive;
|
u_Prep = mkPrep "u" genitive ;
|
||||||
|
|
||||||
wzdluz_Prep : Prep; --along
|
wzdluz_Prep : Prep ; --along
|
||||||
wzdluz_Prep = mkPrep "wzdłuż" genitive;
|
wzdluz_Prep = mkPrep "wzdłuż" genitive ;
|
||||||
|
|
||||||
z_Prep : Prep; --from (I come from Italy.), of/ from (The ring is made of silver.)
|
z_Prep : Prep ; --from (I come from Italy.), of/ from (The ring is made of silver.)
|
||||||
z_Prep = mkPrep "z" genitive;
|
z_Prep = mkPrep "z" genitive ;
|
||||||
|
|
||||||
zamiast_Prep : Prep; --instead of
|
zamiast_Prep : Prep ; --instead of
|
||||||
zamiast_Prep = mkPrep "zamiast" genitive;
|
zamiast_Prep = mkPrep "zamiast" genitive ;
|
||||||
|
|
||||||
znad_Prep : Prep; --over, above
|
znad_Prep : Prep ; --over, above
|
||||||
znad_Prep = mkPrep "znad" genitive;
|
znad_Prep = mkPrep "znad" genitive ;
|
||||||
|
|
||||||
zza_Prep : Prep; --behind
|
zza_Prep : Prep ; --behind
|
||||||
zza_Prep = mkPrep "zza" genitive;
|
zza_Prep = mkPrep "zza" genitive ;
|
||||||
|
|
||||||
|
|
||||||
-- Prepositions always with the dative.
|
-- Prepositions always with the dative.
|
||||||
dzieki_Prep : Prep; -- thanks for
|
dzieki_Prep : Prep ; -- thanks for
|
||||||
dzieki_Prep = mkPrep "dzięki" dative;
|
dzieki_Prep = mkPrep "dzięki" dative ;
|
||||||
|
|
||||||
przeciw_Prep : Prep; -- against
|
przeciw_Prep : Prep ; -- against
|
||||||
przeciw_Prep = mkPrep "przeciw" dative;
|
przeciw_Prep = mkPrep "przeciw" dative ;
|
||||||
|
|
||||||
};
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user