<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>荒井省三のBlog : Python</title><link>http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx</link><description>Tags: Python</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>IronPython 2.6 CTP for .NET Framework Beta1 が公開されました</title><link>http://blogs.msdn.com/shozoa/archive/2009/05/21/released-ironpython-2-6-ctp-for-net-beta1.aspx</link><pubDate>Thu, 21 May 2009 02:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9633067</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9633067.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9633067</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27320" target=_blank mce_href="http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27320"&gt;.NET Framework 4.0 ベータ1に同期したCTP&lt;/A&gt;が公開されました。これで C#のdynamicキーワードを使って、Pythonスクリプトを実行することができます。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9633067" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category></item><item><title>Tech Days 2009 Dynamic Language Runtimeで使用したサンプル</title><link>http://blogs.msdn.com/shozoa/archive/2009/01/29/tech-days-2009-dynamic-language-runtime-s-samples.aspx</link><pubDate>Thu, 29 Jan 2009 10:21:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9382672</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9382672.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9382672</wfw:commentRss><description>&lt;P&gt;Tech Days 2009のT3-403 Dynamic Language Runtimeで使用したサンプルコードを公開します。このサンプルには、以下のものが含まれています。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;DynamicCS：C#4.0のDynamicキーワードを使ったサンプルです。このサンプルの実行には、Visual Studio 2010CTPとIronPython v2.0 for VS10 CTP(&lt;A href="http://www.codeplex.com/IronPython/" mce_href="http://www.codeplex.com/IronPython/"&gt;http://www.codeplex.com/IronPython/&lt;/A&gt;)が必要になります。&lt;/LI&gt;
&lt;LI&gt;AstTest:DLR 0.9のASTのみを使った Hello Worldサンプルです。&lt;/LI&gt;
&lt;LI&gt;ToosSupport:セッションでは使用しませんでしたが、DLR 0.9のホスティングAPIを使ってIronPythonを使ったAPIの使い方のサンプルです。&lt;/LI&gt;
&lt;LI&gt;MyCalc:セッションでは使用しませんでしたが、DLR 0.9を使って作成した簡単な四則演算の言語サンプルです。&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;ご利用は、自己責任でお願いいたします。&lt;BR&gt;&lt;BR&gt;セッションに参加した方々へのお願いです。&lt;BR&gt;是非ともDLRやIronPython2.0、IronRubyを試してください。そして試した結果のフィードバックをしてください。開発チームは、皆さんのフィードバックを心待ちにしています。宜しくお願いいたします。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9382672" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/shozoa/attachment/9382672.ashx" length="1601716" type="application/x-zip-compressed" /><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category></item><item><title>IronPython 2.0 リリース</title><link>http://blogs.msdn.com/shozoa/archive/2008/12/11/ironpython-2-0-release.aspx</link><pubDate>Thu, 11 Dec 2008 06:03:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9194508</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9194508.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9194508</wfw:commentRss><description>&lt;P&gt;ついに&lt;A href="http://www.codeplex.com/IronPython/" target=_blank mce_href="http://www.codeplex.com/IronPython/"&gt;IronPython 2.0&lt;/A&gt;がリリースされました。それと同期するように&lt;A href="http://www.codeplex.com/dlr/" target=_blank mce_href="http://www.codeplex.com/dlr/"&gt;DLR&lt;/A&gt;も公開されています。ふむDLRのバージョンは0.9となっていますが、12/10にUpされているのでRC2に同期した0.9から、どの程度更新されたかは不明です。&lt;/P&gt;
&lt;P&gt;DLR-0.9をダウンロードしてみると、中にIronRuby、ToyScript、IronPythonも含まれています。IronPython.dllのバージョンを見ると2.0.11121.0なのでIronPython 2.0に含まれているのと同じバージョンになります。異なるのはタイムスタンプだけです。また、DLRに関するドキュメントがWORD文書で5つほど含まれています。DLRをホスティングするには、dlr-spec-hosting.docという文書が有益です。&lt;/P&gt;
&lt;P&gt;PS:Silverlight Dynamic Lamguage SDKに含まれているバイナリと同じものが、DLR-0.9に含まれています。今回のソースコードに対応したものは、まだ公開されていないようです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9194508" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>IronPython 2.0RC2</title><link>http://blogs.msdn.com/shozoa/archive/2008/11/27/ironpython-2-0rc2.aspx</link><pubDate>Thu, 27 Nov 2008 12:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9146079</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9146079.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9146079</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://www.codeplex.com/IronPython/" target=_blank mce_href="http://www.codeplex.com/IronPython/"&gt;出ていました&lt;/A&gt;。RC2に同期しているらしい、&lt;A href="http://www.codeplex.com/dlr/" target=_blank mce_href="http://www.codeplex.com/dlr/"&gt;DLR 0.9&lt;/A&gt;も公開されています。&lt;/P&gt;
&lt;P&gt;今月は、忙しくてなかなかブログを更新できていません。Silverlight Dynamic Languageシリーズも次回位で終了にしたいのですが、時間が取れていません。期待して方々に、改めてお詫びを申し上げます。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9146079" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category></item><item><title>Silverlight Dynamic Language SDK の使い方4</title><link>http://blogs.msdn.com/shozoa/archive/2008/10/28/silverlight-dynamic-language-sdk-4.aspx</link><pubDate>Tue, 28 Oct 2008 08:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9019735</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9019735.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9019735</wfw:commentRss><description>&lt;P&gt;今回は、 Chiron.exeの/bや/z、/mオプションで作成されるアプリケーション・マニフェストを説明します。例題とするのは、&lt;A href="http://silverlight.net/samples/sl2/dlrconsole/index.html" target=_blank mce_href="http://silverlight.net/samples/sl2/dlrconsole/index.html"&gt;DLR Console&lt;/A&gt;で使用されているAppManifest.xamlです。&lt;BR&gt;&lt;PRE&gt;&amp;lt;Deployment 
  xmlns="http://schemas.microsoft.com/client/2007/deployment"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
  RuntimeVersion="2.0.31005.00" 
  EntryPointAssembly="Microsoft.Scripting.Silverlight"
  EntryPointType=
  "Microsoft.Scripting.Silverlight.DynamicApplication"
