2001-11-02
λ. 朝鮮語
WORKSHOPは無事(?)終了。
λ. 読んだ本
- 『遊戯王 26 − 「神」が選びし者』
- 高橋和希[著]
λ. wstring
localeヘッダが無いのは痛いなぁ。たしかlibstdc++-v3には入っていたと思います。でも、RubyはNative threadをサポートしていない事ですし、確かにsetlocaleで十分っぽいですね。
λ. mscのThread
すっげー
2003-11-02
λ. What Languages Fix
おまぬけ活動日誌(2003-10-31) より。面白すぎ。ついでに幾つか考えてみる。
- ML
- Lisp is not type-safe
- Haskell
- ML is not pure
- Clean
- Monads are scary
【2007-02-15 追記】
らいおんの隠れ家 - ポール・グレアム「プログラミング言語が解決するもの」 で日本語訳されている。
あと、Cleanについて「Monads are scary」と書いたが、
CleanとHaskellの宣言スタイルの違い と
Concurrent Clean : FGRS vs. lambda calculus
あたりの話から、それは本質ではない気がしてきた。
λ. 借りた本
- 小説すばる 2003年2月号
- -
- 『シャイニング 上』
- スティーヴン・キング(Stephen King)[著], 深町 真理子 [訳]
- 『R.O.D 第5巻』
- 倉田 英之 [著], 羽音 たらく [イラスト]
- 『水素エコノミー — エネルギー・ウェブの時代』
- ジェレミー・リフキン(Jeremy Rifkin) [著], 柴田 裕之 [訳]
λ. 順序対
順序対(a,b)を集合にエンコードする時には通常{a,{a,b}}という表現を使うそうだ。けど、この表現だと a = {b,1}, b = {a,0} とおいたときに、(a,0) = {a,{a,0}} = {a,b} = {{b,1},b} = {b,{b,1}} = (b,1) となってしまい、(a,0)と(b,1)の区別がつかなくなってしまう。well-founded な集合だけを扱ってる場合には問題にならないけど、これってどうなんだろう?
……というようなことを、例の集合クラスでストリームとかを表現してて思った。
【2005-10-23追記: この件に関して、白のカピバラの逆極限 S144-3のnucさんがより詳しいことを書いている。http://d.hatena.ne.jp/nuc/20051007/p4 と http://d.hatena.ne.jp/nuc/searchdiary?word=*[順序対] を参照のこと。】
2007-11-02
λ. 博士号の取り方。
参考になる(+1)。 そのうち博士号を取ることにするかも知れないので、そのときには参考にしたい。 まだ、「足の裏のご飯粒」とまでは思えないけど、比較的簡単に取れるものなら取っておきたいとは思うしね。
λ. “Metamorphic Programming Extension to Haskell” by Martin Erwig
私が Metamorphism という言葉を初めて聞いたのは、昔の Lambda the Ultimate のGibbons: Metamorphisms and streaming algorithmsという記事だった。 そこでは以下のように紹介されていて、hylomorphismの逆なのかと思っていたが、この論文のはちょっと感じが違うなぁ。
Unfolds generate data structures, and folds consume them. A hylomorphism is a fold after an unfold, generating then consuming a virtual data structure. A metamorphism is the opposite composition, an unfold after a fold; typically,it will convert from one data representation to another.
この論文の動機はADT(Abstract Data Types)に対して fold を定義すること。
(後で書くかも)
ψ 小澤 [Native threadをサポートしていないと、なぜsetlocaleで十分なのかよくわからないのですが、どういう..]
ψ さかい [Rubyのスレッドは、Rubyレベルだとpreemptiveですが、Cレベルではnon-preemptiveなので、..]
ψ 小澤 [なるほど、確かに十分っぽいですね。localeヘッダがある場合は、std::codecvtを使うようにしようと思って..]