forked from GitHub/gf-core
German complete (with some bugs and uncertainties)
This commit is contained in:
@@ -3,9 +3,10 @@
|
||||
concrete BasicGer of Basic = CatGer ** open Prelude, ParadigmsGer in {
|
||||
|
||||
flags
|
||||
optimize=values ;
|
||||
optimize=all_subs ;
|
||||
|
||||
lin
|
||||
add_V3 = dirV3 (prefixV "hinzu" (regV "fügen")) zu_Prep ;
|
||||
airplane_N = regN "Flugzeug" ;
|
||||
already_Adv = mkAdv "schon" ;
|
||||
answer_V2S = mkV2S (regV "antworten") datPrep ;
|
||||
@@ -15,42 +16,42 @@ lin
|
||||
ask_V2Q = mkV2Q (regV "fragen") accPrep ;
|
||||
baby_N = reg2N "Baby" "babies" neuter ; ----
|
||||
bad_A = regA "schlecht" ;
|
||||
bank_N = reg2N "Bank" "Banken" feminine ; ----
|
||||
bank_N = reg2N "Bank" "Banken" feminine ;
|
||||
beautiful_A = regA "schön" ;
|
||||
become_VA = mkVA (mkV "werden" "wird" "werd" "wurde" "würde" "geworden") ;
|
||||
become_VA = mkVA (mkV "werde" "wird" "werd" "wurde" "würde" "geworden") ;
|
||||
beer_N = reg2N "Bier" "Biere" neuter ;
|
||||
---- beg_V2V = mkV2V (mkV "be" "ber""be" "blad" "bett" "bedd") [] "att" ;
|
||||
big_A = mkA "groß" "groß" "größer""größt" ;
|
||||
beg_V2V = mkV2V (mkV "bitten" "bittet" "bitte" "bat" "bäte" "gebeten") accPrep ;
|
||||
big_A = mkA "groß" "größer""größte" ;
|
||||
bike_N = reg2N "Fahrrad" "Fahrräder" neuter ;
|
||||
---- bird_N = reg2N "fågel" "fåglar" ;
|
||||
bird_N = reg2N "Vogel" "Vögel" masculine ;
|
||||
black_A = regA "schwarz" ;
|
||||
blue_A = regA "blau";
|
||||
boat_N = reg2N "Boot" "Boote" neuter ;
|
||||
book_N = reg2N "Buch" "Bücher" neuter ;
|
||||
-- boot_N = reg2N "stövel" "stövlar" ;
|
||||
boot_N = reg2N "Stiefel" "Stiefel" masculine ;
|
||||
boss_N = reg2N "Chef" "Chefe" masculine ; ----
|
||||
boy_N = reg2N "Junge" "Jungen" masculine ;
|
||||
bread_N = reg2N "Brot" "Brote" neuter ; ----
|
||||
bread_N = reg2N "Brot" "Brote" neuter ;
|
||||
break_V2 = dirV2
|
||||
(irregV "zerschlagen" "zerschlägt" "zerschlug" "zerschlüge" "zerschlagen") ;
|
||||
broad_A = regA "breit" ;
|
||||
brother_N2 = mkN2 (reg2N "Bruder" "Brüder" masculine) zu_Prep ; ----
|
||||
brother_N2 = mkN2 (reg2N "Bruder" "Brüder" masculine) von_Prep ;
|
||||
brown_A = regA "braun" ;
|
||||
---- butter_N = regN "smör" ;
|
||||
butter_N = reg2N "Butter" "Butter" feminine ; ---- infl
|
||||
buy_V2 = dirV2 (regV "kaufen") ;
|
||||
---- camera_N = regN "kamera" ;
|
||||
camera_N = reg2N "Kamera" "Kameras" feminine ;
|
||||
cap_N = regN "Mütze" ;
|
||||
car_N = reg2N "Wagen" "Wagen" masculine ;
|
||||
carpet_N = regN "Teppich" ;
|
||||
cat_N = regN "Katze" ;
|
||||
---- ceiling_N = regN "tak" ;
|
||||
ceiling_N = reg2N "Dach" "Dächer" neuter ;
|
||||
chair_N = reg2N "Stuhl" "Stühle" masculine ;
|
||||
cheese_N = regN "Käse" ;
|
||||
child_N = reg2N "Kind" "Kinder" neuter ;
|
||||
church_N = regN "Kirche" ;
|
||||
city_N = reg2N "Stadt" "Städte" feminine ;
|
||||
clean_A = regA "rein" ;
|
||||
clever_A = regA "klug" ; ----
|
||||
clever_A = mkA "klug" "klüger" "klügste" ;
|
||||
close_V2 = dirV2 (irregV "schliessen" "schließt" "schloß" "schlöße" "geschlossen") ;
|
||||
coat_N = regN "Jacke" ;
|
||||
cold_A = regA "Kalt" ;
|
||||
@@ -62,6 +63,7 @@ lin
|
||||
die_V = seinV (irregV "sterben" "stirbt" "starb" "stärbe" "gestorben") ;
|
||||
distance_N3 = mkN3 (regN "Entfernung") von_Prep zu_Prep ;
|
||||
dirty_A = regA "schmutzig" ;
|
||||
do_V2 = dirV2 (irregV "tun" "tut" "tat" "täte" "getan") ;
|
||||
doctor_N = reg2N "Arzt" "Ärzte" masculine ;
|
||||
dog_N = regN "Hund" ;
|
||||
door_N = reg2N "Tür" "Türe" feminine ;
|
||||
@@ -69,7 +71,7 @@ lin
|
||||
easy_A2V = mkA2V (regA "leicht") (mkPrep "für" accusative) ;
|
||||
eat_V2 = dirV2 (irregV "essen" "ißt" "aß" "äße" "gegessen") ;
|
||||
empty_A = regA "leer" ; ---- check infl
|
||||
enemy_N = regN "Feind" ; ----
|
||||
enemy_N = regN "Feind" ;
|
||||
factory_N = regN "Fabrike" ;
|
||||
father_N2 = mkN2 (reg2N "Vater" "Väter" masculine) von_Prep ;
|
||||
fear_VS = mkVS (regV "fürchten") ;
|
||||
@@ -84,16 +86,16 @@ lin
|
||||
garden_N = reg2N "Garten" "Gärten" masculine ;
|
||||
girl_N = reg2N "Mädchen" "Mädchen" neuter ;
|
||||
glove_N = regN "Handschuh" ;
|
||||
gold_N = regN "Gold" ; ----
|
||||
good_A = mkA "gut" "gut" "besser" "best" ;
|
||||
gold_N = reg2N "Gold" "Golde" neuter ; ---- infl
|
||||
good_A = mkA "gut" "besser" "beste" ;
|
||||
go_V = seinV (irregV "gehen" "geht" "ging" "ginge" "gegangen") ;
|
||||
green_A = regA "grün" ;
|
||||
harbour_N = reg2N "Hafen" "Häfen" masculine ;
|
||||
hate_V2 = dirV2 (regV "Hassen") ;
|
||||
hat_N = reg2N "Hut" "Hüte" masculine ;
|
||||
---- have_V2 = dirV2 (mkV "ha" "har" "ha" "hade" "haft" "haft") ; ---- pp
|
||||
have_V2 = dirV2 haben_V ;
|
||||
hear_V2 = dirV2 (regV "hören") ;
|
||||
---- hill_N = regN "kulle" ;
|
||||
hill_N = regN "Hügel" ;
|
||||
hope_VS = mkVS (regV "hoffen") ;
|
||||
horse_N = reg2N "Pferd" "Pferde" neuter ;
|
||||
hot_A = regA "heiß" ;
|
||||
@@ -101,46 +103,48 @@ lin
|
||||
important_A = regA "wichtig" ;
|
||||
industry_N = regN "Industrie" ;
|
||||
iron_N = reg2N "Eisen" "Eisen" neuter ;
|
||||
jump_V = seinV (irregV "springen" "springt" "sprang" "spränge" "gesprungen") ;
|
||||
king_N = regN "König" ;
|
||||
know_V2 = dirV2 (irregV "wissen" "weiß" "wußte" "wüßte" "gewußt") ; ---- infl
|
||||
---- lake_N = mkN "sjö" "sjön" "sjöar" "sjöarna" ;
|
||||
lake_N = reg2N "See" "Seen" masculine ; --- infl
|
||||
lamp_N = regN "Lampe";
|
||||
learn_V2 = dirV2 (regV "lernen") ;
|
||||
---- leather_N = regN "Leder" ;
|
||||
leave_V2 =
|
||||
dirV2 (irregV "verlassen" "verläßt" "verließ" "verliesse" "verlassen") ;
|
||||
leather_N = reg2N "Leder" "Leder" neuter ;
|
||||
leave_V2 = dirV2 (irregV "verlassen" "verläßt" "verließ" "verliesse" "verlassen") ;
|
||||
like_V2 = dirV2 (irregV "magen" "mag" "mochte" "möchte" "gemocht") ;
|
||||
listen_V2 = mkV2 (prefixV "zu" (regV "hören")) datPrep ; ---- dat
|
||||
live_V = regV "leben" ;
|
||||
long_A = mkA "lang" "lang" "länger" "längst" ;
|
||||
long_A = mkA "lang" "länger" "längste" ;
|
||||
lose_V2 = dirV2 (irregV "verlieren" "verliert" "verlor" "verlöre" "verloren") ;
|
||||
love_N = regN "Liebe" ;
|
||||
love_V2 = dirV2 (regV "lieben") ;
|
||||
man_N = reg2N "Mann" "Männer" masculine ;
|
||||
married_A2 = mkA2 (regA "verheiratet") (mkPrep "mit" dative) ;
|
||||
meat_N = reg2N "Fleisch" "Fleische" neuter ; ---- Pl
|
||||
milk_N = reg2N "Milch" "Milchen" feminine ; ---- Pl
|
||||
moon_N = regN "Mond" ; ---- Pl
|
||||
meat_N = reg2N "Fleisch" "Fleische" neuter ; ---- infl
|
||||
milk_N = reg2N "Milch" "Milchen" feminine ; ---- infl
|
||||
moon_N = regN "Mond" ;
|
||||
mother_N2 = mkN2 (reg2N "Mutter" "Mütter" feminine) von_Prep ;
|
||||
mountain_N = regN "Berg" ;
|
||||
music_N = reg2N "Musik" "Musiken" feminine ;
|
||||
narrow_A = regA "schmal" ;
|
||||
new_A = regA "neu" ;
|
||||
newspaper_N = regN "Zeitung" ;
|
||||
oil_N = regN "Öl" ; ----
|
||||
old_A = mkA "alt" "alt" "älter" "ältest" ;
|
||||
now_Adv = mkAdv "jetzt" ;
|
||||
number_N = reg2N "Zahl" "Zahlen" feminine ;
|
||||
oil_N = reg2N "Öl" "Öle" neuter ;
|
||||
old_A = mkA "alt" "älter" "älteste" ;
|
||||
open_V2 = dirV2 (regV "öffnen") ;
|
||||
paint_V2A =
|
||||
mkV2A (irregV "streichen" "streicht" "strich" "striche" "gestrichen") accPrep ; ----
|
||||
paint_V2A = mkV2A (regV "malen") accPrep ;
|
||||
paper_N = reg2N "Papier" "Papiere" neuter ;
|
||||
peace_N = regN "Frieden" ; ----
|
||||
peace_N = mkN "Friede" "Frieden" "Frieden" "Friedens" "Frieden" "Frieden" masculine ;
|
||||
pen_N = regN "Bleistift" ; ----
|
||||
planet_N = regN "Planete" ; ----
|
||||
planet_N = reg2N "Planet" "Planeten" masculine ;
|
||||
plastic_N = reg2N "Plastik" "Plastiken" feminine ; ----
|
||||
play_V2 = dirV2 (regV "spielen") ;
|
||||
policeman_N = reg2N "Polizist" "Polizisten" masculine ;
|
||||
priest_N = regN "Priest" ; ----
|
||||
priest_N = regN "Priester" ;
|
||||
probable_AS = mkAS (regA "wahrscheinlich") ;
|
||||
put_V2 = dirV2 (regV "setzen") ;
|
||||
queen_N = reg2N "Königin" "königinnen" feminine ;
|
||||
radio_N = reg2N "Radio" "Radios" neuter ; ----
|
||||
rain_V0 = mkV0 (regV "regnen") ;
|
||||
@@ -150,8 +154,8 @@ lin
|
||||
restaurant_N = reg2N "Restaurant" "Restaurants" neuter ;
|
||||
river_N = reg2N "Fluß" "Flüße" masculine ;
|
||||
rock_N = regN "Stein" ;
|
||||
---- roof_N = regN "tak" ;
|
||||
---- rubber_N = mkN "gummi" "gummit" "gummin" "gummina" ;
|
||||
roof_N = reg2N "Dach" "Dächer" neuter ;
|
||||
rubber_N = reg2N "Gummi" "Gummis" neuter ;
|
||||
run_V = seinV (irregV "laufen" "läuft" "lief" "liefe" "gelaufen") ;
|
||||
say_VS = mkVS (regV "sagen") ;
|
||||
school_N = regN "Schule";
|
||||
@@ -161,25 +165,27 @@ lin
|
||||
see_V2 = dirV2 (irregV "sehen" "sieht" "sah" "sähe" "gesehen") ;
|
||||
sell_V3 = accdatV3 (regV "verkaufen") ;
|
||||
send_V3 = accdatV3 (regV "schicken") ;
|
||||
sheep_N = reg2N "Schaf" "Schäfe" feminine ; ----
|
||||
ship_N = regN "Schiff" ; ----
|
||||
shirt_N = reg2N "Hemd" "Hemde" neuter ; ----
|
||||
sheep_N = reg2N "Schaf" "Schafe" neuter ;
|
||||
ship_N = reg2N "Schiff" "Schiffe" neuter ;
|
||||
shirt_N = reg2N "Hemd" "Hemden" neuter ; ---- infl
|
||||
shoe_N = regN "Schuh" ;
|
||||
shop_N = reg2N "Laden" "Läden" masculine ;
|
||||
short_A = regA "kurz" ;
|
||||
silver_N = reg2N "Silber" "Silber" neuter ; ----
|
||||
silver_N = reg2N "Silber" "Silber" neuter ; ---- infl
|
||||
sister_N = reg2N "Schwester" "Schwester" feminine ;
|
||||
sleep_V = irregV "schlafen" "schläft" "schlief" "schliefe" "geschlafen" ;
|
||||
small_A = regA "Klein" ;
|
||||
snake_N = regN "Schlange" ;
|
||||
sock_N = reg2N "Strumpf" "Strümpfe" masculine ; ----
|
||||
sock_N = reg2N "Strumpf" "Strümpfe" masculine ;
|
||||
song_N = reg2N "Lied" "Lieder" neuter ;
|
||||
speak_V2 = dirV2 (irregV "sprechen" "spricht" "sprach" "spräche" "gesprochen") ;
|
||||
star_N = regN "Sterne" ;
|
||||
steel_N = regN "Stahl" ; ----
|
||||
stone_N = regN "Stein" ; ----
|
||||
---- stove_N = regN "spis" ;
|
||||
steel_N = regN "Stahl" ;
|
||||
stone_N = regN "Stein" ;
|
||||
stop_V = seinV (irregV "halten" "hält" "hielt" "hielte" "gehalten") ;
|
||||
stove_N = regN "Herd" ;
|
||||
student_N = reg2N "Student" "Studenten" masculine ;
|
||||
stupid_A = mkA "dumm" "dumm" "dümmer" "dümmst" ; ----
|
||||
stupid_A = mkA "dumm" "dümmer" "dümmste" ; ----
|
||||
sun_N = regN "Sonne" ;
|
||||
switch8off_V2 = dirV2 (prefixV "aus" (regV "schalten")) ;
|
||||
switch8on_V2 = dirV2 (prefixV "ein" (regV "schalten")) ;
|
||||
@@ -192,7 +198,7 @@ lin
|
||||
thin_A = regA "dünn" ;
|
||||
train_N = reg2N "Zug" "Züge" masculine ;
|
||||
travel_V = regV "reisen" ;
|
||||
tree_N = reg2N "Baum" "Bäume" masculine ; ----
|
||||
tree_N = reg2N "Baum" "Bäume" masculine ;
|
||||
---- trousers_N = regN "trousers" ; ---- pl t !
|
||||
ugly_A = regA "häßlich" ;
|
||||
understand_V2 = dirV2 (irregV "verstehen" "versteht" "verstand" "verstände" "verstanden") ;
|
||||
@@ -200,28 +206,19 @@ lin
|
||||
village_N = reg2N "Dorf" "Dörfer" neuter ;
|
||||
wait_V2 = mkV2 (regV "warten") (mkPrep "auf" accusative) ;
|
||||
walk_V = seinV (irregV "gehen" "geht" "ging" "ginge" "gegangen") ;
|
||||
warm_A = mkA "warm" "warm" "wärmer" "wärmst" ;
|
||||
war_N = regN "Krieg" ; ----
|
||||
warm_A = mkA "warm" "wärmer" "wärmste" ;
|
||||
war_N = regN "Krieg" ;
|
||||
watch_V2 = mkV2 (regV "schauen") (mkPrep "an" accusative) ;
|
||||
water_N = reg2N "Wasser" "Wasser" neuter ;
|
||||
white_A = regA "weiß" ;
|
||||
window_N = reg2N "Fenster" "Fenster" neuter ; ----
|
||||
window_N = reg2N "Fenster" "Fenster" neuter ;
|
||||
wine_N = regN "Wein" ;
|
||||
win_V2 = dirV2 (irregV "gewinnen" "gewinnt" "gewann" "gewänne" "gewonnen") ; ----
|
||||
win_V2 = dirV2 (irregV "gewinnen" "gewinnt" "gewann" "gewänne" "gewonnen") ;
|
||||
woman_N = reg2N "Frau" "Frauen" feminine ;
|
||||
wonder_VQ = mkVQ (reflV (regV "wundern") accusative) ; ----
|
||||
wood_N = reg2N "Holz" "Hölzer" neuter ; ----
|
||||
wonder_VQ = mkVQ (reflV (regV "wundern") accusative) ;
|
||||
wood_N = reg2N "Holz" "Hölzer" neuter ;
|
||||
write_V2 = dirV2 (irregV "schreiben" "schreibt" "schrieb" "schriebe" "geschrieben") ;
|
||||
yellow_A = regA "gelb" ;
|
||||
young_A = mkA "jung" "jung" "jünger" "jüngst" ;
|
||||
|
||||
do_V2 = dirV2 (irregV "tun" "tut" "tat" "täte" "getan") ;
|
||||
now_Adv = mkAdv "jetzt" ;
|
||||
song_N = reg2N "Lied" "Lieder" neuter ;
|
||||
-- add_V3 = mkV3 (partV (irregV "lägga" "lade" "lagt") "till") [] "till" ;
|
||||
number_N = reg2N "Zahl" "Zahlen" feminine ;
|
||||
put_V2 = dirV2 (regV "setzen") ;
|
||||
stop_V = seinV (irregV "halten" "hält" "hielt" "hielte" "gehalten") ;
|
||||
-- jump_V = regV "hoppa" ;
|
||||
young_A = mkA "jung" "jünger" "jüngste" ;
|
||||
|
||||
} ;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
concrete NumeralGer of Numeral = CatGer ** open MorphoGer in {
|
||||
|
||||
flags optimize = all_subs ;
|
||||
|
||||
lincat
|
||||
Digit = {s : DForm => CardOrd => Str} ;
|
||||
Sub10 = {s : DForm => CardOrd => Str} ;
|
||||
|
||||
@@ -105,9 +105,9 @@ oper
|
||||
|
||||
--2 Adjectives
|
||||
|
||||
-- Adjectives need four forms: two for the positive and one for the other degrees.
|
||||
-- Adjectives need three forms, one for each degree.
|
||||
|
||||
mkA : (x1,_,_,x4 : Str) -> A ; -- gut,gut,besser,best
|
||||
mkA : (x1,_,x3 : Str) -> A ; -- gut,besser,beste
|
||||
|
||||
-- The regular adjective formation works for most cases, and includes
|
||||
-- variations such as "teuer - teurer", "böse - böser".
|
||||
@@ -215,7 +215,7 @@ oper
|
||||
mkVS : V -> VS ;
|
||||
mkV2S : V -> Prep -> V2S ;
|
||||
mkVV : V -> VV ;
|
||||
mkV2V : V -> Prep -> Prep -> V2V ;
|
||||
mkV2V : V -> Prep -> V2V ;
|
||||
mkVA : V -> VA ;
|
||||
mkV2A : V -> Prep -> V2A ;
|
||||
mkVQ : V -> VQ ;
|
||||
@@ -260,7 +260,8 @@ oper
|
||||
regN : Str -> N = \hund -> case hund of {
|
||||
_ + "e" => mkN hund hund hund hund (hund + "n") (hund + "n") Fem ;
|
||||
_ + ("ion" | "ung") => mkN hund hund hund hund (hund + "en") (hund + "en") Fem ;
|
||||
_ => mkN hund hund hund (genitS hund) (hund + "e") (hund + "en") Masc
|
||||
_ + ("er" | "en" | "el") => mkN hund hund hund (genitS hund) hund (hund + "n") Masc ;
|
||||
_ => mkN hund hund hund (genitS hund) (hund + "e") (hund + "en") Masc
|
||||
} ;
|
||||
|
||||
reg2N : (x1,x2 : Str) -> Gender -> N = \hund,hunde,g ->
|
||||
@@ -295,13 +296,18 @@ oper
|
||||
regPN = \horst ->
|
||||
mkPN horst (ifTok Tok (Predef.dp 1 horst) "s" horst (horst + "s")) ;
|
||||
|
||||
mkA : (x1,_,_,x4 : Str) -> A = \a,b,c,d ->
|
||||
MorphoGer.mkA a b c d ** {lock_A = <>} ;
|
||||
mkA : (x1,_,x3 : Str) -> A = \a,b,c ->
|
||||
let aa : Str = case a of {
|
||||
teu + "er" => teu + "r" ;
|
||||
mud + "e" => mud ;
|
||||
_ => a
|
||||
} in
|
||||
MorphoGer.mkA a aa b (init c) ** {lock_A = <>} ;
|
||||
|
||||
regA : Str -> A = \a -> case a of {
|
||||
teu + "er" => mkA a (teu + "re") (teu + "rer") (teu + "rest") ;
|
||||
_ + "e" => mkA a a (a + "r") (a + "st") ;
|
||||
_ => mkA a a (a + "er") (a + "est")
|
||||
teu + "er" => mkA a (teu + "rer") (teu + "rest") ;
|
||||
_ + "e" => mkA a (a + "r") (a + "st") ;
|
||||
_ => mkA a (a + "er") (a + "est")
|
||||
} ;
|
||||
|
||||
invarA = \s -> {s = \\_,_ => s ; lock_A = <>} ; ---- comparison
|
||||
@@ -363,6 +369,10 @@ oper
|
||||
prefix = v.prefix ; lock_V = v.lock_V ; aux = v.aux ; vtype = v.vtype
|
||||
} ;
|
||||
|
||||
haben_V = MorphoGer.haben_V ** {lock_V = <>} ;
|
||||
sein_V = MorphoGer.sein_V ** {lock_V = <>} ;
|
||||
werden_V = MorphoGer.werden_V ** {lock_V = <>} ;
|
||||
|
||||
mkV2 v c = v ** {c2 = c ; lock_V2 = <>} ;
|
||||
dirV2 v = mkV2 v (mkPrep [] accusative) ;
|
||||
datV2 v = mkV2 v (mkPrep [] dative) ;
|
||||
@@ -382,7 +392,7 @@ oper
|
||||
|
||||
mkV0 v = v ** {lock_V = <>} ;
|
||||
mkV2S v p = mkV2 v p ** {lock_V2 = <>} ;
|
||||
mkV2V v p t = mkV2 v p ** {s4 = t ; lock_V2 = <>} ;
|
||||
mkV2V v p = mkV2 v p ** {lock_V2 = <>} ;
|
||||
mkVA v = v ** {lock_VA = <>} ;
|
||||
mkV2A v p = mkV2 v p ** {lock_V2A = <>} ;
|
||||
mkV2Q v p = mkV2 v p ** {lock_V2 = <>} ;
|
||||
|
||||
@@ -57,6 +57,11 @@ concrete StructuralGer of Structural = CatGer **
|
||||
"mußte" "mußtest" "mußten" "mußtet"
|
||||
"mußte" "gemüßt" []
|
||||
VHaben) ;
|
||||
one_Quant = {
|
||||
s = \\g,c => "ein" + pronEnding ! GSg g ! c ;
|
||||
n = Sg ;
|
||||
a = Strong
|
||||
} ;
|
||||
only_Predet = {s = \\_,_,_ => "nur"} ;
|
||||
no_Phr = ss ["Nein ."] ;
|
||||
on_Prep = mkPrep "auf" Dat ;
|
||||
@@ -70,7 +75,11 @@ concrete StructuralGer of Structural = CatGer **
|
||||
so_AdA = ss "so" ;
|
||||
somebody_NP = nameNounPhrase {s = caselist "jemand" "jemanden" "jemandem" "jemands"} ;
|
||||
somePl_Det = detLikeAdj Pl "einig" ;
|
||||
-- someSg_Det =
|
||||
someSg_Det = {
|
||||
s = \\g,c => "ein" + pronEnding ! GSg g ! c ;
|
||||
n = Sg ;
|
||||
a = Strong
|
||||
} ;
|
||||
something_NP = nameNounPhrase {s = \\_ => "etwas"} ;
|
||||
somewhere_Adv = ss "irgendwo" ;
|
||||
that_Quant = detLikeAdj Sg "jen" ;
|
||||
@@ -79,11 +88,13 @@ concrete StructuralGer of Structural = CatGer **
|
||||
there7to_Adv = ss "dahin" ;
|
||||
there7from_Adv = ss ["daher"] ;
|
||||
therefore_PConj = ss "deshalb" ;
|
||||
these_NP = {s = caselist "diese" "diese" "diesen" "dieser" ; a = agrP3 Pl} ;
|
||||
these_Quant = detLikeAdj Pl "dies" ;
|
||||
they_Pron = mkPronPers "sie" "sie" "ihnen" "ihrer" "ihr" Pl P3 ;
|
||||
this_Quant = detLikeAdj Sg "dies" ;
|
||||
this_NP = nameNounPhrase {s = caselist "dies" "dies" "diesem" "dieses"} ; ----
|
||||
-- those_NP
|
||||
those_NP = {s = caselist "jene" "jene" "jenen" "jener" ; a = agrP3 Pl} ;
|
||||
those_Quant = detLikeAdj Pl "jen" ;
|
||||
thou_Pron = mkPronPers "du" "dich" "dir" "deiner" "dein" Sg P2 ;
|
||||
through_Prep = mkPrep "durch" Acc ;
|
||||
|
||||
@@ -197,7 +197,7 @@ StructuralGer: almost complete with some determiner forms to revisit
|
||||
ParadigmsGer: almost complete with verb form variations to revisit
|
||||
MorphoGer: very few functions in this module
|
||||
|
||||
16/1
|
||||
16/1 (4h)
|
||||
|
||||
ParamGer: removed Strong/Weak from AForm to save lexicon storage. Done in agrAdj instead.
|
||||
Only affects NounGer and QuestionGer. Notice that making case analysis on <a,gn,c> is
|
||||
@@ -208,5 +208,22 @@ ParadigmsGer: completed
|
||||
ParamGer: VType
|
||||
ResGer, ParadigmsGer: the consequences of this
|
||||
|
||||
BasicGer; started
|
||||
BasicGer; started. Strategy: fill all you know without consulting dictionary;
|
||||
mark ---- before what you dont know, and after what you are uncertain about.
|
||||
|
||||
Insight: to write a *resource* grammar you need not be a fluent speaker, but
|
||||
just to understand what grammar books say. It is when writing application
|
||||
grammars that you need to make stylistic judgements to do the right choices
|
||||
from the resource.
|
||||
|
||||
17/1
|
||||
|
||||
MorphoGer: for numerals
|
||||
NumeralGer: all
|
||||
> make stat
|
||||
66123 german/NumeralGer.gfc
|
||||
added flags optimize=all_subs ;
|
||||
17046 german/NumeralGer.gfc
|
||||
|
||||
BasicGer: completed. Idea: work in pairs, one consulting the dictionary (or
|
||||
giving native speaker advice)
|
||||
|
||||
Reference in New Issue
Block a user