&amp;gt;
  &amp;lt;Deployment.Parts&amp;gt;
    &amp;lt;!-- Add additional assemblies here --&amp;gt;
    &amp;lt;AssemblyPart Source="Microsoft.Scripting.Silverlight.dll"/&amp;gt;
    &amp;lt;AssemblyPart Source="Microsoft.Scripting.Core.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="Microsoft.Scripting.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source=
          "Microsoft.Scripting.ExtensionAttribute.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="IronPython.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="IronPython.Modules.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="IronRuby.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="IronRuby.Libraries.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="Microsoft.JScript.Runtime.dll" /&amp;gt;
    &amp;lt;AssemblyPart Source="Microsoft.JScript.Compiler.dll" /&amp;gt;
  &amp;lt;/Deployment.Parts&amp;gt;
&amp;lt;/Deployment&amp;gt;&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;最初に取り上げるのが、Deployment要素のEntryPointAssembly属性とEntryPointType属性です。ここには、以下のように記述されています。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;EntryPointAssembly="Microsoft.Scripting.Silverlight"&lt;/STRONG&gt; 
&lt;LI&gt;&lt;STRONG&gt;EntryPointType="Microsoft.Scripting.Silverlight.DynamicApplication"&lt;/STRONG&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;属性名が表しているようにSilverlight2.0対応のランタイムが起動するプログラムが格納されたアセンブリと開始するクラスを指定しています。このDynamicApplicationクラスこそが、SilverlightとDLRを結びつけるものです。このエントリポイントのモデルは、DLRに限った話ではなくC#やVBを使ったSilverlightアプリケーションでも使用されているものです。そして、DynamicApplicationクラスはSystem.Windows.Applicationクラスを継承しています。&lt;/P&gt;
&lt;P&gt;Deployment.Parts要素内のAssemblyPart要素にSilverlightランタイムが読み込むアセンブリをSource属性で指定します。ここで指定しているアセンブリを以下に示します。&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=519 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=210&gt;アセンブリ名&lt;/TD&gt;
&lt;TD class="" vAlign=top width=303&gt;説明&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=210&gt;Microsoft.Scripting.Silverlight.dll&lt;/TD&gt;
&lt;TD class="" vAlign=top width=303&gt;Silverlight 2.0ランタイムのエントリポイントです。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=210&gt;Microsoft.Scripting.Core.dll&lt;/TD&gt;
&lt;TD class="" vAlign=top width=303&gt;DLRの本体です。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=210&gt;Microsoft.Scripting.&lt;BR&gt;ExtensionAttribute.dll&lt;/TD&gt;
&lt;TD class="" vAlign=top width=303&gt;IronPython 2.0RC1から追加されたDLRの補助アセンブリです。ビルド時のSystem.Core.dllとの衝突を回避するために導入されました。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=210&gt;Microsoft.Scripting.dll&lt;/TD&gt;
&lt;TD class="" vAlign=top width=303&gt;DLRを使用するための各種ヘルパーです。&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;BR&gt;これ以外のアセンブリが、動的言語のためのものです。アセンブリ名から、IronPython、IronRuby、Managed JScript用がどれかというのは自明でしょう。そしてSource属性は、上記のような書き方以外にURLによる記述も可能です。URLを使った表記の場合は、相対パスではなく絶対パス(http://で始まる)の記述になります。URLで記述した場合は、xapファイル内に対象のアセンブリを含める必要はありません。&lt;/P&gt;
&lt;P&gt;プログラムを開発する上でSilverlight SDKなどで提供される拡張アセンブリを使用する場合は、AssemblyPart要素に記述する必要とxapファイルに含める必要があります。Visual StudioのSilverlightプロジェクトでは、この一連の作業をVisual Stduioが行ってくれます。動的言語で開発する場合は、自分でAppManifest.xamlへの記述とxapファイルへのアセンブリをパッケージングする必要があります。後は、使用される動的言語によって追加したアセンブリに対する参照を記述するれば、スクリプトの中から使用することが可能になります。&lt;BR&gt;&lt;PRE&gt;#IronPython
import clr
clr.AddReference(アセンブリ識別子かアセンブリ名)
import文かfrom -- import 文で参照を行う&lt;/PRE&gt;&lt;BR&gt;&lt;PRE&gt;#IronRuby
require 'アセンブリ識別子'
&lt;/PRE&gt;&lt;BR&gt;
&lt;P&gt;上記のように参照を行うことで、スクリプトの中から自由に参照したアセンブリを使用することができるようになります。ちなみに、アセンブリ識別子とは「System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e」という形式のことです。&lt;/P&gt;
&lt;P&gt;最後に添付のapp.pyは、最初にご紹介したDLR Consoleのキーマッピングを日本語キーボード用に変更(TextInputHandlerクラス)したものです。ライセンスは、Silverlight Dynamic Language SDKがMS-PLですので、それに準拠したご使用をお願いいたします。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9019735" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/shozoa/attachment/9019735.ashx" length="75184" type="application/octet-stream" /><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Silverlight Dynamic Language SDK の使い方3</title><link>http://blogs.msdn.com/shozoa/archive/2008/10/27/silverlight-dynamic-language-sdk-3.aspx</link><pubDate>Mon, 27 Oct 2008 10:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9017698</guid><dc:creator>shozoa</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9017698.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9017698</wfw:commentRss><description>&lt;P&gt;Dynamic Language SDK で提供されるスクリプトのserver.batとは、chiron.exeをラップしただけのものです。このため指定できるオプションを確認するには、「/?」か「/h」オプションを指定します。指定できるオプションを以下に示します。&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=506 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=145&gt;オプション&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;
&lt;CENTER&gt;説　　　明&lt;/CENTER&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=149&gt;/d:パス 又は /dir、/directory&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;アプリケーション(スクリプトやプログラム)を格納しているフォルダを指定します。デフォルトは「app」になります。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=153&gt;/x:xapファイル 又は /xap、/xapfile&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;xapファイルを作成する場合に「/x:app.xap」のようにxapファイルを指定します。/dで指定したフォルダの中身がxapファイルに格納されます。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=156&gt;/n 又は /nologo&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;バナーの表示を抑制します。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=158&gt;/s 又は /silent&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;コンソール出力を抑制します。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=160&gt;/z:xapファイル 又は /zipdlr&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;DLRアプリケーション向けのxapファイルを生成します。/dで指定したフォルダにAppManifest.xamlが存在しなければ自動的に生成します。/xオプションとの違いは、スクリプトファイルを解析して必要なアセンブリと生成したAppManifest.xamlをxapファイル内に含めることです。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=161&gt;/w 又は /webserver&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;テスト用のWebサーバーを起動します。デフォルトのポートは、2060になります。ポートを指定する場合は、/w:ポート番号と指定します。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=162&gt;/b 又は /browser&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;テスト用のWebサーバーを起動して、ブラウザを起動します。開始時のURLを指定するには、/b:パスオプションを指定します。/dオプションを組み合わせれば、WebサーバーのトップURLの場所を指定することができます。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=163&gt;/m 又は /manifest&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;アプリケーション・マニフェスト(AppManifest.xaml)を生成します。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=164&gt;/? 又は /h、/help&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;ヘルプを表示します。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=164&gt;/r:パス 又は /refpath&lt;/TD&gt;
&lt;TD class="" vAlign=top width=359&gt;参照するアセンブリへのパスを指定します。デフォルトは、Chiron.exeが存在するフォルダを参照します。&lt;BR&gt;このオプションは、ヘルプに表示されません。&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;オプションの使い方は、ヘルプコマンドで確認するか、SDKに含まれるReadme.txtに記述されています。&lt;BR&gt;&lt;BR&gt;前回に解説したプログラムをテスト実行するだけであれば、「chiron.exe /b /d:アプリケーションフォルダ」を実行することでブラウザで実行することができます。&lt;/P&gt;
&lt;P&gt;配布用にXAPファイルを作成するには、以下のようにコマンドを入力します。&lt;BR&gt;&lt;PRE&gt;chiron.exe /d:アプリケーション・フォルダ /z:app.xap
&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;これでXAPファイルが出来ますので、index.htmlとjavascriptフォルダ、stylesheetsフォルダ、作成したXAPファイルをWebサーバーへ配置すれば本番環境への移行が完了します。&lt;/P&gt;
&lt;P&gt;chiron.exe&lt;STRIKE&gt;に&lt;/STRIKE&gt;は/xオプションでXAPファイルを作成できますが、このオプションは動的言語に特化したものではありません。どういう場合に使うかというと、既存のXAPファイルを展開して、中身のリソース(画像など)を入れ替えた場合などの再XAP化に使用することができます。つまり、リソース入れ替えでVisual StudioのリビルドなどをしなくてもXAPファイルを作成できるのです。具体的には、以下のようなコマンドを入力します。&lt;BR&gt;&lt;PRE&gt;chiron.exe /d:アプリケーション・フォルダ /x:app.xap
&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;/dオプションで指定したフォルダに配置したファイル(AppManifest.xaml、dllなど)をそのままxapファイルにパッケージ化します。&lt;BR&gt;&amp;nbsp;&lt;BR&gt;/bオプションや/wオプションでWebサーバーを起動した場合は、ブラウザ・リクエストによるログがコンソールに表示されます。このコンソールを終了する場合は、コンソールで「CTRL+C」を入力するか、ブラウザで「&lt;STRONG&gt;http://localhost:2060/bye!&lt;/STRONG&gt;」のように「bye!」コマンド入力してください。これで、Webサーバーが終了します。&lt;/P&gt;
&lt;P&gt;追伸：&lt;A href="http://www.codeplex.com/IronPython/" target=_blank mce_href="http://www.codeplex.com/IronPython/"&gt;IronPython 2.0 RC1&lt;/A&gt;が先週にリリースされました。今回はToyScriptのサンプルも公開されていますので、DLRの使い方を調べやすいと思います。&lt;/P&gt;
&lt;P&gt;追記：RednaxelaFXさんのご指摘で、/nologの書き間違いを/nologoに訂正しました。それと/zオプションに/xオプションとの違いを追記しました。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9017698" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Silverlight Dynamic Language SDK の使い方2</title><link>http://blogs.msdn.com/shozoa/archive/2008/10/22/silverlight-dynamic-language-sdk-2.aspx</link><pubDate>Wed, 22 Oct 2008 05:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9010646</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9010646.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9010646</wfw:commentRss><description>&lt;P&gt;今回は、SDKで提供されるテンプレート集の構造を説明します。最初にindex.htmlのobjectタグを解説します。&lt;BR&gt;&lt;PRE&gt;&amp;lt;object data="data:application/x-silverlight,"
        type="application/x-silverlight-2" 
        width="100%" height="100%"&amp;gt;
  &amp;lt;!-- 
     XAPファイルを指定します。指定したファイル名が
      開発中に使用するフォルダ名になります。
    --&amp;gt;
  &amp;lt;param name="source" value="python.xap"/&amp;gt;

  &amp;lt;!-- 
      "initParams"はkey=valueの形式で、カンマ区切りで複数の
       パラメータを指定できます。
    --&amp;gt;
  &amp;lt;param name="initParams" value="debug=true,
         reportErrors=errorLocation" /&amp;gt;
        
  &amp;lt;!-- Silverlightランタイムのエラーを処理する
        javascript関数を指定します。この関数は
        javascripts/error.js で定義されています。 --&amp;gt;
  &amp;lt;param name="onerror" value="onSilverlightError" /&amp;gt;
      
  &amp;lt;!-- 
      他のパラメータは、Silverlightのプロパティです。
   --&amp;gt;
  &amp;lt;param name="background" value="white" /&amp;gt;
  &amp;lt;param name="windowless" value="true" /&amp;amp;lg;

  &amp;lt;!-- 
      Silverlight ランタイムのインストール用のリンクです。
    --&amp;gt;
  &amp;lt;a href="http://go.microsoft.com/fwlink/?LinkID=124807" 
 　　　　 style="text-decoration: none;"&amp;gt;
    &amp;lt;img src="http://go.microsoft.com/fwlink/?LinkId=108181" 
         alt="Get Microsoft Silverlight" 
         style="border-style: none"/&amp;gt;
  &amp;lt;/a&amp;gt;
&amp;lt;/object&amp;gt;&lt;/PRE&gt;&lt;BR&gt;
&lt;P&gt;以下に指定しているパラメータの説明を記載します。&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=487 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top align=middle width=122&gt;パラメータ名&lt;/TD&gt;
&lt;TD class="" vAlign=top align=middle width=363&gt;説　　　明&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=125&gt;objectタグのtype&lt;/TD&gt;
&lt;TD class="" vAlign=top width=363&gt;"application/x-silverlight-2"がSilverlight2.0の指定です。HTTPサーバーのMIMEタイプに拡張子xapを設定する必要があります。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=127&gt;source&lt;/TD&gt;
&lt;TD class="" vAlign=top width=363&gt;xapのファイル名を指定します。開発中の場合は、ファイル名(拡張子除き)のフォルダを作成します。この例では、「python」フォルダになります。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=128&gt;initParams&lt;/TD&gt;
&lt;TD class="" vAlign=top width=363&gt;DynamicApplicationに対してカンマ区切りで複数のパラメータを指定します。これが動的言語を起動するために必須のものです。&lt;BR&gt;&lt;STRONG&gt;start:&lt;/STRONG&gt;複数のスクリプトファイルがあれば、エントリーポイントとなるスクリプトファイルを指定します。defaultは、「app」になっています。&lt;BR&gt;&lt;STRONG&gt;debug：&lt;/STRONG&gt;エラー時にスタックトレースを出力するかどうかを指定します(デバッグ用です)。defaultは、falseです。&lt;BR&gt;&lt;STRONG&gt;reportError：&lt;/STRONG&gt;エラーが発生した場合にエラー内容を出力するHTML要素のIDを指定します。この例では「errorLocation」を指定しており、HTML内でdivタグで定義しています。defaultはnullです。&lt;BR&gt;&lt;STRONG&gt;exceptionDetail：&lt;/STRONG&gt;例外の詳細情報(マネージ スタックトレース)を出力するかどうかを指定します。defaultは、falseです。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=129&gt;onerror&lt;/TD&gt;
&lt;TD class="" vAlign=top width=363&gt;Silverlightランタイムのエラーを処理するjavascript関数を指定します。&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;BR&gt;Silverlight2.0で動的言語を使う上で重要なのが、initParamsパラメータになります。ここで動的言語の起動用の様々な指定を行っています。このパラメータは、Microsoft.Scripting.Silverlight.DynamicApplicationクラスのコンストラクタに渡されます。独自のパラメータを指定した場合は、DynamicApplicationクラスのInitParamsプロパティを使って辞書オブジェクトへアクセスすることができますので、起動時に自分用のパラメータを指定することも可能です。&lt;/P&gt;
&lt;P&gt;python言語のテンプレートでは、python.xapが指定されていますのでpythonフォルダ内にapp.pyがあることになります。このapp.pyの内容を以下に示します。&lt;BR&gt;&lt;PRE&gt;from System.Windows import Application
from System.Windows.Controls import UserControl

class App:
  def __init__(self):
    root = Application.Current.LoadRootVisual(
                         UserControl(), "app.xaml")
    root.Message.Text = "Welcome to Python and Silverlight!"

App()
&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;Pythonコードで、Appクラスを定義してからAppクラスのインスタンスを作成するようになっています。ここでのポイントは、System.Windows.Applicationクラスの使い方にあります。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;from 文は、C#のusing文、VBのImports文に相当します。 
&lt;LI&gt;Application.CurrentプロパティでApplicationクラスのインスタンスを取得します。このインスタンスがDynamicApplicationクラスになっています。 
&lt;LI&gt;LoadRootVisualメソッドを使ってXAMLファイルを読み込んでいます。このメソッドの1つ目の引数がUserControlのインスタンスで、2つ目の引数がXAMLのファイル名です。戻り値に、XAMLファイルで指定したルートオブジェクトが戻ります。1つ目の引数に指定するオブジェクトは、XAMLファイルのルートで指定したものになります。よって、Canvasタグが指定されている場合はCanvasオブジェクトになります。 
&lt;LI&gt;root.Message.Textプロパティに文字列を指定しています。Messageオブジェクトは、XAMLファイルで定義されたTextBlockのインスタンスです。&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;以下にapp.xamlを示します。&lt;BR&gt;&lt;PRE&gt;&amp;lt;UserControl x:Class="System.Windows.Controls.UserControl"
    xmlns="http://schemas.microsoft.com/client/2007"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"&amp;gt;
  &amp;lt;Grid x:Name="layout_root" Background="White"&amp;gt;
    &amp;lt;TextBlock x:Name="Message" FontSize="30" /&amp;gt;
  &amp;lt;/Grid&amp;gt;
&amp;lt;/UserControl&amp;gt;
&lt;/PRE&gt;&lt;BR&gt;このapp.xamlをapp.pyと同じフォルダに配置します。従ってPythonのコードで指定しているXAMLファイル名を変更すれば、app.xamlである必要はありません。テンプレート集では、スクリプトファイルの名前がdefaultでappになっているために、XAMLファイルも同じように合わせていると思われます。&lt;BR&gt;app.pyをユニコードのエンコードにして、設定している文字列を日本語にしてみてください。問題なく、日本語が表示されます。Silverlightで日本語を含むマルチバイトの言語を使用するには、スクリプトファイルのエンコードをユニコードにする必要があります。これは、使用する言語に左右されません。Silverlight上の言語実装が、このようになっている模様です。事実、IronPython2.0ベータのインタラクティブシェルなどで試すとファイルエンコーディングを指定して様々なエンコードのスクリプトファイルを処理することができます。よって、Silverlightで動作させるために削減された機能の1つが、スクリプトファイルのエンコーディング指定のようです。 
&lt;P&gt;追伸：サンプルのcollateraldamageのPython版について&lt;BR&gt;ゲームのサンプルですが、Python版を試すとエラーが発生します。リーソースが見つかりませんというものです。エラーが発生しても継続することはできます。このエラーを回避するには、index.html内のonSilverlightError関数に以下を追加する必要があります。&lt;BR&gt;&lt;PRE&gt;  else if (errorType == "ImageError")
  {
      // ImageErrorを握り潰す
      return;
  }
&lt;/PRE&gt;これでリソースイメージエラーが発生しなくなります。&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9010646" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Silverlight Dynamic Language SDK の使い方1</title><link>http://blogs.msdn.com/shozoa/archive/2008/10/19/silverlight-dynamic-language-sdk-1.aspx</link><pubDate>Sun, 19 Oct 2008 10:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9006099</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9006099.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9006099</wfw:commentRss><description>&lt;P&gt;既にご案内したようにSilverlight 2.0に対応したDynamic Language SDKがリリースされています。&lt;A href="http://www.codeplex.com/sdlsdk" target=_blank mce_href="http://www.codeplex.com/sdlsdk"&gt;Codeplexのサイト&lt;/A&gt;には、以下の5種類が公開されています。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;sdlsdk-0.4.0(Everything)：バイナリ、サンプル、ソースが含まれています。&lt;/LI&gt;
&lt;LI&gt;sdlsdk-0.4.0-bin：バイナリのみ。&lt;/LI&gt;
&lt;LI&gt;sdlsdk-0.4.0-samples：サンプルのみ。&lt;/LI&gt;
&lt;LI&gt;sdlsdk-0.4.0-src：ソースコードのみ。&lt;/LI&gt;
&lt;LI&gt;sdlsdk-0.4.0-symblos：デバッグなどで使用するシンボル。&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;開発に利用するには、sdlsdk-0.4.0(Everything)がお勧めでしょう。このパッケージには以下のようなフォルダ構造が含まれています。&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=400 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=133&gt;bin&lt;/TD&gt;
&lt;TD class="" vAlign=top width=265&gt;chiron.exeや使用するdllが含まれます&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=133&gt;samples&lt;/TD&gt;
&lt;TD class="" vAlign=top width=265&gt;サンプルプログラム&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=133&gt;script&lt;/TD&gt;
&lt;TD class="" vAlign=top width=265&gt;起動用のスクリプトと開発用のテンプレート集(templatesフォルダ)&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=133&gt;src&lt;/TD&gt;
&lt;TD class="" vAlign=top width=265&gt;ソースコード(Managed JS除き)&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=133&gt;ルート直下のファイル&lt;/TD&gt;
&lt;TD class="" vAlign=top width=265&gt;Readmeとライセンス&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;BR&gt;テンプレート集を試すには、scriptフォルダでコマンドプロンプトを開いて、「&lt;STRONG&gt;server /b&lt;/STRONG&gt;」を実行するとブラウザが開きます。templates/言語フォルダ/index.htmをブラウザで開くことで、テンプレート集で提供されているプログラムを動かすことができます。&lt;/P&gt;
&lt;P&gt;　テンプレート集で提供されている構造は以下のようなものです。&lt;/P&gt;
&lt;TABLE class="" cellSpacing=0 cellPadding=2 width=487 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=138&gt;javascriptフォルダ&lt;/TD&gt;
&lt;TD class="" vAlign=top width=347&gt;error.js：Silverlightランタイムのエラー時に指定するonSilverlightError関数が定義されています。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=140&gt;言語フォルダ&lt;/TD&gt;
&lt;TD class="" vAlign=top width=347&gt;app.言語拡張子、app.xaml：言語のコードサンプルと単純なXAML(GridとTextBlockだけ)が定義されています。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=141&gt;stylesheetsフォルダ&lt;/TD&gt;
&lt;TD class="" vAlign=top width=347&gt;screen.css、error.css：error.cssはSilverlightランタイムのエラーなどを表示するスタイルシートで、フォントがCourier Newになっています。&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=142&gt;index.html&lt;/TD&gt;
&lt;TD class="" vAlign=top width=347&gt;Silverlightを起動する指定がobjectタグで記述されています。&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;このテンプレートを使ってカスタマイズして、動的言語を使ったSilverlight2 アプリを開発できるようになっています。&lt;/P&gt;
&lt;P&gt;このテンプレートを使って開発するには、scriptフォルダにある「&lt;STRONG&gt;sl.bat&lt;/STRONG&gt;」ファイルを使用するのが簡単です。sl.batの使い方は、scriptフォルダでコマンドプロンプトを開いて以下のようにコマンドを入力します。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;　sl&amp;nbsp; 言語&amp;nbsp; アプリケーションフォルダ&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;言語には、「&lt;STRONG&gt;python&lt;/STRONG&gt;」「&lt;STRONG&gt;ruby&lt;/STRONG&gt;」「&lt;STRONG&gt;jscript&lt;/STRONG&gt;」を指することができます(要は、templatesフォルダ内にある言語フォルダの名前です)。アプリケーションフォルダとは、開発するアプリケーションを格納するフォルダのことです。これで上記のコマンドを実行すると、templatesフォルダで提供されているテンプレート集を指定したアプリケーションフォルダにコピーしてくれます(xcopyです)。これで、必要なコードを記述していけばよいということになります。&lt;/P&gt;
&lt;P&gt;提供されているサンプルを試す場合は、scriptフォルダでコマンドプロンプトを開いて以下のようにserver.batにオプションを付けて実行します。&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;server /d:..\samples /b&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;/dオプションで、開始するフォルダを指定しています。/bオプションは、ブラウザを開く指定です。後は、ブラウザを使って提供されているサンプル(jscript、python、ruby)のフォルダをナビゲートしてindex.htmlを開けば、サンプルプログラムが動作します。&lt;/P&gt;
&lt;P&gt;次回は、実際の開発時の注意点などを含めてまとめていきます。&lt;/P&gt;
&lt;P&gt;#この時点で試されるかたは、スクリプトファイルのエンコードをunicodeにするようにしてください。日本語を扱うには、エンコードがunicodeになっている必要があるからです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9006099" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Silverlight 2.0RTM 用のDynamic Language SDKが公開されました</title><link>http://blogs.msdn.com/shozoa/archive/2008/10/16/dynamic-language-sdk-for-silverlight-2-0rtm.aspx</link><pubDate>Thu, 16 Oct 2008 06:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9001362</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/9001362.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=9001362</wfw:commentRss><description>&lt;P&gt;　Silverlight 2.0 RTM対応のDynamic Language SDKが、もうまもなく公開されるようです。JimmyさんのBlogで、&lt;A href="http://blog.jimmy.schementi.com/2008/10/dynamic-languages-in-silverlight-2-rtw.html" target=_blank mce_href="http://blog.jimmy.schementi.com/2008/10/dynamic-languages-in-silverlight-2-rtw.html"&gt;リリースの案内&lt;/A&gt;が掲載されています。日本時間では、明日でしょうか。codeplexの&lt;A href="http://www.codeplex.com/sdlsdk/" target=_blank mce_href="http://www.codeplex.com/sdlsdk/"&gt;サイト&lt;/A&gt;で公開されますので、今日・明日にでもUpされるのでしょう。&lt;BR&gt;と書きながらチェックしたらUpされました。バージョンは、10月初めに公開された0.4.0のままです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9001362" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Dynamic Language SDK 0.4.0 が公開されています</title><link>http://blogs.msdn.com/shozoa/archive/2008/10/03/release-dynamic-language-sdk-0-4-0.aspx</link><pubDate>Fri, 03 Oct 2008 07:23:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8974984</guid><dc:creator>shozoa</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8974984.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8974984</wfw:commentRss><description>&lt;P&gt;Silverlight2.0 RC0に対応した&lt;A href="http://www.codeplex.com/sdlsdk/" target=_blank mce_href="http://www.codeplex.com/sdlsdk/"&gt;Dynamic Language SDK 0.4.0&lt;/A&gt;が公開されています。&lt;BR&gt;&lt;BR&gt;お知らせまで。&lt;BR&gt;&lt;BR&gt;追伸:まだ、DLRの変更点とかまで調べきれていません。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8974984" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>ASP.NET 動的言語サポートのリフレッシュ</title><link>http://blogs.msdn.com/shozoa/archive/2008/09/26/asp-net-dynamic-lnaguage-support-refresh.aspx</link><pubDate>Fri, 26 Sep 2008 04:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8965827</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8965827.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8965827</wfw:commentRss><description>&lt;P&gt;　昨年にリリースされたASP.NET FutureというCTPにDynamic Languageサポートが含まれていたのを皆さんは、覚えていらっしゃるでしょうか。その後は、特に新しいCTPが出るでもなく経過しておりましたが、codeplexの&lt;A href="http://www.codeplex.com/aspnet" target=_blank mce_href="http://www.codeplex.com/aspnet"&gt;ASP.NETプロジェクト&lt;/A&gt;から更新されたものがリリースされています。提供されているのは、以下の3種類です。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;ASP.NET WebForms IronPython サンプル&lt;/LI&gt;
&lt;LI&gt;ASP.NET MVC IronPython サンプル&lt;/LI&gt;
&lt;LI&gt;ドキュメント&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;昨年のCTPのようにVisual StudioのIDEに統合したプロジェクトの提供ではありませんが、確かにPythonのコードがWebフォームのコードビハインドとして動作するようになっています。サンプルを既存のWebサイト(ファイルシステム)としてVisual Studioで開けば、デバッグも含めて実行することができます。&lt;/P&gt;
&lt;P&gt;　このサンプルに含まれているDLRは、IronPython 2.0ベータ4相当(厳密には、ベータ4とベータ5の中間くらいかも知れません)の模様です。というのもネームスペースを調べると、System.Scriptingになっているからです。そしてサンプルのBinフォルダにMicrosoft.Web.Scripting.dllが提供されています。web.configを見ると、このdllを使ってhttpモジュールを登録しています。登録しているhttpモジュールが、DLRをホスティングすることでIronPythonのLanguageContextを使用するようになっています。&lt;BR&gt;ご興味があれば試してみてください。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8965827" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category></item><item><title>DLR ベータ5 について</title><link>http://blogs.msdn.com/shozoa/archive/2008/09/19/dlr-beta5-s-detail.aspx</link><pubDate>Fri, 19 Sep 2008 11:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8958318</guid><dc:creator>shozoa</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8958318.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8958318</wfw:commentRss><description>&lt;P&gt;IronPython 2.0ベータ5がリリースされてから、DLRにどのような変更が行われているかを調べてみました。一番、大きな変更はネームスペースの変更なのですが、ベータ4に対して以下のようになっています。&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;System.Scripting-&amp;gt; Microsoft.Scripting&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Systemというネームスペースが廃止されて、元のMicrosoftというネームスペースに戻っています。それからScriptRuntimeクラスからCreateメソッドが廃止されて、コンストラクタがScriptRuntimeSetupクラスの引数を取るようになっています。この関係でWell Known Languageを指定するScriptRuntimeSetupクラスのコンストラクタからbool引数が廃止されています。この代わりにReadConfigurationメソッドが追加されています。この変更に伴ってScriptRuntimeクラスにもCreateFromConfigurationメソッドが追加されています。この追加されたメソッドを使用するには、app.configに以下の記述を行います。&lt;BR&gt;&lt;PRE&gt;&amp;lt;configuration&amp;gt;
  &amp;lt;configSections&amp;gt;
    &amp;lt;section name="microsoft.scripting"
        type="Microsoft.Scripting.Hosting.Configuration.Section,
              Microsoft.Scripting, Version=1.0.0.5000,
              Culture=neutral, PublicKeyToken=null"
              requirePermission="false" /&amp;gt;
  &amp;lt;/configSections&amp;gt;

  &amp;lt;microsoft.scripting&amp;gt;
    &amp;lt;languages&amp;gt;
      &amp;lt;language names="IronPython;Python;py"
                   extensions=".py"
                   displayName="IronPython 2.0 Beta"
                   type="IronPython.Runtime.PythonContext,
                   IronPython, Version=2.0.0.5000,
                   Culture=neutral, PublicKeyToken=null" /&amp;gt;
    &amp;lt;/languages&amp;gt;

    &amp;lt;options/&amp;gt;
  &amp;lt;/microsoft.scripting&amp;gt;
&amp;lt;/configuration&amp;gt;
&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;languageタグに&lt;STRIKE&gt;仕様&lt;/STRIKE&gt;使用する言語を記述しておくことで、ReadConfigurationやCreateFromConfigurationメソッドでScriptRuntimeSetupクラスをWell Known Languageで初期化することができます。IronRuby svn 148のソースツリーは、既にこの対応が行われていて、Python、Ruby、JScript、VB、ToyScript&lt;STRIKE&gt;の&lt;/STRIKE&gt;が記述されています(VBのリリース状況がどうかは不明です)。&lt;/P&gt;
&lt;P&gt;それからObjectOperartions.GetMemberNamesメソッドは正常に動作するようにバグ対応が行われていました。また、Expressions.ExpressionクラスからCodeContextメソッドが削除され、Microsoft.Scripting.Ast.UtilsクラスにCodeContextメソッドが追加されています。細かな変更は他にもありますが、ホスティングする上では上記の内容程度で対応することができます。TechEdの独自言語サンプルなどのベータ5への移植は、それほど手間がかかりませんので、試される方は試してみてください。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8958318" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>IronPython 2.0 Beta5 がリリースされました</title><link>http://blogs.msdn.com/shozoa/archive/2008/09/18/ironpython-2-0-beta5.aspx</link><pubDate>Thu, 18 Sep 2008 13:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8957082</guid><dc:creator>shozoa</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8957082.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8957082</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://www.codeplex.com/IronPython/Release/ProjectReleases.aspx?ReleaseId=15625" target=_blank mce_href="http://www.codeplex.com/IronPython/Release/ProjectReleases.aspx?ReleaseId=15625"&gt;ベータ5&lt;/A&gt;がリリースされました。リリースノートによると、もうじきRC1が出来ると書いてあります。残っていたバグ対応とDLRのネームスペース変更などが行われていると書かれています。まずは、お知らせまで。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8957082" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category></item><item><title>DLR Console を使って時計をドラッグするサンプル</title><link>http://blogs.msdn.com/shozoa/archive/2008/09/03/dragging-clock-on-dlr-console.aspx</link><pubDate>Wed, 03 Sep 2008 11:49:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8921656</guid><dc:creator>shozoa</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8921656.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8921656</wfw:commentRss><description>&lt;P&gt;前回のエントリで Silverlight Dynamic Language SDK 0.3.0がリリースされたと記載しました。このSDKで提供されているサンプルにDLR Consoleがあります。もっともDLR Consoleは、SDK 0.2.0(Silverlight 2.0 ベータ2と一緒に提供されたものです)で動作するようになっています。SDK 0.3.0に含まれているDLRを調べると、IronPythonのChangeset38029以降のもののようです。このためIronRubyプロジェクトで今日時点で公開されているSVN138よりも新しいDLRになります。このDLRでは、ホスティングAPIなどの細かな変更やネームスペースの変更が行われています。&lt;/P&gt;
&lt;P&gt;SDK 0.3.0のDLR Consoleでは、時計をドラッグするというRuby用のスクリプトが含まれています。時計をドラッグするサンプルは、&lt;A href="http://blog.jimmy.schementi.com/2008/08/dragging-elements-in-silverlight-with.html" target=_blank mce_href="http://blog.jimmy.schementi.com/2008/08/dragging-elements-in-silverlight-with.html"&gt;Jimmyさんのブログ&lt;/A&gt;に解説があり&lt;A href="http://www.flickr.com/photos/jschementi/2802715720/" target=_blank mce_href="http://www.flickr.com/photos/jschementi/2802715720/"&gt;ビデオのリンク&lt;/A&gt;やDLR Consoleを試すリンクなどがあります(英語キーボードなのでご注意ください)。このサンプルを動かしているのが、以下の画像になります。&lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_2.png" mce_href="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_2.png"&gt;&lt;IMG style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=204 alt="DLR Console" src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/shozoa/WindowsLiveWriter/DraggingClockonDLRConsole_FABE/DLR%20Console_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&lt;BR&gt;ここで入力しているコードを以下に記載します(Jimmyさんのブログには、一か所不足しているコードがありますので)。&lt;BR&gt;&lt;PRE&gt;require 'lib/clock'
$clock = Clock.show
require 'lib/drag'
Drag.new($clock.canvas).enable
&lt;/PRE&gt;
&lt;P&gt;&lt;BR&gt;これで私は上記のサンプルを動作させることができました。&lt;BR&gt;ちなみに今日時点でIronPythonの最新のChangesetは38690がUpされています。&lt;/P&gt;
&lt;P&gt;追伸:実はTechEdでこのデモをお見せしようとしたのですが、時間が足りなくて忘れてしまいました。Peer Talkで一部の方に受けていたのが、このサンプルです。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8921656" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/TechEd/default.aspx">TechEd</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item><item><title>Dynamic Language SDK 0.3.0 がリリースされています</title><link>http://blogs.msdn.com/shozoa/archive/2008/09/01/release-dynamic-language-sdk-0-3-0.aspx</link><pubDate>Mon, 01 Sep 2008 11:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8916007</guid><dc:creator>shozoa</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/shozoa/comments/8916007.aspx</comments><wfw:commentRss>http://blogs.msdn.com/shozoa/commentrss.aspx?PostID=8916007</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://www.codeplex.com/sdlsdk/" target=_blank mce_href="http://www.codeplex.com/sdlsdk/"&gt;Dynamic Language SDK&lt;/A&gt; のVer0.3.0がリリースされています。Dynamic Language SDKとは、DynamicSilverlight SDKと呼んでいたものの名称が変更されたものです。実行環境として、Silverlight 2.0 ベータ2が必要になります。ソースコードも公開されていまして、含まれているDLRのソースコードを見るとIronPython2.0 ベータ4よりも開発が進んだものになっています。含まれるバイナリには、IronRuby、IronPython、ManagedJScriptがあり、そのままでSilverlight2.0ベータ2環境で動作させることができます。&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8916007" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/shozoa/archive/tags/DLR/default.aspx">DLR</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/.NET/default.aspx">.NET</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/Python/default.aspx">Python</category><category domain="http://blogs.msdn.com/shozoa/archive/tags/IronRuby/default.aspx">IronRuby</category></item></channel></rss>