Julia: ASTのリテラルNaN

作成日 2016年03月31日  ·  3コメント  ·  ソース: JuliaLang/julia

ASTを比較することはあまり一般的ではないかもしれませんが、私は驚くべきことに次のことに気づきました。 ==は、実際には数値比較ではないため、NaNが数値的に等しくないという事実を無視する必要があることも議論の余地があると思います。

julia> :(f($NaN)) == :(f($NaN))
false

julia> isequal(:(f($NaN)), :(f($NaN)))
false

最も参考になるコメント

==は、実際には数値比較ではないため、NaNが数値的に等しくないという事実を無視する必要があることも議論の余地があります。

NaNリテラルはNaN値ではありません、うん

全てのコメント3件

isequal再帰的に呼び出すExprのisequalメソッドが必要なようです。

==は、実際には数値比較ではないため、NaNが数値的に等しくないという事実を無視する必要があることも議論の余地があります。

NaNリテラルはNaN値ではありません、うん

とても良い点です。 実際の解決策は、おそらくExprsの==isequalを使用して要素を比較することです。

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

mbauman picture mbauman  ·  276コメント

shelakel picture shelakel  ·  232コメント

StefanKarpinski picture StefanKarpinski  ·  249コメント

IainNZ picture IainNZ  ·  109コメント

tknopp picture tknopp  ·  171コメント