2009年1月19日 星期一

template partial specialization of member function

學到一招

如果有這樣一個東西
template < class T,unsigned N >
struct foo {
void bar();
};
假如我對某種類型的東西的foo有特別的需求, 可以這樣寫
template < > void foo < int,3 > ::bar() { ... }
但是如果我想要這樣
// 底下的東西不能編
template < unsigned N > void foo < double,n > ::bar(){ ... }
// 上面的東西是不行的

所以這時候只好這樣寫

template < > struct foo;

template < class T,unsigned N >
void _bar( foo< T,N > & a) { ... }

template < class T,unsigned N >
struct foo {
inline void bar() { _bar(*this); }
};

如果想要partial specialization 就這樣寫
template < unsigned N >
void _bar( foo < double,N > & a ) { ... }

2008年9月12日 星期五

finite field 裡的開方

話說我最近一直在做 gf31^9 gf31^15 的開平方根
遇到了一個問題.... 不管我怎麼做
開出來的數字相乘不會回到原本的數字

換了各種作法 懷疑這個寫錯 懷疑那個寫錯
但就是找不出來到底是哪裡寫錯了

後來又發現 不是每次開平方都會做錯....
然後就開始看到底什麼時候會做錯 開始估計錯誤率
很奇妙的 每種程式寫法的錯誤率都是 50%

最後我發現一件事
突然有種兩根電線相接冒出火花的感覺
......不是每個數字都能開平方的
這樣算是實戰驗證了這件事嗎 Orz....

2007年11月26日 星期一

甲骨文

在這本書中文版編輯的推薦之下看了這書
是好看的書
作者說他是一位到中國去的美國記者
書裡寫下了作者在旅居中國期間 他眼中裡中國的改變
有點像是 萬曆十五年 的手法
改變就發生在生活的那些不經意中

書中主要分成三個故事
維吾爾朋友的故事
涪凌學生的故事
古文物和陳夢家的故事

維吾爾的商人離開了中國, 移民到美國去
和妻子朋友分開, 被搶劫, 在不熟悉的環境中從新開始
給我的感覺像是一種上個世代的美國夢的破滅

涪凌的學生是有關於深圳一夜城跟年輕人的故事
作者說優秀的那一部份的中國人離開了家鄉到了沿海的新城市去
去尋找新的機會
很大的一部份表現出年青人的勇氣
不總是盡如人意, 但是美國夢故事的舞台這回換成了在中國上演
是會讓人鼓起勇氣的內容

陳夢家的故事很大的一部份在寫文化大革命
作者的筆下是一個所有的當事人都不願意去回想的記憶

陳夢家是誰 做了什麼是問google可以得到很好的解答
或者說是某個面向的很好的解答
這部份有點像是芥川龍之介的"藪之中"
更有名的說法是羅生門
每個人都用自己的立場, 自己的回憶, 給自己的理由
來說陳夢家這個人

作者很冷靜的寫下在中國看到的這些事
寫遊行的群眾 寫政府的反應 寫警察 寫法輪功
也許是因為中國對他而言是個新的事物 也許因為他不是中國人
所以更可以看到一種局外人心態的冷靜

觀察像是在看一部怪異剪輯的紀錄片
當然雖然說是紀錄片, 看到的仍然是一種導演的記錄

最後, 這本書的主要缺點是太厚了
需要一點點的耐心
當然精彩的內容降低了它的門檻

2007年11月4日 星期日

兩種文化

以前在唸大學的時候修了很多通識課,
也許是有趣的課不多, 這些課程的教室裡通常會坐著有許多不同主修的學生
平常我喜歡坐教室的最後面, 跟同學互動的機會也不多
只有在考試的時後, 看到別人寫的答案卷, 可以感受到所謂的"文化差異"

這是那種簡答題跟申論題的文化差異
同樣的考試題目, 我大概會把我想到的答案的可能性
1. ..... 2. ..... 3. ..... 條列出來,
寫完 就差不多可以交卷了吧
只是我看很多人在考試的時候很辛苦, 我想他們兩個小時內都不停的在寫字
考卷密密麻麻的充滿文字就算了, 這樣作答的人, 很有機會再跟老師要答案紙來寫

他們怎麼能寫那麼多呢? 用我條列式的作答方式大概會這樣寫
1. 他們把一件事的來龍去脈做很詳細的論述
2. 他們想到了很多我沒有想過的可能性

站在我的立場, 我當然比較傾向 1. 這個答案的立場
偶爾我也想那樣試試看, 但是就沒法那麼勤奮
我已經根深柢固的被植入多寫字分數不會比較多的想法了,
說不定已經深入到DNA去了 ^^;;;
在資訊系的考試 印象裡沒多要過答案紙
物理系的考試考的幾乎都是考學生的計算能力, 多要答案紙代表的其實是"計算紙不夠了 再多給我一張"
答題方向對, 結果對, 分數就是滿分, 方向錯, 結局就是零分
寫多寫少從來就是無關緊要

也許檯面下的影響就是學工程或科學的人習慣使用精簡的術語溝通想法,
對於那些非我族類的人由於要解釋很多, 或者有無法良好溝通的挫折感, 久了後就興趣缺缺吧

從前在聽法律系的朋友聊考試的印象是答題的立場很重要,
跟出題老師持相同立場的答案拿高分, 立場不同拿低分,
就算是拿低分, 文章裡的邏輯推論等等的, 對分數也會有影響,
也許他們考的從來就是只有參考答案, 沒有標準答案的考試吧

