fixed in moarvm commits a9267cb, 650e797, and 676723d. Needs a bump, as well as tests.
On 17/10/17 19:28, Zoffix Znet via RT wrote: > On Thu, 12 Oct 2017 22:59:36 -0700, alex.jakime...@gmail.com wrote: >> Code: >> my @a = [1,2,3,4]; my %h = 'a'=>'b','c'=>'d','101'=>'102'; my $c = >> \(|@a, |%h); say $c.list; say $c.hash; >> >> ¦«2015.12»: >> (1 2 3 4) >> Map.new(("101" => "102",:a("b"),:c("d"))) >> >> ¦«2016.06»: >> (1 2 3 4) >> Map.new(("101" => "102",:a("b"),:c("d"))) >> >> ¦«2016.12»: >> (1 2 3 4) >> Map.new(("101" => "102",:a("b"),:c("d"))) >> >> ¦«2017.06»: >> (1 2 3 4) >> Map.new(("101" => "102",:a("b"),:c("d"))) >> >> ¦«HEAD»: >> (1 2 3 4) >> Map.new((101 => 102, a => b, c => d)) >> >> >> Possible IRC discussion: https://irclog.perlgeek.de/perl6/2017-10- >> 09#i_15275925 >> >> Bisectable: (2017-10-07) >> https://github.com/rakudo/rakudo/commit/9247045962ab8d41f7b74603cb2ae0c2d0555573 >> >> >> I think the previous output was better because (accidentally or not) >> it was giving executable code. Not that it has to be executable, but >> :a("b") makes a bit more sense than a => b for those who are familiar >> with perl 6. Maybe not, feel free to argue otherwise, I'm just the >> messenger. > > This was done on purpose. `Map.gist` used to call `.perl` on the pairs in the > past instead of `.gist`, which both is different from what `Hash.gist` does > and is not correct. Certain things cannot be .perled while they can be gisted > and also for some things (like List and Blob) .perl gives All The Things™ for > some things while .gist gives just the gist. > > c: 2017.07,HEAD Map.new((:42a, b => (1...2000))).gist.say > https://gist.github.com/c9f8e43d227626d5c7b1f45d6397aaae > > c: 2017.07,HEAD Map.new((:42a, b => (1...*))).gist.say > ¦2017.07: «Cannot .elems a lazy list in block <unit> at /tmp/78NrayS5Sy > line 1 «exit code = 1»» ¦HEAD(8a88d14): «Map.new((a => 42, b => (...)))»