(Dut) Remove MorphoDut + update change in other files

This commit is contained in:
Inari Listenmaa
2018-06-05 11:24:12 +02:00
parent 8ae61cc1a8
commit fad7cf0c6f
8 changed files with 8 additions and 265 deletions
+2 -157
View File
@@ -327,169 +327,14 @@ oper
} ;
mkmaxV3 : V -> Prep -> Prep -> V3 = \v,c,d -> lin V3 (v ** {c2 = <c,True> ; c3 = <d,True>}) ;
----2 Definitions of paradigms
----
---- The definitions should not bother the user of the API. So they are
---- hidden from the document.
--
--
--
-- Gender = MorphoDut.Gender ;
-- Case = MorphoDut.Case ;
-- Number = MorphoDut.Number ;
-- masculine = Masc ;
-- feminine = Fem ;
-- neuter = Neutr ;
-- nominative = Nom ;
-- accusative = Acc ;
-- dative = Dat ;
-- genitive = Gen ;
-- singular = Sg ;
-- plural = Pl ;
--
-- mk6N a b c d e f g = MorphoDut.mkN a b c d e f g ** {lock_N = <>} ;
--
-- regN : Str -> N = \hund -> case hund of {
-- _ + "e" => mk6N hund hund hund hund (hund + "n") (hund + "n") Fem ;
-- _ + ("ion" | "ung") => mk6N hund hund hund hund (hund + "en") (hund + "en") Fem ;
-- _ + ("er" | "en" | "el") => mk6N hund hund hund (genitS hund) hund (pluralN hund) Masc ;
-- _ => mk6N hund hund hund (genitS hund) (hund + "e") (pluralN hund) Masc
-- } ;
--
-- reg2N : (x1,x2 : Str) -> Gender -> N = \hund,hunde,g ->
-- let
-- hunds = genitS hund ;
-- hundE = dativE hund ;
-- hunden = pluralN hunde
-- in
-- case <hund,hunde,g> of { -- Duden p. 223
-- <_,_ + ("e" | "er"), Masc | Neutr> => -- I,IV
-- mk6N hund hund hundE hunds hunde hunden g ;
-- <_ + ("el"|"er"|"en"),_ + ("el"|"er"|"en"), Masc | Neutr> => -- II
-- mk6N hund hund hund hunds hunde hunden g ;
-- <_,_ + "s", Masc | Neutr> => -- V
-- mk6N hund hund hund (hund + "s") hunde hunde g ;
-- <_,_ + "en", Masc> => -- VI
-- mk6N hund hunde hunde hunde hunde hunde g ;
-- <_,_ + ("e" | "er"), Fem> => -- VII,VIII
-- mk6N hund hund hund hund hunde hunden g ;
-- <_,_ + ("n" | "s"), Fem> => -- IX,X
-- mk6N hund hund hund hund hunde hunde g ;
-- _ => {s = (regN hund).s ; g = g ; lock_N = <>}
-- } ;
--
-- mkN2 = overload {
-- mkN2 : Str -> N2 = \s -> vonN2 (regN s) ;
-- mkN2 : N -> N2 = vonN2 ;
-- mkN2 : N -> Prep -> N2 = mmkN2
-- } ;
--
--
-- mmkN2 : N -> Prep -> N2 = \n,p -> n ** {c2 = p ; lock_N2 = <>} ;
-- vonN2 : N -> N2 = \n -> n ** {c2 = {s = "von" ; c = dative} ; lock_N2 = <>} ;
--
-- mkN3 = \n,p,q -> n ** {c2 = p ; c3 = q ; lock_N3 = <>} ;
--
-- mk2PN = \karolus, karoli ->
-- {s = table {Gen => karoli ; _ => karolus} ; lock_PN = <>} ;
-- regPN = \horst ->
-- mk2PN horst (ifTok Tok (Predef.dp 1 horst) "s" horst (horst + "s")) ;
--
-- mkPN = overload {
-- mkPN : Str -> PN = regPN ;
-- mkPN : (nom,gen : Str) -> PN = mk2PN ;
-- mkPN : (nom,acc,dat,gen : Str) -> PN = \nom,acc,dat,gen ->
-- {s = table {Nom => nom ; Acc => acc ; Dat => dat ; Gen => gen} ; lock_PN = <>}
-- } ;
--
-- mk2PN : (karolus, karoli : Str) -> PN ; -- karolus, karoli
-- regPN : (Johann : Str) -> PN ;
-- -- Johann, Johanns ; Johannes, Johannes
--
--
-- mk3A : (gut,besser,beste : Str) -> A = \a,b,c ->
-- let aa : Str = case a of {
-- teu + "er" => teu + "r" ;
-- mud + "e" => mud ;
-- _ => a
-- } in
-- MorphoDut.mkA a aa b (init c) ** {lock_A = <>} ;
-- mk4A : (gut,gute,besser,beste : Str) -> A = \a,aa,b,c ->
-- MorphoDut.mkA a aa b (init c) ** {lock_A = <>} ;
--
-- regA : Str -> A = \a -> case a of {
-- teu + "er" => mk3A a (teu + "rer") (teu + "reste") ;
-- _ + "e" => mk3A a (a + "r") (a + "ste") ;
-- _ => mk3A a (a + "er") (a + "este")
-- } ;
invarA = \s -> lin A {s = \\_,_ => s} ; ---- comparison
mkA2 = \a,p -> lin A2 (a ** {c2 = p}) ;
mkAdv s = {s = s ; lock_Adv = <>} ;
--
-- mkPrep s c = {s = s ; c = c ; lock_Prep = <>} ;
noPrep = nomergePrep [] ;
-- datPrep = mkPrep [] dative ;
-- genPrep = mkPrep [] genitive ;
-- von_Prep = mkPrep "von" dative ;
-- zu_Prep = mkPrep "zu" dative ;
--
-- mk6V geben gibt gib gab gaebe gegeben =
-- let
-- geb = stemVerb geben ;
-- gebe = geb + "e" ;
-- gibst = verbST (init gibt) ;
-- gebt = verbT geb ;
-- gabst = verbST gab ;
-- gaben = pluralN gab ;
-- gabt = verbT gab
-- in
-- MorphoDut.mkV
-- geben gebe gibst gibt gebt gib gab gabst gaben gabt gaebe gegeben
-- [] VHaben ** {lock_V = <>} ;
--
-- regV fragen =
-- let
-- frag = stemVerb fragen ;
-- fragt = verbT frag ;
-- fragte = fragt + "e" ;
-- gefragt = "ge" + fragt ;
-- in
-- mk6V fragen fragt (frag + "e") fragte fragte gefragt ;
--
-- irregV singen singt sang saenge gesungen =
-- let
-- sing = stemVerb singen ;
-- in
-- mk6V singen singt sing sang saenge gesungen ;
--
-- prefixV p v = MorphoDut.prefixV p v ** {lock_V = v.lock_V} ;
--
-- habenV v =
-- {s = v.s ; prefix = v.prefix ; lock_V = v.lock_V ; aux = VHaben ; vtype = v.vtype} ;
-- seinV v =
-- {s = v.s ; prefix = v.prefix ; lock_V = v.lock_V ; aux = VSein ; vtype = v.vtype} ;
-- reflV v c =
-- {s = v.s ; prefix = v.prefix ; lock_V = v.lock_V ; aux = VHaben ; vtype = VRefl c} ;
--
-- no_geV v = let vs = v.s in {
-- s = table {
-- p@(VPastPart _) => Predef.drop 2 (vs ! p) ;
-- p => vs ! p
-- } ;
-- prefix = v.prefix ; lock_V = v.lock_V ; aux = v.aux ; vtype = v.vtype
-- } ;
--
-- haben_V = MorphoDut.haben_V ** {lock_V = <>} ;
-- sein_V = MorphoDut.sein_V ** {lock_V = <>} ;
-- werden_V = MorphoDut.werden_V ** {lock_V = <>} ;
--
prepV2 : V -> Prep -> V2 ;
prepV2 v c = lin V2 (v ** {c2 = <c,True>}) ; --if it has prep, needed for word order (place of negation)