gpt4 book ai didi

haskell - Haskell 有多少种句法形式?

转载 作者:行者123 更新时间:2023-12-02 02:44:01 24 4
gpt4 key购买 nike

诺维格大师曾经说过:

The beauty of Scheme is that the full language only needs 5 keywords and 8 syntactic forms. In comparison, Python has 33 keywords and 110 syntactic forms, and Java has 50 keywords and 133 syntactic forms. All those parentheses may seem intimidating, but Scheme syntax has the virtues of simplicity and consistency. (Some have joked that "Lisp" stands for "Lots of Irritating Silly Parentheses"; I think it stand for "Lisp Is Syntactically Pure".)



那么 Haskell 是如何比较的呢?

最佳答案

对于 Haskell 98,可能与 Python 或 Java 的数量级大致相同。

很难确切地确定什么构成了“句法形式”。例如,看起来 Java 计数可能是从表达式级别及更高级别(即“标识符”是原子的级别)的扩展 BNF 规则的数量中获取的,如 this Java SE syntax page其中列出了大约 120 个左右。这似乎也与此一致 page on Scheme ,我会数大约 14,忽略似乎完全与标识符和文字的词法结构有关的规则。我们在这里使用近似值,其中 8 和 14 应该被认为是相等的。

因此,根据该指标,我在 Haskell 98 报告第 9.5 节上下文无关语法(这似乎与 Java 引用的抽象级别大致相同)中快速而肮脏的计数是 76。同样,我们在这里使用近似值其中 76、110 和 133 都应该被认为是相等的,所以 Haskell == Python == Java。

也可以肯定地说,根据评论,GHC 特定的语法(编译指示、原语和许多很多扩展)很容易使这个数量增加一倍或三倍。

尽管如此,我不确定这个指标有多大用处。我不否认 Scheme 是一种美丽的语言的说法,但我认为 Scheme 是一种美丽的语言,因为(或主要是因为)它有少量的关键字和句法形式,充其量只是一种令人震惊的过度简化。

关于haskell - Haskell 有多少种句法形式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61355767/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com