
Does such thing as a deprecation pragma for an instance exist?
What triggers it?
Roman
* Johan Tibell
If we truly believe that the instance is dangerous for users (and not merely for people who don't understand floating point arithmetic on computers), then we should add a deprecation pragma to the instance and discourage its use. But what would the deprecation message encourage instead, for users to write an explicit loop that tests against some lower/upper bound? It would have the same problem as enumFromTo. I think the issue here is really that floating point math on computers is hard to think about.
On Tue, Jun 11, 2013 at 11:18 AM, harry
wrote: Johan Tibell
writes: I don't see much gain. It will break previously working code and the workaround to the breakage will likely be manually reimplementing enumFromTo in each instance.
I forgot the main point of my post :-)
The primary motivation for removing these instances is that they cause endless confusion for beginners, e.g.
http://stackoverflow.com/questions/13203471/the-math-behind-1-09999999999999... , http://stackoverflow.com/questions/9810002/floating-point-list-generator, http://stackoverflow.com/questions/7290438/haskell-ranges-and-floats,
http://stackoverflow.com/questions/10328435/how-to-solve-floating-point-numb... , and many more.
On the other hand, how much working code is there "correctly" using there instances?
_______________________________________________ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
_______________________________________________ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime