Как я могу загрузить оптимизированный код в GHCI?
Я пишу модуль, который опирается на оптимизацию. Я хочу протестировать этот модуль в ghci. Но начиная GHC в--interactive
режим автоматически отключает оптимизацию; если я скомпилирую модуль с-O
а затем попробуйте загрузить его в интерактивном сеансе,ghc
настаивает на загрузке в интерпретированном режиме.
Для простого теста, чтобы различить оптимизированные и неоптимизированные модули,isOptimized
ниже оцениваетсяTrue
с оптимизацией, ноFalse
с выключенной оптимизацией:
isOptimized :: Bool
isOptimized = g
g :: Bool
g = False
{-# NOINLINE g #-}
{-# RULES "g/True" g = True #-}