我了解不多, 就不多寫了

2007年11月1日 星期四

電腦也搞不定

Computers Ltd: What They Really Can't Do
by David Harel

這本書是從圖書館借到的, 原本是想去找 .Net framework的書
結果如我所料的資訊所圖書館果然沒有這種書,
放這這一本科普中文書倒是令我有點意外

這是一本在講計算理論的書, 也仍然有之前提過的缺點
"當你想要多了解深入一點的時候 卻發現這個主題已經結束了",
不過這本書仍然很值得推薦,
推薦給每一位第一次接觸或者對計算理論感到棘手的人

看這本書的時候我一直在思考的這本書的定位, 到底什麼樣的人會喜歡這本書?
書的前半部寫的小悶, 些許繁瑣, 也很有可能是我唸過太多次計算理論才這樣想,
每本書會講一次 Turing machine, 這本書竟然還表演 Turing machine 算加法
不過之後越寫越精采...... 反正我不喜歡的部分我都會跳過 :P
如果我正在接觸計算理論時唸到了這本書, 肯定會愛不釋卷,
對於一本書的看法也跟讀者的心情有深刻的關係

也許看這種書存在著一個盲點, 就是書本的來來去去不會超出一般的科學論述太多
而這些內容其實大部份我都已經接觸過了
看書的樂趣只剩下看作者怎麼去描述我已經知道的這些事,
是不是有什麼和我思考不同的新想法,
但是就像是有人不喜歡事先知道電影或者是小說的結局,
閱讀時總是少了一些驚喜

到了最後兩章的人工智慧是一般教科書看不到的部分,
我第一次看到有關於人工智慧的評論, 簡單的講, 也許作者就是覺得目前的狀況還太淺吧
他用了一個機器人過馬路的故事作為書本的結束,
四個AI的實驗室做了機器人要過馬路
第一個實驗室的機器人推理的結果 決定等車子的情況穩定下來後再過馬路
第二個有複雜機械裝置的機器人跳上跳下的驚險萬分也沒能過馬路
第三個實驗室很有錢, 所以路上有很多機器人的屍體
第四個實驗室認為AI的核心應該是理解 分析 自然語言..... 所以機器在在路邊開始講起了故事

我再看一次文章, 再翻一下書
我想我寫的這些文字, 對於這本書的萬分之一的精采都沒有表達到
自己去看書還是有必要的 :P

2007年10月26日 星期五

意氣風發?

跟從前的同學見了面
她說我變了很多
唸研究所的時候 感覺起來比較"意氣風發"
講比較多話
比較會發表自己的意見

好像真的是這樣
現在的我
人腫了一圈
當了兩年兵 半年工程師
又做了一年半的研究助理
不知道自己在幹什麼?

2007年10月23日 星期二

魔獸世界裡的真實故事任務

先前的NAXX中有個叫"羅馬拉丁尼的命運"的任務
紀念一個叫做 Indalamar 的玩家, Indalamar 反過來拼就是 Ramaladni
任務的內容是這樣的
目標:進入納克薩瑪斯並找尋羅馬拉丁尼的命運。
描述:在銀色黎明成立以前,羅馬拉丁尼原本是兄弟會的戰士 - 莫格萊尼公爵的愛徒!可是當羅馬拉丁尼得知莫格萊尼公爵的死訊之後,憤怒和仇恨開始慢慢的侵蝕他的心靈。
你要記住,,當怒氣以及仇恨過大時,一個人就不再是人了。他會迷失自己的方向並失去行為控制的能力。羅馬拉丁尼就這樣帶著仇恨的精神進入納克薩瑪斯去復仇……從此音訊全無。
進入納克薩瑪斯去找尋羅馬拉丁尼的消息。
這個 Indalamar 是一個在歐洲的大公會裡面的戰士, 連我都在 youtube中看過他拍的影片
這傢伙有一天在公會頻道裡面說了有事要出門, 從此就人間蒸發了
沒有再上過線, 也沒有再發表過任何文章

再下一個版本的WOW中再加入一個紀念玩家的任務
紀念一個叫做 Caylee Dak 的女夜精靈獵人玩家
這位玩家因為leukemia 而過世了, 許多線上的朋友還為了他舉行一場紀念儀式
任務的內容是暴風城的一個小女孩寫了一首詩要送給在薩塔斯的 Caylee Dak
詩的內容是這樣
Do not stand at my grave and weep, I am not there, I do not sleep.
I am in a thousand winds that blow, across Northreand's bright and shining snow.
I am the gentle showers of rain, on Westfall's fields of golden grain.
I am in the morning hush, of Stranglethorn's jungle, green and lush.
I am in the drums loud and grand, the thunderous hooves across Nagrand.
I am the stars warmly gleaming, over Darnassus softly dreaming.
I am in the birds that sing, I am in each lovely thing.
Do not stand at my grave and cry, I am not there. I do not die.

這首很有WOW風格的詩原來是一首很著名的英文詩
從這個版本改
Do not stand at my grave and weep,
I am not there, I do not sleep.
I am in a thousand winds that blow,
I am the softly falling snow.
I am the gentle showers of rain,
I am the fields of ripening grain.
I am in the morning hush,
I am in the graceful rush
Of beautiful birds in circling flight,
I am the starshine of the night.
I am in the flowers that bloom,
I am in a quiet room.
I am in the birds that sing,
I am in each lovely thing.
Do not stand at my grave and cry,
I am not there. I do not die.

不過我把詩寫在這裡, 其實只是為了要紀念我的朋友