Irreg added to language top files; german Irreg created and used

This commit is contained in:
aarne
2006-06-08 21:08:51 +00:00
parent ea9dcc6b3c
commit c89a97d4c6
15 changed files with 445 additions and 9 deletions

View File

@@ -2,6 +2,8 @@
concrete English of EnglishAbs =
LangEng,
-- IrregEng,
IrregEng-[
blow_V,burn_V,come_V,dig_V,fall_V,fly_V,freeze_V,go_V,lie_V,run_V,
sew_V,sing_V,sit_V,sleep_V,spit_V,stand_V,swell_V,swim_V,think_V],
ExtraEng
** {} ;

View File

@@ -1,5 +1,9 @@
--# -path=.:../abstract:../common:prelude
abstract EnglishAbs =
Lang,
--- IrregEngAbs,
IrregEngAbs-[
blow_V,burn_V,come_V,dig_V,fall_V,fly_V,freeze_V,go_V,lie_V,run_V,
sew_V,sing_V,sit_V,sleep_V,spit_V,stand_V,swell_V,swim_V,think_V],
ExtraEngAbs
** {} ;

View File

@@ -2,6 +2,6 @@
concrete French of FrenchAbs =
LangFre,
-- IrregFre,
IrregFre,
ExtraFre
** {} ;

View File

@@ -1,5 +1,5 @@
abstract FrenchAbs =
Lang,
--- IrregFreAbs,
IrregFreAbs,
ExtraFreAbs
** {} ;

View File

@@ -0,0 +1,3 @@
concrete ExtraGer of ExtraGerAbs = CatGer ** open ResGer in {
}

View File

@@ -0,0 +1,3 @@
abstract ExtraGerAbs = {
}

View File

@@ -0,0 +1,7 @@
--# -path=.:../abstract:../common:prelude
concrete German of GermanAbs =
LangGer,
IrregGer,
ExtraGer
** {} ;

View File

@@ -0,0 +1,7 @@
--# -path=.:../abstract:../common:prelude
abstract GermanAbs =
Lang,
IrregGerAbs,
ExtraGerAbs
** {} ;

View File

