jiangdm的个人博客分享 http://blog.sciencenet.cn/u/jiangdm

博文

计算机语言的形式语义研究

已有 7595 次阅读 2010-8-12 21:18 |个人分类:Formal method|系统分类:观点评述| 形式语义

计算机语言的形式语义研究
计算机科学对语言研究(包括对自然语言和对人工语言)大致三个向:语法syntax、语义semantics、语用pragmatics
  -- 语法研究语言的形态结构
  -- 语义研究语言与其所指代对象的联系
  -- 语用研究语言和其使用者之间的联系(从使用者角度、按使用者的需求对语料进行差异化)
 
  计算机没有智能,计算机智能都是假的,是人给它安装上去的,所以计算机语言最大的特点是形式化(Formalization,包含规范化Normalization的意思),计算机语言的形式化分为语法形式化和语义形式化两个方面,形式语义学研究语义形式化,包括操作语义学、指称语义学、公理语义学和代数语义学四种。具体可参考:  操作语义的基本思想是建立一个抽象机器以模拟程序在执行过程中如何进行数据处理。  指称语义的思想是使语言的每一成分对应于一个数学对象,该对象称为该语言成分的指称,程序看作输入域到输出域的映射,输入域和输出域统称为论域。因此论域与映射是指称语义的基本研究对象。  公理语义实在程序正确性验证的基础上发展起来的,它给出一种方法,使人们在给定的前提下,验证某种特性是否成立。  代数语义的基本思想是把描述语义的逻辑体系和满足这个逻辑系统的各种模型统一在一起,同时把模型的集合看成是以代数机构,研究这些模型之间的关系。   国内计算机形式语义学参考书:  1、周巢尘,《形式语义学引论》,湖南科技出版社(绝版)  2、周之英,翻译,《计算机形式规范概论》,清华大学出版社(绝版)  3、屈延文,《形式语义学基础与形式说明》,科学版(绝版)  4、陆汝钤,《计算机语言的形式语义》,科学版  5、陈意云,(实际是编译的),《形式语义学基础》,中国科技大学出版社  6、陈意云,(实际是编译的),《程序设计语言理论》,中国科技大学出版社  7、宋国新,翻译,《程序设计语言的形式语法及语义》,机工版   从发展来说,国内形式语义学或程序理论的教材,落后国外十年以上,国外现在最流行的几本教材是:  1、《Semantics of Programming Languages》(Carl A.Gunter)MIT Press 1992  这是目前最流行的一本高级教程,主要采用简单类型Lambda Calculus和范畴学来表达语义学,章节安排、内容取舍比较合理,评价也很高,很多大学都推荐使用。  2、《The Formal Semantics of Programming Languages》(Glynn Winskel)MIT Press 1993  另一本流行的一本中高级教程,作者Winskel是剑桥大学的教授,该书在欧洲几乎成为标准教材了,评价也很高,很多大学都推荐使用,已有中文版。 3、《Foundations for Programming Languages 》(John C. Mitchell )MIT Press 1996  作者是斯坦福教授。该书内容齐全,850页,大部头,绝对是超高级教程,适于作为参考书。 4、《Theories of Progamming Languages》(John C. Reynolds)Cambridge Press 1998  Reynolds是CMU教授,该书出发角度和上面的几本有所不同,按作者的话来说,就是尽量避免使用高深的数学理论,诸如范畴学之类的东西,同时这本书内容涉及也比较广,甚至有并发理论和CSP。该书评价非常高,推荐大家看。  5、《Semantics of Programming Languages》(R.D. Tennent)Prentice-Hall 1990  这本书的最大特点就是采用imperative language作为研究对象,和国内的教学最符合了,国外很多大学,特别是欧洲的大学,普遍采用函数式汝ML语言作为研究和教学语言。作者R.D. Tennent在八十年代初,曾经出版过一本《Principles of Programming Languages。  6、《Introduction to the Theory of Programming Languages》(Bertrand Meyer)Prentice-Hall 1988
 作者另一本书《Object-Oriented Software Construction》前几年就已经引进中国了。这本书几乎没有高深的数学内容,可能这本书出的比较早些,书的内容要比前面的几本书都要容易浅些,可作为入门的书。
 
 
  Game Semantics 博弈语义
 
 
Book:  A Comprehensive Book List for Advanced Study in the Logical Foundations, Semantics and Type Theories of Modern Programming Languages
 
清单分类如下
1. Semantic Theory of Programming Languages
2. Set Theory, Category Theory & Universal Algebra
3. Lambda Calculus, Combinatory Logic & Related Calculi
4. Logics, Proof Theory & Type Theory
5. Foundations and Philosophy of Mathematics
6. Handbooks & Source Books
7. Historical & Biographical
 
天啊!我几本书我瞄了一眼就放弃了,Mitchell, Foundations of Programming Languages 页数大于600。不要说看完清单所有书,就是看其中几本书,你仅有两种选择:大师或疯子!
 
形式化需要,但是不可全要!
 
BOOKS:
     
      


https://blog.sciencenet.cn/blog-468147-352412.html


下一篇:学术检索
收藏 IP: 182.87.88.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-9-27 06:44

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部