学习 Erlang 的最佳方法是啥?

Posted

技术标签:

【中文标题】学习 Erlang 的最佳方法是啥?【英文标题】:What is the best way to learn Erlang?学习 Erlang 的最佳方法是什么? 【发布时间】:2010-11-04 06:13:15 【问题描述】:

除了特定项目(尽管也欢迎这些项目)...

我的办公桌上应该有哪些工具、书籍、文章和其他资源来帮助我学习 Erlang?

另外,是否有适用于 Erlang 的移动运行时?

请指点我正确的方向。

注意:是的,我访问过 Erlang 和 Wikipedia,但我想听听一些可靠的、有经验的意见。

【问题讨论】:

【参考方案1】:

我已经学习了一个月左右,我最喜欢的指南是:

Erlang 站点的Getting Started with Erlang 指南 Joe Armstrong 的书 Software for a Concurrent World(强烈推荐) 我已经订购了:O'Reilly 的 Erlang Programming,它得到了一些非常积极的评价,听起来像是 Joe Armstrong 的书的好伴侣(更深入地涵盖了许多相同的主题,可能还有更多“真实世界”示例)

我认为您可以立即深入了解入门指南,它肯定会让您对函数式编程和并发有所了解。

如果你今年六月在伦敦,Erlang Factory 会议看起来真的很棒。

我记得,这是两个很好的演示文稿,带您了解 Erlang 及其用途:

Thinking in Erlang Functions + Messages + Concurrency = Erlang

最后大家可以在我的博客(joelhughes.co.uk/blog)上关注我的学习心得,我的一步步调整FizzBuzz from python/ruby/php to Erlang可能会给你一个好味道(对不起无耻的自我宣传)。

不得不说学习Erlang是我目前最大的乐趣之一,有一些非常满足的地方!

【讨论】:

很遗憾,FizzBu​​zz 链接已损坏。 posterous 已不复存在,最后 2 个链接是否有新位置?【参考方案2】:

对于初学者来说,“Learn you some Erlang”指南非常棒。它目前还不完整,但提供了很多,即使那里很少。

它还有一个 RSS,因此您可以在(如果?)更新时收到通知。

【讨论】:

我发现这是一个不错的“快速入门指南”。 这个网站讨论了 Erlang 的精巧细节。我更喜欢引导我在旅途中一步一步地使用 Erlang 构建东西的教程(同时介绍那些漂亮的坚韧不拔的细节)。【参考方案3】:

我发现学习 erlang 最好的办法就是阅读 joe 的论文 http://www.sics.se/~joe/thesis/armstrong_thesis_2003.pdf 然后写一些我喜欢的东西,对我来说它是一个 iax2 服务器。

【讨论】:

【参考方案4】:

我可以建议您不要浏览Wings3d source code。

(我做到了,就像我尝试阅读Quake2 sources时一样浪费时间:-p)

【讨论】:

出于参考目的,或者如果有人很生气不听从您的建议,则添加了指向来源的链接。【参考方案5】:

我有 Erlang Progamming 和 Software for a Concurrent World,两者都很棒。我几乎可以说 Erlang Programming 更好,它展示了更多关于使用 OTP(Erlang 库)的内容,但是当我阅读它时,我对这门语言也更加熟悉了,所以这就是我想要的。

Erlang 入门指南也不错。

当然,您应该尝试编写一个简单的服务器。这是 Erlang 真正大放异彩的领域之一,有大量关于消息传递和 gen_server 模块的文档和教程。

--编辑

此外,您当然可以在基于 ARM 的移动设备 (ARMv5+) 上运行 Erlang,您可以询问其他架构的 erlang-questions。查看 http://wiki.trapexit.org/index.php/Cross_compiling 了解开始使用交叉编译的基础知识。

【讨论】:

以上是关于学习 Erlang 的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

将 Cocoa 前端写入 Erlang 应用程序的好方法是啥?

在 Erlang 应用程序中加载依赖项的代码路径的正确方法是啥。

“?”是啥意思?在 Erlang 中是啥意思? [复制]

Erlang 的可扩展性秘诀是啥?

Erlang 模拟器信息语句是啥意思?

Erlang 模拟器信息语句是啥意思?