繁体   English   中英

Haskell CoreSyn 库——如何引用内置 IO 类型?

[英]Haskell CoreSyn library — how does one refer to built-in IO types?

我正在尝试查看以下 Haskell 代码如何转换为 Coresyn 库中定义的数据类型。

module Main where 

f :: Double -> IO () 
f = putStrLn . show

main :: IO ()
main = f 3

我可以通过 -ddump-simpl 获得人类可读的核心代码,但我不明白的是如何将其转换为 Coresyn 库中 Core 的数据结构。 特别是,我不知道如何翻译“IO()”位。 我的猜测是它涉及首先构建类似 TyCon "IO" unitTy 的东西,但是应该为 IO 放置什么。 我也不知道如何使用 Coresyn 中的构造函数调用像 putStrLn 这样的内置函数。

如何使用 Coresyn 库构建内置 IO 原语“IO a”和“putStrLn”?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM