计算机科学中的程序语言领域主要研究的是啥,有啥直观地解释

PhD在读。个人认为这个领域分为两个大方向:程序语言理论,和程序语言实现程序语言理论以数学方法(比如lambda calculas)研究程序语言的语义。子领域包括形式化验证,类型理论等。程序语言实现以工程为主,设计编译器、运行环境、语言虚拟机等等。主要是改进算法以提高语言实现的编译速度、生成代码质量、运行时速度等等。子领域也包括比如垃圾回收,程序静态分析等等。和操作系统、计算机体系结构关系紧密。程序语言领域的学术会议会吸收两个大方向的论文,但有趣的是两个方向的研究者基本井水不犯河水,各搞各的,互相听不懂、更互相看不起。搞理论的,觉得搞实现的就是工程师,不算科学家;搞实现的,觉得搞理论的就是无中生有,拿着数学在玩杂耍。倒也有趣。


    推荐阅读