ふつうのHaskellプログラミング ふつうのプログラマのための関数型言語入門 ― 2006年06月01日 23時47分41秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
仕事忙しいし、もうサッカーワールドカップ始まるし、ラグビーも代表の試
合があるし、なかなか書けずすみません。
本屋に行ったら、またHaskell本が出ていた。
http://www.amazon.co.jp/exec/obidos/ASIN/4797336021/showshotcorne-22/ref=nosim
青木峰郎著, 山下伸夫監修「ふつうのHaskellプログラミング ふつうのプログ
ラマのための関数型言語入門」
をどうぞ。
会社帰りの電車の中で、160ページくらいまで読みましたけど、わかりやす
く、読みやすい。
監修が山下伸夫さん。知ってる人は知ってる人で(当たり前か)、仲間たちと、
Scheme、SICPや圏論の勉強会やったり、いろいろと活動なさってる。
もう、一昨年かな、スクリプト言語の集まりで、Haskellで書くと、どんど
んバカになるので、とってもいいですなんていって、ウケていた。\(^O^)/
活動状況は、
http://www.sampou.org/
をどうぞ。
---
仕事忙しいし、もうサッカーワールドカップ始まるし、ラグビーも代表の試
合があるし、なかなか書けずすみません。
本屋に行ったら、またHaskell本が出ていた。
http://www.amazon.co.jp/exec/obidos/ASIN/4797336021/showshotcorne-22/ref=nosim
青木峰郎著, 山下伸夫監修「ふつうのHaskellプログラミング ふつうのプログ
ラマのための関数型言語入門」
をどうぞ。
会社帰りの電車の中で、160ページくらいまで読みましたけど、わかりやす
く、読みやすい。
監修が山下伸夫さん。知ってる人は知ってる人で(当たり前か)、仲間たちと、
Scheme、SICPや圏論の勉強会やったり、いろいろと活動なさってる。
もう、一昨年かな、スクリプト言語の集まりで、Haskellで書くと、どんど
んバカになるので、とってもいいですなんていって、ウケていた。\(^O^)/
活動状況は、
http://www.sampou.org/
をどうぞ。
私の最近のお勉強プログラミング ― 2006年06月01日 23時48分12秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
ぼくが昨年暮れくらいかな、お勉強してた&しているのは、Common Lisp,
Prolog, Haskell, Erlang, oz。
Common LispやPrologはAI(人工知能)的手法の温故知新。
最近は、oz。なぜかといえば、改めてお勧めする、
http://www.amazon.co.jp/exec/obidos/ASIN/0262220695/showshotcorne-22/ref=nosim
Seif Haridi, Peter Van-Roy著「Concepts, Techniques, and Models of
Computer Programming」(MIT Press)
が、ozを使っているから。
この本(以下CTMCP)は、ほんといい教科書。詳しく書きたいが、時間なし。
だが、これだけはいえる。買って損なし、学んで損なし。
以前、Perl, Python, Rubyといったスクリプト言語で、プログラミング言語
を設計・実装する世界がアマチャアにも広がったと書いたが、これらが扱うの
は、スタンドアローンの世界。その先にあるのが、並行/並列、分散をいかに
簡単に扱うかの世界。これらの言語にもスレッドやネットの機能はあるが言語
機能としては低水準であって、ライブラリレベルのサポート。言語レベルでの
サポートではない。
プロの研究者の世界では、プログラミング言語のアイデアや実装は、大体
1980年代末までで出尽くしたといえるだろう。だが、並行・並列、分散の言語
のジャンルで、アマチュアが作ったPerl, Python, Rubyのような言語が出てく
るのか、出てくるとしたらどんな言語になるのかなとひそかな期待はあった。
しかし、インターネットのおかげで、Erlangやozのような言語がオープンソ
ースで簡単に手に入る以上、もう作る話じゃないのかも。
CTMCPを読むと、いろんな概念や計算モデルの本質的な部分は何かがよくわ
かるが、単に、Erlang, ozとMozartプログラミングシステムのことを知りた
いなら、
http://www.erlang.org/
Erlang
http://www.mozart-oz.org/
The Mozart Programming System
をどうぞ。
なぜ、並列・並行や分散が簡単に扱える言語のことを思っていたかといえば、
今後5年もすれば、一人で10個のプロセッサを使うのが当たり前になる。マ
ルチコアだったり、SMPだったり、ネットワークに分散したりプロセッサだっ
たりさまざまだろうが、プロセッサは身の回りにごろごろするようになる。
そこで動かすソフトをC, Java, Perl, Rubyなどのシーケンシャルな言語で
書く気にはならない。
大体、「ウェブ進化論」を読んで、Web2.0, シリコンバレー万歳、Google万
歳などと言っている奴に限って、何にもわかってない。
常識で考えて、Googleが数十万個のプロセッサや超大容量のストレージを扱
うのに、いまだにCで書いたり、ナイーブなLinuxを使っているということがあ
り得るだろうか。おれの感覚ではあり得ない。おれの定義によれば、Googleは
広告スポンサーというパトロンから金をもらってサイエンスをやっている会社
だから。早い話が株式公開して民営化された大学の研究室。
となると、つまりは、おぬしが言いたいのは、これじゃろ。
そうそう。せーの。
コネクショニズムの再来じゃ。\(^O^)/
コンカレント・パラレル・ディストリビューテッド・ファンクショナル・ロ
ジック・オブジェクトオリエンテッド・マルチパラダイムLispじゃ。\(^O^)/
---
ぼくが昨年暮れくらいかな、お勉強してた&しているのは、Common Lisp,
Prolog, Haskell, Erlang, oz。
Common LispやPrologはAI(人工知能)的手法の温故知新。
最近は、oz。なぜかといえば、改めてお勧めする、
http://www.amazon.co.jp/exec/obidos/ASIN/0262220695/showshotcorne-22/ref=nosim
Seif Haridi, Peter Van-Roy著「Concepts, Techniques, and Models of
Computer Programming」(MIT Press)
が、ozを使っているから。
この本(以下CTMCP)は、ほんといい教科書。詳しく書きたいが、時間なし。
だが、これだけはいえる。買って損なし、学んで損なし。
以前、Perl, Python, Rubyといったスクリプト言語で、プログラミング言語
を設計・実装する世界がアマチャアにも広がったと書いたが、これらが扱うの
は、スタンドアローンの世界。その先にあるのが、並行/並列、分散をいかに
簡単に扱うかの世界。これらの言語にもスレッドやネットの機能はあるが言語
機能としては低水準であって、ライブラリレベルのサポート。言語レベルでの
サポートではない。
プロの研究者の世界では、プログラミング言語のアイデアや実装は、大体
1980年代末までで出尽くしたといえるだろう。だが、並行・並列、分散の言語
のジャンルで、アマチュアが作ったPerl, Python, Rubyのような言語が出てく
るのか、出てくるとしたらどんな言語になるのかなとひそかな期待はあった。
しかし、インターネットのおかげで、Erlangやozのような言語がオープンソ
ースで簡単に手に入る以上、もう作る話じゃないのかも。
CTMCPを読むと、いろんな概念や計算モデルの本質的な部分は何かがよくわ
かるが、単に、Erlang, ozとMozartプログラミングシステムのことを知りた
いなら、
http://www.erlang.org/
Erlang
http://www.mozart-oz.org/
The Mozart Programming System
をどうぞ。
なぜ、並列・並行や分散が簡単に扱える言語のことを思っていたかといえば、
今後5年もすれば、一人で10個のプロセッサを使うのが当たり前になる。マ
ルチコアだったり、SMPだったり、ネットワークに分散したりプロセッサだっ
たりさまざまだろうが、プロセッサは身の回りにごろごろするようになる。
そこで動かすソフトをC, Java, Perl, Rubyなどのシーケンシャルな言語で
書く気にはならない。
大体、「ウェブ進化論」を読んで、Web2.0, シリコンバレー万歳、Google万
歳などと言っている奴に限って、何にもわかってない。
常識で考えて、Googleが数十万個のプロセッサや超大容量のストレージを扱
うのに、いまだにCで書いたり、ナイーブなLinuxを使っているということがあ
り得るだろうか。おれの感覚ではあり得ない。おれの定義によれば、Googleは
広告スポンサーというパトロンから金をもらってサイエンスをやっている会社
だから。早い話が株式公開して民営化された大学の研究室。
となると、つまりは、おぬしが言いたいのは、これじゃろ。
そうそう。せーの。
コネクショニズムの再来じゃ。\(^O^)/
コンカレント・パラレル・ディストリビューテッド・ファンクショナル・ロ
ジック・オブジェクトオリエンテッド・マルチパラダイムLispじゃ。\(^O^)/
10000人のキャンドルナイト~都筑ヨコハマ ― 2006年06月01日 23時48分48秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
知り合いが、「10000人のキャンドルナイト~都筑ヨコハマ」というイ
ベントに関わっているので、お知らせします。
2006/06/17の20:00から灯りを消しましょうというイベントのようです。
詳しくは、
http://yokohama-tsuzuki.sakura.ne.jp/candle-night/
をどうぞ。
私は、ブラジル戦に備えて、今日も早く寝て、朝、早く起きる練習だ。\(^O^)/
しかし、オーストラリア戦やクロアチア戦は、22:00くらいだよ。
えっ、じゃ、早寝の練習したらまずいじゃん。
そうだよ。夜更かしの練習しないと。
えっ、明日、朝からミーティングなんですけど。^^;
とりあえず、ライトを消して、キャンドルで夜更かしの練習。
絶対、寝ちゃう。\(^O^)/
---
知り合いが、「10000人のキャンドルナイト~都筑ヨコハマ」というイ
ベントに関わっているので、お知らせします。
2006/06/17の20:00から灯りを消しましょうというイベントのようです。
詳しくは、
http://yokohama-tsuzuki.sakura.ne.jp/candle-night/
をどうぞ。
私は、ブラジル戦に備えて、今日も早く寝て、朝、早く起きる練習だ。\(^O^)/
しかし、オーストラリア戦やクロアチア戦は、22:00くらいだよ。
えっ、じゃ、早寝の練習したらまずいじゃん。
そうだよ。夜更かしの練習しないと。
えっ、明日、朝からミーティングなんですけど。^^;
とりあえず、ライトを消して、キャンドルで夜更かしの練習。
絶対、寝ちゃう。\(^O^)/
京王線で人身事故 ― 2006年06月03日 20時11分53秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
今日、京王線で家に帰ろうとしたら、午後3時半ごろ、布田で人身事故とい
うので、国領の手前で止まった。1時間半も電車内。
もう、ほんとに。今日も休日出勤かつ朝8時に会社に行って仕事して早く帰
ったつもりが、これだもんね。
先週、今週、すごいんだもん。おれが朝7時過ぎとか、すごいときは朝6時
半から会社で仕事しているんだもんね。
一体、彼に何があったのか。
ワールドカップのために仕事をやりだめしているんです。\(^O^)/
以前、人身事故のときに電車に乗っていたときは、明大前の手前だったけど、
明大前までのろのろで動いてドアが開いたのですぐ降りて、駅を出て喫茶店で
コーヒー飲んで本読んでそこらのお姉ちゃん10人捕まえてセックスして戻っ
てきたら1時間以上経っていたので電車が動き出していて、乗ったらしばらく
してまた止まったり、のろのろだったりで、でも、なんとか府中まで着いた。
結局1時間半以上、帰るの遅れたね。
おれ的経験則は、京王線で人身事故に遭ったら1時間半遅れ。
最近、京王線も人身事故、多いね。
つい、この前も、朝かな、府中駅でもあったでしょ。
なんで増えたの?
BSE問題で牛肉輸入できないからか。\(^O^)/
最近の食品添加物やらを駆使したテクニックを使えば、人肉でも牛肉として
出せるんじゃないか。\(^O^)/
それにしても、自殺するなら(ま、これが飛び込み自殺だとして)、勝手に一
人で死ねよ。
おかげで今日はフラッグスに食パン買いに行くのが遅れて、食パン、もう売
り切れだったぞ。ぷんぷん。
おい、兄さん。そうやって、あんまり、念を出さないほうがいいぞ。
それは怨念になる。この現象を関西弁でいうと、
「怨念がおんねん」\(^O^)/
それはともかく、この件であれこれ思いをぶちまけると、死んだ奴の霊がか
らんでくる。縁はちょっとしたことでできるからな。
たとえば、今夜あたり、これを読んだ人たちのところにも。。。
コンコン。
わああああああああああああああああああああああああああああああ。
---
今日、京王線で家に帰ろうとしたら、午後3時半ごろ、布田で人身事故とい
うので、国領の手前で止まった。1時間半も電車内。
もう、ほんとに。今日も休日出勤かつ朝8時に会社に行って仕事して早く帰
ったつもりが、これだもんね。
先週、今週、すごいんだもん。おれが朝7時過ぎとか、すごいときは朝6時
半から会社で仕事しているんだもんね。
一体、彼に何があったのか。
ワールドカップのために仕事をやりだめしているんです。\(^O^)/
以前、人身事故のときに電車に乗っていたときは、明大前の手前だったけど、
明大前までのろのろで動いてドアが開いたのですぐ降りて、駅を出て喫茶店で
コーヒー飲んで本読んでそこらのお姉ちゃん10人捕まえてセックスして戻っ
てきたら1時間以上経っていたので電車が動き出していて、乗ったらしばらく
してまた止まったり、のろのろだったりで、でも、なんとか府中まで着いた。
結局1時間半以上、帰るの遅れたね。
おれ的経験則は、京王線で人身事故に遭ったら1時間半遅れ。
最近、京王線も人身事故、多いね。
つい、この前も、朝かな、府中駅でもあったでしょ。
なんで増えたの?
BSE問題で牛肉輸入できないからか。\(^O^)/
最近の食品添加物やらを駆使したテクニックを使えば、人肉でも牛肉として
出せるんじゃないか。\(^O^)/
それにしても、自殺するなら(ま、これが飛び込み自殺だとして)、勝手に一
人で死ねよ。
おかげで今日はフラッグスに食パン買いに行くのが遅れて、食パン、もう売
り切れだったぞ。ぷんぷん。
おい、兄さん。そうやって、あんまり、念を出さないほうがいいぞ。
それは怨念になる。この現象を関西弁でいうと、
「怨念がおんねん」\(^O^)/
それはともかく、この件であれこれ思いをぶちまけると、死んだ奴の霊がか
らんでくる。縁はちょっとしたことでできるからな。
たとえば、今夜あたり、これを読んだ人たちのところにも。。。
コンコン。
わああああああああああああああああああああああああああああああ。
Re: 10000人のキャンドルナイト~都筑ヨコハマ ― 2006年06月03日 20時12分21秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
田村ちゃんから、「10000人のキャンドルナイト~都筑ヨコハマ」は全
国でやるイベントだというメール。ありがとうございました。
キャンドルナイトのサイトは
http://www.candle-night.org/
には、グーグルマップのAPIを使ったマップがあるんですが、
http://event.candle-night.org/
のほうで選ぶほうが、簡単に近辺のイベントがわかります。
なんと、府中でもやるんですね。行ってどれどれ、ドレミソか。
---
田村ちゃんから、「10000人のキャンドルナイト~都筑ヨコハマ」は全
国でやるイベントだというメール。ありがとうございました。
キャンドルナイトのサイトは
http://www.candle-night.org/
には、グーグルマップのAPIを使ったマップがあるんですが、
http://event.candle-night.org/
のほうで選ぶほうが、簡単に近辺のイベントがわかります。
なんと、府中でもやるんですね。行ってどれどれ、ドレミソか。
ジャパン、大大大大大惨敗 ― 2006年06月04日 21時20分37秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
パシフィック・ファイブ・ネーションズ、ラグビー日本代表対トンガ代表。
16-57の大惨敗。トンガは今回の相手の中じゃ強くないほうなのに、ホ
ームでこれじゃ話にならん(怒)。
前半はなんとかよかった。でも、後半はケチョンケチョンバッコンバッコン
にやられ放題。いいとこ、何にもなし。
日本代表のエリサルド監督(ヘッドコーチ)のチーム作り、失敗してるんじゃ
ないか。このまま任せて大丈夫なのか。監督交代はないのか。こんな出来だっ
たら、ワールドカップなんか、間に合わないぜ。
チームとして、ファイトする気持ちが感じられない。それが何より悔しく、
また腹が立つ。体格差はしょうがない。でも、やられてもやられても、すぐ立
ち上がってひたむきに相手に襲いかかる怖さ。それがないとジャパンの体格じ
ゃ、世界と戦えないんが、動きが遅く淡白な守備。攻撃でもブレイクダウンし
た接点に集まるのも遅い。結果、ボールは出ない、ターンオーバーされてばか
り。
北九州でジャパンの試合があったのは、22年ぶり(ああ、また20数年という
おれにとってのキーワードが)。ファンの期待も高く、前売りだけでチケット
6000枚売れて、有料入場者は8000人以上だったのにあまりにひどい内容。あき
れたお客さんは途中で帰り始めた。日本代表の試合でホームで22年ぶりの試合
なのに、お客さんにもう見たくないと思わせ、帰らせてしまう試合ぶり。
国際映像で世界に配信されたのに、あまりに惨めな姿。
ジャパンには相手国のトンガ出身のオト選手がいたが、くやしかっただろう。
オト選手はラグビー日本一の東芝府中にいる。日本に帰化までして日本ラグ
ビーに貢献してくれてる選手。ジャパンの成長をトンガに見せたかっただろう
に、あまりにひどい内容の試合。オト選手個人は、最後までファイトしていた
けれど。
ジャパン、お前ら、ちょっと気合入れなおせ。がんばれ、ジャパン。
---
パシフィック・ファイブ・ネーションズ、ラグビー日本代表対トンガ代表。
16-57の大惨敗。トンガは今回の相手の中じゃ強くないほうなのに、ホ
ームでこれじゃ話にならん(怒)。
前半はなんとかよかった。でも、後半はケチョンケチョンバッコンバッコン
にやられ放題。いいとこ、何にもなし。
日本代表のエリサルド監督(ヘッドコーチ)のチーム作り、失敗してるんじゃ
ないか。このまま任せて大丈夫なのか。監督交代はないのか。こんな出来だっ
たら、ワールドカップなんか、間に合わないぜ。
チームとして、ファイトする気持ちが感じられない。それが何より悔しく、
また腹が立つ。体格差はしょうがない。でも、やられてもやられても、すぐ立
ち上がってひたむきに相手に襲いかかる怖さ。それがないとジャパンの体格じ
ゃ、世界と戦えないんが、動きが遅く淡白な守備。攻撃でもブレイクダウンし
た接点に集まるのも遅い。結果、ボールは出ない、ターンオーバーされてばか
り。
北九州でジャパンの試合があったのは、22年ぶり(ああ、また20数年という
おれにとってのキーワードが)。ファンの期待も高く、前売りだけでチケット
6000枚売れて、有料入場者は8000人以上だったのにあまりにひどい内容。あき
れたお客さんは途中で帰り始めた。日本代表の試合でホームで22年ぶりの試合
なのに、お客さんにもう見たくないと思わせ、帰らせてしまう試合ぶり。
国際映像で世界に配信されたのに、あまりに惨めな姿。
ジャパンには相手国のトンガ出身のオト選手がいたが、くやしかっただろう。
オト選手はラグビー日本一の東芝府中にいる。日本に帰化までして日本ラグ
ビーに貢献してくれてる選手。ジャパンの成長をトンガに見せたかっただろう
に、あまりにひどい内容の試合。オト選手個人は、最後までファイトしていた
けれど。
ジャパン、お前ら、ちょっと気合入れなおせ。がんばれ、ジャパン。
古典的バイナリサーチアルゴリズムにバグ ― 2006年06月05日 09時49分36秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
bajaさんから。
--- ここから ---
こんにちは、bajaといいます。
ちょっと面白い記事を見かけましたのでお知らせします。
古典的Binary Searchのアルゴリズムにバグがあったという話がGoogleReserch
の記事に載っていました。
実際SunのJDKのインプリも間違っていて修正されているようです。
今はプログラムの仕事はしていないので勘違いがあるかもしれませんが、サー
チをする対象の配列の数が2の30乗(10億)を超えてしまうとうまく動かない、
ということでしょうか?
それにしてもずいぶん長い間見つからなかったものですね。
--- ここまで ---
その記事は、
http://googleresearch.blogspot.com/
GoogleResearchのブログ
にある、
Extra, Extra - Read All About It: Nearly All Binary Searches and
Mergesorts are Broken
です。
バグは、バイナリサーチの分割点のピボットを計算するところ
int mid =(low + high) / 2;
で、low + highがオーバーフローするってことです。
普通これは問題にならないんです。いまのほとんどのマシンは、intが32bit
だから、このアルゴリズムで、2 ^ 31 - 1というintの最大値を超えるような
ことはないから。
でも、著者Joshua Blochが遭遇したのは、最大値を超えた現象だったんです
ね。
Joshua Blochさんって聞いたことあるなあと思ったら、Effective Javaの著
者ですね。Sunにいたはずなのに、Googleに移ってたんですね。調べたら、
2004年ですね。
http://www.theserverside.com/news/thread.tss?thread_id=27163
Joshua Bloch leaves Sun and joins Google
なお、「Effective Java」は、Javaプログラマ必読です。参考になることは
多かったです。Effectiveシリーズはほかもなかなかよくて、ぼくは、
「Effective C++」「More Effective C++」も勉強になりました。
http://www.amazon.co.jp/exec/obidos/ASIN/4894714361/showshotcorne-22/ref=nosim
ジョシュア・ブロック著、 柴田芳樹訳「Effective Java プログラミング言語
ガイド」
http://www.amazon.co.jp/exec/obidos/ASIN/4756118089/showshotcorne-22/ref=nosim
Scott Meyers著、吉川邦夫訳「Effective C++ 【改訂第2版】」
http://www.amazon.co.jp/exec/obidos/ASIN/4756118534/showshotcorne-22/ref=nosim
Scott Meyers著、安村通晃、飯田朱美、伊賀聡一郎訳「More Effective C++―
最新35のプログラミング技法」
Googleは面白いこと、サイエンスをやってるから、いい人材がどんどん集ま
ってますね。ぼくが知ってるだけでも、Unix屋のRob Pike、Lisp屋のPeter
Norvigとかね。
Microsoftは元々研究やサイエンスはやってなくて、その後Microsoft
Researchを作ったけど、やっぱ、Microsoftにお世話になりたくない人は、
Googleなんでしょう。
Microsoftはどうしても商売ばっかり、それも独禁法違反のヤクザ会社のイ
メージがあるし(いま必死でテレビCMを流していいイメージを作ろうとしてい
ます)。Googleは大学の研究室の延長みたいな感じがしますからね。
そんなGoogleのやり方を、単にベスト&ブライテスト戦略だといってしまう
と底が浅いかなと。「Web進化論」はそんな臭いがぷんぷんします。^-^;
http://www.amazon.co.jp/exec/obidos/ASIN/4480062858/showshotcorne-22/ref=nosim
梅田望夫著「ウェブ進化論 本当の大変化はこれから始まる」
Peter NorvigのAIプログラミングの本には、SICPなどにあるバグの話が出て
ます。これも今回のと似た話で、みんな長い間そのまま使ってきたアルゴリズ
ムで、Norvigさんが指摘したそうです。また時間ができたら、書きますね。
この記事に出ている「Programming Pearls」の初版は、以前、「プログラム
設計の着想」として翻訳が出ていました。いまは、
http://www.amazon.co.jp/exec/obidos/ASIN/4894712369/showshotcorne-22/ref=nosim
ジョンベントリー著、小林健一郎訳「珠玉のプログラミング―本質を見抜いた
アルゴリズムとデータ構造」
です。
この本は、ソフトウェアをやる以上、必読書です。問題の捉え方、発想がい
かに大事か痛感させられます。幾何学で補助線一本うまく引くだけで問題が簡
単になるように、問題をどう捉えるか、その発想ひとつで、アホみたいに簡単
に解けることがあることを気づかせてくれます。
この記事にあるように、merge sortもだめだろうというんだから、ピボット
を同じ手法で選んでいるquick sortなど、分割統治型のものは、たぶん、全部、
だめね(もちろんピボットの選び方はいろいろあるから、影響ないものもある
だろう)。
それにしてもGoogle的世界では、2^30 の要素数が当たり前になってきてる
のね。すると、こういう何十年も見つからないバグが出ちゃうんですね。
バイオインフォマティクスも超大量のデータを扱うので、気をつけよう。
ついでといってはなんですが、先の記事の下にある
Statistical machine translation live
も面白い話で、この統計的機械翻訳という手法は、いままでの翻訳アルゴリズ
ムよりかなりいい訳が出るというので注目されています。
いま出ている日経サイエンス2006年7月号には、「ここまできた機械翻訳」
という記事があり、この手法の解説が載ってます。もちろん、「Statistical
machine translation live」を書いたFranz Ochの名前も出てます。というか、
彼がこの手法の開拓者です。
この前、コンピュータ将棋でBonanzaというメモリとプロセッサパワーさえあ
れば、比較的単純な手法でやるプログラムが優勝しましたが、統計的機械翻訳
の手法も似てます。
例が多ければだんだんよくなるという、大数の法則というか、中心極限定理
というか。\(^O^)/
だんだん、人間がやることなくなってくるよなあ。
http://www.amazon.co.jp/exec/obidos/ASIN/415011501X/showshotcorne-22/ref=nosim
カート・ヴォネガット・ジュニア著、浅倉久志訳「プレイヤー・ピアノ」(ハ
ヤカワ文庫SF)
をまた買ってきて読んでみようかな。
ほかに、この号には、「トポロジカル量子コンピューター」の記事もあって、
これはまた奇想天外な面白い話。意外なことに?、Microsoftがこの研究に力
を入れています。
---
bajaさんから。
--- ここから ---
こんにちは、bajaといいます。
ちょっと面白い記事を見かけましたのでお知らせします。
古典的Binary Searchのアルゴリズムにバグがあったという話がGoogleReserch
の記事に載っていました。
実際SunのJDKのインプリも間違っていて修正されているようです。
今はプログラムの仕事はしていないので勘違いがあるかもしれませんが、サー
チをする対象の配列の数が2の30乗(10億)を超えてしまうとうまく動かない、
ということでしょうか?
それにしてもずいぶん長い間見つからなかったものですね。
--- ここまで ---
その記事は、
http://googleresearch.blogspot.com/
GoogleResearchのブログ
にある、
Extra, Extra - Read All About It: Nearly All Binary Searches and
Mergesorts are Broken
です。
バグは、バイナリサーチの分割点のピボットを計算するところ
int mid =(low + high) / 2;
で、low + highがオーバーフローするってことです。
普通これは問題にならないんです。いまのほとんどのマシンは、intが32bit
だから、このアルゴリズムで、2 ^ 31 - 1というintの最大値を超えるような
ことはないから。
でも、著者Joshua Blochが遭遇したのは、最大値を超えた現象だったんです
ね。
Joshua Blochさんって聞いたことあるなあと思ったら、Effective Javaの著
者ですね。Sunにいたはずなのに、Googleに移ってたんですね。調べたら、
2004年ですね。
http://www.theserverside.com/news/thread.tss?thread_id=27163
Joshua Bloch leaves Sun and joins Google
なお、「Effective Java」は、Javaプログラマ必読です。参考になることは
多かったです。Effectiveシリーズはほかもなかなかよくて、ぼくは、
「Effective C++」「More Effective C++」も勉強になりました。
http://www.amazon.co.jp/exec/obidos/ASIN/4894714361/showshotcorne-22/ref=nosim
ジョシュア・ブロック著、 柴田芳樹訳「Effective Java プログラミング言語
ガイド」
http://www.amazon.co.jp/exec/obidos/ASIN/4756118089/showshotcorne-22/ref=nosim
Scott Meyers著、吉川邦夫訳「Effective C++ 【改訂第2版】」
http://www.amazon.co.jp/exec/obidos/ASIN/4756118534/showshotcorne-22/ref=nosim
Scott Meyers著、安村通晃、飯田朱美、伊賀聡一郎訳「More Effective C++―
最新35のプログラミング技法」
Googleは面白いこと、サイエンスをやってるから、いい人材がどんどん集ま
ってますね。ぼくが知ってるだけでも、Unix屋のRob Pike、Lisp屋のPeter
Norvigとかね。
Microsoftは元々研究やサイエンスはやってなくて、その後Microsoft
Researchを作ったけど、やっぱ、Microsoftにお世話になりたくない人は、
Googleなんでしょう。
Microsoftはどうしても商売ばっかり、それも独禁法違反のヤクザ会社のイ
メージがあるし(いま必死でテレビCMを流していいイメージを作ろうとしてい
ます)。Googleは大学の研究室の延長みたいな感じがしますからね。
そんなGoogleのやり方を、単にベスト&ブライテスト戦略だといってしまう
と底が浅いかなと。「Web進化論」はそんな臭いがぷんぷんします。^-^;
http://www.amazon.co.jp/exec/obidos/ASIN/4480062858/showshotcorne-22/ref=nosim
梅田望夫著「ウェブ進化論 本当の大変化はこれから始まる」
Peter NorvigのAIプログラミングの本には、SICPなどにあるバグの話が出て
ます。これも今回のと似た話で、みんな長い間そのまま使ってきたアルゴリズ
ムで、Norvigさんが指摘したそうです。また時間ができたら、書きますね。
この記事に出ている「Programming Pearls」の初版は、以前、「プログラム
設計の着想」として翻訳が出ていました。いまは、
http://www.amazon.co.jp/exec/obidos/ASIN/4894712369/showshotcorne-22/ref=nosim
ジョンベントリー著、小林健一郎訳「珠玉のプログラミング―本質を見抜いた
アルゴリズムとデータ構造」
です。
この本は、ソフトウェアをやる以上、必読書です。問題の捉え方、発想がい
かに大事か痛感させられます。幾何学で補助線一本うまく引くだけで問題が簡
単になるように、問題をどう捉えるか、その発想ひとつで、アホみたいに簡単
に解けることがあることを気づかせてくれます。
この記事にあるように、merge sortもだめだろうというんだから、ピボット
を同じ手法で選んでいるquick sortなど、分割統治型のものは、たぶん、全部、
だめね(もちろんピボットの選び方はいろいろあるから、影響ないものもある
だろう)。
それにしてもGoogle的世界では、2^30 の要素数が当たり前になってきてる
のね。すると、こういう何十年も見つからないバグが出ちゃうんですね。
バイオインフォマティクスも超大量のデータを扱うので、気をつけよう。
ついでといってはなんですが、先の記事の下にある
Statistical machine translation live
も面白い話で、この統計的機械翻訳という手法は、いままでの翻訳アルゴリズ
ムよりかなりいい訳が出るというので注目されています。
いま出ている日経サイエンス2006年7月号には、「ここまできた機械翻訳」
という記事があり、この手法の解説が載ってます。もちろん、「Statistical
machine translation live」を書いたFranz Ochの名前も出てます。というか、
彼がこの手法の開拓者です。
この前、コンピュータ将棋でBonanzaというメモリとプロセッサパワーさえあ
れば、比較的単純な手法でやるプログラムが優勝しましたが、統計的機械翻訳
の手法も似てます。
例が多ければだんだんよくなるという、大数の法則というか、中心極限定理
というか。\(^O^)/
だんだん、人間がやることなくなってくるよなあ。
http://www.amazon.co.jp/exec/obidos/ASIN/415011501X/showshotcorne-22/ref=nosim
カート・ヴォネガット・ジュニア著、浅倉久志訳「プレイヤー・ピアノ」(ハ
ヤカワ文庫SF)
をまた買ってきて読んでみようかな。
ほかに、この号には、「トポロジカル量子コンピューター」の記事もあって、
これはまた奇想天外な面白い話。意外なことに?、Microsoftがこの研究に力
を入れています。
ゲイリー・バートン ― 2006年06月08日 23時06分46秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
ゲイリーとのデュオのやつもバラ売り、出てますよ。渋谷のHMVやタワーで
普通に並んでます。
バークリーについては、実は楽器(学科)によってもけっこう違うし、同じ
学科でも主任教授が替わるとメソッドががらっと変わったりもします。
いずれにせよ、あれはミュージシャンのレベルの底上げには役立ちましたが、
突き抜ける奴というのはそういうのはあんまり関係なくて、やっぱりそうそ
う出てきません。結局、底上げされた結果、そこそこできる人は激増し、で
も凄い人の数は変わらず、相対的に目立たなくなっただけではないかと。
ちなみに山下邦彦氏、いちどお会いしましたけど、かなり強烈なキャラでし
た。でも音楽理論にはおそろしく通じていて、日本で唯一キース・ジャレッ
トと対等に音楽の話ができる評論家です。
ぶる
*****************************************************
My Website: http://www.asahi-net.or.jp/~ib9s-ysi/
My blog:http://blog.livedoor.jp/syoshii/
コラム連載中:http://www.nkym.net/
===
標題: Re: ゲイリー・バートン
---
ぶるさん、Thanks. 今度、渋谷行ったとき、探してみます。
中村(show)
---
ゲイリーとのデュオのやつもバラ売り、出てますよ。渋谷のHMVやタワーで
普通に並んでます。
バークリーについては、実は楽器(学科)によってもけっこう違うし、同じ
学科でも主任教授が替わるとメソッドががらっと変わったりもします。
いずれにせよ、あれはミュージシャンのレベルの底上げには役立ちましたが、
突き抜ける奴というのはそういうのはあんまり関係なくて、やっぱりそうそ
う出てきません。結局、底上げされた結果、そこそこできる人は激増し、で
も凄い人の数は変わらず、相対的に目立たなくなっただけではないかと。
ちなみに山下邦彦氏、いちどお会いしましたけど、かなり強烈なキャラでし
た。でも音楽理論にはおそろしく通じていて、日本で唯一キース・ジャレッ
トと対等に音楽の話ができる評論家です。
ぶる
*****************************************************
My Website: http://www.asahi-net.or.jp/~ib9s-ysi/
My blog:http://blog.livedoor.jp/syoshii/
コラム連載中:http://www.nkym.net/
===
標題: Re: ゲイリー・バートン
---
ぶるさん、Thanks. 今度、渋谷行ったとき、探してみます。
中村(show)
Re: 京王線で人身事故&閉じ込められたときのウンコとシッコ ― 2006年06月08日 23時07分14秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
昨日電車が止まったというのは布田だったのか。出かけようと外へ出て
少し歩いたら、近所のおっさんが電話で大声出して京王が止まっていると
いうので、また人身かと思っていたところ。
4月あたりだったか、朝まで動かなかった時は小田急と南武線の振替輸送
で帰宅したけど、その前に引っかかったのは電車に1時間閉じ込められたま
まで動かず悲惨だった。この前の朝の府中駅での人身事故はまだ通勤時間
帯で、その瞬間悲鳴と共に皆顔を背けたという。警察では自殺としたよう
だけど、ホームにいたおぢさんとぶつかって線路に転落して立ち上がるこ
とができず、そのままという説もあるだよ。人身事故が増えたせいか先日
から各駅のホーム整理員を一斉に募集し始めてる。でも、人身事故という
と三鷹がやたら多かったというイメージがあるんだけど。
それにしても、電車が止まってしまった際にトイレ行きたくなったらえ
らいこっちゃ。よく乗車する時に我慢したまま飛び乗っていたけど、最近
では絶対に我慢することなく済ませてから乗るようにしている。
穂高
===
標題: Re: 京王線で人身事故&閉じ込められたときのウンコとシッコ
---
この前の府中で亡くなった人は、たしか若い女性?でしたよね。
おっさんとぶつかって弾き飛ばされたみたいになったんだろうか。線路から
ホームってけっこう高いらしいから、すぐ上がれなかったんでしょうかね。で
も、非常ボタンを誰も押せなかったの?
そうそう。トイレ、トイレ。
おれ、いっつも閉じ込められたときに、みんな、ウンコやシッコはどうして
るんだろうと思うのね。
おれなんか、おしっこ近いから、気が気じゃないよ。\(^O^)/
この数日、エレベータ事故が話題ですよね。死亡事故も起きたり、閉じ込め
られたり。
もう、エレベータも怖くて乗れないかも。\(^O^)/
で、思い出したのが、ヤノピさんこと、山下洋輔さんの昔のエッセイに出て
きた話。
洋輔さんが、子供のころ、北九州市に住んでいて(でも、洋輔さんが子供の
ころだから、まだ5市合併による北九州市誕生前かも)、友達に、突発性外出
性排便脅迫症とかなんとかいう名前の病気の奴がいたというのがあった。病名
は洋輔さんが面白がってつけたんだと思うけど。
洋輔さんのエッセイによると、北九州じゃ、ウンコを漏らしちゃうのを「ば
りかぶる」、シッコを漏らしちゃうのを「しかぶる」と使い分けてるように書
いてあったと記憶があるが、おれのいた門司じゃ、どっちも「しかぶる」だっ
て。
ま、ミソもクソも一緒ということで。\(^O^)/
さて、突発性外出性排便脅迫症。これ、すごいんですよね。
この友人、家を出て、駅に向かって歩いていると、突然、「あーーーーーー
ー、駅と家とどっちが近い? どっちが近い?」などとわめき出す。もう、ウ
ンコがしたくなってて、駅のトイレと家のトイレ、どっちが近いか気が気じゃ
ないわけです。
で、「家!」となれば、家に帰ってしまう。\(^O^)/
この症状が、たまたま、友達の家に泊まりに行って帰ろうとしたときに出て
しまえば、「あーーーーーーー、駅と家とどっちが近い? どっちが近い?」
となって、何日も友達の家に泊まってしまうんです。\(^O^)/
読んだときは、げらげら笑った。
載っていたのは、ほんとに初期のエッセイだと思うから、「ピアニストを笑
え」近辺じゃないかな。違ってたら、すみません。
http://www.amazon.co.jp/exec/obidos/ASIN/4101233012/showshotcorne-22/ref=nosim
山下洋輔著「ピアニストを笑え」
http://www.amazon.co.jp/exec/obidos/ASIN/4101233020/showshotcorne-22/ref=nosim
山下洋輔著「ピアニストにご用心!」
http://www.amazon.co.jp/exec/obidos/ASIN/4103437022/showshotcorne-22/ref=nosim
山下洋輔著「ピアニストに手を出すな!」
18歳か19歳くらいで、おれ、洋輔さんの文章はすごく勉強になったんで
すよね。筒井さんの文体とは、また違う世界で、このお二人と、平岡正明さん、
あとは井上ひさしさんかな。文章とは何かを考えさせられたのは。ま、そんな
こと言い出すと、大江さんとかマルケスとかボルヘスとかいろいろあるけど。
---
昨日電車が止まったというのは布田だったのか。出かけようと外へ出て
少し歩いたら、近所のおっさんが電話で大声出して京王が止まっていると
いうので、また人身かと思っていたところ。
4月あたりだったか、朝まで動かなかった時は小田急と南武線の振替輸送
で帰宅したけど、その前に引っかかったのは電車に1時間閉じ込められたま
まで動かず悲惨だった。この前の朝の府中駅での人身事故はまだ通勤時間
帯で、その瞬間悲鳴と共に皆顔を背けたという。警察では自殺としたよう
だけど、ホームにいたおぢさんとぶつかって線路に転落して立ち上がるこ
とができず、そのままという説もあるだよ。人身事故が増えたせいか先日
から各駅のホーム整理員を一斉に募集し始めてる。でも、人身事故という
と三鷹がやたら多かったというイメージがあるんだけど。
それにしても、電車が止まってしまった際にトイレ行きたくなったらえ
らいこっちゃ。よく乗車する時に我慢したまま飛び乗っていたけど、最近
では絶対に我慢することなく済ませてから乗るようにしている。
穂高
===
標題: Re: 京王線で人身事故&閉じ込められたときのウンコとシッコ
---
この前の府中で亡くなった人は、たしか若い女性?でしたよね。
おっさんとぶつかって弾き飛ばされたみたいになったんだろうか。線路から
ホームってけっこう高いらしいから、すぐ上がれなかったんでしょうかね。で
も、非常ボタンを誰も押せなかったの?
そうそう。トイレ、トイレ。
おれ、いっつも閉じ込められたときに、みんな、ウンコやシッコはどうして
るんだろうと思うのね。
おれなんか、おしっこ近いから、気が気じゃないよ。\(^O^)/
この数日、エレベータ事故が話題ですよね。死亡事故も起きたり、閉じ込め
られたり。
もう、エレベータも怖くて乗れないかも。\(^O^)/
で、思い出したのが、ヤノピさんこと、山下洋輔さんの昔のエッセイに出て
きた話。
洋輔さんが、子供のころ、北九州市に住んでいて(でも、洋輔さんが子供の
ころだから、まだ5市合併による北九州市誕生前かも)、友達に、突発性外出
性排便脅迫症とかなんとかいう名前の病気の奴がいたというのがあった。病名
は洋輔さんが面白がってつけたんだと思うけど。
洋輔さんのエッセイによると、北九州じゃ、ウンコを漏らしちゃうのを「ば
りかぶる」、シッコを漏らしちゃうのを「しかぶる」と使い分けてるように書
いてあったと記憶があるが、おれのいた門司じゃ、どっちも「しかぶる」だっ
て。
ま、ミソもクソも一緒ということで。\(^O^)/
さて、突発性外出性排便脅迫症。これ、すごいんですよね。
この友人、家を出て、駅に向かって歩いていると、突然、「あーーーーーー
ー、駅と家とどっちが近い? どっちが近い?」などとわめき出す。もう、ウ
ンコがしたくなってて、駅のトイレと家のトイレ、どっちが近いか気が気じゃ
ないわけです。
で、「家!」となれば、家に帰ってしまう。\(^O^)/
この症状が、たまたま、友達の家に泊まりに行って帰ろうとしたときに出て
しまえば、「あーーーーーーー、駅と家とどっちが近い? どっちが近い?」
となって、何日も友達の家に泊まってしまうんです。\(^O^)/
読んだときは、げらげら笑った。
載っていたのは、ほんとに初期のエッセイだと思うから、「ピアニストを笑
え」近辺じゃないかな。違ってたら、すみません。
http://www.amazon.co.jp/exec/obidos/ASIN/4101233012/showshotcorne-22/ref=nosim
山下洋輔著「ピアニストを笑え」
http://www.amazon.co.jp/exec/obidos/ASIN/4101233020/showshotcorne-22/ref=nosim
山下洋輔著「ピアニストにご用心!」
http://www.amazon.co.jp/exec/obidos/ASIN/4103437022/showshotcorne-22/ref=nosim
山下洋輔著「ピアニストに手を出すな!」
18歳か19歳くらいで、おれ、洋輔さんの文章はすごく勉強になったんで
すよね。筒井さんの文体とは、また違う世界で、このお二人と、平岡正明さん、
あとは井上ひさしさんかな。文章とは何かを考えさせられたのは。ま、そんな
こと言い出すと、大江さんとかマルケスとかボルヘスとかいろいろあるけど。
かにゴールキーパー ― 2006年06月09日 07時20分34秒
ASAHIネット(http://www.asahi-net.or.jp)のjouwa/salonからホットコーナー(http://www.asahi-net.or.jp/~ki4s-nkmr/ )に転載したものから。
---
以前から気になっていたが、忙しさで、つい、ほったらかし。しかーし、サ
ッカーワールドカップ開催前に紹介してないと、日本代表が負けそうなので、
緊急告知(嗤)。
それは、映画「かにゴールキーパー」\(^O^)/
緊急告知といいながら、先月紹介しなかったから、もう、池袋や大阪では上
演終了みたい。^^;
ぼくも、まだ、観てないんです。行ってから感想書こうと思ったら、行く暇
ないんだもんね(泣)。しかし、久々にいい、スカタン映画かなと。
これ以前に観たスカタン映画は、「クロマティ高校」。そういえば、少年マ
ガジンの連載もしれ~っと終わりましたね。
「かにゴールキーパー」のあらすじ読んだだけで泣けて笑えるね。\(^O^)/
惚れた女を立ち直らせるために、かにみそを売って金を作る! だが、女は
そんな金をぱっぱと使って立ち直る気配なし! いいなあ、人生の不条理!
そして、ここが一番重要なことだから、よく聞け。
いまどき、脳年齢、脳トレーニングなんぞにうつつを抜かしている太平楽の
日本人よ。お前ら、愛する者のために自分の脳みそ売って金を作ることができ
るか!
ま、できなくても、全然OK!\(^O^)/
つーことで、おれ的には、「かにのヒューマニティは、かにみそ!」。
http://www.kani-gk.com/
かにゴールキーパー
劇場情報をみると、渋谷ではいまやってるのか。DVDももう出てるのね。笹
塚にあるかな。
ああ、そういえば、映画版トリック2も上映始まる。そのあと、MI3だもん
ね。いまだ、ダ・ヴィンチ・コード観に行かず。
---
以前から気になっていたが、忙しさで、つい、ほったらかし。しかーし、サ
ッカーワールドカップ開催前に紹介してないと、日本代表が負けそうなので、
緊急告知(嗤)。
それは、映画「かにゴールキーパー」\(^O^)/
緊急告知といいながら、先月紹介しなかったから、もう、池袋や大阪では上
演終了みたい。^^;
ぼくも、まだ、観てないんです。行ってから感想書こうと思ったら、行く暇
ないんだもんね(泣)。しかし、久々にいい、スカタン映画かなと。
これ以前に観たスカタン映画は、「クロマティ高校」。そういえば、少年マ
ガジンの連載もしれ~っと終わりましたね。
「かにゴールキーパー」のあらすじ読んだだけで泣けて笑えるね。\(^O^)/
惚れた女を立ち直らせるために、かにみそを売って金を作る! だが、女は
そんな金をぱっぱと使って立ち直る気配なし! いいなあ、人生の不条理!
そして、ここが一番重要なことだから、よく聞け。
いまどき、脳年齢、脳トレーニングなんぞにうつつを抜かしている太平楽の
日本人よ。お前ら、愛する者のために自分の脳みそ売って金を作ることができ
るか!
ま、できなくても、全然OK!\(^O^)/
つーことで、おれ的には、「かにのヒューマニティは、かにみそ!」。
http://www.kani-gk.com/
かにゴールキーパー
劇場情報をみると、渋谷ではいまやってるのか。DVDももう出てるのね。笹
塚にあるかな。
ああ、そういえば、映画版トリック2も上映始まる。そのあと、MI3だもん
ね。いまだ、ダ・ヴィンチ・コード観に行かず。
最近のコメント