Concepts in Programming Languages - 图1

    关键字:命令式,函数式,面向对象,逻辑式

    推荐:★★★★
    难度:★

    豆瓣链接:https://book.douban.com/subject/2587705/


    看来超过500页的书,读起来要慎重。
    因为可能书还没读完,心态就变了。
    变得书中的知识已经不那么必要了。

    对于处在成长期的同学,
    不得不先花尽量少的时间先读完一遍,
    以后等读完很多书,大开眼界以后,再决定是否重新体会。

    CIPL的作者写过一本很重口味的书,
    Foundations for programmming languages
    中文版是《程序设计语言理论基础》

    从lambda演算开始,讲了一些数学。
    看到一半就看不下去了。

    为了跟随大神的脚步,我搜到了这本书,
    本书通过讲解几个具体语言的实现,
    来介绍程序语言中的通用概念。

    用实例来讲解,会大大降低难度,
    可计算性,lambda演算,指称语义,
    函数,类型,类型推导,
    词法作用域,动态作用域。
    都是点到为止。

    抽象数据类型,模块,
    面向对象,虚拟表,动态查找,
    并发编程,逻辑式编程。
    也是游刃有余。

    我们会看到以下语言设计时的取舍,
    以及各自当初的设计目的,
    Lisp,Algol,ML,
    Simula,Smalltalk,C++,Java,
    CML,Prolog

    我们理解了语言其实和软件一样,
    是一个发展中的事物,
    从愿景,外界约束,折中,
    发展,范围控制,兴隆和衰颓。

    本书门槛很低,只要英语过得去,
    都可以顺利读完。
    推荐任何有语言偏见的人们,都去看一看。

    因为,
    每种语言都是一部精彩的小说。