首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是“标准化”,为什么是Haskell?

什么是“标准化”,为什么是Haskell?
EN

Stack Overflow用户
提问于 2013-01-31 22:41:15
回答 1查看 249关注 0票数 7

维基百科claims说哈斯克尔是“标准化的”,但是哈斯克尔标准没有得到国际标准化组织等国际公认的标准机构的认可,甚至没有得到英国国际标准协会或美国国家标准协会等国家标准机构的认可。

那么,编程语言被贴上“标准化”标签的标准到底是什么呢?它是否只需要有a specification published on a website somewhere

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-01 04:47:35

你已经回答了你自己的问题。标准化语言是由某种规范定义的语言,可以是文档,也可以是本身标准化和形式化的语言(如SML)中的“参考实现”。哪个机构认可或批准该标准并不是真正的问题。

这与Perl或PHP等实现定义的语言不同,在Perl或PHP等语言中,语言所做的事情只是由该语言的某些特定“旗舰”实现所做的事情来定义的。

所以我们可以说,某个C编译器实际上并没有正确地编译C,因为它不遵守标准。同时,我们不能说CPython没有正确地解释Python,因为根据定义,它所做的就是Python所做的。

Haskell是由Haskell报告定义的,其最新版本是Haskell2010:http://www.haskell.org/onlinereport/haskell2010/

这份报告是由一个委员会起草的,经过投票和批准。此外,历史上已经并仍然存在多个Haskell编译器和解释器,它们要么符合报告,要么几乎符合报告,但有文档记录的例外情况。

按照标准编写的代码应该可以跨编译器移植,当发现编译器和报表之间存在差异(不是“预期的”)时,通常会更改编译器或报表以使其符合标准。

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

https://stackoverflow.com/questions/14628383

复制
相关文章

相似问题

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