forked from GitHub/gf-core
Norwegian
This commit is contained in:
@@ -49,8 +49,8 @@ concrete StructuralDan of Structural =
|
||||
|
||||
ThisDet = mkDeterminerSgGender2 ["den her"] ["det her"] (DefP Indef) ;
|
||||
ThatDet = mkDeterminerSgGender2 ["den der"] ["det der"] (DefP Indef) ;
|
||||
TheseNumDet = mkDeterminerPlNum ["de her"] (DefP Def) ;
|
||||
ThoseNumDet = mkDeterminerPlNum ["de der"] (DefP Def) ;
|
||||
TheseNumDet = mkDeterminerPlNum ["de her"] (DefP Indef) ;
|
||||
ThoseNumDet = mkDeterminerPlNum ["de der"] (DefP Indef) ;
|
||||
|
||||
HowIAdv = ss "hvor" ;
|
||||
WhenIAdv = ss "hvornår" ;
|
||||
|
||||
@@ -82,8 +82,8 @@ instance SyntaxDan of SyntaxScand = TypesDan **
|
||||
auxHar = "har" ;
|
||||
auxHade = "havde" ;
|
||||
auxHa = "have" ;
|
||||
auxSka = "skal" ;
|
||||
auxSkulle = "skulle" ;
|
||||
auxSka = "val" ;
|
||||
auxSkulle = "ville" ;
|
||||
|
||||
infinAtt = "at" ;
|
||||
|
||||
@@ -101,4 +101,15 @@ instance SyntaxDan of SyntaxScand = TypesDan **
|
||||
pronVems = "hvis" ; ---- ??
|
||||
pronVad = "hvad" ;
|
||||
|
||||
--- added with Nor
|
||||
|
||||
conjGender : Gender -> Gender -> Gender = \m,n ->
|
||||
case <m,n> of {
|
||||
<Utr,Utr> => Utr ;
|
||||
_ => Neutr
|
||||
} ;
|
||||
|
||||
mkDeterminerSgGender3 : Str -> Str -> Str -> SpeciesP -> Determiner = \en,_,ett ->
|
||||
mkDeterminerSgGender (table {Utr => en ; Neutr => ett}) ;
|
||||
|
||||
}
|
||||
@@ -33,7 +33,7 @@ lin
|
||||
Prefer = extTransVerb (vNopart (vSpis "foretrækk")) [] ** {s3 = "for"} ;
|
||||
|
||||
Say = vNopart (mkVerb "sige" "siger" "siges" "sagde" "sagt" "sig") ;
|
||||
Prove = vNopart (vSpis "bevise") ;
|
||||
Prove = vNopart (vSpis "bevis") ;
|
||||
SwitchOn = mkDirectVerb (vHusk "lukk" ** {s1 = "op"}) ;
|
||||
SwitchOff = mkDirectVerb (vHusk "slukk" ** {s1 = []}) ;
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
instance TypesDan of TypesScand = {
|
||||
|
||||
param
|
||||
Gender = Utr | Neutr ;
|
||||
NounGender = NUtr | NNeutr ;
|
||||
|
||||
oper
|
||||
@@ -17,6 +18,8 @@ oper
|
||||
sexNoun _ = NoMasc ;
|
||||
gen2nounGen = \s -> case s of {Utr => NUtr ; Neutr => NNeutr} ;
|
||||
|
||||
utrum = Utr ; neutrum = Neutr ;
|
||||
|
||||
param
|
||||
AdjFormPos = Strong GenNum | Weak ;
|
||||
|
||||
|
||||
@@ -156,7 +156,11 @@ oper
|
||||
mkDeterminerSg (\\g => en ! genNoun g) ;
|
||||
|
||||
mkDeterminerSgGender2 : Str -> Str -> SpeciesP -> Determiner = \en,ett ->
|
||||
mkDeterminerSgGender (table {Utr => en ; Neutr => ett}) ;
|
||||
mkDeterminerSgGender3 en en ett ;
|
||||
|
||||
-- This is only needed in Norwegian.
|
||||
|
||||
mkDeterminerSgGender3 : Str -> Str -> Str -> SpeciesP -> Determiner ;
|
||||
|
||||
-- Here are some examples. We are in fact doing some ad hoc morphology here,
|
||||
-- instead of importing the lexicon.
|
||||
@@ -281,7 +285,7 @@ oper
|
||||
case n of {Sg => ASg g ; Pl => APl} ;
|
||||
|
||||
genGN : GenNum -> Gender = \gn ->
|
||||
case gn of {ASg g => g ; _ => Utr} ;
|
||||
case gn of {ASg g => g ; _ => utrum} ;
|
||||
numGN : GenNum -> Number = \gn ->
|
||||
case gn of {ASg _ => Sg ; APl => Pl} ;
|
||||
|
||||
@@ -928,7 +932,7 @@ oper
|
||||
PGen _ => pronVems ;
|
||||
_ => pronVem
|
||||
} ;
|
||||
g = Utr ;
|
||||
g = utrum ;
|
||||
n = num
|
||||
} ;
|
||||
|
||||
@@ -1053,7 +1057,7 @@ oper
|
||||
Imperative = SS1 Number ;
|
||||
|
||||
imperVerbPhrase : VerbPhrase -> Imperative = \titta ->
|
||||
{s = \\n => titta.s ! VImperat ++ titta.s2 ++ titta.s3 ! VImperat ! Utr ! n} ;
|
||||
{s = \\n => titta.s ! VImperat ++ titta.s2 ++ titta.s3 ! VImperat ! utrum ! n} ;
|
||||
|
||||
imperUtterance : Number -> Imperative -> Utterance = \n,I ->
|
||||
ss (I.s ! n ++ "!") ;
|
||||
@@ -1173,10 +1177,7 @@ oper
|
||||
_ => Pl
|
||||
} ;
|
||||
|
||||
conjGender : Gender -> Gender -> Gender = \m,n -> case <m,n> of {
|
||||
<Utr,Utr> => Utr ;
|
||||
_ => Neutr
|
||||
} ;
|
||||
conjGender : Gender -> Gender -> Gender ;
|
||||
|
||||
|
||||
--2 Subjunction
|
||||
|
||||
@@ -19,7 +19,7 @@ interface TypesScand = {
|
||||
-- Their parameter values are atomic.
|
||||
|
||||
param
|
||||
Gender = Utr | Neutr ;
|
||||
Gender ;
|
||||
Number = Sg | Pl ;
|
||||
Species = Indef | Def ;
|
||||
Case = Nom | Gen ;
|
||||
@@ -46,6 +46,8 @@ param SubstForm = SF Number Species Case ;
|
||||
|
||||
oper Subst : Type = {s : SubstForm => Str ; h1 : Gender} ;
|
||||
|
||||
neutrum, utrum : Gender ;
|
||||
|
||||
--3 Adjectives
|
||||
--
|
||||
-- Adjectives are a very complex class, and the full table has as many as
|
||||
@@ -84,7 +86,7 @@ param
|
||||
oper
|
||||
Adj : Type = {s : AdjForm => Str} ;
|
||||
|
||||
adverbForm : AdjFormPos = Strong (ASg Neutr) ;
|
||||
adverbForm : AdjFormPos = Strong (ASg neutrum) ;
|
||||
|
||||
--3 Verbs
|
||||
--
|
||||
|
||||
@@ -105,4 +105,15 @@ instance SyntaxSwe of SyntaxScand = TypesSwe **
|
||||
pronVems = "vems" ;
|
||||
pronVad = "vad" ;
|
||||
|
||||
--- added with Nor
|
||||
|
||||
conjGender : Gender -> Gender -> Gender = \m,n ->
|
||||
case <m,n> of {
|
||||
<Utr,Utr> => Utr ;
|
||||
_ => Neutr
|
||||
} ;
|
||||
|
||||
mkDeterminerSgGender3 : Str -> Str -> Str -> SpeciesP -> Determiner = \en,_,ett ->
|
||||
mkDeterminerSgGender (table {Utr => en ; Neutr => ett}) ;
|
||||
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
instance TypesSwe of TypesScand = {
|
||||
|
||||
param
|
||||
Gender = Utr | Neutr ;
|
||||
NounGender = NUtr Sex | NNeutr ;
|
||||
|
||||
oper
|
||||
@@ -17,6 +18,8 @@ oper
|
||||
sexNoun = \s -> case s of {NUtr x => x ; NNeutr => NoMasc} ;
|
||||
gen2nounGen = \s -> case s of {Utr => NUtr NoMasc ; Neutr => NNeutr} ;
|
||||
|
||||
utrum = Utr ; neutrum = Neutr ;
|
||||
|
||||
param
|
||||
AdjFormPos = Strong GenNum | Weak SexNum ;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user