summaryrefslogtreecommitdiff
path: root/next-lib/src/romanian/CatRon.gf
blob: a43aa5d3b6dee54bd6e548968636333522932dfc (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
--# -path=.:../Romance:../common:../abstract:../common:prelude

concrete CatRon of Cat =
  CommonX - [Temp,TTAnt,Tense,TPres,TPast,TFut,TCond] 
  ** open Prelude, ResRon, (R = ParamX) in {

  flags optimize=all_subs ;


  
  lincat


-- Verb

 --   VP = ResRon.VP ;
  --  VPSlash = ResRon.VP ** {c2 : Compl} ;
  --  Comp = {s : Agr => Str} ; 

-- Adjective

    AP = {s : AForm => Str ; isPre : Bool} ; 

-- Noun
 lincat 
    CN      = {s : Number => Str ; g : Gender} ;
 --   Pron    = Pronoun ;
 --   NP      = NounPhrase ;
  --  Det     = {
  --    s : Gender => Case => Str ; 
  --    n : Number ; 
  --    s2 : Str ;            -- -ci 
  --    sp : Gender => Case => Str    -- substantival: mien, mienne
  --    } ;
  --  Quant = {
  --    s  : Bool => Number => Gender => Case => Str ; 
  --    s2 : Str ; 
  --    sp : Number => Gender => Case => Str 
       Ord = {s : AForm => Str ; isPre : Bool} ;
-- Numeral

    Numeral = {s : ACase => CardOrd => NumF => Str ; size : Size } ;
    Digits  = {s : CardOrd => Str ; n : Size ; isDig : Bool} ;

    

-- Structural
 
    Conj = {s1,s2 : Str ; n : Number} ;
    Subj = {s : Str ; m : Mood} ;
    Prep = {s : Str ; c : NCase ; isDir : Bool} ;

-- Open lexical classes, e.g. Lexicon
    Verb = {s : VForm => Str } ;
    V ={s : VForm => Str } ;
    VQ, VA = V ;
    V2, VV, V2S, V2Q = V ** {c2 : Compl} ;
    V3, V2A, V2V = V ** {c2,c3 : Compl} ;
    VS = V ** {m : Polarity => Mood} ;

    A  = {s : Degree => AForm => Str ; isPre : Bool} ;
    A2 = {s : Degree => AForm => Str ; c2 : Compl} ;

    N  = Noun ; 
    N2 = Noun  ** {c2 : Compl} ;
    N3 = Noun  ** {c2,c3 : Compl} ;
    PN = {s : ACase => Str ; g : Gender ; n : Number} ;


}