@@ -1,7 +1,194 @@
--# -path=.:prelude:../abstract:../common
-- adapted from verb list in
-- http://www.iee.et.tu-dresden.de/~wernerr/grammar/verben_dt.html
concrete IrregGer of IrregGerAbs = CatGer ** open ParadigmsGer in {
flags optimize=values ;
flags optimize=values ;
lin backen_V = irregV "backen" "bäckt" (variants {"backt" ; "buk"}) (variants {"backt" ; "buke"}) "gebacken" ;
lin befehlen_V = irregV "befehlen" "befiehlt" "befahl" "beföhle" "befähle)" ;
lin beginnen_V = irregV "beginnen" "beginnt" "begann" "begönne" "begänne)" ;
lin beißen_V = irregV "beißen" "beißt" "biß" "biße" "gebissen" ;
lin bergen_V = irregV "bergen" "birgt" "barg" "bärge" "geborgen" ;
lin bersten_V = irregV "bersten" "birst" "barst" "bärste" "geborsten" ;
lin bewegen_V = irregV "bewegen" "bewegt" "bewog" "bewöge" "bewogen" ;
lin biegen_V = irregV "biegen" "biegt" "bog" "böge" "gebogen" ;
lin bieten_V = irregV "bieten" "bietet" "bot" "böte" "geboten" ;
lin binden_V = irregV "binden" "bindt" "band" "bände" "gebunden" ;
lin bitten_V = irregV "bitten" "bittet" "bat" "bäte" "gebeten" ;
lin blasen_V = irregV "blasen" "bläst" "blies" "bliese" "geblasen" ;
lin bleiben_V = irregV "bleiben" "bleibt" "blieb" "bliebe" "geblieben" ;
lin braten_V = irregV "braten" "brät" "briet" "briete" "gebraten" ;
lin brechen_V = irregV "brechen" "bricht" "brach" "bräche" "gebrochen" ;
lin brennen_V = irregV "brennen" "brennt" "brannte" "brennte" "gebrannt" ;
lin bringen_V = irregV "bringen" "bringt" "brachte" "brachte" "gebracht" ;
lin denken_V = irregV "denken" "denkt" "dachte" "dachte" "gedacht" ;
lin dingen_V = irregV "dingen" "dingt" "dingte" "dang" "gedungen" ;
lin dreschen_V = irregV "dreschen" "drischt" "drosch" "drösche" "gedroschen" ;
lin dringen_V = irregV "dringen" "dringt" "drang" "dränge" "gedrungen" ;
lin dürfen_V = irregV "dürfen" "darf" "durfte" "dürfte" "gedurft" ;
lin empfehlen_V = irregV "empfehlen" "empfiehlt" "empfahl"
(variants {"empföhle" ; "empfähle"}) "empfohlen" ;
lin erlöschen_V = irregV "erlöschen" "erlischt" "erlosch" "erlösche" "erloschen" ;
lin erkennen_V = irregV "erkennen" "erkennt" "erkannte" "erkannte" "erkannt" ;
lin erschrecken_V = irregV "erschrecken" "erschrickt" "erschrak" "erschräke" "erschrocken" ;
lin essen_V = irregV "essen" "ißt" "aß" "äße" "gegessen" ;
lin fahren_V = irregV "fahren" "fährt" "fuhr" "führe" "gefahren" ;
lin fallen_V = irregV "fallen" "fällt" "fiel" "fiele" "gefallen" ;
lin fangen_V = irregV "fangen" "fängt" "fing" "finge" "gefangen" ;
lin fechten_V = irregV "fechten" "fechtet" "focht" "föchte" "gefochten" ;
lin finden_V = irregV "finden" "findt" "fand" "fände" "gefunden" ;
lin flechten_V = irregV "flechten" "flicht" "flocht" "flöchte" "geflochten" ;
lin fliegen_V = irregV "fliegen" "fliegt" "flog" "flöge" "geflogen" ;
lin fliehen_V = irregV "fliehen" "flieht" "floh" "flöhe" "geflohen" ;
lin fließen_V = irregV "fließen" "fließt" "floß" "flösse" "geflossen" ;
lin fressen_V = irregV "fressen" "frißt" "fraß" "fräße" "gefressen" ;
lin frieren_V = irregV "frieren" "friert" "fror" "fröre" "gefroren" ;
lin gären_V = irregV "gären" "gärt" (variants {"gor" ; "gärte"}) "göre" "gegoren" ;
lin gebären_V = irregV "gebären" "gebiert" "gebar" "gebäre" "geboren" ;
lin geben_V = irregV "geben" "gibt" "gab" "gäbe" "gegeben" ;
lin gedeihen_V = irregV "gedeihen" "gedeiht" "gedieh" "gediehe" "gediehen" ;
lin gehen_V = irregV "gehen" "geht" "ging" "ginge" "gegangen" ;
lin gelingen_V = irregV "gelingen" "gelingt" "gelang" "gelange" "gelungen" ;
lin gelten_V = irregV "gelten" "gilt" "galt" (variants {"galte" ; "golte"}) "gegolten" ;
lin genesen_V = irregV "genesen" "genest" "genas" "genäse" "genesen" ;
lin genießen_V = irregV "genießen" "genießt" "genoß" "genösse" "genossen" ;
lin geschehen_V = irregV "geschehen" "geschieht" "geschah" "geschehen" "geschähe" ;
lin gewinnen_V = irregV "gewinnen" "gewinnt" "gewann" (variants {"gewönne" ; "gewänne"}) "gewonnen" ;
lin gießen_V = irregV "gießen" "gießt" "goß" "gösse" "gegossen" ;
lin gleichen_V = irregV "gleichen" "gleicht" "glich" "gliche" "geglichen" ;
lin gleiten_V = irregV "gleiten" "gleitet" "glitt" "glitte" "geglitten" ;
lin glimmen_V = irregV "glimmen" "glimmt" "glomm" "glimmte" "glömme" ;
lin graben_V = irregV "graben" "gräbt" "grub" "grübe" "gegraben" ;
lin greifen_V = irregV "greifen" "greift" "griff" "griffe" "gegriffen" ;
lin haben_V = irregV "haben" "hat" "hatte" "hatte" "gehabt" ;
lin halten_V = irregV "halten" "hält" "hielt" "hielte" "gehalten" ;
lin hängen_V = irregV "hängen" "hängt" "hing" "hinge" "gehangen" ;
lin hauen_V = irregV "hauen" "haut" (variants {"haute" ; "hieb"}) (variants {"haute" ; "hiebe"}) "gehauen" ;
lin heben_V = irregV "heben" "hebt" "hob" "höbe" "gehoben" ;
lin heißen_V = irregV "heißen" "heißt" "hieß" "hieße" "geheißen" ;
lin helfen_V = irregV "helfen" "hilft" "half" "hülfe" "geholfen" ;
lin kennen_V = irregV "kennen" "kennt" "kannte" "kennte" "gekannt" ;
lin klimmen_V = irregV "klimmen" "klimmt" "klomm" "klömme" "geklommen" ;
lin klingen_V = irregV "klingen" "klingt" "klang" "klänge" "geklungen" ;
lin kneifen_V = irregV "kneifen" "kneift" "kniff" "kniffe" "gekniffen" ;
lin kommen_V = irregV "kommen" "kommt" "kam" "käme" "gekommen" ;
lin können_V = irregV "können" "kann" "konnte" "könnte" "gekonnt" ;
lin kriechen_V = irregV "kriechen" "kriecht" "kroch" "kröche" "gekrochen" ;
lin küren_V = irregV "küren" "kürt" "kürte" "kor" "gekürt" ;
lin laden_V = irregV "laden" "lädt" "lud" "lüde" "geladen" ;
lin lassen_V = irregV "lassen" "läßt" "ließ" "ließe" "gelassen" ;
lin laufen_V = irregV "laufen" "läuft" "lief" "liefe" "gelaufen" ;
lin leiden_V = irregV "leiden" "leidt" "litt" "litte" "gelitten" ;
lin leihen_V = irregV "leihen" "leiht" "lieh" "liehe" "geliehen" ;
lin lesen_V = irregV "lesen" "liest" "las" "läse" "gelesen" ;
lin liegen_V = irregV "liegen" "liegt" "lag" "läge" "gelegen" ;
lin lügen_V = irregV "lügen" "lügt" "log" "löge" "gelogen" ;
lin mahlen_V = irregV "mahlen" "mahlt" "mahlte" "mahlte" "gemahlen" ;
lin meiden_V = irregV "meiden" "meidt" "mied" "miede" "gemieden" ;
lin melken_V = irregV "melken" (variants {"melkt" ; "milkt"}) (variants {"melkte" ; "molk"}) "gemolken" "gemelkt" ;
lin messen_V = irregV "messen" "mißt" "maß" "mäße" "gemessen" ;
lin mißlingen_V = irregV "mißlingen" "mißlingt" "mißlang" "mißlungen" "mißlänge" ;
lin mögen_V = irregV "mögen" "mag" "mochte" "möchte" "gemocht" ;
lin müssen_V = irregV "müssen" "muß" "mußte" "müßte" "gemußt" ;
lin nehmen_V = irregV "nehmen" "nimmt" "nahm" "nähme" "genommen" ;
lin nennen_V = irregV "nennen" "nennt" "nannte" "nennte" "genannt" ;
lin pfeifen_V = irregV "pfeifen" "pfeift" "pfiff" "pfiffe" "gepfiffen" ;
lin preisen_V = irregV "preisen" "preist" "pries" "priese" "gepriesen" ;
lin quellen_V = irregV "quellen" "quillt" "quoll" "quölle" "gequollen" ;
lin raten_V = irregV "raten" "rät" "riet" "riete" "geraten" ;
lin reiben_V = irregV "reiben" "reibt" "rieb" "riebe" "gerieben" ;
lin reißen_V = irregV "reißen" "reißt" "riß" "riße" "gerissen" ;
lin reiten_V = irregV "reiten" "reitet" "ritt" "ritte" "geritten" ;
lin rennen_V = irregV "rennen" "rennt" "rannte" "rennte" "gerannt" ;
lin riechen_V = irregV "riechen" "riecht" "roch" "röche" "gerochen" ;
lin ringen_V = irregV "ringen" "ringt" "rang" "ränge" "gerungen" ;
lin rinnen_V = irregV "rinnen" "rinnt" "rann" "ränne" "geronnen" ;
lin rufen_V = irregV "rufen" "ruft" "rief" "riefe" "gerufen" ;
lin salzen_V = irregV "salzen" "salzt" "salzte" "salzte" "gesalzen" ;
lin saufen_V = irregV "saufen" "säuft" "soff" "söffe" "gesoffen" ;
lin saugen_V = irregV "saugen" "saugt" (variants {"saugte" ; "sog"}) (variants {"saugte" ; "soge"}) (variants {"gesaugt" ; "gesogen"}) ;
lin schaffen_V = irregV "schaffen" "schafft" "schuf" "schüfe" "geschaffen" ;
lin scheiden_V = irregV "scheiden" "scheidt" "schied" "schiede" "geschieden" ;
lin scheinen_V = irregV "scheinen" "scheint" "schien" "schiene" "geschienen" ;
lin scheißen_V = irregV "scheißen" "scheißt" "schiß" "schiße" "geschissen" ;
lin schelten_V = irregV "schelten" "schilt" "schalt" "schölte" "gescholten" ;
lin scheren_V = irregV "scheren" "schert" "schor" "schöre" "geschoren" ;
lin schieben_V = irregV "schieben" "schiebt" "schob" "schöbe" "geschoben" ;
lin schießen_V = irregV "schießen" "schießt" "schoß" "schösse" "geschossen" ;
lin schinden_V = irregV "schinden" "schindt" "schund" "schunde" "geschunden" ;
lin schlafen_V = irregV "schlafen" "schläft" "schlief" "schliefe" "geschlafen" ;
lin schlagen_V = irregV "schlagen" "schlägt" "schlug" "schlüge" "geschlagen" ;
lin schleichen_V = irregV "schleichen" "schleicht" "schlich" "schliche" "geschlichen" ;
lin schleifen_V = irregV "schleifen" "schleift" "schliff" "schliffe" "geschliffen" ;
lin schleißen_V = irregV "schleißen" "schleißt" (variants {"schliß" ; "schleißte"}) (variants {"schliß" ; "schleißte"}) (variants {"geschlissen" ; "geschleißt"}) ;
lin schließen_V = irregV "schließen" "schließt" "schloß" "schlösse" "geschlossen" ;
lin schlingen_V = irregV "schlingen" "schlingt" "schlang" "schlünge" "geschlungen" ;
lin schmeißen_V = irregV "schmeißen" "schmeißt" "schmiß" "schmiße" "geschmissen" ;
lin schmelzen_V = irregV "schmelzen" "schmilzt" "schmolz" "schmölze" "geschmolzen" ;
lin schneiden_V = irregV "schneiden" "schneidt" "schnitt" "schnitte" "geschnitten" ;
lin schreiben_V = irregV "schreiben" "schreibt" "schrieb" "schriebe" "geschrieben" ;
lin schreien_V = irregV "schreien" "schreit" "schrie" "schrie" "geschrien" ;
lin schreiten_V = irregV "schreiten" "schreitet" "schritt" "schritte" "geschritten" ;
lin schweigen_V = irregV "schweigen" "schweigt" "schwieg" "schwiege" "geschwiegen" ;
lin schwellen_V = irregV "schwellen" "schwillt" "schwoll" "schwölle" "geschwollen" ;
lin schwimmen_V = irregV "schwimmen" "schwimmt" "schwamm" (variants {"schwömme" ; "schwämme"}) "geschwommen" ;
lin schwinden_V = irregV "schwinden" "schwindt" "schwand" "schwände" "geschwunden" ;
lin schwingen_V = irregV "schwingen" "schwingt" "schwang" "schwänge" "geschwungen" ;
lin schwören_V = irregV "schwören" "schwört" "schwor" "schwüre" "geschworen" ;
lin sehen_V = irregV "sehen" "sieht" "sah" "sähe" "gesehen" ;
lin sein_V = irregV "sein" "ist" "war" "wäre" "gewesen" ;
lin senden_V = irregV "senden" "sendt" (variants {"sandte" ; "sendete"}) (variants {"sandte" ; "sendete"}) (variants {"gesandt" ; "gesendet"}) ;
lin sieden_V = irregV "sieden" "siedt" (variants {"siedete" ; "sott"}) (variants {"siedete" ; "sotte"}) (variants {"gesotten" ; "gesiedet"}) ;
lin singen_V = irregV "singen" "singt" "sang" "sänge" "gesungen" ;
lin sinken_V = irregV "sinken" "sinkt" "sank" "sänke" "gesunken" ;
lin sinnen_V = irregV "sinnen" "sinnt" "sann" "sänne" "gesonnen" ;
lin sitzen_V = irregV "sitzen" "sitzt" "saß" "säße" "gesessen" ;
lin sollen_V = irregV "sollen" "sollt" "sollte" "sollte" "gesollt" ;
lin speien_V = irregV "speien" "speit" "spie" "spie" "gespien" ;
lin spinnen_V = irregV "spinnen" "spinnt" "spann" (variants {"spönne" ; "spänne"}) "gesponnen" ;
lin spleißen_V = irregV "spleißen" "spleißt" "spliß" "spliße" "gesplissen" ;
lin sprechen_V = irregV "sprechen" "spricht" "sprach" "spräche" "gesprochen" ;
lin sprießen_V = irregV "sprießen" "sprießt" "sproß" "sprösse" "gesprossen" ;
lin springen_V = irregV "springen" "springt" "sprang" "spränge" "gesprungen" ;
lin stechen_V = irregV "stechen" "sticht" "stach" "stäche" "gestochen" ;
lin stehen_V = irregV "stehen" "steht" "stand" (variants {"stünde" ; "stände"}) "gestanden" ;
lin stehlen_V = irregV "stehlen" "stiehlt" "stahl" "stähle" "gestohlen" ;
lin steigen_V = irregV "steigen" "steigt" "stieg" "stiege" "gestiegen" ;
lin sterben_V = irregV "sterben" "stirbt" "starb" "stürbe" "gestorben" ;
lin stieben_V = irregV "stieben" "stiebt" "stob" "stöbe" "gestoben" ;
lin stinken_V = irregV "stinken" "stinkt" "stank" "stänke" "gestunken" ;
lin stoßen_V = irregV "stoßen" "stößt" "stieß" "stieße" "gestoßen" ;
lin streichen_V = irregV "streichen" "streicht" "strich" "striche" "gestrichen" ;
lin streiten_V = irregV "streiten" "streitet" "stritt" "stritte" "gestritten" ;
lin tragen_V = irregV "tragen" "trägt" "trug" "trüge" "getragen" ;
lin treffen_V = irregV "treffen" "trifft" "traf" "träfe" "getroffen" ;
lin treiben_V = irregV "treiben" "treibt" "trieb" "triebe" "getrieben" ;
lin treten_V = irregV "treten" "tritt" "trat" "träte" "getreten" ;
lin trinken_V = irregV "trinken" "trinkt" "trank" "tränke" "getrunken" ;
lin trügen_V = irregV "trügen" "trügt" "trog" "tröge" "getrogen" ;
lin tun_V = irregV "tun" "tut" "tat" "täte" "getan" ;
lin verderben_V = irregV "verderben" "verdirbt" "verdarb" "verdarbe" "verdorben" ;
lin verlieren_V = irregV "verlieren" "verliert" "verlor" "verlöre" "verloren" ;
lin wachsen_V = irregV "wachsen" "wächst" "wuchs" "wüchse" "gewachsen" ;
lin wägen_V = irregV "wägen" "wägt" "wog" "woge" "gewogen" ;
lin waschen_V = irregV "waschen" "wäscht" "wusch" "wüsche" "gewaschen" ;
lin weben_V = irregV "weben" "webt" (variants {"wob" ; "webte"}) "wöbe" (variants {"gewoben" ; "gewebt"}) ;
lin weichen_V = irregV "weichen" "weicht" "wich" "wiche" "gewichen" ;
lin weisen_V = irregV "weisen" "weist" "wies" "wiese" "gewiesen" ;
lin wenden_V = irregV "wenden" "wendt" (variants {"wandte" ; "wendete"}) (variants {"wandte" ; "wendete"}) (variants {"gewandt" ; "gewendet"}) ;
lin werben_V = irregV "werben" "wirbt" "warb" "würbe" "geworben" ;
lin werden_V = irregV "werden" "wird" (variants {"wurde" ; "ward"}) "würde" "geworden" ;
lin werfen_V = irregV "werfen" "wirft" "warf" "würfe" "geworfen" ;
lin wiegen_V = irregV "wiegen" "wiegt" "wog" "wöge" "gewogen" ;
lin winden_V = irregV "winden" "windt" "wand" "wände" "gewunden" ;
lin wissen_V = irregV "wissen" "weiß" "wußte" "wüßte" "gewußt" ;
lin wollen_V = irregV "wollen" "will" "wollte" "wollte" "gewollt" ;
lin wringen_V = irregV "wringen" "wringt" "wrang" "wränge" "gewrungen" ;
lin zeihen_V = irregV "zeihen" "zeiht" "zieh" "ziehe" "geziehen" ;
lin ziehen_V = irregV "ziehen" "zieht" "zog" "zöge" "gezogen" ;
lin zwingen_V = irregV "zwingen" "zwingt" "zwang" "zwänge" "gezwungen" ;
}

View File

@@ -1,3 +1,185 @@
abstract IrregGerAbs = Cat ** {
fun backen_V : V ;
fun befehlen_V : V ;
fun beginnen_V : V ;
fun beißen_V : V ;
fun bergen_V : V ;
fun bersten_V : V ;
fun bewegen_V : V ;
fun biegen_V : V ;
fun bieten_V : V ;
fun binden_V : V ;
fun bitten_V : V ;
fun blasen_V : V ;
fun bleiben_V : V ;
fun braten_V : V ;
fun brechen_V : V ;
fun brennen_V : V ;
fun bringen_V : V ;
fun denken_V : V ;
fun dingen_V : V ;
fun dreschen_V : V ;
fun dringen_V : V ;
fun dürfen_V : V ;
fun empfehlen_V : V ;
fun erlöschen_V : V ;
fun erkennen_V : V ;
fun erschrecken_V : V ;
fun essen_V : V ;
fun fahren_V : V ;
fun fallen_V : V ;
fun fangen_V : V ;
fun fechten_V : V ;
fun finden_V : V ;
fun flechten_V : V ;
fun fliegen_V : V ;
fun fliehen_V : V ;
fun fließen_V : V ;
fun fressen_V : V ;
fun frieren_V : V ;
fun gären_V : V ;
fun gebären_V : V ;
fun geben_V : V ;
fun gedeihen_V : V ;
fun gehen_V : V ;
fun gelingen_V : V ;
fun gelten_V : V ;
fun genesen_V : V ;
fun genießen_V : V ;
fun geschehen_V : V ;
fun gewinnen_V : V ;
fun gießen_V : V ;
fun gleichen_V : V ;
fun gleiten_V : V ;
fun glimmen_V : V ;
fun graben_V : V ;
fun greifen_V : V ;
fun haben_V : V ;
fun halten_V : V ;
fun hängen_V : V ;
fun hauen_V : V ;
fun heben_V : V ;
fun heißen_V : V ;
fun helfen_V : V ;
fun kennen_V : V ;
fun klimmen_V : V ;
fun klingen_V : V ;
fun kneifen_V : V ;
fun kommen_V : V ;
fun können_V : V ;
fun kriechen_V : V ;
fun küren_V : V ;
fun laden_V : V ;
fun lassen_V : V ;
fun laufen_V : V ;
fun leiden_V : V ;
fun leihen_V : V ;
fun lesen_V : V ;
fun liegen_V : V ;
fun lügen_V : V ;
fun mahlen_V : V ;
fun meiden_V : V ;
fun melken_V : V ;
fun messen_V : V ;
fun mißlingen_V : V ;
fun mögen_V : V ;
fun müssen_V : V ;
fun nehmen_V : V ;
fun nennen_V : V ;
fun pfeifen_V : V ;
fun preisen_V : V ;
fun quellen_V : V ;
fun raten_V : V ;
fun reiben_V : V ;
fun reißen_V : V ;
fun reiten_V : V ;
fun rennen_V : V ;
fun riechen_V : V ;
fun ringen_V : V ;
fun rinnen_V : V ;
fun rufen_V : V ;
fun salzen_V : V ;
fun saufen_V : V ;
fun saugen_V : V ;
fun schaffen_V : V ;
fun scheiden_V : V ;
fun scheinen_V : V ;
fun scheißen_V : V ;
fun schelten_V : V ;
fun scheren_V : V ;
fun schieben_V : V ;
fun schießen_V : V ;
fun schinden_V : V ;
fun schlafen_V : V ;
fun schlagen_V : V ;
fun schleichen_V : V ;
fun schleifen_V : V ;
fun schleißen_V : V ;
fun schließen_V : V ;
fun schlingen_V : V ;
fun schmeißen_V : V ;
fun schmelzen_V : V ;
fun schneiden_V : V ;
fun schreiben_V : V ;
fun schreien_V : V ;
fun schreiten_V : V ;
fun schweigen_V : V ;
fun schwellen_V : V ;
fun schwimmen_V : V ;
fun schwinden_V : V ;
fun schwingen_V : V ;
fun schwören_V : V ;
fun sehen_V : V ;
fun sein_V : V ;
fun senden_V : V ;
fun sieden_V : V ;
fun singen_V : V ;
fun sinken_V : V ;
fun sinnen_V : V ;
fun sitzen_V : V ;
fun sollen_V : V ;
fun speien_V : V ;
fun spinnen_V : V ;
fun spleißen_V : V ;
fun sprechen_V : V ;
fun sprießen_V : V ;
fun springen_V : V ;
fun stechen_V : V ;
fun stehen_V : V ;
fun stehlen_V : V ;
fun steigen_V : V ;
fun sterben_V : V ;
fun stieben_V : V ;
fun stinken_V : V ;
fun stoßen_V : V ;
fun streichen_V : V ;
fun streiten_V : V ;
fun tragen_V : V ;
fun treffen_V : V ;
fun treiben_V : V ;
fun treten_V : V ;
fun trinken_V : V ;
fun trügen_V : V ;
fun tun_V : V ;
fun verderben_V : V ;
fun verlieren_V : V ;
fun wachsen_V : V ;
fun wägen_V : V ;
fun waschen_V : V ;
fun weben_V : V ;
fun weichen_V : V ;
fun weisen_V : V ;
fun wenden_V : V ;
fun werben_V : V ;
fun werden_V : V ;
fun werfen_V : V ;
fun wiegen_V : V ;
fun winden_V : V ;
fun wissen_V : V ;
fun wollen_V : V ;
fun wringen_V : V ;
fun zeihen_V : V ;
fun ziehen_V : V ;
fun zwingen_V : V ;
}

