summaryrefslogtreecommitdiff
path: root/devel/compiler/Compile.hs
diff options
context:
space:
mode:
Diffstat (limited to 'devel/compiler/Compile.hs')
-rw-r--r--devel/compiler/Compile.hs36
1 files changed, 0 insertions, 36 deletions
diff --git a/devel/compiler/Compile.hs b/devel/compiler/Compile.hs
deleted file mode 100644
index f21fca632..000000000
--- a/devel/compiler/Compile.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-module Compile where
-
-import AbsSrc
-import AbsTgt
-import SMacros
-import TMacros
-
-import Eval
-import Param
-
-import STM
-import Env
-
-import qualified Data.Map as M
-
-compile :: Grammar -> Env
-compile (Gr defs) = err error snd $ appSTM (mapM_ compDef defs) emptyEnv
-
-compDef :: Def -> STM Env ()
-compDef d = case d of
- DLin f ty exp -> do
- val <- eval exp
- addType f ty
- addVal f val
- DOper f ty exp -> do
- addType f ty
- addOper f exp
- DPar p cs -> do
- v <- sizeParType cs
- let ty = TBas p
- addParsize ty $ fst v
- vals <- allParVals cs
- addPartype ty vals
- mapM_ (uncurry addParVal) (zip vals (map VPar [0..]))
- DOpty a ty -> do
- addTypedef a ty