OpenDylan 2025.1版本发布:抛弃括号的Lisp语言获得重要更新

OpenDylan 2025.1版本带来多项实用改进,包括新的LSP插件lsp-dylan,提供语法高亮和代码补全功能。命令行项目管理工具从dylan重命名为deft以减少歧义。Dylan是一种独特的编程语言,起源于苹果Newton项目,旨在创建一个更传统语法的Lisp变体,避免大量括号的使用。该语言已存在三十多年,目前仍在积极维护和开发中。

OpenDylan是一种摆脱了大量括号的Lisp语言,正如John McCarthy最初为LISP-2设想的那样。

OpenDylan 2025.1是OpenDylan项目的最新版本,包含了多项实用的功能增强。新增了LSP插件lsp-dylan,可在兼容编辑器中提供语法高亮和代码自动补全功能。命令行项目管理工具已从dylan重命名为deft,以减少歧义。此外还修复了bug,更新了库文件,并改进了文档。

这些改进虽然看似微小但十分实用,表明该语言仍在积极开发中。Dylan("Dynamic Language"的缩写)已经存在了三十多年,是一门与众不同的有趣编程语言。

Dylan的起源可以追溯到苹果Newton项目。Newton设备在John Sculley领导下问世,这款设备非常出色,它促使苹果选择了Acorn的ARM芯片——这颗强大的小型处理器曾搭载于世界首台大众市场RISC计算机Acorn Archimedes中。对于1990年代初期的便携设备而言,Newton拥有令人难以置信的强大性能。

然而,Newton的最初计划要更加雄心勃勃:打造一台口袋式Lisp机器。尽管苹果最终选择了用C++和NewtonScript编写的更简单操作系统,但幸运的是Dylan语言被苹果开源,并作为自由开源项目延续至今。苹果原始工程师之一Mikel Evins曾多次谈论Dylan语言的发展历程。

Lisp是一门出色的编程语言,其代码和数据结构相同的特性备受Lisp爱好者推崇。Lisp是"List Processing"的缩写,Lisp代码以列表形式编写,因此Lisp程序可以操作自身的代码。这种特性有时被称为"同像性",尽管这是一个复杂的概念。

虽然Lisp爱好者称赞其强大功能,但对外人来说,Lisp似乎在奇怪、陌生的地方包含了大量括号。

这并非Lisp创造者John McCarthy的初衷。他计划推出LISP 2,采用更传统的类ALGOL语法。尽管McCarthy的LISP 2从未实现,但后来出现了多次创建更传统外观Lisp变体的尝试。早期尝试包括Vaughan Pratt的CGOL。原始EMACS共同开发者之一David Moon也参与了苹果Dylan的开发,后来发布了PLOT计划,即"老程序员编程语言"。最近,他还参与了Julia这门同像性语言的开发。

这正是Dylan的独特之处:它得以实现、发布,至今仍然存在并持续维护。

OpenDylan项目提供了易读的Dylan介绍和Dylan参考手册。项目负责人Oliver Steele曾提到一个有趣的细节:

"我相信设计中缀语法的Mike Kahl试图让它看起来像Pascal。在当时(1991年?),这可能比在今天大多数语言都使用标点符号作为标点符号的世界中看起来更好。

我实际上为Dylan实现了更像C语言的(即大括号)语法,但在我们雇用Mike开发IDE时放弃了这个方案……"

正如Stephen Diehl几年前在Twitter上所说:

"C语法就像神奇的程序员薄荷糖。你把它撒在任何东西上,它突然就变得'实用'和'可读'了。"

当苹果在2014年宣布推出替代Objective-C的新语言时,我们曾短暂地希望那是Dylan,但结果是更传统的Swift。谁知道呢,也许如果Dylan使用了{花括号},它就会大获成功了。

来源:The Register

0赞

好文章,需要你的鼓励

2025

06/27

13:39

分享

点赞

邮件订阅