almost completed Swedish

This commit is contained in:
aarne
2005-12-08 15:40:50 +00:00
parent 89423c7ad3
commit 203fc87319
9 changed files with 465 additions and 20 deletions

View File

@@ -39,8 +39,9 @@ incomplete concrete CatScand of Cat =
SC = {s : Str} ; -- always Sub
A = {s : AForm => Str} ;
A2 = {s : AForm => Str} ** {c2 : Str} ;
A = Adjective ;
-- {s : AForm => Str} ;
A2 = Adjective ** {c2 : Str} ;
Adv, AdV, AdA, AdS, AdN = {s : Str} ;
Prep = {s : Str} ;
@@ -73,6 +74,4 @@ incomplete concrete CatScand of Cat =
Conj = {s : Str ; n : Number} ;
DConj = {s1,s2 : Str ; n : Number} ;
oper
Noun = {s : Number => Species => Case => Str ; g : Gender} ;
}

View File

@@ -59,6 +59,9 @@ interface DiffScand = open ResScand, Prelude in {
p = P3
} ;
Noun = {s : Number => Species => Case => Str ; g : Gender} ;
-- This function is here because it depends on $verbHave, auxFut, auxCond$.
predV : Verb -> VP = \verb ->

View File

@@ -18,7 +18,7 @@ resource ResScand = ParamScand ** open Prelude in {
-- But $mkNoun$ is fully defined only for each language, since
-- $Gender$ varies.
nounForms : (_,_,_,_ : Str) -> (Number => Species => Case => Str) =
nounForms : (x1,_,_,x4 : Str) -> (Number => Species => Case => Str) =
\man,mannen,men,mennen -> \\n,d,c => case <n,d> of {
<Sg,Indef> => mkCase c man ;
<Sg,Def> => mkCase c mannen ;
@@ -26,7 +26,9 @@ resource ResScand = ParamScand ** open Prelude in {
<Pl,Def> => mkCase c mennen
} ;
mkAdjective : (s1,_,_,_,_,_,s7 : Str) -> {s : AForm => Str} =
Adjective : Type = {s : AForm => Str} ;
mkAdjective : (x1,_,_,_,_,_,x7 : Str) -> {s : AForm => Str} =
\liten, litet, lilla, sma, mindre, minst, minsta -> {
s = table {
AF (APosit a) c => mkCase c (mkAdjPos a liten litet lilla sma) ;
@@ -45,7 +47,7 @@ resource ResScand = ParamScand ** open Prelude in {
VF (VImper v) => mkVoice v finn ;
VI (VInfin v) => mkVoice v finna ;
VI (VSupin v) => mkVoice v funnit ;
VI (VPtPret a c) => mkCase c (mkAdjPos a funnen funnet funna funna)
VI (VPtPret a c)=> mkCase c (mkAdjPos a funnen funnet funna funna)
}
} ;

View File

@@ -1,10 +1,10 @@
--concrete TensedScand of Tensed = CatScand, TenseX ** open ResScand in {
--
-- flags optimize=all_subs ;
--
-- lin
-- UseCl t a p cl = {s = t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! ODir} ;
-- UseQCl t a p cl = {s = \\q => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! q} ;
-- UseRCl t a p cl = {s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! r} ;
--
--}
incomplete concrete TensedScand of Tensed = CatScand, TenseX ** open ResScand in {
flags optimize=all_subs ;
lin
UseCl t a p cl = {s = \\o => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! o} ;
UseQCl t a p cl = {s = \\q => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! q} ;
UseRCl t a p cl = {s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! p.p ! r} ;
}