summaryrefslogtreecommitdiff
path: root/grammars/aggregation/Abstract.gf
diff options
context:
space:
mode:
authorbjorn <bjorn@bringert.net>2008-08-14 07:58:04 +0000
committerbjorn <bjorn@bringert.net>2008-08-14 07:58:04 +0000
commit77270a010a0b453e9a84c3e62db7cfd22e49d55d (patch)
treed17682a545d6ac1e68ff49b8c20964182794baf7 /grammars/aggregation/Abstract.gf
parent0bbb906141711767678f82b15a7b43e65e0b5bd6 (diff)
Remove the grammars directory. It was full of old grammars that don't compile these days. See the old source distributions if you want them.
Diffstat (limited to 'grammars/aggregation/Abstract.gf')
-rw-r--r--grammars/aggregation/Abstract.gf57
1 files changed, 0 insertions, 57 deletions
diff --git a/grammars/aggregation/Abstract.gf b/grammars/aggregation/Abstract.gf
deleted file mode 100644
index 719bfe150..000000000
--- a/grammars/aggregation/Abstract.gf
+++ /dev/null
@@ -1,57 +0,0 @@
--- testing transfer: aggregation by def definitions. AR 12/4/2003 -- 9/10
-
--- p "Mary runs or John runs and John walks" | l -transfer=Aggregation
--- Mary runs or John runs and walks
--- Mary or John runs and John walks
-
--- The two results are due to ambiguity in parsing. Thus it is not spurious!
-
-abstract Abstract = {
-
-cat
- S ; NP ; VP ; Conj ;
-
-fun
- Pred : NP -> VP -> S ;
- ConjS : Conj -> S -> S -> S ;
- ConjVP : Conj -> VP -> VP -> VP ;
- ConjNP : Conj -> NP -> NP -> NP ;
-
- John, Mary, Bill : NP ;
- Walk, Run, Swim : VP ;
- And, Or : Conj ;
-
-fun aggreg : S -> S ;
-def
- aggreg (ConjS c (Pred Q F) B) = aggrAux c Q F B ;
- aggreg (ConjS c A B) = ConjS c (aggreg A) (aggreg B) ;
- aggreg A = A ;
-
--- this auxiliary makes pattern matching on NP to test equality
-
-fun aggrAux : Conj -> NP -> VP -> S -> S ;
-def
- -- aggregate verbs with shared subject
- aggrAux c John F (Pred John G) = Pred John (ConjVP c F G) ;
- aggrAux c Mary F (Pred Mary G) = Pred Mary (ConjVP c F G) ;
- aggrAux c Bill F (Pred Bill G) = Pred Bill (ConjVP c F G) ;
-
- -- aggregate subjects with shared verbs
- aggrAux c Q Run (Pred R Run) = Pred (ConjNP c Q R) Run ;
- aggrAux c Q Walk (Pred R Walk) = Pred (ConjNP c Q R) Walk ;
- aggrAux c Q Swim (Pred R Swim) = Pred (ConjNP c Q R) Swim ;
-
- -- this case takes care of munching
- aggrAux c Q F (ConjS e A B) = aggrAux c Q F (aggreg (ConjS e A B)) ;
-
- aggrAux c Q F B = ConjS c (Pred Q F) (aggreg B) ;
-
--- unfortunately we cannot test string equality for Name : String -> NP ;
--- It would also be tedious to test the equality of complex
--- NPs and VPs, but not impossible.
-
--- have to add these, otherwise constants are not constructor patterns!
-
-data NP = John | Mary | Bill ;
-data VP = Run | Walk | Swim ;
-}