我正在学习Haskell并使用Emacs + Haskell模式作为我的编辑器。
在GHCi中播放一些简单的表达式之后,我想知道这个IDE /编辑器功能是否存在于Visual Stuido for F#中:
我可以将剪贴板中的内容发送到解释器吗?目前我只能:将文件加载到解释器中。当我逐渐在脚本文件中编写函数时,这是不方便的。就像视觉stuido中的“Alt + Enter”一样。
编译完成后,我希望看到该功能的签名,例如:
让double x = x + x
这样我就可以更好地理解Haskell中的类型推断机制。
答案 0 :(得分:3)
在Windows上,有WinGHCi,gui包括(差,但通常足够)支持复制和粘贴。关于命令行版本的Dunno。
使用:type double
(或快捷方式:t double
)获取double
的类型签名。还有:info
适用于值(包括函数)以及类型和类型类(例如:info Bool
列出Bool
的定义以及所有类型和类型的类型)并说明它在哪里已定义。
答案 1 :(得分:3)
关于问题2,要在每次输入一个表达式时看到表达式的推断类型,你可以给出ghci:set + t。我认为您也可以将其放在主目录中的.ghci文件中,如http://www.haskell.org/ghc/docs/6.12.2/html/users_guide/ghci-dot-files.html中所述。
答案 2 :(得分:2)
据我所知,没有支持将剪贴板“开箱即用”发送给解释器,但它不应该超过几行elisp。如果我是你的话,我会查看其他语言的支持模式并从那里复制它。
关于类型,您可以在代码中的任何符号上键入C-c C-t或C-c C-i,这将在ghci进程中触发“:t <symbol>
”和“:i <symbol>
”命令
答案 3 :(得分:1)
TAIM声称将vim中的选定表达式发送到ghci(尚未尝试过)
我不确定编辑器中的函数签名,但是在ghci中它的“:t func”
实际上看看他们的YouTube视频,看起来TAIM可以在vim中选择“:t func”并将其发送给翻译。