ものがたり(旧)

atsushieno.hatenablog.com に続く

mono status updates

最後にmonoの話を書いたのがもう2ヶ月くらい前なので、いろいろ新しいことが増えてきた。

MonoDevelop 2.4

http://monodevelop.com/Download/MonoDevelop_2.4_Released

もう1ヶ月くらい前の話だけど。ソースコードエディタがいろいろ細かく改善されている。たとえば、CWLと打つとConsole.WriteLineが候補に絞り込まれたりする(入力された文字を全て含む候補だけを表示するようにしている)。これは先頭からの部分一致よりはずっと便利だ。デバッガにはクイックウォッチが追加された。

MeeGoサポートが動くようになってからの正式リリースでもある。Soft Debuggerを使って、リモートのMeeGo上で動いているmonoアプリケーションをデバッグできる。

まだ公開されていないけど、MonoDroidサポートの開発も進んでいるので、たぶんベータ版はMonoTouch同様、MonoDevelopとセットで公開されることになるんじゃないかと思う。

今回はリリース時期にわたしの作業が立て込んでいたこともあって、日本語ローカリゼーションが追いついていないので、新機能は英語でお楽しみを。

MonoTouch 3.0.8

http://monotouch.net/Releases/MonoTouch_3.0.8

これも半月以上前の話だけど、iOS4に対応したバージョンが公開されている。MonoTouch.iAdみたいなnamespaceが追加されている。

ちなみに、Miguelが遊びで作っていたTweetStationがAppStoreでリリースされているけど、これもiOS4対応の最新のSDKで作られている(iPadに対応しているかどうかは知らない)。内輪ではTrollStationと呼ばれていたものだ。

あと、ついに"Professional iPhone Programming with MonoTouch and .NET/C#"という、紙の書籍が発売された。

Professional iPhone Programming with MonoTouch and .NET/C# (Wrox Programmer to Programmer)

Professional iPhone Programming with MonoTouch and .NET/C# (Wrox Programmer to Programmer)

以前にeBookでもっとずっと軽い内容のものが出ていたけど、こちらは400ページ弱もある。執筆陣はみんなIRCの #monotouch にいるメンツだ(と思う)。

mono on google native client patch

http://go-mono.com/forums/#nabble-f1517221

GoogleハッカーGoogle I/O 2010で公開していたUnity on nacl (id:atsushieno:20100520:p1) を実現するために開発していたパッチをmono-devに投げている。おそらくそのうちチェックインされるのではないかと思う(まだパッチのやりとりを進めているようだ)。

monoがnaclで動作するようになると、chrome上でネイティブに動作するコードが書けるようになって、また別のブラウザアプリあるいはクロスプラットフォーム(?)アプリの可能性が広がりそうだ。まあまだx86だけの話だけど。

SVN to GIT migration

近いうちに開発リポジトリsvnからgitに移行することになると思う。githubに最近追加されたorganizationsの機能を活用したmonoのリポジトリが出来ていて、これからテスト運用するところだ。

まだ上手くいくかどうかは分からないので、試行錯誤しながらということになると思う。リビジョン番号が連番にならないのはちょっと不便そうだ(bugzillaに"fixed in r160000"とか書いていたのを"fixed in 5439382cc27ca3d723f0 とか書くのかと思うと)。

しかしCVSからSVNに移行したのって、もう6年くらい前なんだな。

upcoming mono 2.8

そろそろmono 2.8のリリースに向けて、いろいろと作業が始まりそうだ。mono 2.8は、mono 3.0を見据えて、.NET 4.0のプロファイルをデフォルトにするつもりだそうで、なかなかチャレンジングだと思う。既にmonoのconfigureでは --with-profile4 がデフォルトでyesになっている。mscorlib, System, System.Coreなど、コアなライブラリは概ね4.0に対応しているようだ。System.Xmlはなんも作業していないんだけど、多分ほぼなんも増えていないだろう。

.NET 4.0まわりでは、ASP.NET 4.0がfeature completeというかたちで公開されることになりそうだ。あくまでfeature completeなのでバグはいろいろ出てくるだろう…というのは開発者の弁だけど。

WCFは一向に完成する気配が無いので、のんびり待ってもらえればw 最近ようやくWSHttpBindingの作業ができるようになって、少し気が楽になっている。4年ぶりの作業再開だ。

ランタイムでは、sgen-gc(compacting generational GC)とLLVMのサポートが追加されている。以前はconfigureオプションで切り替えていたけど、最近になって実行時オプションで指定できるようになった。実行時に切り替えられないと、結局みんなデフォルトの--with-gc=included (boehm)でビルドするから、テストにならないんだよな。ちなみにsgen-gcは一部の環境でしか有効にならない。x86/ARM、そしてlinux/Mac/iPhoneでは有効になると思う。