:browse
,:info
和:type
GHCi命令非常方便。
是否有可能在Haskell程序中获得相同的程序信息?也就是说,从模块中获取导出的函数,类型等等。
答案 0 :(得分:5)
:browse
- 编译Haskell程序时,不会保留(有用的)有关哪个模块来自哪个模块的信息,因此您的程序将无法访问该信息。
:type
- 除非您使用Data.Typeable,否则在运行时根本看不到类型。 Haskell中的类型主要是编译器检查代码的正确性/安全性。
:info
- 见上文。
答案 1 :(得分:3)
在编译时获取模块的功能 - language-haskell-extract
包可能对您有意义。它可以帮助您根据正则表达式提取函数。
http://hackage.haskell.org/package/language-haskell-extract-0.2.1
答案 2 :(得分:0)