December 22, 2008

Why ...do you have to be like others?

终于有了最喜欢的动漫《叛逆的鲁鲁修》R1&R2.
所以,总会出现的。我空在那里的最喜欢的东西,最喜欢的人。

December 14, 2008

神无月

having trouble sleeping.
听莫扎特的A小调奏鸣曲听到崩溃。希望自己可以在阳光明媚的lib里呆下去想清楚怎样复习Algorithm.终于还是没能呆下去。今天没有阳光,algorithm没有书,没有reference,没有朋友,没有帅哥,只有一个痛苦的我和一个北大的一个弟弟不停得推荐让我一定要试试的医学院的柠檬派。对。"医学院的"柠檬派。我也一直觉得这个定语听起来就和好吃和食欲的关系有点远。

还蛮好吃的。以至于吃了好几个。也许是觉得以后都没可能在吃到了。roomate走的那天给我留了一张纸条说,see me later。我笑笑。later。
自己的修为果然还是很不够。忍不住又花了很大把的钱在打电话上。一个人生活和学习的日子真的很寂寞。我一点也没有撒谎。我不是难过,也不是伤心。更不是担心自己的已经考完和没有考完的course.因为知道担心也是没用。真的很寂寞。那天没忍住在两点钟还是给猪头打了电话。她还是很忙。我只说了不到三句话就挂了。天知道我有多想和她说话。和一个人说话。和一个朋友说话。

今天给文西打了电话。不知道文西是不是也觉得我很烦很讨厌。毕竟我最讨人厌的地方都统统被他知道了。这种事情就像回收站,当你知道这个是回收站以后,你就会把什么都依赖它给你回收了。很清楚这样不应该。但是又没办法。

单曲循环“神无月的巫女”的一个钢琴曲。好喜欢。好忧伤的钢琴。不是很复杂的旋律。我对物体的有爱果然远远超过了人。

需要安眠药。需要夜间的睡眠。
需要健康。需要活下去。
需要阳光。需要它们给我的快乐。
需要main campas的炸鸡翼。需要短时间有喜爱的食物存在。
需要钱。需要给文西打电话。需要做飞机回家。
需要说话。

好寂寞。

除了jsj.我果然一无所有。就连jsj,也不算是我拥有的东西吧。
我问自己,能坚持多久呢。
为了学分,为了GPA。怀念以前的时光。怀念能忘记掉期末考的时光,怀念随意的在lib四楼拿一本厚厚的韦伯斯特和计算机专业缩写详解看书的时光。怀念一个人随意看掉汇编第一章的时光。只是怀念。还有不甘。一直提醒自己。对jsj的爱。对专业的执着。那种单纯的向往。哼哼。单纯的。向往。以为有那种东西的我才是单纯的白痴吧。
害怕吗。成为考试的机器。当我看着sun出的JUST JAVA和NOT JUST JAVA微微笑的时候。当我友爱的抱着我的prolog书看着写一个很可爱的序的作者微微笑的时候。当我。已经没办法和猪交谈的时候。我是那种生来就纠结的人吧。不纠结会死掉的那种。就像小白兔生来就要吃草,那个专门撒谎鼻子变长的玩偶还是要专门撒谎一样。我的纠结来的是那么自然。

我爱我自己。就算怎么都算不上好看。算不上瘦。就算总是被人嘲笑我修一些不该修的课。就算永远爱吃高卡路里高热量超没营养的食物,就算没有男人和我登记,就算我爱的计算机永远不爱我。就算失去一切。我还是爱我自己。为了挣扎自己,我付出了多大多大的辛苦。我并不伟大,不会因为algorithm而死,不会有人为我叹息,不会快乐。就算如此。我还是爱着我自己。因为,我是多么努力的存在着。我是多么努力的想令我的存在有意义。

December 08, 2008

最近一直在想一个问题,到底决定我们留在一个地方的东西是什么?
最近看了一个很喜欢的blog,谈关于《海角七号》,说实话,看这部电影的感觉远远没有看他的评论来的煽情了:
"
谁给我写一封信
有一期《口述历史》,主角是从纺织女工到中国第一任女副总理的吴桂贤。
她谈到自己的老伴,说:
“我们谈了六年恋爱,实际上是他给我写了六年的信。六年来,我只回过一封信。
我很过意不去,他却说:我反正是认定你了。”
如果这世上有一个愿意一直给你写信的人,请你一定要对他好一点。

我觉得自己对电影的要求向来是不高的,我不会在意一部电影投资了多少钱,不会在意它是不是名导演的作品,不会在意里面有没有我喜欢的演员,不会在意它的镜头有多么唯美,不会在意它的配乐是不是动听,我甚至可以不在意它有没有讲一个动人的故事。
我不是说这些东西不重要,但是它们都不是一部电影最本质的东西。
电影的本质是叙述一个故事。故事的好坏当然很重要,但是更重要的是你如何去讲述它。
我相信这个世上很少有坏的故事,如果你觉得一个故事很瞎,那往往只是因为叙述得太差而已。
我们骂很多投资浩大的大片,是因为我们感觉不到拍那些电影的人好好讲述一个故事的诚意。

《海角七号》是一部有诚意的作品,起码我是这样觉得的。
肯花心思处理细节的电影,很少让人感觉没有诚意。
而细节,是《海角七号》让我印象最深刻的地方。"

我只是记得那个小女孩在电梯里带着耳机唱"但若你劈腿,就去死一死"了。。
记得里面的那个黑社会镇长有一次很深沉的说:这么美的一片海,怎么就是留不住我们呢?

不知道为什么在我的内心深处是很渴望离开的,就是那种不断的跳跃到一个陌生的地方开始陌生的纠结。我一直不是很理解自己这种欲望,似乎我的逻辑就是,在一个遥远的地方纠结总比总呆在一个地方纠结要好。虽然偶尔也会有一种呆在一个地方静静地乖乖的过日子的想法。但是总是在不到几分钟之内被扼杀在襁褓之中。
是不是大家也都是这样的。还是,我太过沉浸在这种不用负责的快感里?如果有一个地方能让我停下这种感觉,那会是哪里?
紫金港对我来说已经几乎是我的第二个home一样了。
我怀念紫金港的很多的东西。确切的说,我怀念紫金港给我的那种感觉。
但还是不停的在想下一个destination.不想停下来。

