ボクが関数型言語に興味をもったわけ ~「ハッカーと画家」と出遭って夢みた、ボクが考えたプログラム言語のあるべき姿を語りたい~
- Okocha_Makocha
- 3299
- 0
- 2
- 1
合ってるにせよ間違ってるにせよ、公衆の面前で恥をさらすのはやだくないよ。どちらにしてもボクの思考だもの。仁和寺のある法師。むしろメールで閉じるのがヤダ。で、本題に関しては意見がズレてるね。とりあえず今日はここまで。おやすみ RT @KURUMA_Keizo (メールでやれって?
2012-03-27 01:06:23@KURUMA_Keizo あ、あと、ボクの主題は、ボクの考えてることの正しさの主張じゃなくて、4年前に関数型言語と圏論を勉強してみようと思ったモチベーションの源泉はどこにあるかということの説明だからね~あしからず とはいえ、考えを整理したいので議論はウェルカムですよん
2012-03-27 01:16:30@KURUMA_Keizo 昨日の続き。ボクが述べてるマルチコア対応って1プロセス1スレッドっていう単位じゃないんだな。1プロセスをメニーコアで分割して並列に処理する世界を念頭においてる。
2012-03-27 22:23:04@KURUMA_Keizo メニーコアも現在基準の8コアっていうレベルじゃなくて100コアとかそういうオーダー。そのオーダーは近い将来に実現するよ。 その世界になったら設計テクニックで資源の有効利用を狙うのは無理
2012-03-27 22:30:02@KURUMA_Keizo 有眠資源も管理しきれなくなるだけじゃなくて、今でさえスレッドセーフなマルチスレッドプログラミングは難しいのに、さらに考える要素が増えたら人間に最適化を任せてはいけないよ。
2012-03-27 22:34:09元々プログラミング言語の進化は、アーキテクチャを意識させない抽象化にあるよね。ポインタがオブジェクトとなったり。 なのにマルチコア前提になっただけで、アーキテクチャを意識した設計しないと資源を有効に使えないなんておかしいよ
2012-03-27 22:43:32だからマルチスレッドプログラミングテクニックで何とかできるって視点は最初から眼中外。 ボクのマルチコア対応の要求は、1プロセスをメニーコアで(プログラマに意識させることなく)資源を最大有効に使う並列処理をすること、にある
2012-03-27 22:49:37という前提なので、プロセス内で状態を管理せざるえない、副作用がある状態では、マルチコアを活かせない…って至ったんだよ。 もっと低レベルでマルチコアを抽象化してアーキテクチャを意識させない仕組みにしないと人間には無理だと
2012-03-27 22:55:58で、そんな時にHaskellに出会って('06~'07の話ね)、参照透過性が確保されるなら、低レベルがマルチコアを抽象化してくれるはず!って期待したのさ。 実際パフォーマンス、だんちでいいらしいしね
2012-03-27 23:03:19「利用者に意識させない」ことは理想なんだけど、意識しなくてもうまくいってれば最高。制御できなくてうまく動かせない、は最低だよね。 メモリ管理の話も似てるんだけど、下手な隠蔽で余計につらい、という経験を仕事上で何度もしてるから、懐疑的になってるところがある。
2012-03-28 01:41:57多分「意識しなくてよい」技術のおかげで助かってることも多いはずなんだけど、記憶に残らなくて、「制御できない」で苦労するとそれが強く記憶に残るんだろうね。
2012-03-28 01:45:28例えばIntelとMSがマルチコアCPUを売り始めたころ、IISがHTTPリクエストをリクエストごとに別スレッドで処理するやり方をしてたんだけど、それって窓からPC投げ捨てたくなるほど性能出なかったんだよ。 でも同じマシンで協調型マルチタスクだと性能出たんだ。そういう経験が
2012-03-28 02:01:42そんな経験が数多く積み重なると「新しい技術を売る人間が あなたは面倒なことを一切気にしなくていい なんて言ったら、そいつは絶対信用するな」という信念が、大きく育つ。 でもそれで間違ってないと思ってるよ。 「ほとんど気にしなくていいけど、ここだけ注意して」という人は信用できる。
2012-03-28 02:11:27似た話で、ムーアの法則を自分のダメ仕事の言い訳にするやつは嫌い。ムーアの法則を先導するようなすごいものを作る人は好き。 だからSunJavaは大嫌いで、IBMJavaは好き。Forte(SunOneStudio)は消えてWebSphereが生き残ってEclipseになったでしょ。
2012-03-28 02:26:14なんでForteがカスでWebSphereが速かったかって、WSはJNI使いまくってプラットフォーム依存だったからだ。Sunはよく「それは気にしなくてよい」的なことを言った。でも歴史が示してる。「一切気にしなくて良い」派は「少し気にして作る」陣営に常に負けるんだ。
2012-03-28 02:44:47元はボクが興味をもったキッカケの話だし、ボクがあってるかまちがってるかはわからないからね。 RT @KURUMA_Keizo: ま、意見が違うのは別に悪いことじゃないよね。
2012-03-28 08:34:00ある意味「ぼくがかんがえるさいきょうぷろぐらむげんご」的な中二厨くさい話だし、意見=ビジョンが違っててあたりまえだよ RT @KURUMA_Keizo: ま、意見が違うのは別に悪いことじゃないよね。
2012-03-28 08:37:10そういや前にガベージコレクションの時も同じ構図で意見が食い違ってたね。どちらも「隠蔽技術こそ未来派」vs「信用できないから制御させろ派」の構図だね RT @KURUMA_Keizo: 下手な隠蔽で余計につらい
2012-03-28 08:43:06期末がボクの手を離れ始めてるので、落ち着いて考える時間がやっとできたので今朝の続きを ボクと @KURUMA_Keizo は、「隠蔽技術こそ未来派」vs「信用できないから制御させろ派」の構図対立があるね 今回だけじゃなくて過去にはGCでも似た構図で対立したね って分析した状態から
2012-03-28 15:56:50この構図って「道具」という一般論に抽象化できる。 「複雑な作業は人間が考えながら並行するのは危険だから道具でカバーしよう」と【道具のあるべき姿を模索する】ことと 「現状、その道具のデキがプロの使うレベルじゃない」とプロのこだわりで【道具を評価すること】は、 違うレイヤの議論だよ
2012-03-28 15:57:12『「一切気にしなくて良い」派は「少し気にして作る」陣営に常に負けるんだ』っていう指摘は、プロの道具の選び方=プロが望む道具の要件=プロ仕様の道具じゃないとプロの仕事はできないっていう普遍的な主題だけど、ボクの興味は【道具の選び方・使い方】じゃなくて【道具そのものあるべき姿】なのね
2012-03-28 15:57:31GCの時も全く同じツイートした記憶があるけど、 例えば昔の大工の棟梁が現場で素材を直接削って環境最適な部品を一から創りだすような、技術者がOSに近いような低レベルで環境に最適化した部品や基盤をつくりたがる指向があるのは、DNAレベルの伝統だよね。日本は職人の国だから、の所以だけど
2012-03-28 15:57:51現在の大工は、現場でいちいち部品を創りだすプロジェクトは0とは言わないけど少なくなってるよね。部品化されたモジュールを組合わせるのが色んな意味で効率がいいので、伝統の工法は経済的に淘汰されてしまう。道具の進化と仕事のスタイル変化は合わせて一式だと思う
2012-03-28 15:58:20