(open) Dylan与其他编程语言有何不同之处?

10

如今有很多编程语言:函数式、面向对象、动态或静态类型,或者这些特征的混合体。

最近我注意到了这个发布:http://opendylan.org/news/2011/12/10/new_release.html

开放迪伦。

如果已经有Clojure、Python、Java、Scala、C#、Common Lisp、Scheme等具有更大、更活跃社区和更多周边库的编程语言,为什么学习这种编程语言会有趣呢?

我希望这篇文章不会被关闭,因为它“太主观”,我只是想知道Dylan与所有这些其他编程语言的区别!


3
迪伦的维基百科页面是否没有回答你的问题? - user97370
每一种编程语言都是有价值的,只要它与其他语言至少有一点不同。这是一种进化,生物多样性始终是进步的关键。因此,如果你是一名语言设计师(现在所有程序员都必须设计特定领域的语言),你必须对那里的每一种小语言都留心一点。 - SK-logic
1
当 Python、Scala 和 Clojure 刚问世时,也许就有人问过同样的问题。而现在我们已经将它们视为理所当然。谁知道这种新语言能带来多少有用的东西呢? - Goran Jovic
5
这并不是一种新语言。它是在90年代初创造的,但显然现在有新的努力投入其中。 - Michiel Borkent
学习这种编程语言对人们来说有什么趣味性?——显然是为了好玩! - Dan Burton
3个回答

8
这里有几个问题。
Dylan是什么?请阅读它的维基百科页面,这是一个很好的开始。 Dylan的独特之处在于它是一种Lisp,没有Lispy语法。当Dylan首次定义时,这吸引了一些人。此外,Dylan已经实现了相当功能强大的宏系统(这可以说是Lisp最强大的优势之一),而没有使用Lisp语法。
为什么Dylan今天仍然有趣?嗯,它只是另一种编程语言,而且是一种相当老的编程语言。它是在90年代初设计的,所以存在许多更新的语言。但是,如果一个人喜欢Lisp的方式但不喜欢其语法,那么Dylan可能是最好的选择。
Dylan对你来说有什么意义?这是一个主观的问题,很大程度上取决于你。你的兴趣是什么?你的目标是什么?你正在使用哪些工具,你对它们是否满意?

7
Dylan最酷的地方在于它的对象系统。Common Lisp有一个叫做CLOS(common lisp object system)的对象系统,基本上是所有对象系统中的非常好的一个,但CL的问题在于它的设计有点不太干净。Dylan的开发者想要CLOS的全部功能,但需要一个全新干净的设计。
最特别的一点是你可以通过在对象之外使用多方法来实现所有操作。这真的很棒,但刚开始可能难以看到其好处。
另一个特点是Dylan有一个宏系统,效果还不错。我没有看过更好的语法宏系统。
总的来说,Dylan是一种非常棒的语言,只是遇到了很多不幸。每个人都应该尝试学习一些Dylan,它有很多值得教授的东西。OpenDylan的开发者继承了大量的代码(编译器和库等),并且正在努力使其达到生产就绪状态。

0

乍一看,它看起来像是一种具有传统语法的Lisp语言。

像C#这样的语言缺乏Lisp强大的元编程功能,而Lisp的语法在许多程序员看来很丑陋。Dylan似乎将Lisp的特性与“正常”语言的语法结合起来,这无疑是一种吸引人的组合。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接