也有的时候,我告诉自己说,也许离开是为了有机会回来。就像吃饭是为了饿一样的道理。在一个地方有一段回忆。多么浪漫的事情。
前几天,我一个弟弟让我去校内看一个写我的日志:
"
抽走了恶心的东西,其实离散还是很曼妙的。
最曼妙的一点就是认识了姐姐这个奇妙的生物……
姐姐:我书包里永远放着一本Algorithm和一个苹果。因为我有一个梦想,有一天,我被车撞死了,人们在我的书包里发现一本Algorithm,还有一个苹果,他们说:这个女孩的死就是因为Algorithm。(缓慢的悲情的语调……)
我(若有所思状……):那苹果呢?
姐姐:你不觉得这个故事放一个苹果进去很有悲情色彩么?
我:………………………………囧TZ……………………………………
过了一会儿……
姐姐:你知道一个女人一生绝对不能错过的两样东西是什么吗?
我(若有所思状……):是什么?
姐姐:第一个是一个爱你的人,第二个是,末班车……
我(依旧若有所思状……):……
姐姐:为什么是末班车呢?
我(还是若有所思状……):……
姐姐:你不觉得把末班车放进去很有悲情色彩么?
我:………………………………囧TZ…………………………………
……………………
我:3P…(念做三P…为什么讲到这个捏,忘了……)
姐姐:我们管这叫Three-son……(受教了,果然美剧看多了就是不一样……)
……………………

"
忽然很欣喜的发现自己还是很受人爱戴的了。
在电脑上的自己和现实生活里的自己差的是有点远。主要原因我觉得是,我快乐的时候都在平常的时候发泄出去了,于是只有纠结的时候才过来写博客。。
发现这个原因的时候顿时很懊恼。因为这就表示我永远不可能写成一个技术性的博客了。不过管他呢。还是觉得很久很久以后自己看着年轻时候的纠结是蛮好玩的事情。毕竟,我觉得自己本性纯良,如果不能对别人幸灾乐祸的话,对自己幸灾乐祸一下下也还是蛮不错的。

好像本来想说什么东西可以把我牵在一个地方不想走的。
我想,应该没什么东西做得到。

December 02, 2008

Edward Norton

---You're not your job. You're not how much money you have in the bank. You're not the car you drive. You're not the contents of your wallet. You're not your ing khakis. You're the all-singing, all-dancing crap of the world...

我喜欢Edward Norton真的好久了。

November 26, 2008

总有一天

1.我要带我妈一起去丽江和台北
2.我要写一本编程书在书里面的第一页里写上“ to my dearest xxx"
3.我要学会两个手弹秋日的私语 和星空的旋律

我本来就是个没什么大理想的人。

问题

我现在发现自己最关心的问题是为什么我对什么都漠不关心。

电影

charlie and his chocolate factory

以后不能每天看这么多的电影了。final了。什么都不会是不对的。

November 16, 2008

yes, we can

那一刻,美国的人民聚集到芝加哥,像仰望灯塔一样仰望着他,Barack Obama.
对于这么一个精英阶层的代表,我本来无甚好感,但是我承认,在听到他的victory speech的时候,我也心潮澎湃了。
yes, we can.even though been told that we can't.
想到前两天看完的《贝多芬病毒》里艾玛冯说,我说这些不是因为故作姿态,而是因为我也有过一样的童年,住集装箱,把自己唯一拥有的自行车,书包全部卖掉去比赛,并且最后还是没有赢。就是这样的我,告诉自己,我也可以。(童年和我好相似)。

November 12, 2008

人生果然是起伏不定的

我一直觉得我怎么忽然就那么心情美好呢。然后就忧郁了。

第一次被邀请去Mask Gala,可是我既没有晚礼服,也没有面具。我只有一大堆要due的assignment和deadline的project。

猪和我说,要不要一起去丽江。sr说,要不要这周一起去南丫岛。par说,去UA cinema看电影吧。我说,对不起...

discrete mathemetics的midterm拿了94.5/100.大概是我所有midterm里最好的一门了。algorithm的midterm拿了13/23.大概是我所有midterm里最差的一门了。虽然还不知道operating system,data structure,Java 和ai.

最近开始有希望人生可以重来的傻叉想法。开始考虑做事情的后果。这么多年了,无论是对自己的人生还是对自己的电脑,我好像都是一时冲动。一直都觉得没什么。最近忽然很讨厌那个样子的自己。

anyway,我只是想过有趣的生活而已。

November 08, 2008

美好的心情

可能人心情很好的时候就没有那么多话说的吧。
日子开始过的轻松起来。
partner做完的就接受,学不会的东西还是慢慢的学吧,还是贪玩贪吃贪睡贪看动画动漫美剧日剧韩剧青春偶像剧就贪一下吧,有人说,生命的意义究竟是什么这个问题实在是太可怕啦,简直就是个吞噬快乐的源泉。强烈的赞同啊。不过这种问题好像过一段时间就会被拿出来晒晒,然后把所有问的家伙被问的家伙都弄的很悲凉。

开始有很多的asg要做。唔,实际上,一直都很多的。我每次都觉得自己真的做不完了,真的做不完了,死定了,这次真的死定了。不过,好像就像我的胃一样,我每次虽然都觉得 啊撑死了撑死了这下真的撑死了 吃不下了吃不下了这次绝对再也吃不下了,最后还是没有撑死的吃下去了。

其实刚开始听稻香的时候是蛮失望的,就像虽然歌名叫稻香,我给别人说的时候总还是忍不住会说,周同学新专辑的那个麦田吧...这样。不过后来听完专辑听了很多遍以后还是觉得很不错。就像如果周同学再去拍10部大灌篮这样傻傻的东西我也一样会觉得很不错一样。因为他是周同学,所以他就有这样的资本让我这样认为,让大家这样认为。就像喜欢一个东西一样,开始可能让一个东西打动你是很难的,打动以后,你就成为这种当初打动你的感受的奴隶了。不过。这样也没啥不好的,是吧。

最近花了很大量的时间看动画片,看了《LOVELESS》,《Vampire Knight》,《Blood+》,《D.N Angel》《eva》新剧场版的序,以及《交响情人梦》《夕阳照射的坡道》《伯爵与妖精》》....
与此同时,也沿袭以前的传统看了大量的电影和肥皂剧,特别让如同钢铁一般的本人感动的就是《Walle》和《我的女友是机器人》了。

开始渐渐感到data structure的重要性,没有学基础课就是这样,每次上完algorithm课就觉得自己迟钝的像一块肥肉。

roommate处于一些诡异的原因居然没有搬走,我没问她原因,有时候,我觉得自己还是挺善解人意的,我们渐渐又回到当初的日子,她偶尔做饭给我吃,用她的hellokitty吸尘器把我在早上吵醒,我偶尔给她调咖啡,煎鸡蛋。其实要和一个人过日子也不是很困难的事情吧。

猪说,她实在不想每天早上睁开眼睛就看到两件事,前途和男人。我笑了半天。其实我也不想。不过,男人也不是想找就找的到的是吧,这种需要经过你同意我同意同意来同意去的事情一向都是很麻烦的吧。不过,我在这里其实过的很不错,和国外小帅哥的关系不错,和local小帅哥的关系也不错,我们一个帅帅的tutor还和我说到xkcd的T-shirt说的很开心,
一次一个要去Yale exchange的同学还和我一起吃饭说要和我讨论他们那个meeting的presentation,
小正太弟弟一看到我就很开心,然后整天夸我说jj你太可爱了。虽然都是朋友来着,不过其实还蛮开心的。因为自己是个比较看重细节的家伙,所以一些很细小的东西常常让自己挺感动的。

