gpt4 book ai didi

language-agnostic - 编程语言之间的关系

转载 作者:行者123 更新时间:2023-12-03 13:27:37 25 4
gpt4 key购买 nike

我想知道以下问题:


some language isa subset/superset of another”是什么意思?能够
在数学中定义?是吗
与子集/超集有关
基本集合论中的概念?
几乎是所有现有语言
以小部分实现/编写
多少种低级语言?对于
例如,大多数语言都是书面的
在C中? C ++是用C编写的吗?

之间的关系
执行关系和
子集/超集的概念
语言?
就语言功能而言,
语言比其他语言更多。
在某些情况下,有些具有
其他一些功能,例如
C ++是否具有C的所有功能?

之间的关系
子集/超集关系
功能集和
子集/超集之间的关系
语言?
还有其他方面吗
刻画之间的关系
语言?


感谢致敬!

最佳答案

什么是“某种语言是另一种语言的子集/超集”是什么意思?


如果在语言A上有效的每个程序在语言B上也有效,那么从语法上讲,语言A是语言B的子集。在语义上,如果它是语法上的子集,并且每个有效的A程序在语言上也表现出相同的行为,则语言A是语言B的子集。 B.


可以在数学中定义吗?它与基本集理论中的子集/超集概念有关吗?


语法子集:如果P_A是语言A中所有有效程序的集合,而P_B是语言B中所有有效程序的集合,则语言A是语言B的语法子集,如果 P_A的子集。

语义子集:假设 P_B是描述语言A中程序 A(p)行为的函数,而 p描述语言B中程序 B(p)行为的函数。当且仅当定义了 p的所有 p,也定义了 A(p)B(p)


几乎所有现有的语言都以少量的底层语言实现/编写吗?


当然,这取决于您对“几乎所有”的定义,但是我倾向于拒绝。许多编译器和解释器都是用C和C ++编写的(仅仅是因为通常许多软件都是用C和C ++实现的),但是到目前为止,并不是全部。


例如,大多数语言是用C编写的吗? C ++是用C编写的吗?


正如已经在注释中指出的那样,C ++是一种语言,而不是一种软件。 GCC C ++编译器 A(p) = B(p)用C编写,但是也有C ++编译器用不同的语言编写(可能)。


就语言功能而言,某些语言比其他语言具有更多的功能。在某些情况下,某些具有其他某些功能,例如,C ++是否具有C的所有功能?


是的(除非您将简单性视为一项功能)。


就特征集而言,子集/超集关系与语言之间的子集/超集关系之间是否存在某种关系?


如果一种语言是另一种语言的超集,则该语言的功能集也必须是另一种语言的功能的超集(同样,除非您将简单性或诸如“该语言不允许X”之类的功能算作一种功能)。

但是,这不适用于另一个方向(即,仅因为A的特征是B的特征的超集,所以A不必是B的超集)。

关于language-agnostic - 编程语言之间的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5439186/

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