2005年09月
Paul Graham的《标准Common Lisp》的注释。Paul 的 Ansi Common Lisp大大有名,所以就得了个诨名,ACL。好比TAOCP, 或者SICP。
对了,这里有ACP的中文试读。Chapter 1, Chinese Translation
Chapter 2, Chinese Translation
阅读全文>
发表于 @ 2005年09月25日 00:11:00|评论(loading...)|编辑
http://lists.w3.org/Archives/Public/www-validator/2005Sep/0052.html
偶像真忙啊:
To change all these pages will cost me a week’s time. I don’t want to delay The Art of Computer Programming by an unnecessary week; I’ve been working on it for 43 years and I have 20 more years of work to do, and who knows what illnesses and other tragedies are in store.
阅读全文>
发表于 @ 2005年09月19日 02:11:00|评论(loading...)|编辑
从这里看来的(需要ACM数字图书馆的帐户),论文名字是Threads Cannot Be Implemented In A Library. Hans-J. Boehm在文中论证了在库里实现多线程支持总不能避免程序出错。有意思的是LtU上的一条评论说,很多人看了这个论文很生气,因为他们认为PThread就是在库里实现的。可惜这些人都错了,因为Posix的规格书里专门写了为了完全正确地支持多线程,C编译器必须做出什么样的修改。。阅读全文>
发表于 @ 2005年09月17日 01:42:00|评论(loading...)|编辑
在中文blog上推荐的英文文章从来回应寥寥,所以有时只好遗憾地看着别人的雄文在英语社区流行,比如说www.joelonsoftware.com上的精妙杂文。还好,网上总有热情洋溢的自愿者。这不,Joel的一篇精妙文章被翻译成中文了。强烈推荐一把:http://chinese.joelonsoftware.com/Articles/AdviceforComputerScienceC.html
下面是转贴的全文。如果你好奇的话,文中第一张照片是University of Toronto的University College, 第二张是Bloor Street上的书店Chapters。第三张是University College外的小球场。第四章是University of Toronto的King's College外面的King's Circle。最后一张是York University的毕业典礼。
给计算机系学生的建议
作者: 周思博 (Joel Spolsky)
译: Chen Bin
2005年1月2日
虽然大概一两年前我还在夸夸其谈桌面阅读全文>
发表于 @ 2005年09月16日 00:39:00|评论(loading...)|编辑
http://www.google.com/blogsearch Yummy...阅读全文>
发表于 @ 2005年09月15日 07:39:00|评论(loading...)|编辑
刚才在一本关于系统验证的书里读到关于自动验证(比如在不运行一个程序的情况下验证这个程序不会进入死锁)理论的历史。书里说自动验证的鼻祖是莱布尼兹。他设想了一种语言叫lingua characteristica, 并设想了一种机器叫caculus ratiocinator,可以运行这种语言,推出各种各样的真理。让我对这个大牛佩服的地方是,他的计划横跨三个世纪!!!。这个计划激励了无数牛人前赴后继,导致了微积分的诞生,布尔代数的问世,谓词逻辑的降临。。。虽然莱老大的目标不可能实现了(因为一个叫歌德尔德老大证明了这是不可能的),但由之催生的理论却奠定了现代数学进而现代计算理论的基础。简直是古人所谓“取法乎上乃得其中”的最佳写照。
P.S. 书是讲理论的教科书,本不好读,但前面近四十页的理论演化简史(家谱)一下让看似枯燥的理论变得引人入胜,而且让理论呈现出清晰的脉络,实在体现了作者的匠心。
阅读全文>
发表于 @ 2005年09月12日 14:08:00|评论(loading...)|编辑
Parsing Technique第24页:“严格证明离不开形式化,但理解原理却不需要它”。的确如此。刚开始学习形式化方法的时候,老陷入繁琐的推导,而忽略了理解公式定理背后的直观意义。现在想来觉得好笑:定义定理简单的时候都不忘追寻对原理对直观意义的理解;定义定理复杂了,反而忘记了本质的东西。
------------------
以上文本借助www.InputKing.com在线中文输入系统输入阅读全文>
发表于 @ 2005年09月10日 06:08:00|评论(loading...)|编辑
via Keith. 看来是不错的资源: We analyze the source code of production Java open source projects such as Ant, Tomcat and Batik and load that analysis into a java examples database designed for easy searching. You enter the name of a Java API Class.method you want to see example invocations of and click Search.
阅读全文>
发表于 @ 2005年09月05日 21:44:00|评论(loading...)|编辑
我理想中的功能测试化工具应该满足以下基本条件:
简单。测试本来就够复杂了。测试人员本来就该把精力集中在发现系统错误上面。再让测试人员在测试程序上花费大力气,实在得不偿失。所谓简单,关键在于和浏览器用户的操作同轨。程序代码应该完全屏蔽和用户无关的细节。比如说,如果网页上有个叫“递交”的按钮,那对应点击该按钮的语句应该不比getButton("递交").click()更复杂。简而言之,自动化工具的编程模型能让一个测试员看着用户的操作写出对应的代码。套用现在的流行术语,叫自动测试所用的语言应该是和用户的概念模型(conceptual model)对应的业务领域专属语言(Domain Specific Language) 。更严重的后果是测试人员为了赶进度,不得写出低水平的测试代码,起不到发现系统错误的目的。
灵活。需求无止境。我们绝对需要一套能随时扩展,支持复杂编程的自动化工具。也许今天我们只需要搜寻网页上一条简单的字串,所以工具提供的字符串函数足敷使用,但明天我们可能就得遍历网页上所有元素,于是我们需要一套强大的HTML解析器。千万不要告诉我,这套工具不支持HTML解析。不幸的是,阅读全文>
发表于 @ 2005年09月05日 02:31:00|评论(loading...)|编辑