2006年05月
接着前两天的转载继续写。上次说到lambda算子的函数只接受一个参数。那怎么处理多个参数呢?如果只有一个参数,那岂不是连加法都不能实现?这当然难不倒像丘齐这样的天才。于是, lo and behold, 一个我们至今在编程里常用的技巧粉墨登场:
Currying
据说Currying翻译为局部套用函数,也不知真假。喜欢吃印度美食的老大们不要激动。Currying和咖喱没有半点关系。这个技巧以逻辑学家Haskell Curry的姓命名。Haskell Curry也是名动一时的人物。他和Moses Schönfinkel 共创了组合逻辑(combinatory logic),并把这们学科发扬光大。当初Curry搞出组合逻辑,主要是为了在数理逻辑里避免使用变量。后来搞函数编程的人们发现,组合逻辑是一类函数编程语言的理论基础。一些函数语言里常见的特性,比如说高阶函数合lazy evaluation, 就是用组合逻辑里的combinator实现的。当初Alanzo Church对这个理论也相当熟悉。难说lambda理论不是受了组合逻辑的影响。大牛Philip Wadler为了纪念Cu阅读全文>
发表于 @ 2006年05月29日 08:30:00|评论(loading...)|编辑
是针对这个帖子以及众多消极回帖的回帖。先回了一个短的:“拜托,老大们职业发展不顺,不要就jjww扯到整个IT行业。这篇文章只能说明作者对自己的工作失去热情,和IT职业有个P的关系。遇到一个公司只要30岁以下的人当民工加班卖命,只能说明你运气不好,碰到了一个SB老板,SB公司。不要以为世道就这样。26岁就“工作上技术无法精进,管理岗位上升的空间很有限。。。毕业近四年后,我失去了方向”。靠!26岁啊!我们公司测试部门的一个架构师26岁时还在四川乡下当义工。Doug Schimit26岁时还在攻读社会学,Dennis Ritche26岁时刚加入Bell实验室开始搞计算机, BEA中国区的Principle Engineer26岁时还在读化学。现在中国IT业功成名就的很多老人们26岁时还在战天斗地。这种GP文章,有个鸟的收藏价值。这种消极人生观,有个P的感慨。”后来冷静下来,就回了一个长点的:
结果有老大怒骂俺只举几个名人说事,过于天真烂漫,有人品问题。我靠,不举名人难道举老大您的例子,教唆后来人不努力为自己的失败找借口?且不说我举的不少例子都有关普通人,就算是名人,也是从默默无闻做起的阅读全文>
发表于 @ 2006年05月27日 11:54:00|评论(loading...)|编辑
链接在这里。了解Stroustrup的历史观非常有意思。演讲材料里有很多值得引用的言论。比如”没有历史,就没有(这门)专业”:There can be no professonalism without history,和“不了解你的领域的背景,就容易上当”:If you know too little of the background of your field, you are gullible。如果一个人不能对自己领域的历史背景如数家珍,恐怕还需要修炼。《程序员修炼之道》的作者Andy Hunt/Dave Thomas全力推广的Dreyfus Model(强力推荐。这个PPT解答了很多程序员关于职业发展的困惑)里把职业素养分成五个等级。第五级的专家们主要靠直觉行事,解决问题如庖丁解牛,神遇而不以目视。如此境界,全仗无数经验累积。人不能事事亲为。要吸纳前人经验教训,学习历史当是捷径。还有这个:每种文化和职业必须有理想、有偶像。嘻嘻,这个也是俺写心目中的编程高手的用意之一。第18页的断言更是金玉良言:“当你在深夜(调试时)进度受阻,不妨仔细考察一下自己的代码是不是已背离理想标准--阅读全文>
发表于 @ 2006年05月26日 02:28:00|评论(loading...)|编辑
这种贱人,在国外早被告得倾家荡产了。在中国,居然可以赚得盆满钵满。难怪周鸿一这种流氓在中国被人追捧为IT英雄。难怪流氓软件满天飞。http://blog.csdn.net/freexploit/archive/2006/05/25/754401.aspx阅读全文>
发表于 @ 2006年05月25日 12:45:00|评论(loading...)|编辑
从闫辉的博客看到的文章:http://blog.csdn.net/superyan/archive/2006/05/22/748921.aspx。其实我的评价很简单:不是人中龙,不要做测试。普通人做测试没有前途。原因也很简单。让我们做个小测验:10秒钟,快!举出你的10个偶像。里面有靠做测试扬名立万的么?要求太高了?那好,举出10个你最常读的博客。里面有做测试的么?我的必读博客里倒有两个是专做测试的。可惜他们的文章都和开发有关。换句话说。他们的专业不是测试。他们是程序员,而他们的业务领域是测试。不过这个话题我们押后再说。这个测验没有普遍意义?那好,让我再举一点某业界龙头公司的例子。该公司有大概50个院士。猜猜多少个是搞测试的?让俺告诉你:1个。就这个也是特殊情况。该院士负责某个大型操作系统的系统测试,对系统了解的程度已经到了客户每次来访都点名要见他的地步。所以这个例子旁证了不要轻易做测试的论断。院士以下是Distinguished Engineer(DE),DE以下是Senior Technical Staff Member(STSM)。该公司一个2000来人的研发实验室里10来个ST阅读全文>
发表于 @ 2006年05月22日 13:54:00|评论(loading...)|编辑
Good math,bad math是我最近发现的一个博客。作者Mark Chu-Carroll写的一系列关于计算机科学理论的文章深入浅出,通俗易懂,属于茶余饭后绝佳的消遣读物。俺一直想写点介绍lambda caculus的小文章,但看了他的“My Fravorite Calculus: Lambda”后,就打消了这个念头。有这么好的文章,转贴就行了,自己就不用再写不入流的文章。今天先转介绍lamdba calculus的第一部分。先申明一下,俺的翻译在不影响作者原意的基础上(但愿能做到到),有时也插科打诨加点8卦。如果谁觉得文章垃圾,完全因为俺水平有限。原文绝对精彩。另外,俺数学方面的术语止于大一微积分。所以术语用错了,还请多多指正。
在计算机科学尤其是是编程语言领域,我们常用一种算子:Lambda Calculus。逻辑学家也常用Lambda Calculus 来研究计算和离散数学结构的本质。其实当初Alanzo Church(就是丘奇-图灵论点里的那位丘奇老大了)和Stephen Cole Kleene(就是自动机理论里Kleene Star那个Kleene了)推出这个La阅读全文>
发表于 @ 2006年05月22日 06:54:00|评论(loading...)|编辑
转贴无声的文章。http://blog.csdn.net/SeaWave/archive/2006/05/15/729466.aspx阅读全文>
发表于 @ 2006年05月16日 12:56:00|评论(loading...)|编辑