Archive for 二月, 2009

lambda随笔

Posted on 二月 26th, 2009 in 笔记 | No Comments »

作为人类历史上第二门编程语言, lisp的语法是公认的简单了, 函数套函数, 括号套括号.  不谈应用, 学lisp就是为了娱乐的, 最有意思的东西莫过于lambda, 简单至极又无处不在, 而且几乎无所不能.

读过sicp的同学们都知道定义函数的define语句

(define (func p1 p2) (…))

是(define func (lambda (p1 p2) (…)))的语法糖, 在lisp中, 函数就是个值, 跟普通变量一样可以传来传去. 

在当前作用域声明变量的define语句

 (define var1 val1)

又是let语句的缩写

(let ((var1 val1)

 (var2 val2))

(…))

而sicp中貌似没说, let语句实际上也就是lambda的语法糖

((lambda (var1 var2)

(…) val1 val2)

可以说, lisp中所谓的变量都是参数的变形罢了.

 

如果高兴, 你可以用lambda来表示pair

(define (cons x y) (lambda (f) (f x y)))

(define (car pair) (pair (lambda (x y) x)))

(define (cdr pair) (pair (lambda (x y) y)))

 

函数式编程的优势高阶函数与惰性编程可都是lambda带来的大礼. lambda返回一个函数而其中的语句并不会立即运行, 通过这一特性可以轻而易举地创造出无限长度的List以及很多不同的玩法, 具体内容请见sicp中关于流的那章.

用cons,car和cdr就可以构造出逻辑判断, 像这样:

(define new-true car)

(define new-false cdr)

(define (new-if condition exp1 exp2)

    (condition (cons exp1 exp2)))

在miniplayer上显示专辑封面

Posted on 二月 16th, 2009 in 备忘 | No Comments »

昨天下歌时候无意发现的, 貌似把专辑封面图片重命名为专辑名, 再放在歌曲的同一目录下即可.

ubuntu下简单配置lighttpd和php

Posted on 二月 13th, 2009 in 备忘 | 2 Comments »

弄个调试环境而已, 简单整下就是了..

先安装lighttpd和php, 有apt-get, 简单无比
sudo apt-get install lighttpd
sudo apt-get install php5-cgi

接着配置.
1.为了方便在windows下修改, 就把文件夹新建在d:盘
cd /media/DISK_VOL2/
mkdir server
2.创建lighttpd配置文件lighty.conf, 可以在这里下载一份基本的配置文件, 然后自己按需修改.
打开gvim把24行左右”mod_cgi”的注释删掉, 再把server.document-root ,server.errorlog, accesslog.filename 等属性的值修改为刚才的目录,
3.server.port的默认值是80, 而80端口必须得是root权限才能打开. 如果仅仅搭调试环境的话设成3000就是了, 启动时省个sudo.
4.把fast_cgi那块的注释全都去掉, 修改如下

fastcgi.server = ( ".php" =>
                     ( "localhost" = (
                           "host" => "127.0.0.1",
                           "port" => 521
                           )
                      )
                  )

好的, 可爱的lighty.conf配置基本完毕.

打开php-cgi
php5-cgi -b 127.0.0.1:521
打开lighty:
lighttpd -D -f lighttpd.conf

嗯, phpinfo测试一下:
echo ” > test.php

打开浏览器, http://localhost:3000/test.php

如果无错误提示, 那貌似就可以用了

可爱的本本

Posted on 二月 9th, 2009 in 杂碎 | 4 Comments »

这台128mb内存,537mhz赛扬,15g硬盘的古董光荣退居二线.

接下来就可以做一些不受内存限制的事情了 : P

ps:才发现这个模板在高分辨率下是多么的囧, 还是去掉那个背景图吧