计算机程序的构造和解释——笔记(一)

计算机程序的构造和解释——笔记(一)

相信很多人同我一样,看到这本书的名字,就觉得这本书霸气,是一本难得的好书。源于各种各样的原因,我接触这本书的时间很晚。不像国内有些学校那样,在大学上课的时候,就选用的这本书作为教材。想来,非常羡慕。感谢裘宗燕老师的翻译,让我更加深刻的认识到计算机程序是如何组织起来的。鉴于这本书的含金量,不敢怠慢,需好好的思考,并记录下来。

本书一开始用Lisp语言来做简要的说明,非常容易让大家明白,同时也羡慕上这么课的同学,能一开始就接触到Lisp。在看这本书之前,根据自己的理解,计算机语言最主要的就是要能起到表达的作用,但完全没有想得像本书阐述的那么深入,系统,全面。当看到作者指出强有力的语言都提供了三种机制:基本表达形式,组合的方法,抽象的方法。也相当明确的指出需要处理的两类要素:过程和数据。简单,直接,一下就击中我得要害。作者真是太给力了。

以此为入口进行阐述, 即可一气贯通,由简入难。从大家熟知的数学四则远算开始解释说明表达式,组合,最后过渡到抽象。由此可见作者功力深厚,更不容易的是还能如此简单地表述出来。正巧,这段时间培训的新人,基础比较薄弱,可以借用书中实例,简单易懂。影响比较深刻的提炼是“表达式都是由值组成的”:数的值就是他们所表示的数值;内部运算符的值就是能完成相应操作的机器指令序列;其他名字的值就是在环境中关联于这一名字的那个对象。从这个角度出发,可以得出:内部运算法符和自定义的过程可以抽象为同一事物,都是极其指令序列;同时过程和数据,都可以抽象到值这个层面上来。这样带来的好处就是可以更加灵活地构造程序。  

 

转载于:https://www.cnblogs.com/worgeling/archive/2013/03/13/2958313.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100840.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • c语言和vc的区别_c++是c语言的升级版吗

    c语言和vc的区别_c++是c语言的升级版吗returnx+y}fnsub(x,yint)int{returnx-y}就像在Go和C中一样,函数不能重载。这简化了代码并提高了可维护性和可读性。函数可以在声明之前使用:add和sub在main之后声明,但仍然可以从main调用。对于V中的所有声明都是如此,并且不需要头文件或考虑文件和声明的顺序。V的目标之一是向具有不同编译器开发经验的开发人员开放。作者希望编译器不再是让人捉摸不透、只…

    2022年8月12日
    7
  • 基于豆瓣影评数据的文本分析系统【数据爬取+数据清洗+数据库存储+LDA主题挖掘+词云可视化】「建议收藏」

    基于豆瓣影评数据的文本分析系统【数据爬取+数据清洗+数据库存储+LDA主题挖掘+词云可视化】「建议收藏」本分析中很多的工作都是基于评论数据来进行的,比如:滴滴出行的评价数据、租房的评价数据、电影的评论数据等等,从这些语料数据中能够挖掘出来客户群体对于某种事物或者事情的看法,较为常见的工作有:舆情分析、热点挖掘和情感分析。如果想要了解关于文本分类或者是情感分析相关的工作内容,可以阅读我的《数据建模实战》专栏文章,下面是链接信息:…

    2022年5月10日
    42
  • Laravel 中 validation 验证 返回中文提示 全局设置

    Laravel 中 validation 验证 返回中文提示 全局设置

    2021年10月23日
    45
  • 初识DB4O「建议收藏」

    初识DB4O「建议收藏」   DB4O?   新出的OODBMS~取谐音DBforO。一个优秀的OODBMS解决方案,它出现的定位就是为了开发嵌入式和小型应用,同HSQLDB的定位相仿。不过DB4O的的优点则是,本身是OODBMS,那么对它的操作自然就是基于OO的,同Hiberante一样,但是Hiberante是ORM解决方案,而DB4O则是原生OODBMS方案。看看下面的例子一个同Hibernate相同的P…

    2022年7月21日
    14
  • 二叉树层序遍历(C语言)[通俗易懂]

    二叉树层序遍历(C语言)[通俗易懂]二叉树的层序遍历即从上到下,在每一层从左到右依次打印数据。如下:层序遍历结果:ABCDEFG基本思路即将根节点入队后,之后每次都将队首元素出队,打印队首元素数据,并将队首元素左右子树入队,一直重复上述过程。自然,本题还可以用数组来实现。代码:#include<stdio.h>#include<stdlib.h>#defineQueueMax100typedefstructNode{chardata;structNode*

    2022年5月22日
    47
  • DevStack云计算平台快速搭建

    这学期学校开了一门课,叫云计算平台搭建,用的书是OpenStack,这个是现在比较流行的一个云计算平台,官方对这个平台的解释是OpenStackisacloudoperatingsystemthatcontrolslargepoolsofcompute,storage,andnetworkingresourcesthroughoutadatacenter,al

    2022年4月8日
    73

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号