hermit-0.3.0.0: src/HERMIT/Dictionary/WorkerWrapper/Common.hs
module HERMIT.Dictionary.WorkerWrapper.Common where
import HERMIT.Monad
import HERMIT.Kure
import HERMIT.GHC
--------------------------------------------------------------------------------------------------
data WWAssumptionTag = A | B | C deriving (Eq,Ord,Show,Read)
data WWAssumption = WWAssumption WWAssumptionTag (RewriteH CoreExpr)
--------------------------------------------------------------------------------------------------
-- Note: The current approach to WW Fusion is a hack.
-- I'm not sure what the best way to approach this is though.
-- An alternative would be to have a generate command that adds ww-fusion to the dictionary, all preconditions verified in advance.
-- That would have to exist at the Shell level though.
-- This isn't entirely safe, as a malicious the user could define a label with this name.
workLabel :: Label
workLabel = "recursive-definition-of-work-for-use-by-ww-fusion"
--------------------------------------------------------------------------------------------------