0

我想为我正在帮助开发的一种排版语言编写一个解析器。

我已经很多年没有编写任何代码了,在查看各种语言选项时,我遇到了 Dylan。

它看起来是一种非常有趣的语言——语法简洁,使用起来相当简单,可以动态使用。

Dylan 是否适合这个项目?

我的想法是将它放在 Github 上,以便其他人可以贡献或改进我的代码(已经有一段时间了!)。但似乎每个人都在使用 Lua。

如果我选择在 Dylan 发展,我会孤军奋战吗?

无论我选择哪个,我都必须学习 Dylan 或 Lua。但是现在似乎每个人都知道如何在 Lua 中编程。

问候

4

1 回答 1

0

如果关键要求是您希望其他人帮助做出贡献,那么 Dylan 可能不是最佳选择。它的使用不多,因此与其他选择相比,您会发现更少的帮助。

可以说,目前最流行的动态语言是 Python。它得到了很好的支持,有大量的文档、教程,并且在 GitHub 等上有大量的代码示例。

Lua 非常流行,尽管不如 Python 流行。大多数人都不是在其中编码的情况。它非常小众,主要用于游戏和脚本,但它是一种非常好的、简单但功能强大的语言。我碰巧非常喜欢它。

如果您确实想走 Dylan 路线但想要更积极的支持,那么您可能想看看 Julia。它很新,但显然是迪伦的后代。它的主要目的是科学计算,但它有大部分组件来帮助编写一个干净的解析器,例如联合类型。它也非常快,这取决于您实际要使用解析器做什么。

这将我引向我的最后一点。你可以用大多数语言编写一个简单的解析器,没有太大的困难。语言的正确选择更可能取决于其他因素,例如它必须运行多快?它必须支持多少个平台?它会嵌入到其他代码中,例如 Web 堆栈吗?爪哇?这些决定可能会大大缩小该领域。

于 2014-08-05T13:20:48.273 回答