今天我想到,尽管我在提到语言元素和命名约定时已经采用并且很少使用“语义”一词,但是我对正式的定义没有任何感觉。
My attempt to find a formal definition in the programming domain使我的眼睛呆呆了。
从我所遇到的上下文以及它在语言学上的更普遍用法,我对它的含义有所了解,并且我通常使用该术语来指代,即语言元素的含义或表达能力,或者对其命名为的意图,行为或功能的术语的保真度。
不过,这个定义是我自己的想法。我是人类学/英语专业,从未参加过计算机科学类(class)。这是CS讲授的吗?
是否有一个更准确的定义可以简化为一两个陈述,而不是详尽无遗的文章?
最佳答案
从here抄写的定义是编程语言的语义描述了语法和计算模型之间的关系。这几乎完全是您推断出的定义。症结所在,让您眼前一亮的,就是精确地定义了计算模型。
有许多不同的形式化计算模型,并且每种模型都导致语义的不同形式。操作语义学可能最接近大多数人对语义进行非正式建模的方式,即使每个代码片段都通过解释器运行并更改抽象例程的状态。在并发或不确定性等的许多模型中,这种方法都无法使用,因此还有其他更适合这些情况的语义。
关于programming-languages - "semantics"的简单定义,因为它通常与编程语言/API有关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3277798/