問題タブ [dynamic-language-runtime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - MetaObjectコンストラクターの制限パラメーターの目的?
現在、DLR 言語の実装に問題があり、その言語で定義されたメソッドへの後続の呼び出しが、そのメソッドの最初の呼び出しで使用されたのと同じ入力パラメーターで発生します。
だから...私の言語でこれを行うと:
...出力は次のとおりです。
整数
整数
私が期待する場所:
整数
小数
この問題は、次のことが原因であると思われます (ただし、まだ確認できていません)。
私のコール バインダー (InvokeAction サブクラス) は、適切な Call Expression を生成し、その式と Restrictions.Empty を含む新しい MetaObject を返します。
したがって、Restrictions パラメーターは、このコンストラクトがこのメソッドの後続の呼び出しでいつ再利用できるかを DLR に通知し、固有の制限を設けていないため、最初のコンストラクトが常に再利用される (申し訳ありませんが、ここでの私の用語はおそらく間違っています...うまくいけば、あなたはその考えを理解するでしょう)
だから...私は、各パラメーターに対して生成された制限のマージを使用する必要があると考えています...タイプごと、またはおそらくインスタンスごとに。
誰かが私の考えを肯定または否定できますか? 私が見ている動作について、私が探求すべき他の可能性はありますか?
ティア...
log4net - IronPythonから.NETコードを呼び出し、log4netアセンブリのロード中にエラーが発生する
log4netを構成し、log4netを使用する.NETコードを呼び出すIronPythonスクリプトがあります。log4netは適切に構成されています。これは、初期化されたことを示すメッセージをログに記録するためです。しかし、.NETクラスを使用しようとすると、「ファイルまたはアセンブリを読み込めませんでした」log4net、...」と報告されます。
いくつかの有用な事実:
- log4netがGACにインストールされていません
- .NETクラスは正しいです、私は他の.NETコードからそれを呼び出しました
- IPYにロードされているlog4netアセンブリは、私の.NETアセンブリと同じフォルダーにあります。
- filemonは、すべてのlog4net.dllアクセスが予期された場所から正常に解決されたことを示しています
- fuslogvwはバインディングエラーを報告しません
- AddReferenceToFileAndPath()を使用して、log4net参照と.NETアセンブリ参照の両方を追加しています。
奇妙なことに、log4netアセンブリがすでにロードされています。別のAppDomainに.NETアセンブリをロードしている必要があります。それがどのように機能するかを知っておくと役に立ちます。
そこに何かアイデアはありますか?ありがとう。
.net - Expression.Dynamic と Operators.Assign?
Expression.Dynamic() を使用して代入操作を構築しようとしています...これを使用して、言語の特定のカスタム型インスタンスに値型セマンティクスを選択的に提供したいと考えています。実際の型がわからないため、「静的」(?) 式でこれを行うことはできません (MetaObject インスタンスとその LimitType が必要です... したがって、 Expression.Dynamic() )。
これは私にとってはうまくいきません... Expression.Assign() を使用して OperationBinder サブクラスから MetaObject を構築した場合、何もしません。
頭。ドキドキ。の上。デスク。為に。時間。
これがサポートされている動作なのか、それとも間違ったツリーを鳴らしているのか疑問に思っていますか?
ありがとう...
scripting - リアルタイムスクリプト言語+MSDLR?
手始めに、私がやろうとしていることを皆さんに知らせなければなりません。私が取り組んでいるプロジェクトには、カスタムスクリプトシステムを構築する必要があるという要件があります。これは、アプリケーションを使用しているプログラマー以外の人が使用するものであり、可能な限り自然言語に近いものにする必要があります。たとえば、ユーザーがカスタムシミュレーションを実行して出力をプロットする必要がある場合、ユーザーが作成するコードは次のようになります。
変数input1は10です。変数input2は20です。
変数value1はAVERAGE(input1、input2);です。
変数condition1はtrueです。condition1の場合、PLOT(value1);
あまり意味がないかもしれませんが、それは単なる例です。AVERAGEとPLOTは私たちが定義したい関数であり、それらを変更したり、実際にそれらがどのように機能するかを確認したりすることは許可されるべきではありません。このようなことはDLRで可能ですか?そうでない場合は、他にどのようなオプションがありますか(ANTRLから始めて文法を定義してから次に進みますか?)将来的には、これもXBAPとWPFを使用して実行する必要がある可能性があるため、これも考慮する必要がありますが、dlrとxbapについてはあまり見ていません。ありがとう、そしてうまくいけば、これはすべて理にかなっています。
Luaは、彼らがすでに慣れているものとは異なるため、オプションではありません。
ラルフ、それは反応的になり、正直なところ、結果がユーザーに返される時間枠は、2週間または1か月(非常に複雑な数学関数)までずっと1/100秒である可能性があります。
基本的に、彼らはすでに購入したシステムを持っており、必要なもののいくつかを実行し、上記のことを実行するカスタムスクリプト言語が含まれており、新しいものを学ぶ必要はありません。基本的には、それをコピーするだけです。機能を追加します。ANTRLから始めてそこから行くと思います。
.net - DLR はどのように機能しますか?
.Net 4 には DLR (動的言語ランタイム) があります。Iron Python や Iron Ruby などに使用されることはわかっています。でもそれだけでいいの?
DLR はどのように役立ちますか?
DLR はどのように機能しますか?
.net - ホストされた環境でのインターフェースのIronPythonスクリプトのクエリ
IronPythonをホストするC#で記述されたアプリケーションを開発しています。私が計画しているのは、ユーザーがPythonスクリプトを作成することです。このスクリプトには、事前定義されたインターフェイスを実装するクラスが含まれています。
何かのようなもの:
C#コードでインターフェイスを定義します。
Pythonコードでインターフェースを実装します。
私のアプリケーションでは、Pythonスクリプトをロードし、それらのスクリプトのクラスによって実装されたメソッドを実行します。
知りたいのですが、Pythonスクリプトで指定されたインターフェイスを実装するすべてのクラスへのハンドルを取得するにはどうすればよいですか?
例:C#ですべてを行う場合、私は私を助けるために反射を持っており、アセンブリを突き出して次のようにすることができます:
アセンブリの代わりにIronPythonスクリプトを扱っている場合、どうすれば同じことができますか?ObjectOperationsとScriptScopeを使用すると、クラスの名前がわかっていれば(ここで説明します)、クラスへのハンドルを取得できることはわかっていますが、より堅牢なものを探しています。
python - 価格を計算するためのビジネス ルール
私が働いているビジネスはオンライン小売業者で、現在、特に製品の顧客価格を計算するプロジェクトに取り組んでいます。おそらく次のようなサービスを作成します...
まったく同じように見えなくても心配はいりませんが、一般的な考え方は理解できます。このサービスの実装では、この価格を計算するためのいくつかのルールが存在します。これらのルールは頻繁に変更される可能性があり、将来的には、これらのルールに対してある種の DSL を作成する必要があるでしょう。現時点では、営業部門などから実際にどのような変更が要求されるかはよくわからないので、DLR をホストし、多くの価格計算を含む Iron Python または Iron Ruby スクリプト ファイルを用意することを考えています. このようにして、価格計算ルールを迅速に更新し、ビジネスの人々が必要とする DSL の種類を把握することもできます。
asp.net - DLR 用のマネージ JScript はどこでダウンロードできますか?
動的言語ランタイムの最新リリース (0.9 安定版) には、IronPython と IronRuby が含まれていますが、Managed JScript は含まれていません。
ASP.NET や WPF で使用するマネージ JScript の最新リリースをダウンロードできる場所を知っている人はいますか?
ご存じないかもしれませんが、JScript.NET とマネージ JScript はあまりにも異なるものです。私が探しているのはマネージ JScript です。
.net - IronPython - JSON の選択
IronPython 2.0.1 で JSON を処理する最良の方法は何ですか。ネイティブの Python "標準ライブラリ" json はまだ実装されていないようです。
Newtonsoft Json.NET ライブラリを使用したい場合、どうすればよいですか? アセンブリを GAC に追加することはできますが、他にどのような選択肢がありますか?