summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2009-10-27 15:45:05 +0000
committerkrasimir <krasimir@chalmers.se>2009-10-27 15:45:05 +0000
commit83bc6d4cda927a9f2716958398da5d5684d96a8b (patch)
treed5d07f956509c89567ad6eaeb64b0355da0522cf
parent8ebb4e854a474ee376253b9d476a25c5d1f24e9b (diff)
simplify the Term again
-rw-r--r--src/GF/Compile/Concrete/Compute.hs2
-rw-r--r--src/GF/Compile/Concrete/TypeCheck.hs1
-rw-r--r--src/GF/Compile/GrammarToGFCC.hs1
-rw-r--r--src/GF/Grammar/Binary.hs2
-rw-r--r--src/GF/Grammar/Grammar.hs1
-rw-r--r--src/GF/Grammar/Macros.hs3
6 files changed, 0 insertions, 10 deletions
diff --git a/src/GF/Compile/Concrete/Compute.hs b/src/GF/Compile/Concrete/Compute.hs
index dc4937509..9c016116b 100644
--- a/src/GF/Compile/Concrete/Compute.hs
+++ b/src/GF/Compile/Concrete/Compute.hs
@@ -132,8 +132,6 @@ computeTermOpt rec gr = comput True where
_ -> returnC $ P t' l
- PI t l i -> comp g $ P t l -----
-
S t v -> do
t' <- compTable g t
v' <- comp g v
diff --git a/src/GF/Compile/Concrete/TypeCheck.hs b/src/GF/Compile/Concrete/TypeCheck.hs
index 0d72b3c67..670f36625 100644
--- a/src/GF/Compile/Concrete/TypeCheck.hs
+++ b/src/GF/Compile/Concrete/TypeCheck.hs
@@ -131,7 +131,6 @@ inferLType gr g trm = case trm of
Just x -> return x
_ -> checkError (text "record type expected for:" <+> ppTerm Unqualified 0 t $$
text " instead of the inferred:" <+> ppTerm Unqualified 0 ty')
- PI t i _ -> inferLType gr g $ P t i
R r -> do
let (ls,fs) = unzip r
diff --git a/src/GF/Compile/GrammarToGFCC.hs b/src/GF/Compile/GrammarToGFCC.hs
index c284b176c..dd3a14f38 100644
--- a/src/GF/Compile/GrammarToGFCC.hs
+++ b/src/GF/Compile/GrammarToGFCC.hs
@@ -436,7 +436,6 @@ term2term fun cgr env@(labels,untyps,typs) tr = case tr of
R rs -> R [(mkLab i, (Nothing, t2t t)) |
(i,(l,(_,t))) <- zip [0..] (GM.sortRec (unlock rs))]
P t l -> r2r tr
- PI t l i -> EInt $ toInteger i
T (TWild _) _ -> error $ (render (text "wild" <+> ppTerm Qualified 0 tr))
T (TComp ty) cs -> t2t $ V ty $ map snd cs ---- should be elim'ed in tc
diff --git a/src/GF/Grammar/Binary.hs b/src/GF/Grammar/Binary.hs
index 6f5d8b817..21adca20c 100644
--- a/src/GF/Grammar/Binary.hs
+++ b/src/GF/Grammar/Binary.hs
@@ -136,7 +136,6 @@ instance Binary Term where
put (RecType x) = putWord8 16 >> put x
put (R x) = putWord8 17 >> put x
put (P x y) = putWord8 18 >> put (x,y)
- put (PI x y z) = putWord8 19 >> put (x,y,z)
put (ExtR x y) = putWord8 20 >> put (x,y)
put (Table x y) = putWord8 21 >> put (x,y)
put (T x y) = putWord8 22 >> put (x,y)
@@ -173,7 +172,6 @@ instance Binary Term where
16 -> get >>= \x -> return (RecType x)
17 -> get >>= \x -> return (R x)
18 -> get >>= \(x,y) -> return (P x y)
- 19 -> get >>= \(x,y,z) -> return (PI x y z)
20 -> get >>= \(x,y) -> return (ExtR x y)
21 -> get >>= \(x,y) -> return (Table x y)
22 -> get >>= \(x,y) -> return (T x y)
diff --git a/src/GF/Grammar/Grammar.hs b/src/GF/Grammar/Grammar.hs
index 70153c454..1b76fe27e 100644
--- a/src/GF/Grammar/Grammar.hs
+++ b/src/GF/Grammar/Grammar.hs
@@ -131,7 +131,6 @@ data Term =
| RecType [Labelling] -- ^ record type: @{ p : A ; ...}@
| R [Assign] -- ^ record: @{ p = a ; ...}@
| P Term Label -- ^ projection: @r.p@
- | PI Term Label Int -- ^ index-annotated projection
| ExtR Term Term -- ^ extension: @R ** {x : A}@ (both types and terms)
| Table Term Term -- ^ table type: @P => A@
diff --git a/src/GF/Grammar/Macros.hs b/src/GF/Grammar/Macros.hs
index 9062fb2b5..016d8b3bb 100644
--- a/src/GF/Grammar/Macros.hs
+++ b/src/GF/Grammar/Macros.hs
@@ -484,9 +484,6 @@ composOp co trm =
P t i ->
do t' <- co t
return (P t' i)
- PI t i j ->
- do t' <- co t
- return (PI t' i j)
ExtR a c ->
do a' <- co a
c' <- co c