Does such thing as a deprecation pragma for an instance exist? What triggers it? Roman * Johan Tibell <johan.tibell@gmail.com> [2013-06-11 14:18:41-0700]
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 <voldermort@hotmail.com> wrote:
Johan Tibell <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