Saturday, August 21, 2010

[Lisp]Chruch Number and Common Lisp

墙内地址http://www.jdxyw.com/?p=1098

When we talk about the number,plus,sub or mul, what is the first thing hitting your head? For the most of us, I think, the first thing we think must be 1 2 3, or 1+3=4 or 5-3=2 or something like it. Have you ever thought that we can use other forms to express the number,plus and sub?  This must be strange to use others instead of the normal number, let alone the operation,such as sub, plus.

But, if you have already heard the Lambda Calculus and Church Encoding, then these things seem very reasonable. If you are interested in it, you can read the instruction on Wikipedia. Common Lisp is ideal to implement it.(Actually, Schema is more convenient.)

The brief instruction below comes from wikipeida.

Church numerals are the representations of natural numbers under Church encoding. The higher-order function that represents natural number n is a function that maps any other function f to its n-fold composition. In simpler terms, the “value” of the numeral is equivalent to the number of times the function encapsulates its argument.

f^n = f \circ f \circ \cdots \circ f.\,

Church numerals 012, …, are defined as follows in the lambda calculus:

0 ≡ λf.λx. x1 ≡ λf.λx. f x2 ≡ λf.λx. f (f x)3 ≡ λf.λx. f (f (f x))n ≡ λf.λx. fn x

The addition function plus(m,n)=m+n uses the identity f(m + n)(x) = fm(fn(x)).

plus ≡ λm.λn.λf.λx. m f (n f x)

The successor function succ(n)=n+1 is β-equivalent to (plus 1).

succ ≡ λn.λf.λx. f (n f x)

The multiplication function mult(m,n)=m*n uses the identity f(m * n) = (fm)n.

mult ≡ λm.λn.λf. n (m f)

The exponentiation function exp(m,n)=m^n is straightforward given our definition of church numerals.

exp ≡ λm.λn. n m

The predecessor function \operatorname{pred}(n) = \begin{cases} 0 & \mbox{if }n=0, \\ n-1 & \mbox{otherwise}\end{cases} works by generating an n-fold composition of functions that each apply their argument g tof; the base case discards its copy of f and returns x.

pred ≡ λn.λf.λx. n (λg.λh. h (g f)) (λu. x) (λu. u)

The subtraction function can be written based on the predecessor function.

sub ≡ λm.λn. (n pred) m

The zero predicate can be written as:

zero? ≡ λn. n (λx.F) T

From the brief instruction above, we know that the church number is based on the lambda calculus. Actually, all numbers are lambda calculus, or function, this name may be more easily understandable.

(defvar zero
 
(lambda(f)
   
(lambda(x) x)))

(defun succ(n)
 
(lambda(f)
   
(lambda(x) (funcall f (funcall (funcall n f) x)))))

(defun plus(m n)
 
(lambda (f)
   
(lambda(x)(funcall (funcall m f) (funcall (funcall n f) x)))))

(defun mult(m n)
 
(lambda (f)
   
(funcall n (funcall m f))))

(defun pred(n)
 
(lambda (f)
   
(lambda (x)
     
(funcall (funcall (funcall n (lambda(g)
                   
(lambda(h)
                       
(funcall h (funcall g f)))))
           
(lambda(u) x))
           
(lambda(u)u)))))

