> On 02 Jan 2016, at 20:46, Dan Kogai (via RT) <perl6-bugs-follo...@perl.org> 
> wrote:
> 
> # New Ticket Created by  Dan Kogai 
> # Please include the string:  [perl #127125]
> # in the subject line of all future correspondence about this issue. 
> # <URL: https://rt.perl.org/Ticket/Display.html?id=127125 >
> 
> 
> I am glad perl6 supports complex numbers natively. What I am not glad is that 
> its definition of i does not agree with mathematics:
> 
> % perl6
> 
>> sqrt(-1+0i)
> 6.12323399573677e-17+1i
> 
> Though (-1+0i)**0.5 != 1i for most other platforms, they still get 
> sqrt(-1+0i) right:
> 
> % python
> 
>    Python 2.7.10 (default, Oct 23 2015, 18:05:06) 
>    [GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin
>    Type "help", "copyright", "credits" or "license" for more information.
>>>> from cmath import *
>>>> sqrt(-1+0j)
>    1j
>>>> (-1+0j)**0.5
>    (6.123233995736766e-17+1j)
>>>> ^D
> 
> % irb
> 
>    irb(main):001:0> require 'cmath'
>    => true
>    irb(main):002:0> CMath.sqrt(-1)
>    => (0+1.0i)
>    irb(main):003:0> ^D
> 
> % perl -MMath::Complex -dE 1
> 
>    Loading DB routines from perl5db.pl version 1.49
>    Editor support available.
> 
>    Enter h or 'h h' for help, or 'man perldebug' for more help.
> 
>    main::(-e:1):   1
>      DB<1> p sqrt(-1+0*i)
>    i
>      DB<2> p (-1+0*i)**0.5
>    6.12323399573677e-17+i
> 
> So here is the patch that defines sqrt in sqrt.
> 
> Dan the Complex Perl6 Newbie

Duplicate of RT #127126, can be closed.


Liz

Reply via email to