Performance 目前的开放式Dylan实现有多成熟?

Performance 目前的开放式Dylan实现有多成熟?,performance,stability,dylan,Performance,Stability,Dylan,开放式迪伦看起来真的很有趣。然而,在我将其用于实际开发之前,我想知道该实现有多成熟。我知道Dylan本身是一种古老的语言,苹果公司一直在使用它。根据一份报告,它还没有准备好。他们刚刚开始恢复这个项目 目前的实现OpenDylan是自1995年由Harlequin和Functional Objects开发的,在2003年成为开源之前 成熟度是如何定义的?编译器包括一个IDE(对不起,仅限Win32)、CORBA、OLE,总共850000行代码。这是(几乎)所有的迪伦密码 这意味着,与其他语言不同,

开放式迪伦看起来真的很有趣。然而,在我将其用于实际开发之前,我想知道该实现有多成熟。我知道Dylan本身是一种古老的语言,苹果公司一直在使用它。

根据一份报告,它还没有准备好。他们刚刚开始恢复这个项目

目前的实现OpenDylan是自1995年由Harlequin和Functional Objects开发的,在2003年成为开源之前

成熟度是如何定义的?编译器包括一个IDE(对不起,仅限Win32)、CORBA、OLE,总共850000行代码。这是(几乎)所有的迪伦密码

这意味着,与其他语言不同,它是自托管的。编译器本身是用Dylan编写的(运行时/垃圾收集器绑定的一些C行(~4000行代码)除外。后端是本机x86代码或C


请不要将此实现与其他两个实现混淆:Gwydion Dylan(也是用Dylan编写的;以前在CMU开发,现在也是开源的),它将Dylan编译为C;以及Apple Dylan(关闭在Apple big storage中的某个位置;).

截至2020年6月4日,从下载的OpenDylan项目中的文件分类包括:

你可以看到有3112个Dylan文件,总字节数为30643409,C语言中只有104个文件,总字节数为1288062,这支持Hannes的答案,但也有一些量化的东西

不再强调stesch的答案,这将不再被认为是相关的。。。 这看起来不像是一个“尚未准备好的项目”。 这也不像是一个刚刚恢复的项目。 因此,请用“stesch”来打消可能误导的答案

我研究编程语言,Dylan是我的首选,因为: 1、建立在LISP原则基础上,是一个非常坚实的基础。 2.它是唯一的中缀Lisp,最初由Apple创建, 迄今为止,世卫组织为其用户创造了惊人的价值。 3.因为它是中缀,对于普通程序员来说会更容易 谁使用类似C的语言(JavaScript、C#、C、Java等) 能够学习一门伟大而有力的语言。 4.该语言具有完整的Lisp宏功能。 在C语言中,宏语言似乎是固定的, 完全不同的语言,有时需要额外的括号 使其工作,导致微妙的错误。 Lisp宏是在更高级别上实现的, 在编写过程中,, 并使用相同的语言(Lisp) 不是完全不同的语言 因此,它具有相同的“形状”,并且更易于使用。 宏的使用在Lisp语言中更为常见 因为它是如此的简单,除了更强大

如果您感兴趣,请阅读以下内容:

此外,为了理解为什么Lisp宏是如何强大的,请执行以下操作: 这是这本书的大部分,在线,免费阅读。我为最后几章购买了这本书,一本关于性能的,一本在Lisp上实现Forth,然后在Forth上实现Lisp

特定领域的语言是我们武库中一个巨大的工具,但我们并没有很好地使用它允许动态定义DSL,将其作为所创建解决方案的完整补充。您可以扩展该语言--提供新的方法来表达更常见代码旁边的解决方案

有点离题,我有点喜欢Factor作为一个更好的Forth,它是由Slava Pestov创建的,他是目前为苹果工作的天才


  • Slava在他的视频中解释说,这个因素是基于Forth,但也是基于Lisp。我打算深入研究这一点,以了解这意味着什么,因为我一直希望在其他语言中实现真正的Lisp风格的宏功能。

    FORTRAN和Lisp是“古老的”-Dylan甚至还不到中年。代码成熟度的衡量标准是什么?基本上,我对它是否可以用于非关键应用程序的生产很感兴趣。paul,bo“old”我的意思是,我知道这种语言本身并不是新的,也不是未经测试的。如果我不清楚的话,很抱歉。我有一个苹果迪伦的副本。它实际上是一个有趣的系统,但还没有完成,在项目被关闭的时候就匆忙推出了iirc。显然,它不会在MacOS X上运行。我使用d2c进行实际的爱好项目,但没有访问fun-O迪伦。现在它是OpenGLYN,在GNU/Linux上可用,这是改变了的。我当然推荐迪伦语言。我仍然错过它当编程C++和碰到一个问题的类层次结构,类型系统,或函数调用约定,这将不会是一个问题在迪伦。这取决于你想做什么。例如,如果你想做某事。如果没有库,您可能需要编写更多的代码。但它的状态良好,可以作为通用编程语言的基本使用。@ChrisPage那么,您比OpenDylan背后的实际团队更清楚吗?@stesch--我感谢您的贡献,但它已经非常过时了。“黑客新闻评论”您提到的是2011年12月11日关于Open Dylan 2011.1版本的信息。截至2020年10月,以下是所有版本的当前列表,顺序相反:2019.01、2014.1、2013.2、2013.1、2012.1,以及您提到的2011.1。以下是这些信息的来源。快速查看所有发行说明后,该项目看起来很简单ike它还活着并且很好,特别是2019年的最新版本。@stesch——你愿意更新/修改这个答案吗?我认为在五个额外版本之后,没有人可以说它“还没有准备好”。