Julia: NaN literales en AST

Creado en 31 mar. 2016  ·  3Comentarios  ·  Fuente: JuliaLang/julia

Tal vez comparar AST no sea una operación muy común, pero encontré lo siguiente que me sorprendió. Creo que incluso es discutible que == debería ignorar el hecho de que los NaN no son numéricamente iguales a ellos mismos, ya que en realidad no es una comparación numérica.

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

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

Comentario más útil

incluso es discutible que == debería ignorar el hecho de que los NaN no son numéricamente iguales a ellos mismos, ya que en realidad no es una comparación numérica.

El literal NaN no es un valor NaN, sí

Todos 3 comentarios

Parece que necesitamos un método isequal para Expr que llame a isequal recursivamente.

incluso es discutible que == debería ignorar el hecho de que los NaN no son numéricamente iguales a ellos mismos, ya que en realidad no es una comparación numérica.

El literal NaN no es un valor NaN, sí

Muy buen punto. La solución real es probablemente == en Exprs para usar isequal para comparar elementos.

¿Fue útil esta página
0 / 5 - 0 calificaciones