BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース MicrosoftがIron言語をMiguel de Icaza氏とJimmy Schementiへ移譲

MicrosoftがIron言語をMiguel de Icaza氏とJimmy Schementiへ移譲

原文(投稿日:2010/10/22)へのリンク

Jason Zander氏は、MicrosoftがIronPythonとIronRubyをNovell/MonoのMiguel de Icaza氏と以前IronRuby開発の指導者であったJimmy Schementi氏に移譲する予定であると発表した。Jimmy Schementi氏は6月にMicrosoftを辞め、Lab49へ参加した。また、IronPythonは新たにふたりのコントリビュータを得る。それはIronPython in Actionの共著者であるMichael Foord氏とIronPython MVPであるJeff Hardy氏だ。この移譲によって既にプロジェクトの運営に変化が起きている。

  • コミュニティはIronPythonとIronRubyのどのような部分のソースに対する貢献もできます。
  • IronPythonとIronRubyのために、私たちはコミュニティのメンバがMicrosoftの社員の関与や資金援助なしにプロジェクトへ貢献できるように、CodePlexプロジェクトを変更してきました。
  • 私たちは既にIronPython Tools for Visual Studioをリリースしましたが、これはApache2.0ライセンスの下で開発しました。私たちはとても早い段階からVisual Studio向けのIronPython用のサービスについてフィードバックをもらいました。本日、IronRuby Tools for Visual Studioのプロトタイプをリリースします。このIronRubyツールに対しても同じようなフィードバックが得られることを期待しています。これらをApache2.0ライセンスでリリースすることで、コミュニティのメンバはIronPythonとIronRubyの機能を使うだけでなく、このふたつの言語が提供するサービスに対しても貢献できるようになります。
  • 私たちは次バージョンであるIronPythonバージョン2.7とIronRubyバージョン1.9のためにたくさんの下準備をしました。
  • また、コミュニティが私たちのテストを使って回帰テストをできるようにするために多くのインフラを整備しました。
  • ビルド成果とリリース物を作成するためのリリースのすべてのワークフローをCodePlexプロジェクトで直接実施できるようになりました。以前はこれを簡単に行うには各自のソースリポジトリで実施するしかありませんでした。

Jeff Hardy氏は加えて、

ZanderがMicrosoftがもうIronPython/IronRubyに資金提供しないと書いているわけではないことには注目すべきですが、そういうことです。これからMSの社員はプロジェクトへ、余分な時間を使って非公式に参加することになります。

なによりもこれでIronPythonが終わりにならないことを願っています。素晴らしいコミュニティがありますし、Microsoftが行ってきた仕事と同等にことができると思います。今や誰もがIronPythonにパッチを提供できます。しかし、これはIronPythonを盛り上げたいと思うのならそうすべきだという意味です。優れたオープンソースコミュニティに必要なのは常に活動する中心的な貢献者ですが、ときどき特定のパッチを書いてくれるだけの貢献者がたくさん存在する必要もあるのです。

Iron言語がプロトタイプとして始まったのは、共通言語ランタイムが動的言語をサポートできるかどうかを調べるためだった。プロジェクトがCLRとともに進化したのは、異なる動的言語の互換性を保証するために統一オブジェクトモデルが必要になった時点までだ。最終的な成果は動的言語ランタイムとして知られ、.NET 4.0の一部になった。

Jeff Hardy氏によれば動的言語ランタイムにはふたつの“リング”がある。

内側のリングは式木拡張やサイト呼び出し、その他の基盤となる部分です。これらの部分は.NET 4に組み込まれており、以前はMicrosoft.Scripting.Core.dllの一部でした。もうひとつは外側のリングでホスティングAPIの中にあるScriptEnginesやScopesなどのことです。今やこれもコミュニティのものであり、好きなように利用できます。

