summaryrefslogtreecommitdiff
path: root/next-lib/src/danish/StructuralDan.gf
blob: f401bfdd4d394bb9e36247073f57cb7036ddd277 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
concrete StructuralDan of Structural = CatDan ** 
  open MorphoDan, ParadigmsDan, Prelude in {

  flags optimize=all ;

  lin
  above_Prep = ss "ovenfor" ;
  after_Prep = ss "efter" ;
  by8agent_Prep = ss "af" ;
  all_Predet = {s = gennumForms "all" "alt" "alle"} ;
  almost_AdA, almost_AdN = ss "næsten" ;
  although_Subj = ss ["selv om"] ;
  always_AdV = ss "altid" ;
  and_Conj = {s1 = [] ; s2 = "og" ; n = Pl} ;
  because_Subj = ss "fordi" ;
  before_Prep = ss "før" ;
  behind_Prep = ss "bag" ;
  between_Prep = ss "mellem" ;
  both7and_DConj = sd2 "både" "og" ** {n = Pl} ;
  but_PConj = ss "men" ;
  by8means_Prep = ss "med" ;
  can8know_VV, can_VV = 
    mkV "kunne" "kan" "kan" "kunne" "kunnet" "kan" **
    {c2 = mkComplement [] ; lock_VV = <>} ;
  during_Prep = ss "under" ;
  either7or_DConj = sd2 "enten" "eller" ** {n = Sg} ;
  everybody_NP = regNP "alle" "alles" Plg ;
  every_Det = {s = \\_,_ => "hver" ; n = Sg ; det = DDef Indef} ;
  everything_NP = regNP "alt" "alts" SgNeutr ;
  everywhere_Adv = ss "overalt" ;
  few_Det  = {s = \\_,_ => "få" ; n = Pl ; det = DDef Indef} ;
---  first_Ord = {s = "første" ; isDet = True} ;
  for_Prep = ss "for" ;
  from_Prep = ss "fra" ;
  he_Pron = MorphoDan.mkNP "han"  "ham"  "hans" "hans" "hans"  SgUtr P3 ;
  here_Adv = ss "her" ;
  here7to_Adv = ss "hit" ;
  here7from_Adv = ss "herfra" ;
  how_IAdv = ss "hvor" ;
  how8many_IDet = {s = \\_ => ["hur mange"] ; n = Pl ; det = DDef Indef} ;
  if_Subj = ss "hvis" ;
  in8front_Prep = ss "foran" ;
  i_Pron = 
    MorphoDan.mkNP "jeg" "mig" "min" "mit" "mine"  SgUtr P1 ;
  in_Prep = ss "i" ;
  it_Pron = MorphoDan.regNP "det" "dets" SgNeutr ;
  less_CAdv = ss "mindre" ;
  many_Det = {s = \\_,_ => "mange" ; n = Pl ; det = DDef Indef} ;
  more_CAdv = ss "mer" ;
  most_Predet = {s = gennumForms ["den meste"] ["det meste"] ["de fleste"]} ;
  much_Det = {s = \\_,_ => "meget" ; n = Pl ; det = DDef Indef} ;
  must_VV = 
    mkV "måtte" "må" "må" "måtte" "måttet" "mått" ** 
    {c2 = mkComplement [] ; lock_VV = <>} ;
  no_Utt = ss ["nej"] ;
  on_Prep = ss "på" ;
---  one_Quant = {s = \\_ => genderForms ["en"] ["et"] ; n = Sg ; det = DIndef} ; --- ei
  only_Predet = {s = \\_ => "kun"} ;
  or_Conj = {s1 = [] ; s2 = "eller" ; n = Pl} ;
  otherwise_PConj = ss "anderledes" ;
  part_Prep = ss "af" ;
  please_Voc = ss "tak" ; ---
  possess_Prep = ss "af" ;
  quite_Adv = ss "temmelig" ;
  she_Pron = MorphoDan.mkNP "hun" "hende" "hendes" "hendes" "hendes"  SgUtr P3 ;
  so_AdA = ss "så" ;
  someSg_Det = {s = \\_ => genderForms "nogen" "noget" ; n = Sg ; det = DIndef} ;
  somePl_Det = {s = \\_,_ => "nogle" ; n = Pl ; det = DIndef} ;
  somebody_NP = regNP "nogen" "nogens" SgUtr ;
  something_NP = regNP "noget" "nogets" SgNeutr ;
  somewhere_Adv = ss ["et eller annet sted"] ; ---- ?
  that_Quant = 
    {s = table {
       Sg => \\_,_ => genderForms ["den der"] ["det der"] ; 
       Pl => \\_,_,_ => ["de der"]
       } ;
     det = DDef Indef
    } ;
  there_Adv = ss "der" ;
  there7to_Adv = ss "dit" ;
  there7from_Adv = ss "derfra" ;
  therefore_PConj = ss "derfor" ;
  they_Pron = MorphoDan.mkNP "de" "dem" "deres" "deres" "deres" Plg P1 ;
  this_Quant = 
    {s = table {
       Sg => \\_,_ => genderForms ["denne"] ["dette"] ; 
       Pl => \\_,_,_ => ["disse"]
       } ;
     det = DDef Indef
    } ;
  through_Prep = ss "gennem" ;
  too_AdA = ss "for" ;
  to_Prep = ss "til" ;
  under_Prep = ss "under" ;
  very_AdA = ss "meget" ;
  want_VV = 
    mkV "ville" "vil" "vil" "ville" "villet" "villed" ** 
    {c2 = mkComplement [] ; lock_VV = <>} ;
  we_Pron = MorphoDan.mkNP "vi"  "os"  "vores" "vores" "vores"  Plg P1 ;
  whatSg_IP = {s = \\_ => "hvad" ; gn = SgUtr} ; ---- infl
  whatPl_IP = {s = \\_ => "hvilke" ; gn = Plg} ; ---- infl
  when_IAdv = ss "hvornår" ;
  when_Subj = ss "når" ;
  where_IAdv = ss "hver" ;
  which_IQuant = {
    s = table {
      Sg => genderForms "hvilken" "hvilket" ;
      Pl => \\_ => "hvilke" 
      } ; 
    det = DIndef
    } ;
  whoSg_IP = {s = vem.s ; gn = SgUtr} ;
  whoPl_IP = {s = \\_ => "hvilke" ; gn = Plg} ;
  why_IAdv = ss "hvorfor" ;
  without_Prep = ss "uden" ;
  with_Prep = ss "med" ;
  yes_Utt = ss ["ja"] ;
  youSg_Pron = 
    MorphoDan.mkNP "du" "dig" "din" "dit" "dine" SgUtr P2 ; ----
  youPl_Pron = MorphoDan.mkNP "i" "jer" "jeres" "jeres" "jeres"  Plg P2 ;
  youPol_Pron = MorphoDan.mkNP "Dere" "Dere" "Deres" "Deres" "Deres"  SgUtr P2 ; --- wrong in refl

-- Auxiliaries that are used repeatedly.

  oper
    vem = MorphoDan.mkNP "hvem" "hvem" "hvis" "hvis" "hvis" SgUtr P3 ;

}