summaryrefslogtreecommitdiff
path: root/src/GF
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2006-11-12 11:31:08 +0000
committeraarne <aarne@cs.chalmers.se>2006-11-12 11:31:08 +0000
commit69dba72a3e0352e433b4cac6726c8e3359bfd5c7 (patch)
tree9373ed3e397369a5981202ff6e31ed926896cfd0 /src/GF
parent0ea31f260149f71c74d1e7bbf8933d56bc99f8f3 (diff)
i -eval bug fixed: should work now
Diffstat (limited to 'src/GF')
-rw-r--r--src/GF/Compile/Evaluate.hs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/GF/Compile/Evaluate.hs b/src/GF/Compile/Evaluate.hs
index d2872d629..bb5ece46b 100644
--- a/src/GF/Compile/Evaluate.hs
+++ b/src/GF/Compile/Evaluate.hs
@@ -49,7 +49,8 @@ lookupComputed mc = do
return $ Map.lookup mc $ computd env
updateComputed :: (Ident,Ident) -> FTerm -> STM EEnv ()
-updateComputed mc t = updateSTM (\e -> e{computd = Map.insert mc t (computd e)})
+updateComputed mc t =
+ updateSTM (\e -> e{computd = Map.insert mc t (computd e)})
getTemp :: STM EEnv Ident
getTemp = do
@@ -70,7 +71,8 @@ term2fterm t = case t of
Abs x b -> FTF (\t -> term2fterm (subst [(x,t)] b))
_ -> FTC t
-traceFTerm c ft = ft ----trace ("\n" ++ prt c +++ "=" +++ take 60 (prFTerm 0 ft)) ft
+traceFTerm c ft = ft ----
+----trace ("\n" ++ prt c +++ "=" +++ take 60 (prFTerm 0 ft)) ft
fterm2term :: FTerm -> STM EEnv Term
fterm2term t = case t of
@@ -138,7 +140,7 @@ evalConcrete gr mo = mapMTree evaldef mo where
comp g t = case t of
- Q (IC "Predef") _ -> trace ("\nPredef:\n" ++ prt t) $ return t
+ Q (IC "Predef") _ -> return t ----trace ("\nPredef:\n" ++ prt t) $ return t
Q p c -> do
md <- lookupComputed (p,c)
@@ -354,7 +356,7 @@ evalConcrete gr mo = mapMTree evaldef mo where
-- if already expanded, don't expand again
T i@(TComp _) cs -> do
-- if there are no variables, don't even go inside
- cs' <- if (null g) then return cs else mapPairsM (comp g) cs
+ cs' <- {-if (null g) then return cs else-} mapPairsM (comp g) cs
return $ T i cs'
--- this means some extra work; should implement TSh directly