虽然还是常常会有一些莫名的悲凉的心情,常常写不出code,想不出algorithm,做不出project,也不明白自己到底想要以怎样的方式活着,但是,以后的事情就以后再说吧,生活和写代码一样,都是个循序渐进的过程吧。

November 02, 2008

Tic-Tac-Toe

某人和我讲说,blog要技术含量啊技术含量。
我想了想,于是把做的minimax implementation in prolog贴出来纪念。

我想也许以后我都不会再去写prolog的程序了。
虽然这个语言确实是很可爱。

第一个algorithm是用huristic找goodmove:
:- dynamic o/1.
:- dynamic x/1.

not(Z) :- Z,!,fail.
not(Z).

ordered_line(1,2,3). ordered_line(4,5,6). ordered_line(7,8,9).
ordered_line(1,4,7). ordered_line(2,5,8). ordered_line(3,6,9).
ordered_line(1,5,9). ordered_line(3,5,7).
line(A, B, C) :- ordered_line(A, B, C).
line(A, B, C) :- ordered_line(A, C, B).
line(A, B, C) :- ordered_line(B, A, C).
line(A, B, C) :- ordered_line(B, C, A).
line(A, B, C) :- ordered_line(C, A, B).
line(A, B, C) :- ordered_line(C, B, A).

full(A) :- x(A). full(A) :- o(A). empty(A) :- not(full(A)).

same(A, A).
different(A, B) :- not(same(A, B)).

move(A) :- good(A), empty(A), !.

/* Strategy */
good(A) :- win(A).
good(A) :- block_win(A).
good(A) :- split(A).
good(A) :- block_split(A).
good(A) :- build(A).

good(5). good(1). good(3). good(7). good(9).
good(2). good(4). good(6). good(8).

win(A) :- x(B), x(C), line(A,B,C).
block_win(A) :- o(B), o(C), line(A,B,C).
split(A) :- x(B), x(C), different(B,C), line(A,B,D), line(A,C,E), empty(D), empty(E).
block_split(A) :- o(B), o(C), different(B,C), line(A,B,D), line(A,C,E), empty(D), empty(E).
build(A) :- x(B), line(A,B,C), empty(C).

all_full :- full(1), full(2), full(3), full(4), full(5), full(6), full(7), full(8), full(9).

done :- ordered_line(A,B,C), x(A), x(B), x(C), write('Computer won.'), nl.
done :- ordered_line(A,B,C), o(A), o(B), o(C), write('Human won.'), nl. % should NOT happen
done :- all_full, write('It\'s a tie.'), nl.

equal(X,X).
checkmove(X) :-equal(X,1).
checkmove(X) :-equal(X,2).
checkmove(X) :-equal(X,3).
checkmove(X) :-equal(X,4).
checkmove(X) :-equal(X,5).
checkmove(X) :-equal(X,6).
checkmove(X) :-equal(X,7).
checkmove(X) :-equal(X,8).
checkmove(X) :-equal(X,9).
/*repeated asking if not valid move.*/
getmove :- repeat,write('What is your move? '), read(X), empty(X),checkmove(X),assert(o(X)).

makemove :- move(X), !, assert(x(X)).
makemove :- all_full.

printsquare(N) :- o(N), write(' o ').
printsquare(N) :- x(N), write(' x ').
printsquare(N) :- empty(N), write(' ').
printboard :-
write(' 1 | 2 | 3 '),
printsquare(1),write('|'), printsquare(2),write('|'), printsquare(3), nl,
write('---+---+--- ---+---+---'),nl,
write(' 4 | 5 | 6 '),
printsquare(4),write('|'), printsquare(5),write('|'), printsquare(6), nl,
write('---+---+--- ---+---+---'),nl,
write(' 7 | 8 | 9 '),
printsquare(7),write('|'), printsquare(8),write('|'),printsquare(9), nl.

clear :- x(A), retract(x(A)), fail.
clear :- o(A), retract(o(A)), fail.

% main goal:
play :- not(clear), repeat, printboard,getmove,printboard,write('Thinking...'),nl,makemove,printboard,done.


第二个algorithm是minimax的implementation:
话说写完这个我自己和电脑玩了很久。。

%%%defining global symbols
setflag(Name,X) :-
nonvar(Name), %only constants allowed
retract(flag(Name,Val)), %kill if defined
!,asserta(flag(Name,X)). %freeze & redefine
setflag(Name,X) :-
nonvar(Name), %only constants allowed
asserta(flag(Name,X)). %initial value

%%%strarting the game
new_game(XorO,S) :- setflag(theboard,[[b,b,b],[b,b,b],[b,b,b]]),
Searchdepth is 4,
setflag(sdepth,Searchdepth),
flag(theboard,B), %retrive the blank board
pprint(B),
begin(XorO,S,B,Searchdepth).

begin(x,x,B,Searchdepth) :- %matches if human goes first
write('What is your move?'),tab(2),read(M),check(M,x).
begin(x,o,B,Searchdepth) :-
write('What is your move?'),tab(2),read(M),check(M,o).

begin(o,o,B,Searchdepth) :- %matches if computer goes first
computermoves(B,o,Searchdepth).
begin(o,x,B,Searchdepth) :- %matches if computer goes first
computermoves(B,x,Searchdepth).

%%%user interface rule
check(M,x) :- number(M),M>=1,M=<9 br="" enter="" x=""> write('Invalid move.Try again.'),nl,
write('What is your move?'),tab(2),read(N),check(N,x).
check(M,o) :- number(M),M>=1,M=<9 br="" enter="" o=""> write('Invalid move.Try again.'),nl,
write('What is your move?'),tab(2),read(N),check(N,o).

