forked from GitHub/gf-core
a couple of fixes in new Optimize
This commit is contained in:
@@ -160,10 +160,10 @@ compileSourceModule opts env@(k,gr) mo@(i,mi) = do
|
||||
moo <- putpp " optimizing " $ ioeErr $ optimizeModule opts gr mox
|
||||
intermOut opts (iOpt "show_optimize") (prMod moo)
|
||||
|
||||
mof <- putpp " factorizing " $ ioeErr $ optimizeModule opts gr moo
|
||||
intermOut opts (iOpt "show_factorize") (prMod mof)
|
||||
---- mof <- putpp " factorizing " $ ioeErr $ optimizeModule opts gr moo
|
||||
---- intermOut opts (iOpt "show_factorize") (prMod mof)
|
||||
|
||||
return (k,mof) ----
|
||||
return (k,moo) ----
|
||||
|
||||
|
||||
{- ----
|
||||
|
||||
@@ -37,17 +37,19 @@ import GF.Data.Operations
|
||||
|
||||
import Control.Monad
|
||||
import Data.List
|
||||
import qualified Data.Map as Map
|
||||
|
||||
import Debug.Trace
|
||||
|
||||
|
||||
optimizeModule :: Options -> GF -> SourceModule -> Err SourceModule
|
||||
optimizeModule opts gf sm@(m,mo) = case mtype mo of
|
||||
optimizeModule opts gf0 sm@(m,mo) = case mtype mo of
|
||||
MTConcrete _ -> opt sm
|
||||
MTInstance _ -> opt sm
|
||||
MTGrammar -> opt sm
|
||||
_ -> return sm
|
||||
where
|
||||
gf = gf0 {gfmodules = Map.insert m mo (gfmodules gf0)}
|
||||
opt (m,mo) = do
|
||||
mo' <- termOpModule (computeTerm gf) mo
|
||||
return (m,mo')
|
||||
|
||||
Reference in New Issue
Block a user