本书的主要内容包括程序设计语言的语法和语义、数据类型和控制结构、面向对象语言、逻辑程序设计语言和函数程序设计语言、以及并行程序设计语言等五个部分,分成十一章。本书使用最简单的例子介绍上述这些概念。每一章上给出了相应的练习。第一章介绍程序语言的概念、抽象方法、计算机的模式、语言的定义以及语言的翻译和设计等概念。第二章介绍语言的有效性,语言的一般性、正义性和统一性以及语言的设计标准。第三章介绍程序设计语言的词法结构、上下文无关语法、BNF和句法图、句法分析树和抽象分析树,语法的二义性、结合性和优先性、分析和方法和工具。第四章介绍语言的属性、联编和语义等,符号表、存储分配、表达式的求值,以及程序设计语言形式语义等。第五章介绍数据类型和类型的信息、简单类型、类型的构造操作,类型的等价、检查和转换等。第六章介绍卫哨命令和条件、循环的各种形式、GO-TO的争论、过程和参数以及例处处理。第七章介绍抽象数据类型的代数规格说明、具体语言的抽象数据类型、重载和多态、程序模块和分块编译、抽象数据类型方法中的问题。第八章介绍软件的重用性和独立性,对象、类和方法、继承、动态联编,几种具体的面向对象语言,面向对象语言的设计和实现。第九章介绍程序作为函数、过程式语言中的函数程设设计、具体的函数程序设计语言、函数程序设计的数学方法:递归函数和Lamboda演算、函数语言的动态存储管理等。第十章介绍逻辑程序、Horn句子、归结和合一、proing语言、逻辑程序设计中的问题。第十一章介绍并行处理和程序设计语言、伪并行和协同例程、信号量、管理和消息传递方法非过程语言的并行方法。