一个自己写的编程语言材料

咨询后,目前认识如下:

我之前设想的是描述语言的功能,而暂未考虑对其进行验证。以上面例子,功能是“对两个或多个整数进行求和”。用范畴逻辑等工具对“什么是整数”、“什么是求和”等等进行形式化定义,可以验证该功能是否合理、与其他功能是否有矛盾等等,但不具备这些定义不妨碍进行功能描述。换言之,在功能描述时,暂时借助一般共识的“整数”、“加法”等概念。

在功能描述时,暂时借助一般共识的“整数”、“加法”等概念。

这才是研发工业语言最经济的做法 :slight_smile:

之前的问题“有没有对编程语言的语义作描述的编程语言呢?”的确唐突。

也许应另开一个话题:如何对编程语言进行需求分析。因为编程语言在功能需求(比如上面的“支持多个数相加相乘”)之外,还有反馈、性能、互操作等等。不知已有的成熟语言项目是否有这方面的文档。

如果能用相对标准一致的描述方式对各编程语言进行需求分析,比较它们之间的异同也许会更方便,也可以对新语言的研发提供更全面的参考。wiki里 仅比较了特性:

我老板很想让我写 :smiling_face_with_tear::smiling_face_with_tear::smiling_face_with_tear::smiling_face_with_tear:

商业语言这方面文档公开的好像比较少。也许一些上世纪以委员会组织研发的语言会有更正式的需求分析文档。