Search This Blog

Wednesday, October 25, 2006

程序员里的jedi

may the force be with you!
这是jedi之间相互祝福的话,其实程序员里也有jedi,下面是slime启动后的截图:

Sunday, October 22, 2006

一本书:An Introduction To Functional Programming Through Lambda Calculus

终于找到一本讲lambda演算的书了,作者是Greg Michaelson,我把它打印了出来,然后装订了一下,一下子就很像本书了:)看来学校里那些打印店的人手艺还不错的,以后有书买不到就可以打了。
这本书ms写于1988年,好老啊,不过lisp也很老了么,这才说明价值,这下可以好好学习lambda演算了,然后是common lisp,加油。

Friday, October 20, 2006

nvidia驱动的一个“诡异”问题

最近很忙,没空玩无冬,没空玩暗黑,今天周末,想着,玩一会儿吧,却发现cedega找不到显卡的信息,nwn也启动不了了,从终端启动,发现是找不到libGL.so.1,locate了一下,发现好端端地在/usr/lib64/opengl/nvidia/lib下躺着呢,而且glxgears glxinfo都是正常的,尝试revdep-rebuild,故障依旧,回想了一下,最近几天好像没做什么破坏性的举动啊,再google,才知道是multilib的问题!一直以来,玩游戏了,就从菜单启动一下,却没有想过我装的游戏是32bit的!这下问题明朗了,再locate libGL.so.1,发现/usr/lib32下果然是没有这个文件的。但是是什么原因导致共享库丢失的呢?然后想起来前两天切换到2.6.18的内核了,隐约记得当时重新emerge nvidia-drivers的时候是有个警告的,于是再次emerge了一下nvidia-drivers,问题消失了。

Thursday, October 19, 2006

插入排序&折半查找

插入排序的时间复杂度不必多说,O(n^2),但是如果把寻找插入位置的操作用折半查找来代替,那会不会优化到O(nlgn)?
不会,因为寻找到插入位置后还是要做插入操作,而元素的移动总数还是一样的,所以在理论上性能虽然会有所改进,但是改变不了插入排序的先天不足。
但是归并排序在把序列划分到足够小之后用插入排序来完成底层的排序工作还是挺有吸引力的,O(nlg(n/k)),如果是对k个元素的子序列插入排序的话。

Friday, October 13, 2006

emacs占用cpu的问题终于解决了

这次的系统的make.conf被我改了一下,编译出来的emacs特别怪,scroll bar特别宽,开始以为是color-theme的原因,后来看configure的结果,发现是toolkit-scroll-bar没有enable,再用新学到的一招:equery u emacs-cvs,发现就是这个参数没有加上,改了一下make.conf再重新emerge就正常了,然后是大问题:只要cedet和ecb加载了,打开一个文件后idle几秒钟emacs就会占100%的CPU,虽然是双核,也不能这么折腾呀。google中文结果找不到,后来试着搜了一下emacs cpu load,还真找到一个邮件组,里面有个达人声称是cedet的问题,并且在cvs版本中已经解决,于是从cedet的cvs仓库中下载了semantic-idle.el文件,替换掉原来的,再byte-compidle-file semantic-idle.el,restart emacs,症状消失!