blob: 31f3fc127f8c1c3b68039d9421379cce3a7b5493 (
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
|
interface Syntax = open Prelude, Grammar in {
oper
mkPhr = overload {
mkPhr : S -> Phr
= PhrS ;
mkPhr : QS -> Phr
= PhrQS ;
} ;
mkS = overload {
mkS : Pol -> NP -> VP -> S
= PredVP ;
mkS : NP -> VP -> S
= PredVP PPos ;
mkS : Pol -> NP -> V2 -> NP -> S
= \p,np,v,o -> PredVP p np (ComplV2 v o) ;
mkS : NP -> V2 -> NP -> S
= \np,v,o -> PredVP PPos np (ComplV2 v o) ;
mkS : Pol -> NP -> AP -> S
= \p,np,ap -> PredVP p np (ComplAP ap) ;
mkS : NP -> AP -> S
= \np,ap -> PredVP PPos np (ComplAP ap) ;
} ;
mkNP : Det -> CN -> NP
= DetCN ;
mkCN = overload {
mkCN : AP -> CN -> CN
= ModCN ;
mkCN : N -> CN
= UseN ;
} ;
mkAP = overload {
mkAP : AdA -> AP -> AP
= AdAP ;
mkAP : A -> AP
= UseA ;
} ;
}
|