summaryrefslogtreecommitdiff
path: root/gf-book/examples/chapter9/SemanticsIta.gf
blob: 70d4b79b95e1608a4a8cc1c79eb0d9f1ff0b5368 (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
concrete SemanticsIta of Semantics = GrammarIta, LogicSymb ** open ResIta, Formal, Prelude in {

lin
  iN f = star (f.s ! Sg) ;
  iA f = star (f.s ! Masc ! Sg) ;
  iV f = star (f.s ! VInf) ;
  iV2 f x y = star (f.s ! VInf) (cc2 x y) ;

oper star : Str -> SS -> TermPrec = \f,x -> prefix 3 (f ++ "*") (constant (parenth x.s)) ;

{-

lincat
  T, I = TermPrec ;
lin
  And = infixl 2 "&" ;
  Or  = infixl 2 "v" ;
  If  = infixr 1 "->" ;
--  Not = prefix 3 "~" ;
--  All : (I -> T) -> T ;
--  Exist : (I -> T) -> T ;
--  Past : T -> T ;

lin
  iS   : S -> T ;
  iCl  : Cl -> T ;
  iNP  : NP -> (I -> T) -> T ;
  iVP  : VP -> I -> T ;
  iAP  : AP -> I -> T ;
  iCN  : CN -> I -> T ;
  iDet : Det -> (I -> T) -> (I -> T) -> T ;
  iN   : N -> I -> T ;
  iA   : A -> I -> T ;
  iV   : V -> I -> T ;
  iV2  : V2 -> I -> I -> T ;
  iAdA : AdA -> (I -> T) -> I -> T ;
  iTense : Tense -> T -> T ;
  iPol  : Pol  -> T -> T ;
  iConj : Conj -> T -> T -> T ;
-}

}