本书是一本计算机专业的宽口径教材,新版按照CC2001和CCC2002教程改写,覆盖除自动机外编程语言模块的全部内容。一个程序设计语言涉及设计者、实现者和使用者。读者在阅读本书之前,都学习过1~2门高级编程语言,已经是语言的使用者。本书是一本计算机专业的宽口径教材,新版覆盖CC2001和CCC2002教程中,除自动机外编程语言(PL)模块的全部知识点。其内容涉及语言及其编译系统的设计要素、设计思想、设计方法、设计技术和设计风格等知识,全书分为上、下篇。上篇,程序设计语言的设计包括:绪论、数据类型、控制结构、程序语言设计、非过程式程序设计语言和形式语义学简介。下篇,程序设计语言的实现(编译)包括:编译概述、词法分析、自上而下的语法分析、自下而上的语法分析、语义分析和中间代码的生成、代码优化和目标代码生成、运行时存储空间的组织等。本书的学习目标是,使读者掌握设计和实现一个程序设计语言的基本思想和方法,具有分析、鉴赏、评价、选择、学习、设计和实现一个语言的基本能力。本书力求简明、通俗,注重可读性,是大学计算机专业高级程序设计语言概论及编译技术课程教材,也是软件开发人员的学习参考书。