论文部分内容阅读
本文从语言和领域两个角度出发,研究了面向语言的领域语言开发方法。主要工作包括:
1.为进一步提高语言定义的重用度和灵活性,提出了“面向语言”的概念:将语言作为第一类值来讨论,语言的每个成分可定义为一个小语言,允许语言作为整体进行赋值,语言本身又可以作为参数和返回值。
2.将代数规范方法和指称语义方法相结合,提出基于指称的语言代数规范,为语言建立了抽象模型。
3.在语言的抽象模型基础上,建立了语言演算系统,提出了适用于语言组合的重命名、扩充、屏蔽、联合、复合、参数化、精化等算子,研究了各组合算子的含义模型及相关的性质。语言演算系统通过显式操作的方式支持语言的灵活重用。
4.为了提高语言演算的安全性,给出语言类型的概念,引入含约束的类型,建立类型化的语言演算系统,给出具体的类型推理规则和子类型规则,提出将Ideal作为语言类型的语义模型,在此基础上证明了类型推理规则的语义可靠性,并讨论了类型检查算法。
5.为了将领域驱动的思想融入领域语言的开发,提出了基于描述逻辑的特征模型,研究如何使用描述逻辑来形式化特征模型,利用描述逻辑推理机自动完成对特征模型的一致性检查,从而保证领域知识表示的一致性。在一致的特征模型的基础上,给出由特征模型得到语言初始规范的指导法则,使得设计出来的语言包含领域知识、具有针对领域的特性。