记者从科学出版社获悉,该出版社日前出版了北大信息学院软件理论教研室原主任、教授袁崇义的英文专著《OESPA: Semantic Oriented Theory of Programming》,书中提出了面向语义的新编程理论OESPA,这是目前唯一能做语义计算的编程理论。
袁崇义介绍,OESPA包括计算模型(编程语言)OE,语义谓词SP和语义公理A。传统的程序语言以社会学中的形式语言学为理论基础,没有考虑语义形式化的需求。OE则是二合一的,定义OE的公式既是编译程序需要的形式语法,又是定义语义公理的形式基础。
“传统数学中的谓词只能描述程序单独一个状态的性质,而程序语义是程序初态和终态之间的关系。SP联系初态和终态,能准确描述程序语义。语义谓词SP从语义公理A演变而成。从SP推出的SP公式和SP演算,用于程序的语义计算和语义综合,可借助符号处理工具完成程序正确性证明。”袁崇义表示,一旦开发出相应的符号处理系统,测试就不再是编程必要的一步。SP公式和SP演算还适用于描述程序规范和规范分析。
同时,袁崇义尝试SP和A用于C语言指针的语义处理,提出了指针的语义公理,表明OESPA可以用于传统语言程序的语义形式化处理。