-- use this path to read the grammar from the same directory
--# -path=.:../abstract:../../prelude

concrete TestFin of TestAbs = ResFin ** open Prelude, SyntaxFin in {

flags startcat=Phr ; lexer=unglue ; unlexer=glue ;

-- a random sample from the lexicon

lin
  Big = regAdjDegr (sTalo "iso") "isompaa" "isointa" ;
  Small = regAdjDegr (sSusi "pieni" "pienen" "pienenä") "pienempää" "pienintä" ;
  Old = regAdjDegr (sKukko "vanha" "vanhan" "vanhoja") "vanhempaa" "vanhinta" ;
  Young = regAdjDegr (sSusi "nuori" "nuoren" "nuorena") "nuorempaa" "nuorinta" ;
  American = sNainen "amerikkalaista" ;
  Finnish = sNainen "suomalaista" ;

  Married = sKukko "vihitty" "vihityn" "vihittyjä" ** {c = NPCase Illat} ; 
            --- naimisissa !

  Man = cnHum (mkNoun "mies" "miehen" "miehenä" "miestä" "mieheen" "miehinä" 
                "miehissä" "miesten" "miehiä" "miehiin") ;
  Woman = cnHum (sNainen "naista") ;
  Car = cnNoHum (sTalo "auto") ;
  House = cnNoHum (sTalo "talo") ;
  Light = cnNoHum (sTalo "valo") ;

  Walk = vJuosta "kävellä" "kävelen" ;
  Run = vJuosta "juosta" "juoksen" ;
  Say = vSanoa "sanoa" ;
  Prove = vPoistaa "todistaa" ;
  Send = mkTransVerbDir (vOttaa "lähettää" "lähetän") ;
  Love = mkTransVerbCase (vPoistaa "rakastaa") Part ;
  Wait = mkTransVerbCase (vOttaa "odottaa" "odotan") Part ;
  Give = mkTransVerbDir (vOttaa "antaa" "annan") ** 
         {s5 = [] ; s6 = [] ; c2 = CCase Allat} ;
  Prefer = mkTransVerbDir (vOttaa "asettaa" "asetan") ** 
           {s5 = [] ; s6 = "edelle" ; c2 = CCase Gen} ; --- pitää paremp(a/i)na

  Mother = funGen (n2n (cnHum (sKukko "äiti" "äidin" "äitejä"))) ;
  Uncle = funGen (n2n (cnHum (sKukko "setä" "sedän" "setiä"))) ; --- eno!
  Connection = n2n (cnNoHum (sRakkaus "yhteys")) **
               {c = NPCase Elat ; c2 = NPCase Illat} ; --- Tampereelle !

  Always = ss "aina" ;
  Well = ss "hyvin" ;

  SwitchOn  = mkTransVerbDir (vOttaa "sytyttää" "sytytän") ;
  SwitchOff = mkTransVerbDir (vOttaa "sammuttaa" "sammutan") ;

  John = mkProperName (sKukko "Jussi" "Jussin" "Jusseja") ;
  Mary = mkProperName (sKukko "Mari" "Marin" "Mareja") ;

} ;
