标签: haskell-polysemy

Hint.interpret 在 Polysemy.Sem 值上使用时会出现编译器错误

我正在尝试使用 Hint ( Language.Haskell.Interpreter )在运行时编译Polysemy monad 值 )。

当我尝试这样做时,我确实得到了一个关于:在“交互式”代码中不正确使用运算符的错误;似乎传递给 GHC 的文本提示存在语法错误。

{-# LANGUAGE DataKinds #-}

module Main where

import Polysemy (Embed, embed, runM, Sem)
import Language.Haskell.Interpreter (as, interpret, Interpreter, runInterpreter, setImportsQ)
import Data.Typeable (typeOf)
import Control.Monad.IO.Class (liftIO)

main :: IO ()
main = do
  -- Hint works fine to interpret a String:
  m <- interpretWithErrors exampleHint
  print m
  -- And Sem works fine:
  runM exampleSem
  -- But notice the weird detected type:
  print $ typeOf exampleSem …
Run Code Online (Sandbox Code Playgroud)

haskell runtime hint ghc haskell-polysemy

7
推荐指数
1
解决办法
199
查看次数

标签 统计

ghc ×1

haskell ×1

haskell-polysemy ×1

hint ×1

runtime ×1