50

我对研究 Erlang 很感兴趣,并希望在启动和运行时遵循阻力最小的路径。

目前,我正计划安装Erlang R12B-3ErlideEclipse插件)。这在很大程度上是基于谷歌结果的决定。最初这将在 Windows XP 系统上进行,但不久之后我可能会在 Ubuntu 上重现该环境。

有明显更好的选择吗?即使它绑定到一个平台。

请分享您的经验。

4

15 回答 15

21

我强烈推荐标准 Erlang 发行版附带的 Erlang 模式。我整理了一个“开箱即用”的 Emacs 配置,其中包括:

  • 语法高亮和上下文相关缩进
  • 动态编译,即时错误高亮
  • 集成 Erlang 外壳
  • 和更多....

你可以在这里浏览我的 GitHub 存储库:

http://github.com/kevsmith/hl-emacs

于 2008-09-16T14:33:32.510 回答
13

我只在 Erlang 中进行了少量编码,但我发现最有用的方法就是在文本编辑器中编写代码,然后打开一个终端以根据需要构建我的代码(这是在 Linux 中,但是我敢肯定,类似的想法也适用于 Windows)。

你的问题没有提到它,但如果你正在寻找一本关于 Erlang 的好书,试试O'Reilly 的这本书。

于 2008-08-05T20:54:06.660 回答
9

你也可以试试NetBeans有一个非常好的 Erlang 模块可用:ErlyBird

  1. 安装二郎:sudo aptitude install erlang
  2. 安装最新的 JDK:sudo aptitute install sun-java6-jdk
  3. 下载并安装(最小的)NetBeans 版本(例如 PHP 版本):www.netbeans.org/downloads
  4. 下载 erlang 模块ErlyBirdsourceforge.net/projects/erlybird
  5. 通过 NetBeans 手动安装模块

ErlyBird 特点:

  • 语法检查
  • 语法高亮
  • 自动完成
  • 漂亮的格式化程序
  • 出现标记
  • 大括号匹配
  • 缩进
  • 代码折叠
  • 功能导航器
  • 去申报
  • 项目管理
  • Erlang shell 控制台
于 2008-12-19T10:32:07.383 回答
7

我个人也在一些生产系统中使用 Erlang,在办公室也是如此。对于客户端测试、文档和开发,我使用 MacBook Pro 作为操作系统/平台,使用带有 Erlang 包的 TextMate 作为编辑器。

对于服务器端开发和部署,我们在生产环境中使用 RHEL 4.x/5.x,对于编辑,我使用 VIM。就个人而言,我有 4 台机器(slicehost.com 上的切片)使用 Erlang 运行 Debian,用于一些网站和工作。

我尝试使用最小的“工程环境”,通常是对 apt 或 yum 的依赖最少的环境。

于 2008-09-15T19:17:42.977 回答
6

为了补充 Emacs 的建议,我还建议您在运行 Emacs erlang-mode 时查看 distel 的优势。

于 2008-09-18T16:41:27.820 回答
5

您还可以尝试像CohesiveFT这样的虚拟服务器按需服务

选择您想要的组件(例如 erlangrb12 + yaws + MySQL + erlyweb),它将构建一个 vm 映像供您下载或放到 ec2 上。

如果您按照实用程序员书籍Programming Erlang中的说明进行操作,那么在本地滚动您自己也非常简单

于 2008-09-15T13:29:30.630 回答
5

我在这里看到了建议 TextMate 的答案,所以我想添加另一个好的 Mac OSX 工具:

ErlangXCode插件到 XCode。

自从我开始使用 Erlang 以来,我一直在使用它,并且真的很喜欢它。

他博客上的下载链接坏了,这里是真正的下载:

http://github.com/JonGretar/erlangxcode/tree/master

于 2009-07-07T05:18:07.860 回答
3

快速说明一下:在Ciaran 的
帖子(针对 Ubuntu 6.10 顺便说一下 )中描述的 Erlang“编译”过程可以在任何基于 Debian 的发行版中使用apt命令轻松跳过:

apt-get 安装 erlang

如果您认为合适,请不要忘记安装这些软件包:
erlang-doc-html - Erlang HTML 文档页面
erlang-examples - 一些应用示例
erlang-manpages - Erlang MAN 页面
erlang-mode - Emacs 的编辑模式

祝你好运!

于 2008-09-10T12:32:41.183 回答
2

