共查询到20条相似文献,搜索用时 125 毫秒
1.
知识库系统KBASE+的数据模型,语言及实现 总被引:1,自引:0,他引:1
本文讨论具有面向对象特征的知识库系统KBASE+的数据模型,语言及实现,KBASE+的数据模型可以方便地支持对象标识,类层次,多继承等面向对象概念。描述性查询语言KBL是扩充的DATALOG。本文重构了KBL语义理论框架,提出了解决属性继承和实例继承的方案,说明了KBL程序可以转换成语义等价的DATALOG程序。 相似文献
2.
具有面向对象特征和知识库系统 总被引:1,自引:0,他引:1
本文讨论了具有面向对象特征的知识库系统KBASE^+的数据模型,语言及实现。KBASE^+的数据模型可可以方便地支持对象标识,类层次,多继承等面和对象概念。描述性查询语言KBL是DATALOG针对于非一范式关系模型的扩充。本文重构了KBL的语义理论框架,提出了通过计算相关的下确界来解决属性继承中的冲突问题,通过在KBL程序中添加规则来实现实例继承的方案。本文说明了KBL程序可以转换成语义等价的DA 相似文献
3.
张庭俊 《抗恶劣环境计算机》1996,10(5):18-24
为了更好支持实时系统中使用并行机制,Ada程序设计语言的修订标准-Ada9X扩充了Ada的任务机制模型,这些扩充需要新的实现方法,该文讨论了有关技术问题,并且概述了实现方案-GNuAda运行库,详细地讨论了两个特点:保护对象和控制异步转换,保护对象是一种数据对象,对于多任务并发存取是安全的,控制异步转换允许一个任务去响应中止当前计算的异步事件,并把控制转移到该任务中的一个恢复点。 相似文献
4.
5.
6.
程序信息流安全是信息安全的一个重要研究方向.基于类型的静态分析可以保证程序信息流安全与单进程系统相比.移动计算系统中数据通讯的存在使得程序信息流安全保护更加困难.Cornell大学的Zdancewic对函数式语言λsec的单进程程序信息流安全进行了研究.本文在其工作的基础上,根据移动计算系统的结构特征,通过对函数式语言λsec进行扩充,加入通讯原语,将其扩展成移动计算语言MobileML,并针对一个简单的移动计算模型,给出了描述程序信息流安全的无干扰性定义,设计了相应的信息流类型系统,用以静态检查保证MobileML语言程序信息流安全. 相似文献
7.
Smalltalk-80的指称语义研究 总被引:1,自引:0,他引:1
Smalltalk—80是原型的面向对象程序设计语言和环境.本文简要地给出了Smalltalk-80的形式模型,并基于该模型描述了Smalltalk—80的静态和动态指称语义. 相似文献
8.
传统程序设计语言的面向对象扩充的若干技术 总被引:3,自引:0,他引:3
本文论述用转换方式实现传统程序设计语言的面向对象扩充,给出了一组关键技术以解决由子类型多态和动态定连所引出的问题,其基本思想是将类和对象类型分开处理,从而避免转换过程中的重复工作.这些技术具有适用性强、功效高的特点,并且在PASCAL语言的面向对象扩充NDOOP和MODULA-2语言的面向对象扩充NDOOM的实现中被采用,效果令人满意. 相似文献
9.
Eiffel语言的语义 总被引:1,自引:0,他引:1
本文采用类VDM的指称语义技术为Eiffel(1988)语言建立了形式语义模型.该模型首先为Eiffel语言定义了对象模型和两个语义环境(动态和静态环境),然后讨论Eiffel例程的语义.为了描述Eiffel的意外处理,我们采用了VDM的“出口”机制. 相似文献
10.
就语言的指称语义分别讨论了智能神经网络程序设计语言NIPL中有关规则的动、静态语义,从而建立了NIPL中规则的数学模型。 相似文献
11.
基于轨迹的程序语义之一:轨迹与语义对象 总被引:2,自引:0,他引:2
本文提出一种基于轨迹的指称语义框架,该框架结合了操作语义和代数语义的特征,避免使用专门的数学理论,将静态语义和动态语义结合在一起统一处理.本文及其续篇将通过一个中等规模的过程式模型语言来说明上述语义框架更适合描述真正的程序设计语言.本文首先引入轨迹概念和模型语言,然后讨论该语言的各句法成分所对应的语义论域,其中没有使用含有函数空间构造运算的递归论域方程. 相似文献
12.
M.H. Williams 《Computer Languages, Systems and Structures》1981,6(1):1-17
The formal specification of a programming language involves the specification of three types of rules: syntax, static semantics and semantics. Various methods have been proposed for specifying the static semantic rules of programming languages, but as yet no method has received general acceptance. This paper looks at several different specification techniques and attempts to isolate the basic mechanisms used by each of them and explain the pattern of development of specification techniques for static semantics. 相似文献
13.
M.H. Williams 《Computer Languages, Systems and Structures》1980,5(1):37-55
The syntax rules of programming language are generally fairly well understood and may easily be expressed formally as a grammar using BNF. However, the static semantic rules are less well understood and considerably more difficult to express formally. All notations for expressing static semantic rules either formally or informally involve actions being associated with the productions of the grammar. This paper presents such a formal notation which has been applied to various languages and found to be very useful both for the designer and the compiler writer. 相似文献
14.
15.
Use of executable declarative metalanguages has simplified programming language syntax specification and implementation, whereas existing formalisms for static semantics are still relatively procedural. A working hypothesis is that the context-sensitivity of languages (under static semantic rules) is derived in significant part from the interleaved presences therein of sentences in implicitly-defined and effectively invisible context-free languages. Procedures by which these sentences and context-free grammars for their languages can be respectively derived from the original sentence and the combination of the original language's grammar and semantic rules, lead to the possibility of automatic generation of static semantic analysers from the purely context-free specifications of “Facet Grammars” (FG)!
We show that the utility of FG for static semantic analysis has a non-trivial lower bound, by specifying the relatively complicated identifier scope and accessibility rules for Dijkstra's Guarded Commands Language. 相似文献
16.
17.
一个自动编译系统ACS 总被引:1,自引:0,他引:1
本文介绍一个自动编译系统ACS。对某上下文无关文法语言,写出其词法描述、语法描述、语义描述和目标机描述。ACS系统可以自动生成此语言在目标机上的编译程序。ACS系统由六个子模块组成:词法自动生成器、语法自动生成器、语义自动生成器、中间语言转换程序、优化程序和代码自动生成器。本文将分别讨论这六个子模块的原理和功能,还将给出用ACS系统生成的一个编译程序实例—Mini_Ada编译程序。 相似文献
18.
19.
20.
Metamodeling semantics of multiple inheritance 总被引:1,自引:0,他引:1
Inheritance provides object-oriented programming with much of its great reusability power. When inheritance is single, its specifications are simple and everybody roughly agrees on them. In contrast, multiple inheritance yields ambiguities that have prompted long-standing debates, and no two languages agree on its specifications. In this paper, we present a semantics of multiple inheritance based on metamodeling. A metamodel is proposed which distinguishes the “identity” of properties from their “values” or “implementations”. It yields a clear separation between syntactic and semantic conflicts. The former can be solved in any language at the expense of a common syntactic construct, namely full name qualification. However, semantic conflicts require a programmer’s decision, and the programming language must help the programmer to some extent. This paper surveys the approach based on linearizations, which has been studied in depth, and proposes some extensions. As it turns out that only static typing takes full advantage of the metamodel, the interaction between multiple inheritance and static typing is also considered, especially in the context of virtual types. The solutions proposed by the various languages with multiple inheritance are compared with the metamodel results. Throughout the paper, difficulties encountered under the open-world assumption are stressed. 相似文献