summaryrefslogtreecommitdiff
path: root/src/GF/Compile/Evaluate.hs
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2006-11-14 19:13:33 +0000
committeraarne <aarne@cs.chalmers.se>2006-11-14 19:13:33 +0000
commit546e778ba8c9ea4109fbe278c6363818a43eaa0f (patch)
tree7be636d1b0a58a4fa02e5aa5ce1cdf86b65429b4 /src/GF/Compile/Evaluate.hs
parentf10d657df18261c688241c4463074f8bc31cf95b (diff)
internal representation for param value index
Diffstat (limited to 'src/GF/Compile/Evaluate.hs')
-rw-r--r--src/GF/Compile/Evaluate.hs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/GF/Compile/Evaluate.hs b/src/GF/Compile/Evaluate.hs
index 41a6ee17d..a574fef40 100644
--- a/src/GF/Compile/Evaluate.hs
+++ b/src/GF/Compile/Evaluate.hs
@@ -151,6 +151,13 @@ evalConcrete gr mo = mapMTree evaldef mo where
return d
Just d -> fterm2term d >>= comp g
App f a -> case apps t of
+{- ----
+ (h@(QC p c),xs) -> do
+ xs' <- mapM (comp g) xs
+ case lookupValueIndex gr ty t of
+ Ok v -> return v
+ _ -> return t
+-}
(h@(Q p c),xs) | p == IC "Predef" -> do
xs' <- mapM (comp g) xs
(t',b) <- stmErr $ appPredefined (foldl App h xs')