最近看到这个对 Factor 的介绍,我有点好奇想了解更多。除了那里提到的官方常见问题解答之外,您是否有学习语言的资源(以及基于堆栈的“范式”,如果这是正确的词),您发现有帮助吗?
作为旁注,学习 Forth 会有所帮助吗,或者就像比较 C 和 Python(或者你有什么)?
最近看到这个对 Factor 的介绍,我有点好奇想了解更多。除了那里提到的官方常见问题解答之外,您是否有学习语言的资源(以及基于堆栈的“范式”,如果这是正确的词),您发现有帮助吗?
作为旁注,学习 Forth 会有所帮助吗,或者就像比较 C 和 Python(或者你有什么)?
Factor 深受 Forth 和其他堆栈语言的启发。它还从 Lisp 和 Smalltalk 中汲取灵感。根据我在网上阅读的内容,在学习 Factor 之前没有必要学习任何这些语言。但是,如果您这样做,它不会受到伤害:)
我遇到的最大问题是语言的年轻化。换句话说,各种博客/网站上的代码示例将会过时,因为它们使用了较旧版本的 Factor(0.6、0.7、0.8 等)。系数 0.9 及以上最有可能保持不变。
一旦您掌握了基础知识,文档(在线 + 在侦听器中)就非常清楚了。文档偶尔会遇到与博客文章相同的问题:一些过时的代码示例。如果您真的遇到困难,您仍然可以使用邮件列表/IRC 来帮助您。
到目前为止,我只使用了文档,而不是邮件列表/IRC。然后我与听众进行实验,以进一步学习/探索我在文档中找到的新概念。
这是第一种仅通过深入研究函数文档就可以回答我的大多数问题的语言。Factor 的大部分内容都是用 Factor 编写的,因此随着您花更多时间在文档上,事情会变得更加清晰。
(我遇到的第二大问题是试图理解 Web 框架(Furnace)。Web 框架比我习惯的功能更丰富。这不是不可能的,只需要一些练习和探索文档。)
最快的介绍。到我发现的连接语言:http: //github.com/raganwald/homoiconic/blob/master/2008-11-16/joy.md#readme
您进入 Factor 的第一步: http: //concatenative.org/wiki/view/Factor/Learning
这些视频更详细地介绍了编写因子代码:
一些转移:
以下是一些可以帮助提供方向的博客文章:
了解可用的各种抽象和库是掌握 Factor 的关键:集合、通用词、fry、locals、宏、memoization、PEG、prettyprinter 等等。有效利用这些工具可以将解决问题所需的工作量减少一个数量级。
Factor 绝对是最有趣的语言。与其他语言相比,它的惊喜更少。我发现它比 Ruby 或 Lisp 更容易学习。只是为了好玩,这里是 Lisp 和 Factor 之间的语言大战:
对于任何对基于堆栈的语言感兴趣的人,这篇文章可能会有所帮助:串联语言的乐趣(第 1、2、3 部分)(它更通用,并使用 Cat 语言作为示例。它帮助我学习了 Factor 基础知识。)
你可以从这里开始:http ://concatenative.org/wiki/view/Factor
运行时/GUI 中包含一个很好的文档。只需安装然后“浏览器”,您就会看到包含“您的第一个程序”等主题的文档。
该文档也可以在线获得:http: //docs.factorcode.org/
(与安装 Factor 时获得的文档相同。)
不要忘记订阅planet-factor。
我认为 Slava Pestov 在 Google(Google Tech Talk)上的出色演讲“ Factor:一种可扩展的交互语言”算是学习 Factor 的一个很好的资源。有很多关于 Factor 不同方面的演示,您应该能够在您的系统上进行尝试。例如使用 Factor 实现 Internet 时间服务器的演示,大约。1 小时 7 分 20 秒和词汇关闭,46 分 35 秒。事实上,大部分演示文稿都是演示。
Flash 视频为 141 MB,1 小时 36 分 38 秒,演示时间为 2008 年秋季。Slava Pestov是 Factor 编程语言和流行的文本编辑器 jEdit 的创建者。