Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: Small Perl 6 discoveries III, Ints

by virtualsue (Vicar)
on Sep 29, 2017 at 14:57 UTC ( #1200386=note: print w/replies, xml ) Need Help??


in reply to Small Perl 6 discoveries III, Ints

The code for Perl 6 Rakudo is on github and there is an up-to-date document on how to report bugs in it on the github project wiki just in case anyone feels like getting more involved.

Rakudo codebase Rakudo bug tracking

Replies are listed 'Best First'.
Re^2: Small Perl 6 discoveries III, Ints
by syphilis (Bishop) on Oct 12, 2017 at 12:20 UTC
    ... there is an up-to-date document on how to report bugs in it on the github project wiki just in case anyone feels like getting more involved

    Not that I really wanted to get involved, but I was a little curious about the status of some of the issues raised in this thread.

    So, last night, I submitted a bug report that referred to 2 of the issues raised here:
    1) that perl6 evaluates '1.000000000000001e0 == 1e0' as true;
    2) that perl6 produces different outputs for 'Int(2e25)' and 'Int(20e24)'.

    Turns out that the second is the result of a known issue with perl6's way of constructing Nums ... not so sure that the first one is exactly the same issue.
    Anyway, Zoffix Znet's reply to the bug report informs us that these bugs will be fixed, though it's presently not all that high on the list of priorities.

    Seems that perl6 assigns 2e25 as 2 * 1e25, but assigns 20e24 as 20 * 1e24. Hence the discrepancy.

    Cheers,
    Rob
      The problem can be summarized as follows:
      • Some platforms ship with a vendor-supplied libc that's really sloppy.
      • Because of this, perl5 development has been slowly replacing use of libc with home-grown code.
      • However, GNU libc is really good. It's the default libc on many platforms, and it's available on most.
      • As a result, many perl programmers have been experiencing slowly deteriorating quality of numeric implementation for around two decades. Perl6 accelerates this trend.
        Perl6 accelerates this trend

        They seem to be at least perpetuating some unfortunate perl5 design choices. (I see they've also opted for having say/print round doubles to 15 decimal digits of precision.)

        I've mentioned before that Jarkko Hietaniemi plans to replace perl5's current (homegrown) implementation with netlib's gdtoa if he manages to find the tuits.
        I gather that would be an excellent development, but I've no idea whether he will ever find those tuits - and no-one else seems at all interested in doing anything about it.

        Anyway, I have workarounds in place for perl5 but it would be nice if perl6 didn't require the same workarounds.

        Cheers,
        Rob
Re^2: Small Perl 6 discoveries III, Ints
by Anonymous Monk on Sep 29, 2017 at 17:11 UTC
    Be my guest. IDGAF, and the perl6 developers obviously don't either. My entire qualification with Perl6 is that I've read the first three chapters of Perl 6 Deep Dive and kicked it around a little bit in my spare time. Everywhere I look, I see bugs.

      Oh, that's so cute. AM even provided a link to an explanation for 'IDGAF'.

      I had already assumed that the anonymous coward who started this thread wouldn't be interested in what I wrote. I was talking to other people who might happen to see the thread.

        How about a virtualcountersue -- why dont you do something about it? Posting a link for contact info is a no effort nonsequitor
        Not giving a fuck is a noble thing. I don't care that I won't receive any personal accolades for pointing out a few of the numerous failings of Perl6. It is enough for me that the Truth Is Out There (TM).

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1200386]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2019-11-20 04:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Strict and warnings: which comes first?



    Results (96 votes). Check out past polls.

    Notices?