「非正格」の版間の差分

提供:MonoBook
ページの作成:「'''非正確'''(ひせいかく)とは、プログラミングにおいて関数引数が関数本体の評価で実際に使われるまで評価さ...」
 
編集の要約なし
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
'''非正確'''(ひせいかく)とは、[[プログラミング]]において[[関数]]の[[引数]]が関数本体の評価で実際に使われるまで評価されないことをいう。
'''非正確'''(ひせいかく)とは、[[プログラミング]]において[[関数]]の[[引数]]が関数本体の評価で実際に使われるまで評価されないことをいう。最近では「[[遅延評価]]」や「[[短絡評価]]」と呼ばれることが多い。
最近では「[[遅延評価]]」や「[[短絡評価]]」と呼ばれることが多い。
 
== 正格評価(Strict Evaluation / Eager Evaluation)==
関数を呼び出す直前に引数をすべて計算する。
 
== 遅延評価(Lazy Evaluation) ==
必要になるまで計算を遅らせる。
 
== 「遅延評価」と「短絡評価」の違い ==
「遅延評価」と「短絡評価」は厳密にはこれらは異なる概念です。なお、こんな細かいこと気にしていたら確実にハゲます。
 
=== 遅延評価(Lazy Evaluation)===
必要な時まで計算しない技術全般。パフォーマンス向上や、無限リストを扱う場合などに有効。
 
=== 短絡評価(Short-circuit Evaluation)===
「&&」や「||」などの論理演算子において、左辺の値だけで結果が決まる場合、右辺を評価しない挙動。これも評価を遅らせる(またはスキップする)点では「遅延」の一種ですが、主に論理演算の最適化を指します。
 
[[category: プログラミング]]

2026年4月14日 (火) 06:59時点における最新版

非正確(ひせいかく)とは、プログラミングにおいて関数引数が関数本体の評価で実際に使われるまで評価されないことをいう。最近では「遅延評価」や「短絡評価」と呼ばれることが多い。

正格評価(Strict Evaluation / Eager Evaluation)[編集 | ソースを編集]

関数を呼び出す直前に引数をすべて計算する。

遅延評価(Lazy Evaluation)[編集 | ソースを編集]

必要になるまで計算を遅らせる。

「遅延評価」と「短絡評価」の違い[編集 | ソースを編集]

「遅延評価」と「短絡評価」は厳密にはこれらは異なる概念です。なお、こんな細かいこと気にしていたら確実にハゲます。

遅延評価(Lazy Evaluation)[編集 | ソースを編集]

必要な時まで計算しない技術全般。パフォーマンス向上や、無限リストを扱う場合などに有効。

短絡評価(Short-circuit Evaluation)[編集 | ソースを編集]

「&&」や「||」などの論理演算子において、左辺の値だけで結果が決まる場合、右辺を評価しない挙動。これも評価を遅らせる(またはスキップする)点では「遅延」の一種ですが、主に論理演算の最適化を指します。