我喜欢贾斯汀的建议,但我会补充一点:这个解决方案非常适合学习一门语言。如果您不依赖于代码完成之类的东西,那么它会迫使您更好地学习语言。(如果您正在使用具有巨大 API 的东西,例如 Java 或 Cocoa,那么您将需要代码完成!)

它也与语言无关,对于解释语言,尤其是具有交互式解释器的语言,您可能会在 shell/解释器中花费同样多的时间来输入命令。即使在一个大型的 python 项目中,我仍然在一个编辑器和 4 或 5 个终端窗口中工作。

因此,诀窍更多的是获得适合您的编辑器。我不打算推​​荐一个,因为那是在传福音!

于 2008-08-06T00:46:01.480 回答
2

我只使用 Scite。键入一些内容并按 f5 以查看结果。

于 2008-09-15T12:47:58.013 回答
2

刚刚在我的博客上写了一篇关于此的指南,这是精简版:

第 1 部分:下载需要下载的内容。

下载并安装 Erlang 运行时。 下载并安装 TextPad。

为 Erlang 下载一个 .syn 文件并将其放在 TextPad 的系统文件夹中。对我来说,这个文件夹是 C:\Program Files\TextPad 5\system。我不太确定这个同步文件是谁做的(该网站是另一种语言的),但他们做得很好。

第 2 部分:设置语法高亮。

打开文本板。确保没有文件被打开。转到“配置”菜单,然后选择“首选项”。在首选项窗口中,单击“文档类”。应该有一个当前认可的语言列表。单击“新建”按钮(位于语言列表的正下方),然后键入“Erlang”。单击应用。

单击“文档类”旁边的“+”按钮。这应该扩展列表,Erlang 现在应该在它上面。点击二郎。您应该会看到与 Erlang 关联的文件扩展名列表,单击“新建”,然后键入“*.erl”。

现在单击左侧“Erlang”旁边的“+”按钮。这应该会展开一个包含更多菜单的列表。单击“语法”。单击下拉菜单并选择 erlang.syn。如果 erlang.syn 不存在,则 .syn 文件没有正确放置。

随意编辑一些其他语法选项以根据您的喜好自定义 TextPad。

第 3 部分:从 TextPad 编译。

注意:截至 2008 年 5 月 12 日,在 textpad 中编译存在严重问题。Erlang shell 在文本键盘中完成新编译时会以某种方式忽略它。这仅对检查错误有用,当您想要实际运行代码时,在 Erlang Shell 中编译它。

再次在首选项菜单中,单击左侧的“工具”。

单击“添加”按钮并选择“程序...”。导航到 erl5.6.5\erts-5.6.5\bin\ 文件夹并选择 erlc.exe。选择并单击列表中的新条目以重命名它。点击“应用”。

现在单击左侧工具旁边的“+”按钮。选择 erlc,或者任何你命名的新工具(我命名我的 'Compile Erlang')。参数字段需要读取'$File',初始文件夹字段应该读取'$FileDir'。

于 2008-12-06T01:47:26.073 回答
2

我在 Erlide 上取得了很好的成功。

于 2009-11-27T20:48:36.293 回答
2

如果您使用 Vim,我推荐您使用Vimerl ( http://github.com/jimenezrick/vimerl ):

特征

  • 语法高亮
  • 代码缩进
  • 代码折叠
  • 代码全方位完成
  • 带有 quickfix 支持的语法检查
  • OTP 行为的代码框架
  • 使用 Rebar 的配置
  • 病原体兼容 (http://github.com/tpope/vim-pathogen)
于 2012-01-14T16:13:40.160 回答
1

由于您最终还是要切换到 Ubuntu,因此我强烈建议您对 emacs 使用 erlang-mode(它与 Erlang 发行版捆绑在一起)。由于它为您提供了许多功能,因此它正式成为所有核心开发人员使用的以及许多其他开发人员使用的。

安装 Erlang 发行版本身应该很简单 :)

于 2008-09-15T15:49:09.063 回答
1

从我尝试过的(并且仍然要做)来看,这是对 erlang 开发人员的一个很好的补充。环境将是运行 ubuntu/yaws/erlang 的虚拟机。也许Erlyweb(erlang/yaws 框架)也可以很好地检查一下。

Ciaran关于他的 erlang 安装的帖子(这将是他的“系列”中的第一篇)很好,因为他详细介绍了设置服务器的步骤(以及其他东西,例如带有 jabberlang 的 xmpp)。

于 2008-08-22T12:25:51.793 回答