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

2007-06-21

moonlightはplugin部分でどうも僕だけが動かせない罠にはまって、どうにも作業が出来ないので、System.Configurationに戻って作業することにした。とりあえず、目先のタスクがいくつかある。

まずはid:atsushieno:20070604:p2で書いた沖本さんのLocalFileSettingsProvider。これをpendingにしていた、コンパイラのバグのように見えた現象は、実は2つのSystem.dllに対する独立した参照というありえねー罠にはまっていたようだ。

2.0プロファイルのSystem.dllは、System.Configuration.dll, System.Xml.dll, System.Security.dll, Mono.Security.dllの4つと相互参照(!!)していて、最終的なSystem.dllを得るまでに、System.dllを3回ビルドすることになる。mcs/class/System 以下のソースにCONFIGURATION_DEPとかSECURITY_DEPとかXML_DEPと書いてあるものがあるのは、このためである。

1回目のビルドでは、net_2_0_bootstrapというプロファイルのSystem.dllを参照してgmcsが実行されるが、それ以降はnet_2_0プロファイルで「既にビルドされた」System.dllが使用される。このとき、ソースに含まれる型と、既にビルドされたSystem.dllに含まれる型に対する参照が、ごっちゃになってしまう。これを回避するために、monoではgmcsでアセンブリのextern aliasを使用しなければならないのだ。

まだいくつかmonoのSystem.Configuration.dllのクラス自体を修正しなければならないところがあるのだけど、そのうち機能するようになるんじゃないかな、と思う。今日もConfiguration.Save()まわりで、roaming関係がてきとーに実装されていたことに気付いたり。

もうひとつは、僕も大変お世話になっているTwitterIrcGatewayでconfigが正しく読み取れない(っぽい)問題。これはUserSettingsまわりで何かが足りていないのではないかと思うので、上記LocalFileSettingsProviderが機能するようになったら、その上位にあるApplicationSettingsBaseまわりに進めると思うので、そこから手を付けようと思っている。ていうか、さっさとutf-8を使えるようにしたいw

MonoDevelopにもVS.NETみたいな設定ファイル編集add-inを作ってみようかねえ。ApplicationSettingsBase自体、あまりおいしくない機能だという声を少なからず見るんですけど…(苦笑)

Implementing Silverlight in 21 Days

Miguelがこのクレイジーな21日間のhackathonの話をまとめている

彼らはホントに化け物だとしか言いようがない。Silverlight Airlinesがここまででの彼らの最後のチャレンジだ。Miguelがコレに着手したのがつい一昨日。その頃にはSilverlight Surfaceが既に動いていた。

上記の通り、僕のマシンではなぜかpluginがダメダメで(最近では開発者本人の環境でも動かないらしい)、27日にairlinesが動かせるかどうかはまあ神頼みなのだけど、surfaceは動かせているので、まあ何とかなるでしょう。って、そろそろ資料作らないと…w

…そんなわけで今日ReMixでMiguelがデモする予定なのだけど、airplaneが動くならその上にsnakesを乗っけちゃったらどうだなんて言い出す輩まで出てきた。もうどうしようもない連中だ

(後になって気付いた。僕があたかも開発していたかのように書かれているけど、僕はmoonにもagclrにもほとんどタッチしていない。うごかねーとかぼやいたり、がむばれーとか応援していただけであるw)

少なくともDRMで自衛している部分に補償金は不要である

常日頃の松田政行を支持するつもりは無いのだけど

http://internet.watch.impress.co.jp/cda/news/2007/06/18/16070.html

また、青山学院大学教授の松田政行委員は、DRM技術の発展状況によって補償措置の対象が流動的に変わるとの考えを示し、「DRM技術で保護される部分については、補償金制度がなくなる社会が1つの理想」との考えを示した。

これは id:atsushieno:20070519:p1 の下段で書いたこととほぼ同様の趣旨であると言えよう。

本来著作権法で想定されていない利用制限まで行っているのだから、そのような自力救済1についてはDRM実施者から補償金を徴収するのが適切であろうと僕は考える。


コメント

c-yan — 06/22/2007 00:32:16

じりききゅうさいならMS-IMEで出ます. 学習してるかもしれないけど. (そもそも「じりょく」の候補に「自力」はないです、MS-IME…)

atsushieno — 06/22/2007 01:08:28

はい、じりききゅうさいなら、たぶん多くの漢字変換実装でやってくれそうですね。でも元法学生としては、やはり競売を けいばい で一発変換できるのと同じように、コレも期待してしまうわけです…w

c-yan — 06/22/2007 08:22:34

法学的には読み方が違うんですね. なるほど.

atsushieno — 06/22/2007 08:31:40

あ、はい、そういことです。といっても、じりき が「間違い」というわけではないんですけどね。

おっきー主席 — 06/22/2007 09:42:12

ちんぷんかんぷんなんですけど、mono側の設計の問題と捉えていいのでしょうか?<LocalFileSettingsProvider

atsushieno — 06/22/2007 09:55:54

あ、はい、↑で書いていることは全部monoの問題です(バグ、ではないのですけど)。

ちなみに、CustomizableFileSettingsProviderについても、何点か修正を加えた部分があるのですけど、
http://anonsvn.mono-project.com/viewcvs/trunk/mcs/class/System/System.Configuration/CustomizableFileSettingsProvider.cs
まだイマイチ修正が固まっていないので、もう少し(.netの)実装を調べてみようと思っています。

せじけん — 06/22/2007 16:22:22

おひさー。関係ない話題で申し訳ないが、結婚しました。式にお呼びしたいので連絡プリーズ。メールとかで。

atsushieno — 06/22/2007 16:32:00

ぉぉぉ、R君に次いであーたもですかい。それはおめでとうございます。メールしときますです。

おっきー主席 — 06/22/2007 21:46:41

「バグではない」ということは気づいてました。手の入ったソースを比較してみて、なるほどなぁ、と思うこと多いです。
ある意味諦めていた2つの関数が実装されていたことに感動しました。自分の作りたいアプリでも流用させてもらうかもしれません。

atsushieno — 06/23/2007 02:11:14

もちろんどうぞ流用なさって下さい。こちらからお願いしたMIT/X11ライセンスになっていますし:) 手を加えて壊していないことを祈るばかりです…^^;

Footnotes

  1. じりょくきゅうさい くらい変換してくれよ>atok


この記事を共有:

前の記事
Implementing Silverlight in 21 Days
次の記事
Google Public Policy Blog