IEEE754 supports the negative zero. But this code
a := -0.0
fmt.Println(a, 1/a)
outputs
0 +Inf
where I would have expected
-0 -Inf
Other languages whose float format is based on IEEE754 let you create negative zero literals
Java :
float a = -0f;
System.out.printf("%f %f", a, 1/a); // outputs "-0,000000 -Infinity"
C# :
var a = -0d;
Console.WriteLine(1/a); // outputs "-Infinity"
Javascript :
var a = -0;
console.log(a, 1/a); // logs "0 -Infinity"
But I couldn't find the equivalent in Go.
How do you write a negative zero literal in go ?