常见问题解答

LYSE 不是 Learn You a Haskell 只是用 Erlang 改写吗?你自己就不能想点新东西吗?

是的,事实上它就是 LYAH for Erlang。我认识 Miran Lipovaca,我甚至向他请求了许可来做这个网站。阅读第一章,那里有解释!为了回答第二个问题,看起来不行,我不能自己想点东西。即使这个常见问题解答也几乎是照搬他的。

这些图是你自己画的吗?

是的。不过要感谢我的女朋友帮我设计了网站。

你推荐其他 Erlang 阅读资料吗?

当然。网上有一些免费内容,比如官方的 入门 指南。它们提供了一个很好的概述,尽管信息可能有点过时。你也可以搜索博客来帮助你,但是对于初学者教程来说,信号噪声比相对较低(在我看来)。

对于你需要付费的内容,看看 Joe Armstrong 的 Programming Erlang: Software for a Concurrent World。Joe Armstrong 是 Erlang 的创建者之一,他对该语言以及为何以这种方式设计它做了很好的描述。然后你应该阅读 Francesco Cesarini 和 Simon Thompson 的 Erlang Programming。它几乎是 Joe Armstrong 的书的延续,因为它会告诉你更多关于 Erlang 环境以及如何创建完整、安全、可靠和可扩展的应用程序的信息。对于更高级的 Erlang 材料(尤其是 OTP),Erlang and OTP in Action 是一个很好的信息来源。

我可以以纸质书的形式获得吗?

感谢 No Starch Press,Learn You Some Erlang 现在以 纸质书和电子书 的形式提供!它有 600 多页黑白印刷,包括图片(电子书版本为彩色),你现在可以拥有迄今为止最大的 Erlang 主题纸镇和书架装饰(据我所知)。这应该可以缓解在电脑屏幕上阅读数百页带来的强烈不适。

关于作者

我叫 Fred Hebert,我是加拿大人,住在魁北克。如果你想直接联系我,请向 mononcqc+lyse at ferd.ca 发送电子邮件。我的博客地址是 ferd.ca

我喜欢讨论 Web 标准,告诉我有关 Web 标准的信息!

好的。这个问题(显然)从未被问过,但我感觉需要一个地方来谈论我为这个网站使用的 Web 标准,因为我的日常工作与 Web 编程关系密切。

这个网站已经在 Opera 10、FF3.0、FF3.5、IE7、IE8、Chrome、Safari、Elinks、Lynx、Opera mobile、Opera 的辅助功能布局以及诺基亚 N810 上进行了测试。我还确保网站在打印时看起来不错,并且在没有 JavaScript 或图像的情况下也能很好地降级。我还没有在音频阅读器上测试它,但我计划在不久的将来进行测试。我还没有测试 IE6,也不打算测试。如果我针对上述内容进行的所有测试对 IE6 来说仍然不够好,问题可能是 IE6。

我希望这些努力意味着每个人都能看到干净美观的网页内容,但是如果你希望我支持其他软件或设备,我会尽力做到(除了 IE6)。是的,我非常不喜欢 IE6,并且出于原则决定不支持它。对于那些只使用 IE6 的人,我感到抱歉 :(

你一个人做了所有这些吗?

既是又否。如上所述,这个概念来自 Miran,网站设计来自我的女朋友,我得到了很多愿意审查我的文本、纠正我的语法和句法错误、纠正我的一些事实以及为我提供内容添加建议的人的帮助。对他们说声“谢谢”:OJ ReevesMichael Richter、Dave Pawson、Robert Virding、Richard O'Keefe、Ulf Wiger、Lukas Larsson、Dale Harvey、Richard Carlsson、Nick FitzgeraldBrendon HoggerGeoff CantAndrew Thompson、Bartosz Fabianowski、Richard Jones、Tuncer Ayaz、William KingMahesh Paolini-Subramanya,以及来自 IRC 的许多人(例如:orbitz,他不想告诉我他的真名)。谢谢你们!(如果我忘记包含你们(这意味着你们现在不在我的收件箱中)并且想在列表中添加你的名字,请告诉我,我很乐意。)

我想离线阅读 Learn You Some Erlang!

这不是一个问题。无论如何,我从来没有时间这样做,当一些人给我发送 PDF 版本时,它们从未得到完全维护。无论如何,GitHub 上有一个脚本可以帮助你将这个网站转换成 Kindle 电子书(由于出版协议,我不能公开宣传!)。对于个人副本,我建议使用 wget 下载你自己的网站 HTML 副本。更准确地说,使用 wget --mirror -k -E https://learnyousome.erlang.ac.cn。然后你应该有一个网站的本地副本,可以移动等等。

你可以开源这些资料吗?

它是开源的。信不信由你,除了一个非常基础和丑陋的网站草稿副本位于一个 .txt 文件中之外,整个网站都是直接用 HTML 编写的,并借助一些 Vim 宏。所以,在浏览器中右键单击,选择“查看源代码”,你就可以看到所有内容(除了几个模板规则和链接的变量)。

你用什么来编写 LYSE?

如上所述(部分),我从一个简单的 .txt 文件开始。所有内容都用平面方式编写——我不想被标记语言烦扰。完成后,我将网站目录复制/粘贴到仓库中,并开始运行一堆 Vim 宏,以使用适当的 XHTML 对所有内容进行标记,我打算在需要时轻松地将其转换为任何其他格式。然后,对每一章进行拼写检查、校对(我自己)以及由 Erlang 社区的人员进行校对。与此同时,我添加了图纸,并在经过短暂的稳定时间和足够的审查后,通过 SFTP 将其发布到网上。

关于网站的后端,我从 nearlyfreespeech.net 帐户运行所有内容(按使用付费),apache 为我处理一些调度工作。该网站基本上是一个使用 PHP 实现的链接列表,其中预定义了一些变量用于临时模板(URL 等等)。就是这样。人们经常问我“为什么用 PHP?”,而这个问题的答案在线上与人辩论的时间比我编写网站的时间还要长。它很简单、便宜、快速,并且从未给我的网站带来任何问题。我使用 PHP 作为模板,这是 PHP 最好的用例。如果我再做一次,我可能会使用我自己的 博客平台