私の知る限り内側のリング/.NET 4の部分はかなり頑丈です。2、3の変更が行われているかもしれませんが、それほど大きな変更ではありません。この部分に変更が必要な場合は、MSが私たち(そしてIronJS、Coljure-CLR、IronSchemeというようなプロジェクト)と協力してくれることを望みます。

外側のリングも私が知る限りは相当に強固なものです。しかし、この部分はその気になれば自由に変更できる(複数のプロジェクトがこの部分に依存している場合は別ですので、いくらか注意が必要でしょうが)ので関心事になっていません。この部分をDLR+とかいうような名前にして混乱を避ける必要があるかもしれません。

Jim Hugunin氏はJPythonの作者でIronPythonの主要な貢献者でもある。氏はGoogleへ移籍するためMicrosoftを去る予定だ。GoogleがPythonを利用しているのは良く知られている。氏が暖かく迎えられるのは間違いないだろう。氏曰く、

MicrosoftがIronPythonへの投資をやめることは私の辞職のきっかけのひとつではありましたが原因ではありません。多くの人が知っているように私は長い間IronPythonに直接は関わっていませんでしたが、この決定のおかげで私は自分のこの会社での時間を振り返り、他のキャリアを探すときがきたことを悟りました。怒りに任せてMicrosoftを緊急脱出スライドを使って去ったらちょっと気持ちいいかもしれません。しかし、私はMicrosoftの素晴らしい製品と人々への尊敬を残しています。C#のエレガントさを愛してしまった今では、Javaでコードを書かなければならなくなったら少し苦痛に感じるでしょう。Microsoft Officeの磨き上げられたUIのかわりにGoogle Docsを使わなければならないのは少しイライラするはずです。そしてなにより、素晴らしい人々とともに働き、価値あることを学ぶ必要があった機会に恵まれたこといつまでも大切にするでしょう。

関連するニュースとして、IronPython 2.7がベータになった。Dino Viehland氏が書いたリリースノートによれば、

Python 2.7は多くの機能をPython 3.0系からバックポートしています。このリリースには新しい組み込みの_ioモジュールが実装されています。また、ディクショナリとset内包表記、set型のリテラル表記も追加されてます。そして、with文でのマルチコンテキストマネージャをサポートします。さらにいくつかの新しい機能がitertoolsメソッドに追加されました。新しい文字列フォーマット操作向けの自動インデックス機能もあります。これ以外にも新しくなったargparseモジュールや順序付きディクショナリのような標準ライブラリにも多くのアップデートがなされてます。

このリリースには"IronPython Tools for Visual Studio"オプション付きのIronPythonインストーラも含まれている。Visual Studio 2010がインストールされている環境でこのインストーラを実行するとIronPythonとIronPythonのVisual Studioサポートを両方インストールできる。このバージョンの"IronPython Tools for Visual Studio"はWPFデザイナサポートの改善など多くのバグ修正が行われている。デザイナはXAMLとWPFを完全にサポートし、Pythonのクラスへの動的データバインドもできる。

IronPythonインストーラの更新も行い、CPythonのドキュメントを基にしたIronPythonのドキュメントを含めました。この新しい.chmファイルはPythonという言語と標準ライブラリについてのドキュメントです。これはPythonのドキュメントにDLRホスティングAPIや.NETの静的型付け言語からのIronPythonの拡張ようなIronPython限定のトピックを追加したものです。

また、CPythonにある組み込みモジュールの中で今までIronPythonに存在しなかったものに対するサポートをさらに強化しました。今回のリリースにはmmapとsignalモジュールが含まれます。これによってアンマネージドコードとの相互運用性を強化できます。

そしていつも通り、数多くのバグ修正と性能改善を行いました。今回のリリースではcPickleと組み込みのsum関数に大きな性能改善を施しました。そして、.NETの例外機構では利用されないFast Exceptionもサポートします。IronPython ASTのメモリ使用量を低減するための改善も行いました。多くの改善の結果、最終的にはIronPython 2.6.1と比べて起動時間が10%減少しています。

この記事に星をつける

おすすめ度
スタイル

BT