問題タブ [expression-evaluation]

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.

0 投票する
1 に答える
245 参照

parsing - 論理式評価器を書き始める

特定の式に対する特定の論理式の適用可能性を計算する論理式評価器を開発したいと考えています。例えば、

式は次の形式にすることができます

(A AND B) NOT C

この式は、次のような別の式で評価する必要があります

(B AND C) OR D

上記の場合、2 番目の式が最初の式を完全に満たしていないため、評価の結果は FALSE になります。

式は、正規表現の [A-Za-z0-9] のように、数値範囲 R(1-100) を持つことができるなど、より複雑にすることもできます。これは、式の適用性が範囲全体で有効であることを意味します。

したがって、式は次のように複雑になる可能性があります

(A AND B) OR C AND R(1-100) NOT R(80-100)

そして、これは次のような式で評価する必要があります

(C OR D) AND B NOT R(1-7) AND R(25-100)

ある式が別の式を満たす場合には、明確なルールがあります。したがって、式評価器を作成する必要がある場合、最善の方法は何でしょうか。今までやったことのないことなので、一からやりたいと思っています。関連するポインター、または同様の実装は非常に役立ちます。

0 投票する
1 に答える
349 参照

haskell - Haskell でのステートメント評価トレース

一般的なステートメントを取り込んで評価し、評価されるたびに各ステップを表示するプログラムを作成しようとしています。

たとえば、一連の割り当てステートメントがある場合、次のように実行する必要があります。

  • 割り当てステートメント 1 の評価

  • 評価結果を表示 1

  • 割り当てステートメント 2 の評価

  • 評価結果の表示 2

現在、最終結果のみを表示しています。コードは

編集:

使用される残りのデータ型は次のとおりです。

誰でも助けてもらえますか?前もって感謝します!

0 投票する
1 に答える
242 参照

string - Maple におけるグローバル変数とローカル変数の評価の問題

なぜかメイプルコード

生産する

一方 (同じですが、abc が GLOBAL 変数になりました)

生成する (私が欲しいもの)

ローカル変数を含む連結文字列を評価するにはどうすればよいですか? 助けてくれてありがとう!:)

0 投票する
8 に答える
2540 参照

java - ++i+i++評価

この投稿のために混乱が生じました。著者が投稿を更新したところ、結果が明らかになりました。 結論: Java は式を左から右に評価します

閉まっている!

式の評価は右から左に行われるため、次のコードは に格納5する必要がありjます。

しかし、出力として6が得られるため、右から左への評価のアイデアを再考する必要があります。ここで理論を説明してください。

0 投票する
1 に答える
3763 参照

haskell - Haskell の式評価ツリー

今日の試験で、Haskell で式評価ツリーを作成するように求められました。通常、答えは次のように簡単です。

それを評価するには、次のような関数を使用するだけです。

ただし、今日、データ型が与えられました。

だから私は、私ができる式ツリーを作成すると仮定しました:

そして、同じeval機能を使用します。しかし、私はその関数を書いて GHCI にロードしましたが、動作していないようです。これが機能しない理由を誰か説明できますか?

0 投票する
1 に答える
1408 参照

delphi - Delphi RTTI を使用した式の作成と評価

RTTI を有効にしてコンパイルされたクラスを使用して、ユーザーが式を定義できるようにするというタスクに直面しています。簡単に言いますと。

そして、指定された式で動物を評価するルーチンがあります

ユーザー表現は (TAnimal.Weight * TAnimal.Height)/(TAnimal.Weight + TAnimal.Height)

これで、RTTI コンテキストを使用して TAnimal を取得し、動物の身長と体重の値を取得できます。ただし、ユーザーが提供した式をどのように評価できますか??

アプリケーションの起動時と実行時にユーザー式を準備するために使用できるメカニズムはありますか? 動物のインスタンスを送信して値を取得するだけです。ユーザーはいつでも式を自由に変更でき、アプリケーションは式を評価する必要があります。

Delphi XE3 を使用しています。

0 投票する
2 に答える
1236 参照

expression-evaluation - juel 式の検証 (vs Janino)

すべての javax.el juel 専門家に電話する :-)

JUEL を使用して、純粋な Java コンテキストで式を評価したいと考えています。これらの式は通常、数学的なものであり、UI を介してユーザーによって提供されます。追加された側面は、これらの式が構成の一部であり、後で別のプロセスの一部として評価されるだけであるということです。また、式で使用される変数値は、このプロセスの一部として後でのみ使用できます。そのため、式の作成時にユーザーに基本的な検証を提供して、ユーザーが自分の式が評価時に失敗しないことを認識できるようにしたいと考えています。

以前はこれに Janino を使用していましたが、これを JUEL に置き換えています。はるかに高速です (そして、通過するために多くの評価があり、スループットが重要であるなど)。また、JUEL はまったく同じ式構文で動作します。つまり、バックエンドにプラグインでき、下位互換性があります。${..}(古い Janino 式を追加するだけです。

ただし、JUEL には 1 つの問題があります。使用されている式を評価する前に検証する方法はありますか?

つまり、次のようなものです:

を実行するとprintln(result)、3 が正しく出力されます。

Janino を使用すると、式 a+b をクックできますが、それが不正な形式であるか、不正な戻り値の型 (つまり double ではない) を返す場合、例外が発生します。次に、これを使用してその場でユーザー入力を検証し、構成を保存するなどの前にユーザーにエラーを修正させることができます。

JUELでこれを行う方法はありますか?または、別のアプローチを知っている人はいますか?

ありがとうございました、

ルーカス