enter(M,x) :-
flag(sdepth,SD),flag(theboard,B), %recover the board
Row is ((M+2)//3),Col is ((M+2)mod 3)+1,
install(x,[Row,Col],B,NewB), %place 'x'
pprint(NewB),
endgamecheck(NewB), %did he win?
computermoves(NewB,o,SD).
enter(M,o) :-
flag(sdepth,SD),flag(theboard,B),
Row is ((M+2)//3),Col is ((M+2)mod 3)+1,
install(o,[Row,Col],B,NewB), %place 'x'
pprint(NewB),
endgamecheck(NewB), %did he win?
computermoves(NewB,x,SD).

computermoves(Board,x,Searchdepth) :-
choosemove(x,Board,Searchdepth,Movechoice,Maxvalue),
%find the best move;Maxvalue is the largest of choices

install(x,Movechoice,Board,NewB), %compute board
setflag(theboard,NewB), %store new board
write('Thinking...'),nl,pprint(NewB),
endgamecheck(NewB),
write('What is your move?'),tab(2),read(M),check(M,o).
computermoves(Board,o,Searchdepth) :-
choosemove(o,Board,Searchdepth,Movechoice,Maxvalue),
%find the best move;Maxvalue is the largest of choices

install(o,Movechoice,Board,NewB), %compute board
setflag(theboard,NewB), %store new board
write('Thinking...'),nl,pprint(NewB),
endgamecheck(NewB),
write('What is your move?'),tab(2),read(M),check(M,x).

%%%choosing the best move
choosemove(XorO,B,SD,[],10000) :-terminalwin(B).
choosemove(XorO,B,SD,[],-10000) :-terminalloss(B).
choosemove(XorO,B,SD,Posn,Best) :-
NewSD is SD-1, %1 step deeper
genposns(B,Posnlist), %all possible moves from here
evalmovelist(XorO,B,NewSD,Posnlist,Valuelist), %a value for each
bestmove(XorO,Posnlist,Valuelist,Posn,Best). %pick the best


%%%where can we move
genposns(B,Posnlist) :-setof(P,openposn(B,P),Posnlist),!.
genposns(B,[]). %if 'setof' fails,Posnlist should be empty

openposn(B,[R,C]) :- row(R),column(C),install(o,[R,C],B,B1).
row(1). row(2). row(3). column(1). column(2). column(3).

%%%putting an x or o on the board
install(XorO,[1,Col],[BdRow|Rest],[New|Rest]) :-
!,installinrow(XorO,Col,BdRow,New). %move into row
install(XorO,[Row,Col],[BdRow|Rest],[BdRow|New]) :-
Next is Row-1,install(XorO,[Next,Col],Rest,New).

installinrow(XorO,1,[b|Rest],[XorO|Rest]) :-!.
installinrow(XorO,Col,[FirstCol|Rest],[FirstCol|New]) :-
Next is Col-1,installinrow(XorO,Next,Rest,New).

%%%ealuate a list of moves
evalmovelist(XorO,B,SD,[],[]). %empty base case

evalmovelist(XorO,B,SD,[Pos], [Val]):- %1 element list
evalmove(XorO, B, SD, Pos, Val).

evalmovelist(XorO, B, SD, [Pos|P], [Val|V]):-
evalmovelist(XorO, B, SD, P, V), %do the rest of it,
evalmove(XorO, B, SD, Pos, Val). %now the 1st element

evalmove(XorO, B, 0, Pos, Val):- %Basecase; at search limit.
!, install(XorO, Pos, B, B1), %Freeze choice,place the x or o and compute static value
staticvalue(B1, Val).

evalmove(XorO, B, SD, Pos, Val):-
install(XorO, Pos, B, B1), %place the x or o
toggle(XorO, OorX), %move from the resulting choices
choosemove(OorX, B1, SD, Ignore, Val).

toggle(x, o):-!. %Given x or o in one argument, it binds
toggle(o, x):-!. %the other argument to the opposite token

%%%selecting the best from the list
bestmove(XorO,[],[],[],0) :-!. %non possible, give it a zero

bestmove(XorO,[Move],[Value],Move,Value) :-!. %only one, it is the best

bestmove(o,[M1|Othermoves],[V1|Othervalues],M,V) :-
bestmove(o,Othermoves,Othervalues,M,V),
V

>=
V1,!.
bestmove(o,[M1|Othermoves],[V1|Othervalues],M1,V1). %else best is the first


bestmove(x,[M1|Othermoves],[V1|Othervalues],M,V) :-
bestmove(x,Othermoves,Othervalues,M,V), %best=best of the rest if
V
=<
V1,!. %the best of the rest is =<1st .="" br="" freeze="">bestmove(x,[M1|Othermoves],[V1|Othervalues],M1,V1). %else best is the first

%%%evaluate the current board

staticvalue(B,10000) :- terminalwin(B),!.
staticvalue(B,-10000) :-terminalloss(B),!.
staticvalue(B,V) :-
extractrcd(B,RCDlist),evallist(RCDlist,V).

extractrcd([[SQ11,SQ12,SQ13],[SQ21,SQ22,SQ23],[SQ31,SQ32,SQ33]],
[[SQ11,SQ12,SQ13],[SQ21,SQ22,SQ23], % 1st 2 rows
[SQ31,SQ32,SQ33],[SQ11,SQ21,SQ31], % 3rd row ,1st col
[SQ12,SQ22,SQ32],[SQ13,SQ23,SQ33], % last 2 cols
[SQ11,SQ22,SQ33],[SQ13,SQ22,SQ31]]). % 2 diagonals

evallist([L],V) :-!,eval(L,V). %only first list,evaluate it
evallist([L1|Lr],V) :-evallist(Lr,V1),
eval(L1,V2),
V is V1+V2.
eval([b,b,b],0) :-!.
eval(L,V) :-numberof(x,L,Nx),numberof(o,L,No),
val(Nx,No,V).
numberof(Char,[],0).
numberof(Char,[Char|Y],N) :-numberof(Char,Y,Nrest),
N is Nrest+1,!.
numberof(Char,[X|Y],N) :-numberof(char,Y,N).

val(Nx,No,0) :-Nx
>0,No>
0,!.
val(Nx,0,V) :- !, V is -(Nx ** 3). %V is -Nx^3
val(0,No,V) :- !, V is (No ** 3).

%%%recognizing the end
endgamecheck(B) :- terminalwin(B),!,
write('Computer win.'),nl,abort.
endgamecheck(B) :- terminalloss(B),!,
write('Human win'),nl,abort. %should not happen.
endgamecheck(B) :- fullboard(B),!,
write('It is a tie.'),nl,abort.
endgamecheck(B).

terminalwin(B) :-extractrcd(B,RCDlist),
o3(RCDlist).

o3([[o,o,o] | Rest]) :- !.
o3([Head | Rest]) :- o3(Rest).

terminalloss(B) :- extractrcd(B, RCDlist),
x3(RCDlist).

x3([[x,x,x] | Rest]) :- !.
x3([Head | Rest]) :- x3(Rest).

fullboard([Row1,Row2,Row3]) :- not(member(b,Row1)),
not(member(b,Row2)),
not(member(b,Row3)).

%%%printing out the board
pprint([[S11,S12,S13],[S21,S22,S23],[S31,S32,S33]]) :-
tab(2), write(' 1 | 2 | 3 '),tab(5), pprintrow(S11,S12,S13),nl,
tab(2),type2,tab(5), type2,nl,
tab(2), write(' 4 | 5 | 6 '),tab(5), pprintrow(S21,S22,S23),nl,
tab(2),type2,tab(5), type2,nl,
tab(2), write(' 7 | 8 | 9 '),tab(5), pprintrow(S31,S32,S33),nl.

type1 :- tab(5), write('|'), tab(5), write('|'), tab(5).
type2 :- write('---+---+---').

pprintrow(C1, C2, C3) :- write(' '),
pprintchar(C1),
write(' | '),
pprintchar(C2),
write(' | '),
pprintchar(C3),
write(' ').

pprintchar(b) :- write(' '), !.
pprintchar(Char) :- write(Char).

%%%some definition
not(Z) :-Z,!,fail.
not(Z).

member(X,[X|Tail]).
member(X,[Head|Tail]) :- member(X,Tail).

October 26, 2008

故事

“然而故事开始的意义,并不在于它会结束,而在于之后更多的故事。“

October 25, 2008

宿命的熊猫

说实在的,比起《功夫熊猫》这部电影,关于电影的许多评论更加让人印象深刻。

网络真的是个好东西,它不但大大增加了中国信息的流动性和透明性,也极大地释放了中国民间久被压抑的巨大创造力。


这只熊猫,披着励志的外衣,本质上还是宿命论。
其实宿命论是无可奈何的选择,因为这样起码不需要去解释为什么英雄救必须是这只熊猫,而不是他的鸭子爸爸或者路人甲乙丙丁(猪或兔子)。
这个问题根本就是没法解释的吧?
谁能保证你就是你的世界里那唯一的一只熊猫?在一百万分之九十九万九千九百九十九的可能下,你都只是一只猪或者一只兔子而已。即便你也有一个功夫的梦想,即便你也很想努力,Master乌龟也不会莫名其妙地指定你做龙战士。
我们中的大部分人,就只能这么平凡至死。

October 21, 2008

机器人的爱情


如果今年只能看一部电影,那么一定要看《Wall E》。

孤独

"本杰明有部作品,叫《没有人会飞,没有人会记得》。
放荡不羁的漫画家,无条件爱他的傻女孩,这样的故事总会有一个结局。
到结局的那一天,即便他在大街上都画满她的身影,她也再不会回来。
无论多么倔强的头颅,最终也会被生活压低吧?
其实真的没有人会飞。

也没有人会记得。"

October 18, 2008

痛快的工作,痛快的玩

我们以为自己明白的,
真的明白吗?

October 12, 2008

写给过期的Halloween

“是为了得到这种快乐,才干这份工作的吧。”

仿佛是全然忘记了自己当初选择的原因,渐渐和所有自己以前所不屑的人一样,比较,权衡,职业化,为了所谓的胜利和高人一等的感觉而做着现在所做的事情。

常常感觉寂寞,觉得孤单,觉得不被理解,觉得没有人再会理解自己的心情了。
可是,回想起来,到底是被人所抛弃的自己,还是选择被抛弃的自己呢--在CU被通知也无视的自己,对所有人都冷冷无所谓的态度的自己,依赖转系生又选了一堆3字开头专业课的冲动当理由回避所有应当出席地点的自己。
对猪说,你来吧,但把她带去图书馆的自己。
我真的,就那么理直气壮,那么认真工作么。

从什么时候开始,开始变成如此冷漠的一个人,渐渐被自己忽略的手机,无视的莊会,一起从浙大来的朋友说,一起去吃海鲜吧,一起去海洋公园吧,一起……我总说,对不起,我要考试,我要写代码,我要做project,我还有很多assignment没有写。其实,有时候,自己也还是躲在寝室里关起门来睡觉或者看动画。

今天忽然发现,一个朋友的生日过了,Halloween过了,一张cinema的券就要过期了,而和爸爸妈妈也已经很长很长的时间没有联系了。
难道这就是我所希望的效率化的生活吗?
我当真,快乐吗?
我当初,为什么要放弃自己所拥有的东西?难道这就是理由吗?
我所有,用来当借口的学习的理由,真的是理由吗?
我现在,所有不快,痛苦,纠结的原因,真的不是自己一手造成的吗?

很久以前就明白的,痛快的工作,痛快的学习,我现在,真的还明白吗?

我所遇到的,情感上的,生活上的,纠结的事情,从某种意义上来说,都是可以解决的吧。
因为自己的软弱,不想丢失别人的帮助,而过分的依赖某些人,真的让自己很失望。

我想知道,自己不仅要一个人坚强的活下去,也要和大家一起,快乐的活下去呢。

会快乐吗?

September 30, 2008

iMovie很好用啊……-[Mac]

花了5分钟随便拖了点东西测试了一下iMovie.
好人性化……
ps:mac自带的镜头,我只好用自己测试了一下下……唔,怕侵犯别人的版权……我果然是很可怜的小朋友……
哈哈,背景音乐很爵士吧,哈哈哈……
还有里面的那行字,嘿嘿,qiche ren--testing on mac~可惜被blogger弄得很小了……我做了个巨型的~

September 29, 2008

how to kill a cat?-[Life]

那个shell interperater的project居然做了一大半了。
谢谢曾经安慰过我的人。
谢谢你们。
我会记得。

OLA给我send了一封信问我要不要extend到one year。
原本以为自己一定不会犹豫的想要extend的,不知道为什么居然犹豫了。

似乎过几天要一个人住了。
也并没有想象中留恋。果然我还没感情丰富到某种自己都受不了的程度。

java开始会刷颜色了,至少oop方便的弹框我还是很喜欢的。c离开windows.h无法实现的功能。

国庆会放假一天,希望自己可以健健康康的。不要再生病。

又开始重新看犬夜叉。桔梗同学的命运果然是越看越觉得很悲惨。。唔。可是她为什么就是不安分死掉就好了呢……

逃了好多的课,有点内疚。唔。明天开始不要再赖床。

前天和瑞典姐姐一起煮饭吃,恩,米饭果然还是自己煮的好吃啊。我的手艺果然还是很不错的。

汽车人小朋友现在应该在家里看文艺小人书了,唔,真是个幸福的小朋友。

进了mstc了。总算在今年又有了一个喜欢的集体。人生还是有点存在的意义的。

忽然发现每次的题目和内容仿佛都是没有什么关系的……
其实那个是我在handle process里的file redirection的时候shell里的一个bug。我那个神勇无比的partner也没能搞明白这个bug的原因。。哈哈哈。这点让我很爽。


恩。明天仿佛还有一个考试。

September 26, 2008

无人分享-[Life]

coding≥≥
然后去我最喜欢的NA canteen,点了一份我最喜欢的印尼咖喱烩牛肉和我最喜欢的红豆冰,坐在一个一眼就可以看到海景的table里享受自己的午餐。

我以为我会很开心。

但是没有。

我捧着那杯大大的红豆冰的时候都没办法喝下去,觉得很忧伤,觉得不快乐,觉得很没意思。
就像打开一大罐大白兔奶糖看到最后一块剩下的奶糖的时候,无人分享的心情。

我一直在想我们Operating System的teacher讲的关于brower的评价,为什么会存在那个叫做Round-Robin的无论在average waiting time还是average turnaround time上都毫无效率优势的算法,因为user最关心的永远都是我有没有得到response,即使一个算法非常高效,但是用户不能立即得到自己所想要的response,用户就会不停的去reset。而RR会相对公平给用户一个response说我在运行。

也许人也是一样。看着你的朋友喜悦和满足的表情,自己也会觉得快乐吧。

kid有一次曾经说,他有时候会想人需要休息,到底是生理上还是心理上。
我有时候也会想,人需要朋友,到底真的只是为了互相帮助还是别的什么。

也许只是一种分享的心情,和朋友在一起红豆冰,海景,吃好吃的东西。也许只有这样才会觉得有意思吧。

忽然想到eva最后给出的那个很扯的原因了,“虽然如果有‘别人’的存在会永远有误解,孤独,但是曾经在一起的那种感觉,却是如此真实的存在过。”
即使彻底的消灭那种伴随存在而存在的孤独感,但是没有他人,我们也只有永远一个人打开一大罐大白兔吃了吧。

最近每天听以前听的歌,听一个很温润的声音不停的哼life is wonderful。是吗?也许吧。

离别的心情其实没什么。异地的感觉其实也没什么。新鲜的快感,也没什么。没什么大不了。

人所为人的伴随属性而已。

然而,也许就像eva里面那个很扯的原因一样;
这种感觉是如此真实。

开始深切的体会到什么叫做‘老’朋友:

那种在你很老很老的时候都会想拉过来一起吃好吃的东西的人。

September 21, 2008

重定向-[Life]

半夜從宿舍爬山下來,來到lab,也許是坐在一台巨型的mac機前的感覺可以暫時讓我忘記掉某些痛苦 糾結連我自己也無法想通原因的事情。

其實只是不想承認吧,自己對自己的失望。

我面對著這台華麗的機器,面對著linux服務器里糾結的代碼,完全不知道我寫了甚麼。完全不知道該拿比那段代碼還要長很多的error怎麼辦。

更加讓我痛苦的是,完全想不到任何改善的方法。

我果然是要比我想像的笨很多。

好像很久沒有在這裡寫關於技術的傻乎乎的東西了。事實是,我的大作業全部寫不完,能寫完的全部不是我寫的。

要去寫算法了。不知道今天又會寫到幾點鐘才能寫完大概的內容。也許還是寫不完了。

無論如何,總還是要寫寫看。

而代碼,那個parser和interpreter的部份我自己實在是無能為力了。

我熬夜寫了兩個晚上的進程通信基本模塊完全沒辦法編譯通過,某個人5分鐘寫的就成功了。

好難受,不僅僅是因為寫不來代碼,而更加是一種虧欠他人的心情。

PS: 算法的作業還沒有寫完,唯一的一枝筆的筆心寫完了。不知道寢室還能不能回的去。

一個人夜裡爬山果然還是有一點害怕的。

不過還是得回去,沒有了筆,就沒有辦法寫作業了。沒有辦法寫作業,醒著只會更加嚴重得胡思亂想,更加嚴重得胡思亂想只會讓我已經不怎麼樣的大腦更加得莫名其妙。而更加莫名其妙得大腦對我寫作業是完全沒有任何好處得。

所以就算是害怕,也還是得回去。

忽然覺得自己很有邏輯條理了。果然感冒就是一種很強大得癲癇劑。

September 20, 2008

天旋地转-[Life]

没办法写代码,call 汽车人无数次,听那个peoples的姐姐甜美的普通话"对不起……"无数次。

也许人是不应该太依赖某些朋友。

开始学习自己给自己的代码debug,感到对自己partner的强烈的内疚的心情。他写了parser,interpreter,教我给自己一塌糊涂的c和++不分的诡异代码在mac机下用linux服务器的编辑器compile和test。

极度难受。只是想问问橄榄油同学为什么突然从msn,校内,和各种地方忽然消失。

感到虚弱。

clinical center要过两天才开门。

也许还是要去lab继续写代码。

September 19, 2008

睡衣-[Life]

今天考完试,逃了课一个人去沙田买东西。
才知道一个人买东西是那么痛苦的事情。我迷失在沙田一层一层的plaza之间,迷失的结果就是发现自己实在是太穷了。

从一层到六层我逛了足足3个小时,事实是,我最讨厌长时间的逛商场,但是今天迷失了,而走不出去的结果就是会长时间的耗在商场里。

3个小时的结果是,我买了一大袋圣安娜饼屋的排包,一把伞,一瓶水。

其实我是要买衣服的。最后一咬牙,进了一家迪士尼睡衣店,磨叽了半天,买了2件睡衣,一件179,一件199。我想,不能再没有睡衣穿了,大不了以后再也不买睡衣了。可怜我在浙大还有2件睡衣……
去付钱的时候那个姐姐狐疑的看着我说,这个是送人的么?我说,我自己穿的。jj很不好意思的说,恩,但是,这件是男士的,那件是150下的小朋友穿的……

最后,我还是把那两件睡衣买下来了。
香港人真是笨,分类都不会。

September 17, 2008

partner[2]-[Friend]

收回一切bs和贬低我partner的话,这个小dd实在是太可爱太诡异了。

我决定改变先前对他的看法,仔细的研究这样一个被他的personal doctor说病根是不懂什么是relax的小朋友的心理。

这个世界居然会有除了assignment和problem都不知道该怎么和人interprete的person,世界果然是无奇不有了。

anyway,他今天没有帮我做assignment,而是教了我很多东西,让我还是很感激的。

September 16, 2008

house wife-[Life]

我在想,其实我更加适合做一个男人。

找一个勤劳善良的就和我现在的roommate一样的女人做老婆,然后我搞搞技术什么的。
也不错。

partner-[Friend]

在我最孤独最无助最绝望的时候,上帝派来了一个。。厄,奇特的家伙给我的OS当partner,此人乃数学系一天才型小朋友,身上具有所有看起来就是个天才的所有乖僻缺点,虽然我也没想过要真的受别人多少帮忙,毕竟我认为木有人会受得了我的罗嗦和幼稚的问题除了我浙大的某个死党。

anyway,有个partner总是比没有好的。

September 15, 2008

Letting Go-[Life]

不知道为什么开始很强烈的想念浙大。我开始非常不理解自己的这种情感。
客观的不带任何个人情感的来看待中大和浙大,浙大无论在哪个方面,都远远比不上这个鬼地方。浙大的宿舍没有pantry,没有大的landry,没有烘干机,没有冷气,也没有舒服的白色地板让我光脚踩在上面;浙大的卫生间没有这里豪华干净设备齐全还香喷喷的;浙大的图书馆没有这里漂亮,藏书没有这里多,整齐,容易找,浙大图书馆没有毛茸茸的地毯,没有discuss room,没有无所不在的强大的无线信号;浙大的课程也没有这里实在,帅哥没有这里多,浙大上课要骑自行车,这里是无所不在的校巴;浙大的校园没有这里美,有趣味,像迷宫和花园,还会有漂亮的海景和大油轮坐;浙大的交通没有这里舒适,总是很挤,杭州也总是堵车,在这里从来没经历过堵车,出门都是地铁和火车,中大的门就是university站的月台;甚至浙大的同学也没有这里的local热情,行政机关也没有这里方便和快捷;浙大的deen最多请我们吃一顿标着12元的6元套餐,但是这里的college会有不同的文化,会请我们去最昂贵的尖沙咀吃好几千一小桌的极其美味的饭饭也许就因为要促进不同国家的同学在一个hall里的文化交流;在浙大,我也看不到猪,去不了港大,看不到港大极其ugly的鲜蓝色建筑和极其pp有感觉的超级有味道的拍色戒"中国不能亡"和大学原型的那些镜头的三栋鬼楼,看不到港大最大的荷花池原来就和小水洼差不多大,不知道为什么猪说去港大颠覆了她对建筑的尺度的理解,不知道原来做电梯可以像蒸桑拿一样……
可是为什么。
我居然想浙大呢。我想什么呢。我真是个奇怪的人。
可是,我真的想浙大,想写着不准洗澡后果自负的启真湖,想偶尔会从那块有栅栏的湿地里飞出来的大白鸟,想四四方方我永远不会迷路的zjg,想某些又土又傻还会整天bs我的朋友,想骑自行车,想上无聊的课的时候听人打呼,想堕落一条街上的食物,想0604,想我的便利店jj.想我自由自在的生活。想到处可以买到的简体中文的书,想说中文的老师,想白切鸡,想98,缘网商城和外卖。
我知道浙大不如这里,也许回去了我还是会整天比较又抱怨,但我现在想念它的心情,却是如此真实的存在着。

September 14, 2008

AI果然是缺乏大众的认知度啊-[AI]

今天到网上找了一个晚上的ai资料,csdn那个鹾网站,我传了一本极其美丽的算法书以后还是不给我下载,要不就是下载下来发现被坑,标签是ai,写的却和计算机基础一样。。唉。

于是想搜点高端一点点的比如mit的那个ai网站啊什么的。看到了那个我ym已久的那个professor的照片傻傻的登载在那里,而且极其惊讶的发现那个logo就是我的第一个什么算法xx课的assignment的附加题。。oh,my God.我如获至宝的开始点进去点进去点进去。最后它终于给了我一个框说,抱歉,这个是给mit stuff和alumini用的。请check...

我很绝望很绝望的想从我们老师页面里的info找点东西,最后还是只有我做出来的那个ai小游戏网,还有lisp和prolog的资料。唉。想找点资料来写作业真的有这么难么。

后来想想还是再看看98上那个笑脸男的图出来了没吧。(66楼)然后忽然想到浙大美丽的资源库--88,最后在经历了无数曲折历程的诡异挫败之后我终于意外的找到了我的教科书。。哦。浙大果然还是有ai的。浙大美。家美。88美。浙大服务器也美。

September 12, 2008

汽车人测身高-[netbeans]


极其弱智极其弱智极其弱智~
可是我喜欢哈哈。

所有的OOP都是从弱智的弹框开始的~

ps:netbeans 也有自己的jar包生成器。在build后的dist文件夹中。

September 11, 2008

存在本身-[Life]

很久很久以前,老师告诉我,把所有的字写在一个段落里是不对的,于是我开始学会分段。
后来,老师又告诉我说,把所有的段落写在一个作文里也是不对的。我今天忽然想起来,决定也该纵向的增加一下作文数量了。

我始终疲惫于谈自己在这里的生活,遇了的人,做了的事,玩了的地方和吃了的食物以及某些从来没体验过的存在方式。事实是,有些东西会伴随在你的神经细管里,所以不用记下来,但是有些东西不会。比如我整个晚上都在研究的那个把作业传给老师的命令行和远程的机器的名字;一个我开始很不喜欢很讨厌的复旦男生忽然很善良的问我,要不要把老师之前讲的告诉你;比如我的那个local的室友上堂或者上庄总是会留给我的纸条和晚上带回来给我的大块的巧克力;比如我们浙大的组长总是会发很长很认真的短信通知我去诸如海港,海洋公园之类的地方然后我总是不会回复的散漫态度。比如New Asia的红豆冰;一个大大的instruction写着前往联合请按8--然后事实是你只有按7才能到;比如会给我魔方玩的老师,会看到我在java课睡觉后下课后来问我要不要陪我去保健室(医务室)的陌生的善良的local;我总觉得我这辈子是再也不能成为这样的人了--为别人创造惊奇的人。比如每次在pantry做饭的时候总是会有人来关心我是不是又煮坏了,比如走在hall里总是有陌生的人给你微笑,打开冰箱也常常会有一些小note贴在一个大大的巧克力蛋糕上说要与我们分享快乐,虽然我已然不习惯于这样的表达方式,但是从内心来说,我明白这是一种单纯的善意。
(待续...)

September 08, 2008

纪念X-window君--cs道路的擎天柱-[friend]

我曾经答应过一个人要写一片日志来纪念ta.
事实是,我实在是太懒了。所以总是记不住事情。
这几天一直在煮饭给自己吃。煮的东西我倒是能给自己喂下去,不过总是给手上烫下一个又一个的水泡,虽然烫过以后白白红红的很好看,不过着实有红烧肉的倾向。于是我猛然由实践得出了一个结论--人是由猪进化而来的。

X-window君是一个极其友善的人。当我由于一个极其巧合的新疆橄榄油事件认识ta以后,ta就开始负荷起我寝室电脑修理工的重任。那时候我觉得这是一个极其神圣而光荣的任务,觉得将我心爱的机器交给ta是一件多么伟大的代表信任的事情。直到今天,当几个好不认识的复旦女人开始用她们极其混乱的机器来蹂躏我时,我回想起来,才发现自己当年是多么的幼稚。

无论如何,这还是证明了X-window君是个极其友善的人。虽然也许ta当年和我现在一样可能是被逼无奈。

来到香港这个岛屿之后,就好象我以前去杭州一样,我往往会把自己以前那个地方发生的事情像做梦一样忘记掉。这仿佛是我生存下来如同java一样坚挺的原因。我很奇怪为什么总是还能记起X-window君。后来在我上网的时候我终于发现了这个秘密。我上着缘网,用1M+(限制后)的速度下载着好看或者并不好看的综艺节目和电影,然后踉踉跄跄的发现,我用的是X-window君极其幼稚的千年没变的虽然我仍没记住的帐号和密码。
我不禁感叹,X-window君果然是个神一样的人物,能推测出我必然会在反复使用着ta的帐号的时候极其友善的感恩起这个帐号的主人,就如同我常常用一个好代理的时候一样。
无论如何,这还是证明了X-window君确实有着神一样的推测力。

X-window君在我大一的时候严肃的批评了我极不端正的对待电脑的态度以及不负责任的下载病毒和删除系统文件这样的恶习。事实是,我并没有太过在意,因为每次出了问题,非常麻烦的人都不是我。当然,当年的我并没有考虑的这么深入,现在回想起来,如果不是看ta弄得很爽的样子,我也许就不会那么积极的把我心爱的机器往死里整了。
所以,其实说到底,X-window君大一的悲惨命运,很大情况下是ta个人的态度造成的。
而ta经历过这样的悲惨命运后,仍然义无反顾的冲向计算机,给当年思维简单,头脑单纯的我造成了一个极其严重的cs是个极其美丽诱人好玩可爱毫不枯燥又很轻松(因为看X-window君当年是很有空的来修电脑的)的物体的假象。
虽然最后我真正从事这项事业是由于其他林林总总的诡异原因,但是这和X-window君在一开始造成的这个假象着实是脱不了干系的。
总而言之,这还是说明了X-window君极其强大的个人影响力,当然是对头脑简单的80后新生而言。

当年的蓝田盛产一种叫做蛋饼的物体,其色香味及其无所不包的容量使我们都趋之若鹜。当年会有很多诡异的原因促使X-window君欠我蛋饼,那些诡异的原因到底是什么我至今已无从考证。蛋饼后来越欠越多,越欠越多,以至于多到我们都忘记了那个数字。所以每每我想要敲诈或者纯粹只是心情不好想转移怒火时我都会拿这个借口来把自己弄得很吃亏很可怜的样子来蹭X-window君的米饭和食物。加上后来的蓝田失去了这种食物的元神而换成了某个叫做免羊共舞的店。这点为我的故事添加了更多的悲情色彩。
现在想来,X-window君欠我蛋饼这个不知道是不是事实的不可更改的事实也是我们之间友谊的某种见证。

X-window君在取名方面极有天赋。比如ta会写一个放在电脑上能用但是放在手机上就不能用的专用于手机的app,然后给它取名酱油羊browser.还有我的很多不想承认的外号,比如汽车人,擎天柱,长颈鹿,等等。虽然这些诡异的外号到底是从何而来早已无从考证,即使我隐约的记得汽车人仿佛是和当年X-window君诡异的进入竺院和实验室的经过是有关系的,但是即使耗尽我最后的rp我还是没办法想通到底为什么最后是我成了汽车人。先人说,人生是无法预知的。先人果然是很有智慧的物体。

无论如何,这还是说明了X-window君超凡脱俗的取名能力,虽然后来我看了变形金刚后终于发现汽车人的那个首领就叫做擎天柱大人。

今天在写一个warm-up的作业,可惜这个作业的名字取得太不好了,warm-up,我这样的冰窖级人物注定是warm不起来的。于是我在极度无奈之下又开始无耻的向X-window君求助,开始X-window君冷漠的态度将我惹毛了,后来他极其认真的把责任推给了msn的浙大代理,这是非常绝妙的一推,这么一推,既勾引起了我当年在浙大的悲情回忆,又让我不由得之间对ta这个个体还在浙大网络的凄凉的速度之下用着代理的景况产生了极度的同情。于是我又宽宏大量不计前嫌毫不犹豫的厚着脸皮用msn让X-window君为我写作业。没想到在半夜12点来临之前,我的msn忽然抽风,任我用尽所有威逼利诱的方式就是不连线。关于这点的原因真是诡异非常,估计考证下来可以足足写下十几页的“msn的冰冻悲情史”。我对微软的msn深深的表示了一下同情,也对开发这个软件的人在防寒御冷这个方面的用心表示了极大的怀疑。我甚至想到这样的情况多了以后说不定微软会通过ip找到我然后祈求我去给他们完善完善。
总之,本来我的心情凄凉到了极点,现在回想起来,我已然忘记了凄凉的原因,不过当我身处在那个时间的那个特定的悲凉的状态之下时,我绝对是有潜力变成那种产生难以言述的悲情色彩的悲情女主人公的。总之,在msn被冻结以后,我忽然发现了一点,X-window君其实是很重要的,我所悲情的原因,其实与msn的冻结关系并不是很大。
(待续...)

September 05, 2008

开始学习netbeans设置界面-[netbeans]

java的第一个assignment。
做了一个超级傻的名字叫i'm cute的window出来。哈哈。









然后你把这个框关掉,它就转啊转啊。哈哈哈。太傻啦。
转圈的代码:
















开始打开netbeans的界面的时候,觉得实在是太丑陋了,字很小,工具bar很大,明明下的英文显示中文,编辑框还有一条红线。其实原来都是可以设置的很美很华丽的。

1.Netbeans 6.1 设置为英文界面
将配置文件中的#command line switchs下面那行添加启动参数:
-J-Duser.language=zh -J-Duser.country=US

2.设置editor字体
Tools-->Options-->Fonts&Colors
只要在OS里装过的字体,这里都会有选择的

3.关于红线
其实是限制一行的字数的限制线。只要到Tools-->Options-->Editor-->Indentation
里面的right margin由80改成200+就基本看不到啦。

莫可名状-[life]

来香港一周多了。无所不在的兴奋的感觉开始一点一点的减退。
这里是个相当不错的地方。华丽,浮云,傻瓜,被人类改造的一塌糊涂又美的惊心动魄。
完全是我喜欢的类型。
虽然周围的local有点太过热情。也不可避免的总是帮人做网络维护的修电脑工,可能在这个没有达到一定的学分就不给床铺住的CUHK里霸占着新鲜建成的hall,总还是觉得无比幸运。
这 个学期选了很多的课。不知道是不是kid无意中在98一个帖子里说的那句话:“不过,另一方面,安于现状并不等于停滞不前。前一段时间花了不少精力在玩“ 三国志”这个游戏,最深的感触就是当你达到目标或者大局已定的时候,一切都没意思了。这也算一个不错的借口吧——过程重于结果,所以即使毫无目标的追求也 并不是全无乐趣的啊。”让我恍然觉醒了呢。
记得ai老师经常开始和我们纠结定义的问题,定义intelligence,定义agent,定义rationality,甚至还要定义一个所谓的universe。真是人生如梦。
可 是后来看到所谓的cognitive science。发现AI发展最快的时候就是当人们把它和cognitive science区别开的时候。比如理论物理,量子物理,物理化学,在某种程度上的定义和界限可以极大的促进这个东西的发展。为什么呢。为什么计算机在做智 能的时候在expert system上做的非常出色,可是却没办法回答你do u like me?或者have u eat 这样的傻问题?为什么the Turing test开始也是极大的依赖着那个所谓的interrogater的侦探水准和认知能力呢?为什么机器至今在面临需要全局看待的事物 (比如围棋)的时候还是显得如此力不从心呢?为什么看到香喷喷好吃的红烧肉我们可以那么直观的靠近和品尝,而做一个这样的sensor代价却高的一塌糊 涂?
用一句话来说,我们所作的一切判断,其实都还只是一种pattern matching。比如的当别人问你3+2是多少,一般的人都不会先数出3个数然后在数出两个数,然后放在一起重新进行counting。所以在面对 38923902×3947034的时候我们会一下子不知道结果,因为日常的生活里我们对此并无经验来match.
忽然发现自己又在滔滔不 绝的ai了。也许以后真的会想往这个方面发展。虽然才上来两节课,不过真的觉得是个很有意思的领域,当哪一天我们发现了最efficient的产生智慧的 方法,当机器真的可以达到think,learn,create的level,想想那个图,人类在几亿年的时间里神经元并没发展多少不过cpu的速度是真 的在几何级数的上升,尽管说好像是遇到了瓶颈,不过,既然现在的ai已然可以做高效的search,下国际象棋,给人开刀,写诗,证明数学题。我总觉得, 一旦我们能了解自己是如何拥有感觉和直觉的,也许所谓的智能也可以真正实现。
忽然想起来自己还有一个java的assignment。