自适应语法
编辑自适应语法是一种形式化的语法,它在形式化中明确地提供了允许自己的生产规则被操纵的机制。
自适应语法的概述
编辑约翰-N-舒特(JohnN.Shutt)将自适应语法定义为一种语法形式主义,它允许规则集(又称生产规则集)在语法中被明确地操纵。操作的类型包括规则的增加、删除和修改。
早期历史
编辑文献中对语法自适应性的xxx次描述(尽管不是以这个名字)一般认为是在AlfonsoCaracciolodiForino于1963年发表的一篇论文中。下一个被普遍接受的关于自适应形式主义(可扩展的上下文自由语法)的描述来自于1970年Wegbreit对可扩展编程语言的研究,随后是1973年Hanford和Jones的动态语法。直到最近,对自适应语法的形式属性的许多研究在研究者之间是不协调的,只是在1990年由HenningChristiansen对BorisBurshteyn在ACMSIGPLANNotices上的一篇论文进行了首次总结。圣保罗大学工程系有它的自适应语言和技术实验室,专门专注于自适应技术和理论的研究和实践。LTA还维护了一个页面,对该领域的研究人员进行命名。
术语和分类法
编辑早期的努力提到了动态语法和可扩展、可修改、动态和可适应的语法,而最近的用法则倾向于使用术语adaptive(或一些变体,如adaptativa,取决于文献的出版语言)。岩井将她的形式主义称为适应性语法,但这种简单的适应性语法的具体使用目前在文献中通常不需要名称限定。此外,各个研究者之间没有进行标准化或分类的努力,尽管有几个人在这个方向上做了努力。Shutt的分类(和扩展)Shutt将自适应语法模型分为两大类。义务性自适应语法基于全局状态随语言生成的时间变化而改变其规则。声明性自适应语法仅在语言生成的空间(即生成的字符串在语法树中的位置)上改变其规则。Jackson完善了Shutt的分类法,将随时间的变化称为全局变化,将随空间的变化称为局部变化,并增加了一个混合时间空间类别。时间-空间的自适应语法(混合型)在语言生成的时间或空间(或两者)上改变其规则(而且局部和全局的操作由这种变化的符号明确区分)。文献中的自适应形式主义自适应形式主义可分为两大类:完整的语法形式主义(自适应语法),以及自适应机器,一些语法形式主义是在此基础上形成的。
适应性语法形式主义
编辑以下是根据Shutt的上述定义,被认为是(或被其发明者归类为)适应性语法的语法形式主义的清单(绝非完整)。它们是按照在文献中首次提到的历史顺序排列的。可扩展的上下文自由语法(Wegbreit)1970年Wegbreit的博士论文中描述过,可扩展的上下文自由语法包括一个上下文自由语法,其规则集根据有限状态转换器在最左派生期间读取终端前缀时输出的指令进行修改。因此,规则集随生成的字符串中的位置而变化,但这种变化忽略了语法树的层次结构。可扩展上下文自由语法被Shutt归类为命令式。
克里斯蒂安森语法(Christiansen)
编辑克里斯蒂安森语法(Christiansengrammars)最早于1985年作为生成语法被引入,后来又有了更多的阐述,克里斯蒂安森语法(显然是被舒特这么称呼的,可能是由于与乔姆斯基生成语法的冲突)是属性语法的一个适应性扩展。克里斯蒂安森语法被舒特归类为陈述性语法。作为对ACMSIGPLAN通告的回应,Burshteyn后来修改了他的形式主义,并在1992年推出了他的适应性通用语法和语义分析器(USSA)。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/163756/