View File

@@ -0,0 +1,41 @@
import Data.List
-- To massage the verb list in
-- http://www.iee.et.tu-dresden.de/~wernerr/grammar/verben_dt.html
-- Some manual clean-up needed.
mk file = do
s <- readFile file
mapM_ putStrLn $ map mkV $ lines s
mkV l = case words l of
tun:tut:tat:tate:getan:_ -> fun tun ++ "\n" ++ lin tun tut tat tate getan
tun:tut:tat:getan:_ -> fun tun ++ "\n" ++ lin tun tut tat (tat++"e") getan
_ -> ""
fun tun = " fun " ++ tun ++ "_V : V ;"
lin tun tut tat tate getan =
" lin " ++ tun ++ "_V = irregV " ++
quote [tun,sg3 tun tut,tat,tate,getan] ++ " ;"
quote = unwords . map qu where
qu s = case s of
'(':w -> vars (init w)
_ -> vars s
sg3 tun tut = case tut of
"*" -> case reverse tun of
'n':'e':'t':_ -> init tun ++ "t"
'n':'e':_ -> init (init tun) ++ "t"
_ -> init tun ++ "t"
_ -> words tut' !! 2
where
tut' = map (\c -> if c==',' then ' ' else c) tut
vars w = case words (map (\c -> if c=='/' then ' ' else c) w) of
[s] -> quo s
ws -> "(variants {" ++ unwords (intersperse ";" (map quo ws)) ++ "})"
quo s = "\"" ++ s ++ "\""

View File

@@ -2,6 +2,6 @@
concrete Norwegian of NorwegianAbs =
LangNor,
-- IrregNor,
IrregNor - [fly_V],
ExtraNor
** {} ;

View File

@@ -1,5 +1,5 @@
abstract NorwegianAbs =
Lang,
--- IrregNorAbs,
IrregNorAbs - [fly_V],
ExtraNorAbs
** {} ;

View File

@@ -2,6 +2,6 @@
concrete Swedish of SwedishAbs =
LangSwe,
-- IrregSwe,
IrregSwe,
ExtraSwe
** {} ;

View File

@@ -1,5 +1,5 @@
abstract SwedishAbs =
Lang,
--- IrregSweAbs,
IrregSweAbs,
ExtraSweAbs
** {} ;