如何在Hugs中使用GADT

Pte*_*mys 1 haskell functional-programming ghc hugs gadt

我想编写一个Haskell程序,它在GHCi不支持的平台上交互使用GADT(即mipsel上的GNU/Linux).问题是,可用于在GHC中定义GADT的构造,例如:

data Term a where
    Lit :: Int ->  Term Int
    Pair :: Term a -> Term b -> Term (a,b)
    ...
Run Code Online (Sandbox Code Playgroud)

似乎没有在Hugs上工作.

  1. 不能在Hugs中定义GADT吗?我在Haskell课堂上的TA表示在Hugs中有可能,但他似乎不确定.
  2. 如果没有,可以使用Hugs支持的其他语法或语义对GADT进行编码,就像GADT可以用ocaml编码一样吗?

Don*_*art 7

GADT没有在Hugs中实现.

相反,如果您尝试使用GADT运行代码,则应使用GHC端口进行mips.请注意,由于在更奇特的架构上缺少字节码加载,您将无法在所有平台上使用ghci.