Simply Schmee前言

扼杀新思想最有效的手段莫过于将其置于教育系统之神龛。教科书出版者、认证机构、行会组织、大学入学考试命题人——一旦囿于成见,便会困于彼此间的成见,阻碍新思想的发展。是故,常常看见学生修习灭亡之国的“现代”地理志,常常看见学生修习被计算器淘汰的对数表。且于计算机科学,入门课程困于过气十来年的教学法,此法被奉为圣典时,是值1980s中期,此间,大学入学考试委员会批准的一门大学预科考试便是基于Pascal。

本书为摆脱上述困境指明了道路。它强调编程乃想法表达之途径,甚于仅是指挥电脑执行任务。

Julie,Gerry Sussman 和我都受宠若惊,因Harvery 和 Wright 把他们革命性的计算机科学导论视为SICP的“前传”。编写SICP期间,我们常引用美国大计算机科学家Alan Perlis 的箴言。Perlis是Algol编程语言的设计者之一,此语言始于1958年,构筑了形式化和精确化的传统,Pascal就很好地体现了。如下引言乃Perlis不得已而言于1975年,早AP考试9年:

Algol是个祸根。用它无趣味。Algol现已是管道工联盟的章程(code)。它助你设计正确的结构而不至崩溃,此过程却毫无乐趣。 写Algol程序没有愉悦之感。它需要的是必不可少的劳力,和对枯燥细节的全神贯注。

Harvery 和 Wright 的导论起于另一个知识传统,它源自人工智能和Lisp的研究。使用本书走进计算科学,要关注两个基本技能。

一是符号化编程的概念。这就意味着你不仅要处理数字和符号,更要处理结构化的数据集合——单词是一张字母表(a list of),句子是一张单词表,段落是一张句子表,文章是一张段落表,如此种种。你汇集数据依照的是自然化划分,而非依据其最小组成。两者的差异,相当于“找出句中第三个单词的第五个字母”与“扫视句子,见两空格后停下,接着再扫四个字母,返回下一个字母。”

二是使用高阶函数的技巧。这就意味着你不只是写程序,更是写会写程序的程序。因之,你可在已有方法(method)上引导(bootstrap)出更为强大的方法。

此二技当属核心,编程入门课概莫能外,Harvery 和 Wright 就是这么做的。其本质原理是,视对象为通用的部件,用灵活的方法去拓展组合,而不是小片段,即拼凑成僵硬的构造物。

你若使用此书,当去思索想法之表达,而非句法之细节,当去设计自己的语言,而非记忆他人的规则。此类行为,将改变你的人生观——不仅仅只针对编程,更是针对将设计作为重要一环的任何领域。这是因为,你是学习欣赏部件间的关系,而非专注孤立的片段。再次引用Alan Perlis的箴言:

人们思考事物,依据句型、成语和词组,再也不是拣抹子、和(huo)西门汀、一块块地砌砖。万里长城,矗立千年,已为名迹。而其建造,定当无趣。

Hal Abelson

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,165评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,720评论 1 298
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,849评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,245评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,596评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,747评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,977评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,708评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,448评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,657评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,141评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,493评论 3 258
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,153评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,890评论 0 198
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,799评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,685评论 2 272

推荐阅读更多精彩内容

  • 计算机编程语言可用于将指令传达给计算机。它们基于某些句法和语义规则,定义了编程语言中每种结构的含义。 现在我得到了...
    幻凌风阅读 8,013评论 1 26
  • 附录B 编程的本质 编程的本质 N 尼古拉斯·沃斯(Niklaus Wirth,1934年2月15日—),生於于瑞...
    禅与计算机程序设计艺术阅读 2,651评论 1 11
  • 第一部分Common Lisp介绍第1章 介绍一下Lisp你在学的时候觉得已经明白了,写的时候更加确信了解了,教别...
    geoeee阅读 2,734评论 5 9
  • 今天惊闻刘作老师病逝,一时难以接受。国庆还一直在新疆游玩,和师母一起捡玛瑙,中秋团圆饭。印象中一直笑呵呵的刘老师,...
    孙凯GEO阅读 81评论 0 0
  • 我从一阵带着麻木的剧痛中醒过来。 剧痛伴随着眩晕的感觉让我忍不住想吐,我想起来我是喝了一点酒的,但不至于醉得不省人...
    糖卡torncat阅读 1,241评论 10 11