Numbers & math

Floats can't become NaN or Infinity

Divide by zero in JavaScript or Python and you get back a poisoned value, Infinity or NaN, that silently corrupts every computation it touches downstream. Ascent refuses to create one at all: the operation crashes instead.

Run it, then change 1.0 to 0.0 and run it again. You get the same crash either way, even though one would be Infinity elsewhere and the other NaN.