首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Haskell有多少种句法形式?

Haskell有多少种句法形式?
EN

Stack Overflow用户
提问于 2020-04-22 01:17:35
回答 1查看 288关注 0票数 6

诺维格大师曾经说过:

方案的美妙之处在于,整个语言只需要5个关键词和8个句法形式。相比之下,Python有33个关键字和110个语法形式,Java有50个关键字和133个语法形式。所有这些括号可能看起来都很吓人,但是Scheme语法具有简单和一致的优点。(有人开玩笑说,"Lisp“代表”许多令人恼火的愚蠢的部分“;我认为它代表"Lisp在语法上是纯粹的”)。

那么Haskell与之相比呢?

EN

回答 1

Stack Overflow用户

发布于 2020-04-22 22:25:40

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

很难确切地确定什么是“句法形式”。例如,Java计数可能是从表达式级别和更高级别(即“标识符”是原子的级别)的扩展BNF规则的数量中提取的,就像在此Java语法页上列出的大约120条规则一样。这似乎与这个有关计划的网页是一致的,在这个有关计划的网页中,我数了大约14个,忽略了那些似乎完全与标识符和文字的词法结构有关的规则。我们用的是近似,其中8和14应该被认为是相等的。

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

也可以安全地说,根据注释,GHC特定的语法(语用、原语和许多许多扩展)可以很容易地将这一数字增加一倍或三倍。

尽管如此,我不确定这个指标有多有用。我不反对有人声称Scheme是一种美丽的语言,但我认为,Scheme是一种美丽的语言,因为(或者主要是因为)它有少量的关键字和句法形式,这是一种过分简化的现象。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61355767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档