[Haskell-cafe] Re: Float instance of 'read'
Paulo Tanimoto
tanimoto at arizona.edu
Thu Sep 18 11:24:39 EDT 2008
Hi,
Mauricio, sorry for hijacking your thread. : )
I have one question about handling or parsing decimal places. I
noticed that Haskell doesn't accept values starting with just the
point, e.g., .50 or .01. I suppose that's abuse of notation in the
first place (and I'm guilty of it), but I often receive datasets that
have numbers written that way.
Do we have this behavior to avoid ambiguity with the dot operator?
For example:
> .1
<interactive>:1:0: parse error on input `.'
> read ".1" :: Float
*** Exception: Prelude.read: no parse
And then:
> let (.) = (+)
> 1 .1
2
I often end up writing a function that will add a leading zero when
it's missing for decimal places, before feeding a string to read. Is
there a better way of handling this?
Thanks,
Paulo
On Thu, Sep 18, 2008 at 7:13 AM, Mauricio <briqueabraque at yahoo.com> wrote:
>>> Agree about the answer, not about the question. The
>>> correct one would be "is it possible to change haskell
>>> syntax to support the international notation (...)
>>
>> For some sense of "possible", the answer is clearly yes.
>> However, it is perhaps misleading to call commas
>> "THE international notation". (...) You might as
>> well ask "is it possible to change Haskell syntax to
>> support only the *real* Arabic digits ... for ...
>> numbers". (... + evindences that there isn't one
>
>> single standard)
>
> Well, utf-8 strings seemed to me a good way to initialize
> variables, and we could, for instance use something
> like "[1,2,3,4]" to initialize other kinds of lists
> besides the standard one. One example I got from gtk2hs
> are marked-up text on labels. So, I actually thought
> we could add support for arabic and japanese digits,
> and any other ways we get without ambiguities (continued
> fractions, I would like, and I also liked the idea of
> the raised dot).
>
> Well, after all the comments, I'm convinced changing
> the Show and Read classes are not the way to go. But
> I'll think of something like a InitializableByUFT8String
> class, and I'll advertize it here if I ever get
> something usable and interesting.
>
> Thanks for your comments,
> Maurício
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
More information about the Haskell-Cafe
mailing list