プログラム内で使われる「評価」という言葉は、変数や定数、関数内の値を計算するときも使われるし、
関数に指定していた引数を利用するときも使われるし、多義的で個人的に言うとふわふわしていて、
なんどか質問してみたものの中々整理つかない単語であります。評価という言葉を利用しているときもいまいち意味を噛みしめて使っているかというと疑問が残ります。
なぜ評価という単語は、色々な意味を含有するのでしょうか。演算なら「演算」、引数を利用するのなら「引数を利用する」と説明するのは、いけないことなのでしょうか。
評価という言葉は、とても汎用的なので使われたときは、文脈で察して含有している意味を選ぶ必要があります。
ここで質問ですが演算だったり引数を利用してみたり色々な意味を含有する評価という言葉自体を説明するとどうなりますか。それとも文脈で察するべきなのでしょうか。
またこの言葉に関連して「評価値」という言葉の意味も教えてください。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/22 12:37

回答6件
0
ベストアンサー
Zuishinさんがすでに「ベスト」を書かれているので、余計かも知れませんが……。
「評価する」とは、「式の値を求める」ことです。
変数そのものも「式」です。つまり、
a = b;
は「bを評価し、結果をaに代入する」と
読みます。
関数を呼び出すことも「式」です。
a = f(); は
「関数f()の評価結果をaに代入する」です。
「評価」という語に曖昧なところはありません。
投稿2016/07/22 13:20
総合スコア711
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
演算の結果を出すことを評価と言います。引数を利用することではありません。引数は評価してから利用するのです。
投稿2016/07/22 11:36
総合スコア28673
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

0
厳密な定義の意味を知りたいのであればStructure and Interpretation of Computer Programs(通称:SICP、邦題:計算機プログラムの構造と解釈)を読むと良いでしょう。日本語訳のPDFがありますので、リンクを張っておきます。
https://github.com/minghai/sicp-pdf
他にも、最初のリンクであるWikipediaに他の日本語訳のリンクがありますので、参考にしてください。
投稿2016/07/22 13:04
総合スコア21741
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
"Evaluate" を翻訳したのが「評価」です。「演算の結果を出す」という意味でしょうか。
「関数に指定していた引数を利用するとき」にも「評価」と言うことがあるのは、それが「演算の結果を出す」に当てはまるからです。
多くのプログラミング言語において、「定数だけ」「引数だけ」も「式」です。
たとえば javascript ES7 の仕様書では以下のように: (日本語はいま適当に選びました間違ってるかもしれません)
http://www.ecma-international.org/ecma-262/7.0/index.html#sec-comma-operator
「式」とは 「代入式」または「式, 代入式」という形
「代入式」とは「条件式」または「Yield式」または「アロー式」または「左辺式=
代入式」または「左辺式 代入演算子 代入式」という形
「条件式」とは「論理和式」または「論理和式?
代入式:
代入式」という形
「論理和式」とは「論理積式」または「論理和式||
論理積式」という形
「論理積式」とは「ビットOR式」または「論理積式&&
ビットOR式」という形
「ビットOR式」とは「ビットXOR式」または「ビットOR式|
ビットXOR式」という形
「ビットXOR式」とは「ビットAND式」または「ビットXOR式^
ビットAND式」
「ビットAND式」とは「比較式」または「ビットAND式&
比較式」
「比較式」とは「シフト式」または「比較式<
シフト式」または「比較式>
シフト式」……
「シフト式」とは「加減式」または「シフト式<<
加減式」……
「加減式」とは「剰余式」または「加減式+
剰余式」または「加減式-
剰余式」
「剰余式」とは「べき乗式」または「剰余式 乗除演算子 べき乗式」
「べき乗式」とは「単項式」または「更新式**
単項式」
「単項式」とは「更新式」または……「+
単項式」または「-
単項式」……
「更新式」とは「左辺式++
」または「左辺式--
」
「左辺式」とは「new式」または「Call式」
「new式」とは「Member式」または「new
new式」
「Member式」とは「Primary式」または「Member式」[
式]
」または 「Member式.
識別名」……
「Primary式」とは「this
」または「識別子参照」または「定数」……
「識別子参照」とは「識別子」またはyield
「識別子」とは「識別名」ただし予約語でない
識別子参照を評価すると、その参照の値を返す (つまり、変数や引数の値を返す)
投稿2016/07/22 13:55
総合スコア2493
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/22 14:12
2016/07/22 14:30

0
「評価する」とは「評価値を出す」事です。
「一部の文」と「全ての式」には評価値が設定されており、ブラウザの開発者ツールでコンソールを開いてコードを1行ずつ実行すれば評価値が返ってきます。
JavaScript
11; // 1 2(1).toString(); // "1" 3Number('1'); // 1 4 5(function () {} ()); // undefined (返り値を指定しない関数の評価値は undefined となる) 6['a', 'b', 'c'].push('d'); // 4 7 81, 2, 3; // 3 (カンマ演算子の評価値は最後の式である) 9var i = 1 + 2; // 3 (var宣言は右辺の評価値を代入する。var宣言の評価値は代入した値となる。) 10while (i < 9) { i++; } // 8 (while は評価値を持たない。8 は i++ の評価値。)
私の読解力の問題かもしれませんが、過去の回答で評価は、演算の結果であると認識を得てしまったのですがこれは間違いであるとの認識で合っておりますか。
「評価」と「演算」は別の概念です。
「関数の返り値」「代入文の評価値」など、演算しなくても評価する場合があります。
Re: aaaaaaaa さん
投稿2016/07/26 03:42
編集2016/07/26 03:56総合スコア18194
0
「演算」と「評価」は似た意味ですが、
前者は過程、後者は結果に重点を置いた表現です。
いろいろなプログラミング言語に「eval」という関数(メソッド)があり、
これは「evalで評価する」と「評価」の表現が慣習的に使われています。
それまで足したり削ったり、文字列を演算してきたけれど、
文字列としていったん確定して、プログラムとして「評価」する。
これをたとえると、こういう気持ちだろうと思います。
家で食器として使ってきた皿が、じつは由緒あると聞き、
鑑定士に美術品として「評価」してもらう……。
つまり、過去から進行してきた「演算」の流れをいったん完了させ、
確定した結果に注目するとき、「評価」という言葉を使います。
投稿2016/07/22 12:38
総合スコア5592
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。