ここ最近のこと
1月24日 ヒヤマセミナーに行って来た。
return0さんのまとめ:Diary?::2009-01-24
檜山さんの補足:
セミナー補足:関数コードの実行エンジン - 檜山正幸のキマイラ飼育記
セミナー補足:報告記事とか後悔とか独り言とか - 檜山正幸のキマイラ飼育記
セミナー補足:教科書・参考書 - 檜山正幸のキマイラ飼育記
おもしろい閉圏、弱いラムダ計算、弱い論理 - 檜山正幸のキマイラ飼育記
タケヲさんのまとめ:2009-01-25
Snowglobe Models
Snowglobe Models | The n-Category Café
リンクを辿って見つけたもの
インタプリタとコンパイラ - sumiiの日記
インタプリタとコンパイラですか…
「コンパイラは高級言語のプログラムをまとめてマシン語に翻訳します。一方で、インタプリタは一ステップごとに翻訳しながら実行します。」等と書いてあって、子供心に不思議に(というか何かおかしいと)思いました。
うっ!!
ハッカーと画家 コンピュータ時代の創造者たち ポール グレアム (著), 川合 史朗 (翻訳)
ポール・グレアムThe Hundred-Year Language
実行することができない者が教えるのだ、という謂は正しくない (私の知る最高のハッカーの幾人かは大学教授だ)。しかし、教えることのできるものが実行できないことがあるというのは正しいだろう。リサーチは厳しいカーストの制限を受ける。どんな学問領域でも、研究して良いテーマとそうでないテーマがある。残念ながら、研究して良いテーマと禁じられたテーマの差異は、良い結果を得るためにどれだけ重要かではなく、論文にしたときにどれだけ知的に見えるかということで測られることが多い。最も極端なのはおそらく文学だろう。文学を研究している人々が、実際に文学を創り出している人々にちょっとでも役に立つことを言うことはほとんどない。
科学ではまだ状況はましだが、研究でやれることと良い言語を作ることの共通部分はがっかりするほど小さい。 (Olin Shiversがかつてこのことに対する不満を雄弁に語っていた)。例えば、型は尽きせぬ論文の宝庫のようだが、静的型付けは本物のマクロを排除するように見える---そして私の意見では、本物のマクロの無い言語なんて使うに値しない
論文になりやすいだけの理由で研究されていることもあるよね。
どんなプログラムを書きたいだろう。なるべく少ない手間で書けるものだろう。但し、あなたが現在使いなれた言語の影響を無くした上で、少ない手間ということを考える必要がある。そのような影響はあまりに深くて、それを乗り越えるには大きな努力が必要だ。我々のような怠惰な生物にとって、プログラムを最低限の努力で表現する方法は明白だと思うかもしれない。実際は、何が可能かという点についての我々の考えは、我々が考える言語によってあまりに制限されている。だから、プログラムの簡単な記述法とは、当初予想もしなかったものになるだろう。自然にそこに到るようなものではなく、発見しなければならないのだ。
有効な手法のひとつは、プログラムの長さを、それを書くのに必要な仕事量の目安に使うことだ。ここでいう長さとは、もちろん文字数じゃなくて、構文要素の長さだ。基本的には構文木の大きさということになる。最も短いプログラムを書くのが最も楽だというのは必ずしも正しくないだろうが、なんとなく楽な方法というのを探し求めるよりは、明確な目標となり得るだろう。すると、言語設計のアルゴリズムはこんなふうになる:プログラムを見て、これをもっと短く書く方法は無いかと考えるのだ。
どんな道具で問題に迫るかってことが物理にも言えるような気がする。ファインマンダイアグラムは相互作用を記述するには簡潔だし、僕の場合、微分形式はベクトル解析より簡潔だ。
別のエッセイRevenge of the Nerdsで、言語間比較を行っていて、
Lisp>Ruby,Perl>Python>>Java,C
みたいな結論をだしていた。
Perl好きとしてはうれしい結論だ。C言語の演習の手伝い*1をしているんだけど、「Cってめんどくさいなぁ」と思っていたし、Perlの感覚でアドバイスしたら、Errorがでて、「えー、なんで?それくらいコンパイラでなんとかしてよ。」と思ったことが多々。「型を決めないといけないってめんどくさいな」とか思ったことも多々。
あと、Javaで形態素解析をしている人のプログラムを見て、「なんてめんどくさいんだ」と思ったことも。でも、その研究室ではPerlを使っている人がいなかったらしい。
最近、ちょっとLispに興味が出てきたかも。でもRubyもすごいんだね。
おもしろそう。
Classical versus Quantum Computation
学部から去年くらいまでは、「幾何と物理」が自分のテーマだったんだけど、最近は「量子と情報と代数と圏論」に興味が移っているんだよね。今年度は今までの「幾何と物理」で勉強してきたことを論文にしていけたらいいなぁと思っている。でも来年からは、「量子と情報と代数と圏論」で何か書けるようになっていたいって言ってみる。
1月25日 友達が開いた高井戸ハウスパーティ行って来た。カタン面白い。
酒井さん経由http://www.tom.sfc.keio.ac.jp/~sakai/d/?date=20090125でEvernoteとなるものを知る。おもしろそうだ。
研究論文を書いているのだけれど、書いてくるとだんだん欲が出てきて、なかなか完成しない。書いている内容は特殊相対論的完全流体の変分法だけど、特殊をとって一般相対論的にしようと思う。本当の相対論だと流体自身の重力場を考慮しなくちゃいけないんだけど、その影響は小さいとして無視する予定。
で研究に関わるようになったので、相対論をゲージ理論の枠組みでどう捕らえるかみたいなことを近々書いてみようかなと思ったりして、考察中。意外とこういうこと書いてないんだよね。Ashtekar Variablesについての論文Ashtekar Variables in Classical General Realtivityなんかがそういうスタンスで書いてあるんだけど、自分にとってはあんまりfamiliarな感じじゃない。fiber bundleとか使って説明してほしい。てなことで、まとまりそうだったら、書いてみるかも。
*1:もっと適任者がいると訴えたのだけれど、来年はどうなるのかな?