Dynamic Language Runtime上の言語として、IronPython、IronRubyなどの開発が行われています。これらの言語をC#やVBなどで利用するには、Microsoft.Scripting.dllを利用します。最初に行うのは、言語プロバイダを取得します。
using Microsoft.Scripting.Hosting; LanguageProvider ipy = ScriptDomainManager.CurrentManager.GetLanguageProvider("py"); //もしくは 以下のコード LanguageProvider ipy = ScriptDomainManager.CurrentManager.GetLanguageProviderByFileExtension("py");
ScriptEngine eng = ipy.GetEngine();
ここで利用したLanguageProviderやScriptEngineクラスがMicrosoft.Scripting.Hostingネームスペースに定義されており、IronPythonやIronRubyが継承しているのは云うまでもありません。この継承関係を使って、SilverLight1.1アルファのサンプルであるDLR Consoleは、IronPythonとManaged JScriptの言語を切り替えられるようにしているのです。
PingBack from http://msdn.blogsforu.com/msdn/?p=4634
昨日の エントリ でDLRを使ったホスティングを簡単に説明しましたが、少し情報が古かったです。具体的には、IronPython 2.0A6までの話で、A7から変更になっています。 具体的には、A7からLangagueProviderクラスが廃止になり、ScriptEngineクラスのメソッドが変更になっています。具体的には、ScriptDomainManagerからスクリプトエンジンのインスタンスを取得します。
昨日の エントリ でDLRを使ったホスティングを簡単に説明しましたが、少し情報が古かったです。具体的には、IronPython 2.0A6までの話で、A7から変更になっています。 A7からLangagueProviderクラスが廃止になり