请简述程序设计语言中,语法、语义、语用的定义及其在语言表达中的应用特点

请简述程序设计语言中,语法、语义、语用的定义及其在语言表达中的应用特点,第1张

(1) 语法是指由程序语言的基本符号组成程序中的各个语法成分(包括程序)的一组规则,其中由基本符号构成的符号(单词)书写规则称为语法规则,由符号(单词)构成语法成分的规则称为语法规则.程序语言的语法可通过形式语言进行描述.

(2)语义是程序语言中按语法规则构成的各个语法成分的含义,可分为静态语义和动态语义.静态语义指编译时可以确定的语法成分的含义:而运行时刻才能确定的含义是动态语义.一个程序的执行效果说明了该程序的语义,它取决于构成程序的各个组成部分的语义.

(3)语用表示了构成语言的各个记号和使用者的关系,涉及符号的来源,使用和影响.

语用的实现则有个语境问题.语境是指理解和实现程序设计语言的环境,这种环境包括编译环境和运行环境.

一个学科的最终目标,往往很简单,也和当前发展程度、使用的方法、流行的理论无关。语言学的语义学研究目的在于找出语义表达的规律性、内在解释、不同语言在语义表达方面的个性以及共性。形式语义学的目标是构建组合语义,用有限的语义单元,组合出无穷的语义,并且和语法结构有一定对应关系。从理论思想来说,形式语义学借鉴了生成语法的一些思想。形式上主要采用lambda calculus(lambda演算)作为表达语义的方式。但是应该也可以使用其它的符号、逻辑体系。我个人认为lambda演算(包括有类型的lambda演算)局限性很大,所以建立了另外一套理论框架,用于定义语义单元,并实现了组合语义的形式化计算。我认为形式语义的关键目标是实现因素化(factorization)和组合化(combination)。

形式语义学(formal semantics),是程序设计理论的组成部分,以数学为工具,利用符号和公式,精确地定义和解释计算机程序设计语言的语义,使语义形式化的学科。形式语义学是从20世纪70年代开始发展出来的一个理论阵营。最初的研究开始于蒙太古以数理逻辑方法对英语的研究,后来经过语言学家和哲学家的共同努力,发展成为一个独立的学科,并且摒弃了蒙太古对生成语言学的句法学的忽视,强调语义解释和句法结构的统一,从而最终成为生成语言学的语义学分支。为了正确、有效地使用程序设计语言,必须弄清语言中各成分的含义,并且要求计算机系统执行这些成分所产生的效果和它的语义完全一致。由于自然语言存在歧义性,故用自然语言解释程序设计语言的含义容易造成误解,影响语言的正确实现和有效使用。

实践证明,必须用形式化的语言和方法精确解释程序设计语言。这种需求产生了形式语义学。20世纪60年代初,在程序设计语言ALGOL60的设计中,第一次明确区分了语言的语法和语义,围绕ALGOL60的语义问题出现了形式语义学早期的研究高潮。70年代,形式语义学取得重大进展,指称语义、代数语义等理论和方法对程序设计理论有深刻的影响。 *** 作语义、公理语义等研究也开创了新的局面。形式语义学是软件工程学的基础理论之一,语言的形式语法和形式语义已成为程序设计语言的必要组成部分。在形式语义学基础上,形式规范、程序变换、编译自动化等研究都取得了丰硕的成果。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7794434.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存