summaryrefslogtreecommitdiff
path: root/testsuite/pmcfg/fixtures/PmcfgDiffCnc.gf
blob: 4bbafa17466511c702ed7e7be83e7d74e13cd74b (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
concrete PmcfgDiffCnc of PmcfgDiff = {
param
  Number = Sg | Pl ;
  Person = P1 | P2 ;
  Case = Nom | Acc | Poss Number Person ;

lincat
  S = {s : Str} ;
  NP = {s : Case => Str ; n : Number ; p : Person} ;

lin
  Use np = {s = np.s ! Poss np.n np.p} ;
  Pair x y = {s = x.s ! Nom ++ y.s ! Acc} ;

  One = {
    s = table {
      Nom => "one" ;
      Acc => "one-acc" ;
      Poss Sg P1 => "one-sg-p1" ;
      Poss Sg P2 => "one-sg-p2" ;
      Poss Pl P1 => "one-pl-p1" ;
      Poss Pl P2 => "one-pl-p2"
    } ;
    n = Sg ;
    p = P1
  } ;

  Two = {
    s = table {
      Nom => "two" ;
      Acc => "two-acc" ;
      Poss Sg P1 => "two-sg-p1" ;
      Poss Sg P2 => "two-sg-p2" ;
      Poss Pl P1 => "two-pl-p1" ;
      Poss Pl P2 => "two-pl-p2"
    } ;
    n = Pl ;
    p = P2
  } ;
}