1

我正在学习 Haskell,并使用 Emacs+Haskell 模式作为我的编辑器。

在 GHCi 中玩了一些简单的表达式后,我想知道 Visual Stuido for F# 中是否存在这些 IDE/编辑器功能:

  1. 我可以将剪贴板中的内容发送到解释器吗?目前我只能:将文件加载到解释器中。当我逐渐在脚本文件中编写函数时,这很不方便。就像视觉工作室中的“Alt+Enter”。

  2. 编译后希望能看到函数的签名,例如

    让双 x = x + x

以便我更好地理解 Haskell 中的类型推断机制。

4

4 回答 4

3

关于问题 2,要在每次输入一个时查看表达式的推断类型,您可以在 ghci :set +t 中给出。我认为您也可以将其放在主目录中的 .ghci 文件中,如http://www.haskell.org/ghc/docs/6.12.2/html/users_guide/ghci-dot-files.html中所述 .

于 2010-09-26T12:46:12.603 回答
3
  1. 在 Windows 上,有WinGHCi,一个包含(较差但通常足够)对复制和粘贴的支持的 gui。不知道命令行版本。

  2. 使用:type double(或快捷方式:t double)获取double. 还有:info适用于值(包括函数)以及类型和类型类(例如,:info Bool列出定义Bool和它是其实例的所有类型类)并说明它的定义位置。

于 2010-09-26T09:50:09.637 回答
2

据我所知,不支持“开箱即用”将剪贴板发送给解释器,但它不应该超过几行 elisp。如果我是你,我会查看其他语言的支持模式并从那里复制它。

关于类型,您可以在代码中的任何符号上键入 Cc Ct 或 Cc Ci,这将触发ghci 进程中的“ :t <symbol>”和“ ”命令:i <symbol>

于 2010-09-26T10:34:47.377 回答
1

TAIM声称将 vim 中的选定表达式发送到 ghci(没试过)

我不确定编辑器中的函数签名,但在 ghci 中它的“:t func”

实际上看他们的 youtube 视频,TAIM 似乎可以在 vim 中选择 ":t func" 并将其发送给解释器。

于 2010-09-26T09:48:09.640 回答