gpt4 book ai didi

c - 使用 C 来实现其他语言是否以任何方式限制了它们的设计?

转载 作者:太空狗 更新时间:2023-10-29 16:25:59 26 4
gpt4 key购买 nike

似乎在过去 20 年中出现的大多数新编程语言都是用 C 编写的。这完全有道理,因为 C 可以被视为一种可移植的汇编语言。但我很好奇的是,这是否以任何方式限制了语言的设计。促使我提出问题的是思考如何在 Python 中直接使用 C 堆栈来调用函数。显然,编程语言设计者可以用他们想要的任何语言做任何他们想做的事,但在我看来,你选择用来编写新语言的语言会让你处于某种心态,并为你提供某些难以忽视的捷径。这些语言的其他特征是否来自于用该语言编写的(好的或坏的)?

最佳答案

我倾向于不同意。

我不认为语言的编译器或解释器是用 C 实现的——毕竟,你可以用 C 实现一个完全不同于其主机环境的虚拟机,这意味着你可以 摆脱 C/接近汇编语言的心态。

但是,更难说 C 语言本身对后来的语言设计没有任何影响。例如,使用大括号 { } 将语句分组到 block 中,空格和缩进大多不重要的概念,原生类型的名称 (int, char 等)和其他关键字,或定义变量的方式(即首先进行类型声明,然后是变量的名称,可选的初始化)。许多当今流行和广泛传播的语言(C++、Java、C#,我相信还有更多)与 C 共享这些概念。(这些可能不是 C 的全新概念,但 AFAIK C 提出了语言语法的特殊组合。)

关于c - 使用 C 来实现其他语言是否以任何方式限制了它们的设计?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3513780/

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