コンテンツへスキップ
ものがたり
戻る

2005-01-19

angels and demons dancing in my head

今月は毎週のようにNLDを入れ直していてちょっと気分がよろしくない。そしてred-carpetが毎回のように起動できなくなる。rugでも困らないんだけど、めんどいときはめんどい。

僕の生活時間帯は「ちょっと」おかしいのだけど、Ximianの連中はけっこう不健康なので(夕方6時に起き出すドイツ人とか居るし…)、もしかしたら早朝に仕事を始めて午後もそこそこに終わりにすれば一番都合がいいんじゃないか…などとぼやぼやと考えさせられる28時。

バグレポートはしないと決めて以来覗いていなかったms feedbackの反応を確認してみたものの、特に進展がない。ECMAに標準化仕様を提出したことを悔やんでいる姿が目に浮かびます。あと、これも、せっかく一番楽な解決方法を考えてあげたのに、拒否っちゃうんだもんなぁ。がんばって別の解決策を探してくださいな。

Mono on MSDN Webcast

ですって。MSDN Webcastって今まで一度も聞いた事無いんだけど、いったい何しゃべるんだろ。

back to ado.net

そんなわけで(どんなわけ?)、僕はまたSystem.Data hackingに加わることにした(なったわけではない)のだけど、ここもまた大変なところなのですねん。.NET 1.1の機能も全部揃ってないし、バグの数はトップレベルだし、その割にはタッチしている人数多いし。ここはNovell Indiaの担当なのだけど、最初から面倒見てた人は産休でしばらく休みだし、他にここやってたのは1人残してみんな辞めちゃったし。mono hackingの仕事は、やっぱNovellの人にとってはかなりカルチャーショックが大きいらしい。

ていうかADO.NETなんてもう忘れてるし。まず機能から勉強し直さなきゃ。

Managed C++ should be avoided

Managed C++を使って、managed codeとnative codeのインターフェースにしたいんだ、という発言に対して、Paolo Molaroが興味深いコメントを残している:

うーん。もしコードを移植したいんだったら、Managed C++はやめときなさい。出来るだけ使い方を限定しておくようにしなさい。そうしたら、成果物をちょっと書き換えるだけで移植できるからね。新しいCLI/C++の草案はあまり良いものじゃない。64ビットのプラットフォームに興味があるなら特にね。これは32ビット長で作られたイケてない64ビットアーキテクチャ、つまりwin64上で動くものとして設計されているからね。


コメント

oka326 — 01/20/2005 01:38:05

win64上で動くものとして設計されているからね
うーん、これってCLI/C++よりはNGenの話じゃないですかねぇ。64ビット向けのNGenは32ビット向けより遥かに優れた最適化を提供するようです。詳細は以下:
http://msdn.microsoft.com/msdnmag/issues/05/01/COptimizations/default.aspx
CLI/C++がそこまで制限されたアーキティクチャ向けに最適化された設計だという根拠はなかなか明白ではないですし、少なくともC#よりいいパフォーマンスを提供できるからくりは備わっているわけですから。もちろん、実装が大変なのは言うに及ばずですが。

atsushieno — 01/20/2005 02:15:09

ええと、元の文脈は、MS.NETのmanaged C++ extensionsの話ではなくてECMA CLI/C++の話なんですね。で、
http://msdn.microsoft.com/visualc/homepageheadlines/ecma/default.aspx
Paoloが言及しているのは、ここにあるpdfの24ページにあるC++/CLIとruntime typeのマッピングのことだと思います。上記postのスレッドには続きもありますので、そちらも見てみて下さい。

oka326 — 01/21/2005 05:55:59

型マッピングのことでしたか。でもそれならそもそも.NET自体やC#も同じ結論が導き出せるということですよね。

atsushieno — 01/21/2005 06:10:08

ええと、これは違います。C#ではlongは64ビットですが、C++/CLIでは(とりあえず)32ビットになっています。

oka326 — 01/21/2005 07:24:47

なるほど。64ビットがほしければInt64で明示的にとる方が懸命だとは思いますが、型マッピングに関してはstill under discussionとも書かれていますし、VS2005も出てませんし、流動性はありますね。

atsushieno — 01/21/2005 12:47:17

ええ。でも普通 ”long foo;” って書くところを ”Int64 foo;” なんて誰も書きませんよね。(笑) とりあえずこんな言語仕様では困る、というのが、Paoloの言いたいことなんだと思います。


この記事を共有:

前の記事
Mono on MSDN Webcast
次の記事
セーフティドライバー