(defun sub(m n)
 
(funcall (funcall n #'pred) m))

(defun cexp(m n)
 
(funcall n m))

(defun czerop(n)
 
(funcall (funcall n (lambda(x) nil)) t))

(defun int-to-cn(n)
 
(if (= n 0)
     
(lambda (f)
   
(lambda(x) x))
     
(lambda (f)
   
(lambda (x)
     
(funcall f (funcall (funcall (int-to-cn (- n 1)) f) x))))))

(defun cn-to-int(cn)
 
(funcall (funcall cn (lambda(x)(+ x 1))) 0))



那些逝去的琐碎(2)

墙内地址http://www.jdxyw.com/?p=1103

小学的时候,学校并不怎么重视校服,有订过一套,但只是在每周一的升旗例会上,或者是运动会,六一等全校性活动的时候才会要求穿,平常的时候,一眼望过去,花花绿绿的。

后来进了中学,初一的时候是在镇上的中学,小学校,对校服也根本没有要求。初二的时候,转到了市里的中学,开始了长达5年的著名“春燕”牌校服的生涯。头两年,我们秋冬天的校服是要有多难看就有多难看。上了高中,校服的式样有所改变。

我在市里面上中学的五年里,几乎就没有见过有女生穿过裙子,现在想起来真是一大憾事。其实,夏天的校服是有校裙的,只不过女生都不穿,应该是觉的丢不起那个人吧。我只记得有一次,学校有个大型的活动,不知道校领导脑筋是不是搭错了,要求全校女生穿校裙,这是我第一次知道原来女生还是有校裙的。

夏天的校服是白色的衬衫,男女差不多都一样。这个衣服其实挺透明的,里面穿什么,稍微用力点看都能看个大概。上高二的时候,班上有个女生第一次穿了内衣来上学,坐我后面的一个男生飘出一句话,“胸部那么小,戴什么胸罩?”

在中学的时候,要戴胸卡,初中的时候是别着的,高中的时候换成挂着的。每天还会有老师和学生定期检查,很像排查一下,自家的狗群是否混入了他家的杂种。

学校有本文学刊物,叫《鳌山》,刊登学生的习作。在这学校的几年,我只看到过一本,刚好我的一篇文章在里面。现在回想起中学写的一些文章,真的是虚伪做作之极。但是没办法,人在屋檐下,不得不低头,要是能重回去一次,我绝不再写那样的文章。

初中的时候写文章,班上有个女同学,喜欢写那种笔记文艺的文章,这也深得语文老师的喜爱。我还记得有一次,老师读她的文章,最后总结到一个人写文章的习惯和特点,他说这个女同学喜欢有一个词,“曾几何时”。

上初三的时候,班主任就班上谈恋爱的事情讲了一段话,大概的意思是,“你现在还是学生,接触的人不多,眼界很小,等你上了大学,出了社会,你就会觉的世界有多广阔,你的选择会更多更好,所以现在不要谈恋爱。”我对这句话的理解经历了三个阶段。第一次听的时候,觉的老师在扯蛋,这只是为了劝阻早恋的一个借口。等上了大学之后,见识了一些,觉的老师当初的话也不无道理,应该做个凤姐口中的有大局观的人。等我毕业了,我开始羡慕那些在中学就开始打情骂俏,眉来眼去的男男女女们,觉的老师当初的那段话是百分之一百的扯蛋。

以前不觉的中学的那些女生有多么漂亮。上了大学以后,有几次回母校看望一位老师,碰巧遇上放学,我在人群中逆流而上,突然觉的,这里也是个美女辈出的地方。我就纳闷,我待了五年怎么就没有瞧出来。

有一次上校内,翻看了几位中学女校友的近期照片,有着宛若隔世的感觉,与我记忆中的那些碧玉之年的少女的形象差别很大。许多当初觉的不怎么样的女生,现在看起来也是别有风韵。

中学的时候,我虽然成绩好,但是在学校的月考,期末考和模拟考中很少拿过年段第一,大多是在第四五名左右浮动。但中考高考,意外的都考的第一。


那些逝去的琐碎(1)

墙内地址http://www.jdxyw.com/?p=1089

小时候,直到初二之前,都是住在父母任职的学校里。学校的前部分是教学区,后半部分就是教职工的宿舍区。

教学区只有一栋五层楼的教学楼。教学楼前面是操场,一半是水泥地的篮球场,另一半是土操场。每次早上全校做课间操,或是下课时学生在操场上满场跑的时候,操场上空就会生气一片片的“祥云”。记得有一年,大概是四年级的时候,秋冬季节,雨水稀少,尘土飞扬的更是厉害。于是全校的高年级轮流,每个班早上都要给这片土操场洒水,不过效果不大。

操场中央原本有五棵高大的苦楝子树,但却不茂盛。中央的两棵上还有鸟窝。在我很小的时候,曾经有大孩子打下个鸟窝,递给我一个鸟蛋,我一捏,碎了。

苦楝子树会长一种圆圆绿色的小果实。我家住在四楼,阳台前也有一个苦楝子树。我都会让爸爸,或是其他大孩子,在竹竿上弄个铁钩,把那一串串的果实给我钩过来。这个东西也没有,也就放着好玩。只记得有一次,我们这些大大小小的教职工子女用这些小果实打了一次仗。

苦楝子树还很会长一种小虫子,青色的,连着丝,从树上高高的垂下,你在树下一不小心就会碰上。但是有一年,不知道出了什么事情,一大早起来,发现整个操场布满了青色的小虫子。我本怕虫子,说什么也不肯踏入操场一步。最后还是老师们养的鸡解决了这个难题,这些鸡们也愉快的享用了一次大餐。

后来这些苦楝子树都被锯了,但这里有个小插曲。这些树,在小的时候不知道被谁订了好多的钉子进去,结果使得这些电锯的链条三番五次坏了。

学校里还种着绿篱,这是我最深恶痛绝的植物了。因为它会长一种绿色的虫子,与苦楝子的小虫子不同,这个虫子可以长的很大,最大的,你去看看一般的日本爱情动作片就大概知道有多大了。这些绿篱又种在出入大门口的必经之路的两旁的花坛里,每次长虫子的季节通过这条道的时候,我总是凝神定气,确保不往两边转头。

校园里面还有一种花,我叫它“地蕾花”,我不知道它真正的名字叫什么,但是它的种子确实像一颗地雷。这植物生命力很是顽强,总是一茬一茬的接着长。花都是紫红色,也有少部分其他的颜色。每到开花的时候,我最喜欢去剥它的这种玩,这花在校内有好几处,一片片的,种子也很多,不一会就能弄一大把。也没什么用,就丢着玩。

校内还种有很多的竹子,每到到学校大扫除的时候,都会有老师去修剪这些竹子。这个时候我就会很开心的从那些砍下来的竹子中跳出拇指粗细的,最笔直,最漂亮的竹枝。

操场的另外一头也是一小块沙土地,有两块水泥乒乓球台和一个沙坑。暑期的时候,这里没人打扫,杂草可以长的很高。我没事的时候就去拔草玩,拔完了就埋到沙坑里面。

很小的时候,爸爸在操场中央的两头各种了一棵榕树。年长的榕树都长的又高又大,树冠如盖,非常漂亮。多年过去,这些树也有十多岁了,最近一次看的时候,已经小有规模,但是榕树长的较慢,不知道什么时候才能看到它们树冠如盖的样子。而前年,这个小学也被撤销了

教学楼后面的一角,有几个很大的花盆,不知道在什么时候给人种上了三角梅。这些三角梅长的极为旺盛,每到开花的季节,大概八九平方米的样子,都被大红色的花朵覆盖着,非常漂亮。

教学楼后面有两棵桃树和两颗李子树,都会结果,但结出来的果子都像营养不良的样子。我各吃过一个,味道早忘了。

学校内还有一棵白玉兰,两株芙蓉,一丛茶花,数棵桂花。以前没怎么注意,现在一清点,觉的花的种类也还挺多的。


上海书展半日游

墙内地址http://www.jdxyw.com/?p=1086

魔都今日的天气逼近40度,骄阳烈日,我一身绿色的衣服,不一会儿就变成了斑斑墨绿色了。

尽管天气十分的炎热,上海展览中心的面积也够大,可是川流不息的人群还是让上下两层的塞的满满当当。在这个网络书店大行其道的时候,电子阅读异军突起的时代,作为一名阅读爱好者,看到此情此景还是有些许的感叹。毕竟,同道中人还是有许多,但是比起广大的基数来说,还是显得的渺小。许多大城市的独立书店正在不断萎缩,即使是在上海,去年陕西南路的季风书店也将将要遭遇关门的厄运。可是,闻听诚品书店就要进入南京,心中即是遗憾又是开心。遗憾的是没有进入上海,开心的是,如果诚品能够在南京存活下去,在上海开店也就指日可待了。

想要买港台书的书友们就不要再抱有幻想了。一方面,港台书的数量非常少,而且种类非常的单一。一楼只有几个书架是港版的书籍,没有什么值得一看的书。台版的书在二楼,绝大多数的是介绍台湾旅游,美食和风光的书籍,另外一大部分就是介绍台湾原住民的书籍。

各地出版社的书籍很一般,没有亮点,大多是美食,养生,医疗,育儿,瘦身,美容等畅销书。

三联出版社这次让我很失望,作为我最喜欢的一家出版社,没有让我有眼睛一亮的感觉。

高校出版社的书也没什么亮点,交大的展台似乎是有个远洋船的船长,四周拍照者众多。华东师范的展台,有一大片是教辅书籍。

中华书局和上海古籍没有让我失望,但是他们的书不太适合在这种场合下买,一是有的书一套就十几本,根本就不好拿,第二是价格上也不见的有多大的优势,三是看这些书的气氛不对。

世纪出版有一个很值得推荐的人文系列的丛书。类似商务印书馆的那些黄黄绿绿的书籍,这个系列的选材更广,时间上更新。两个系列是没有冲突的。

外文书店的展台是一个好去处,企鹅出版社的原版图书只要18或是20,买三本便宜8元,买五本便宜15元。虽然这些书都是时间比较早的经典小说,但是对于想入手一些原本经典小说的书友来说,这是个很好的机会。

各个期刊的展台也是一个不错的去处,像是《三联生活周刊》,当期的10元,全新的前几期的五元一本。

上海文化出版社的展台很有特点,以《咬文嚼字》和其衍生品为主。十几年来的合订本的精装本与平装本一字排开。

电子阅读与网络读书也占有一席之地,盛大,起点都有自己的展台。卖各种电子阅读器的也在扩大自己的战场。

很多人最后都多多少少的提着一些书走。也不乏一些是一捆一捆提着走的人。现场有许多小朋友,看来许多家长也是愿意让自己的子女沾染一些文化气息的。

书展中的美女没有我去世博会上看到的多,质量也不如世博会上的好。但是更有书卷气息,更有气质。我耳边时不时的飘过美女们的话语,“隆美尔其实没那么厉害,都是炒作出来的”;“我想找一本《世说新语》”,“蔡元培的《石头记索隐》有吗?”

今日购书单:

《咬文嚼字》2009合订本

《一个都不正经》

《许悼云谈话录》

《来一点信仰》

《周期王国》

《如何切蛋糕》

《自然之数》

《41 Stories by O.Henry》

《Walden》

《A tale of two cities》

《The Federalist Papers》

《The Anti-Federalist Papers》


死亡诗社《Dead Poets Society》-阳光照耀现实

墙内地址http://www.jdxyw.com/?p=1082

这是一个老套的故事,陈旧的情节,但是传统与创新的冲突,正统与异数的对抗,现实与理想的差距,旧人与新人的隔阂在这部片子里面被拍的美轮美奂,有那么一点青春激扬,有那么一点情窦初开,又有那么一点感同身受,还有那么一点悲从中来。这是一个教育的故事,更是一个教育理念的故事,还是一个社会现实与美好理想冲突的故事,最终只不过是一个你人生的缩影罢了。

与中国的家长一样,国外的家长中,也不乏望子成龙,望女成凤的家长,也不乏古板严格,因循守旧,不知进取的教育者和教育机构。培养学生一心只读圣贤书,两耳不闻窗外事,将来好上名校,找好工作,赚大钱,开好车,娶美女。最好人人都可以指点江山,激扬文字。家长将意志强加与自己的孩子身上,把自己年少时的遗憾当成孩子终身追求的目标。而教育者则依然延续着古老守旧不知进取的教育方式,既无趣又虚伪,既无知又高傲,脱离了教育的本质和人性的基本诉求。学生在这里,失去了自我,只是一个家长意志与学校教学理念的傀儡,成为了多年以后学校用以自傲和自夸的资本,成为了家长满足其控制欲,家长意志和曾经年少梦想的工具。直到来了一个将潘多拉魔盒打开的人,只不过放出来的是希望,欲望,呐喊,是心底你最深处的渴望与自由。

中国的学生对这样的场景一定不会陌生,在中国这样的场景只会更悲壮,更为的惨烈。多少年来,我们被告知,不要出风头,不要当出头鸟,要学会夹着尾巴做人。父母老师给你选学校,帮你挑专业,给你定职业,你的人生道路就在外人的手中被任意的蹂躏着。多少所谓的“老人”,这样语重心长的告诉你,再有棱角的石头走入社会后,都会被磨圆的。我们不得不小心翼翼的包裹着自己,上着自己不喜欢的学校,上自己不喜欢的专业,做着自己不喜欢做的工作,与自己不喜欢的人打交道还要喜笑颜开。年过一年,日复一日,当年华老去,时光不在的时候,蓦然回首,黯然神伤,好一点的话,能够醍醐灌醒,不再祸害下一代,不好的,就又是另外一个悲剧的重演。

年少时,初入校园时,初进社会时,很多人都有着豪气冲云天的时候,心中都有着伟大的梦想,胸中都有棵很大的竹子,似乎自己真的就是八九点中的太阳,明天真的是我们的一样。可是,现实就是现实,片中的老师不交现实主义的诗歌,而去教浪漫主义的诗歌。实现主义是存在于现实,浪漫主义是存在于人心。当你满怀激情的时候想要去改造社会,最后你会发现,你被社会给同化,吸收了,你成为了社会的一部分,转而去改造那些顽固的充满理想的人。

这个社会是不是就真的这样不堪,容不下一点点的理想呢?社会不是非黑既白的。这个社会是灰色的。当你的精神力量不够强大的时候,当你被这个社会给同化的时候,从八九点中的太阳变成了唯唯诺诺,好死不如赖活着,这个社会就会变灰一点。当你的精神力量够强大的时候,你勇于迈出脚下的第一步,并愿意承受迈出的责任与后果坚持不懈的走下去的时候,这个社会就变的光明一点。而你,也完成了对自己的救赎。

坚持自己的理想与信念,选择自己的生活,是一件很不容易的一件事情。不要因为这部片子,而热血沸腾,就去追寻自己的梦想,其实你什么梦想也没有,片子只不过激发了你的幻想,真正的信念与理想是长期的,不是打鸡血一般,只有共鸣,而没有沸腾。也不要因为这样而失去希望,阳光是无私的,它会照进每一个角落,即使是最黑暗的角落。