timotimo i wonder if we can get an op built that lets elems figure out the state of $!reified without causing it to be vivified 00:37
elaADnlxie timotimo: but it's not just elems 01:41
or maybe it is, I'm a bit late to the party :) 01:48
timotimo well, clearly there's some things you can do with a List or Array that will touch $!reified in a way that makes it spring into existence 01:56
[Tux] This is Rakudo version 2017.02-109-g75e070fde built on MoarVM version 2017.02-9-gc5379702 07:22
csv-ip5xs 2.899
test 13.016
test-t 4.990 - 5.232
csv-parser 13.366
samcv yo [Tux] 07:24
lizmat m: use nqp; class A { has $!a; method a() { $!a.DEFINITE; say nqp::attrinited(self,A,q/$!a/) } }; A.new.a # checking whether an attribute is DEFINITE makes attrinited return 1 09:33
camelia 1
lizmat timotimo: ^^^
m: use nqp; class A { has $!a; method a() { say nqp::attrinited(self,A,q/$!a/) } }; A.new.a # without DEFINITE it is 0
camelia 0
lizmat so if anything needs to be fixed, it looks to me like .DEFINITE should not init the attr :-) 09:34
jnthn attrinited just means "did we touch it at some point" 09:44
It's computed by seeing if we bound or vivified a Scalar container there yet
And as such needs to extra storage 09:45
Calling .DEFINITE counts as touching :)
In fact, there's nothing that doesn't
Except asking atttrinited itself
lizmat ok, so unless you have deep control over the touching, using attrinited is basically too fragile 09:50
Geth rakudo/nom: a274bdd122 | (Elizabeth Mattijsen)++ | src/core/REPL.pm
Fix for RT #130874
09:57
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130874
jnthn Yes; it was intended solely to decide whether to run default attribute initializations
has $.foo = this-thing-here 09:58
lizmat oki :-)
m: my Nil $a; dd $a # does this even make sense ? 10:01
camelia Nil $a = Nil
lizmat m: my Nil $a = 42; dd $a # does this even make sense ?
camelia Type check failed in assignment to $a; expected Nil but got Int (42)
in block <unit> at <tmp> line 1
lizmat perhaps we should disallow Nil as a type spec ? 10:02
this in light of RT #130875
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130875
Geth rakudo/nom: b11dc88a3e | (Elizabeth Mattijsen)++ | src/Perl6/Grammar.nqp
Fix for RT #130877

Feels to me that we cannot say whether a method exists or not, because we don't know the object on which the method could be called. So changed the wording of the error message to hopefully make the intent of the suggestion clearer.
10:19
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130877
rakudo/nom: 6cb9be294d | (Elizabeth Mattijsen)++ | src/Perl6/Grammar.nqp
Another fix for #130877, zefram++
10:44
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130877
Geth rakudo/nom: 4ef1e69566 | (Elizabeth Mattijsen)++ | src/core/Str.pm
Some more nqp::list -> IterationBuffer migration
10:51
lizmat hopes for some more eyes on rt.perl.org/rt3//Public/Bug/Displa...?id=130877 11:18
masak "So I think it's reasonable for these error messages to suggest calling those methods that do actually exist in Mu." -- +1 11:47
Geth rakudo/nom: f595733009 | (Elizabeth Mattijsen)++ | src/core/Str.pm
Make sure Str.split always returns a Seq

This actually pessimizes one case of Str.trans, probably needs some deeper looking into.
12:01
rakudo/nom: 8301a30603 | (Elizabeth Mattijsen)++ | src/core/Str.pm
Unpessimize multi needle Str.trans
12:32
Zoffix use different trap number for stuff that can't be used as a method. 12:41
and generate diff message for it
wonder what case would be that `bag` without parens is wrong :/ 12:43
lizmat m: bag()
camelia ( no output )
lizmat m: bag
camelia 5===SORRY!5===
Argument to "bag" seems to be malformed
at <tmp>:1
------> 3bag7⏏5<EOL>
Other potential difficulties:
Function "bag" may not be called without arguments (please use () or whitespace to denote arguments, or &bag to r…
lizmat m: say() 12:44
camelia
lizmat m: say
camelia 5===SORRY!5===
Argument to "say" seems to be malformed
at <tmp>:1
------> 3say7⏏5<EOL>
Other potential difficulties:
Unsupported use of bare "say"; in Perl 6 please use .say if you meant to call it as a method on $_, or use an exp…
Zoffix `say` I can understand as a Perl 5-sm catcher, since there it means "print $_"; but there's no bag in Perl 5, so what's it catching?
lizmat perhaps this check should be moved to the optimizer ?
as an addition to the undispatchable error ? 12:45
Zoffix: there is no bag in Perl 5 yet :-) 13:06
Zoffix ...yet? :)
lizmat there's been some osmosis of Perl 6 features recently 13:09
this *could* go on :-)
Zoffix hah 13:16
timotimo personally, i'd love a pragma that allows the use of "say" to output an empty line 13:18
[Coke] I need to update the list of volunteers for RT meta-bug-admining. Right now, in order of activity it's me, froggs, pmichaud, and a dozen others that probably date from parrot. 13:46
Zoffix Are you asking for more volunteers? What's involved in meta-bug-admining? 13:51
moritz [Coke]: I can do that 13:53
Zoffix: given folks RW rights in RT, afaict
Zoffix I could do that. 13:54
[Coke] You have privs to give other people bug-admin rights to the p6 queue. You get listened to (more) when you ask the rt admins for things.
moritz++ Zoffix++
lizmat commute to Amsterdam& 13:58
[Coke] "is 6.d still planned to hatch in summer?" as far as I know that was never a plan. 14:11
(from gfldex at irclog.perlgeek.de/perl6-dev/2017-...141700240)
llfourn I just logged in to RT for first time in years. When I try to go to a ticket I get "No permission to display that ticket". 14:24
[Coke] What URL are you trying to hit, and are you logged in? 14:26
llfourn just some random recent RT: rt.perl.org/Ticket/Display.html?id=130862 14:27
yes I'm logged in
"Logged in as [email@hidden.address]
[Coke] llfourn: try: rt.perl.org/Public/Bug/Display.html?id=130862 14:29
llfourn I just get empty page with "my open tickets" above an empty grey area 14:30
but no "no permission"
it redirects me to: rt.perl.org/SelfService/
[Coke] ok. Please send an email to the address at the bottom of the page describing the symptoms. 14:32
buggable: help 14:33
buggable [Coke], tags | tag SOMETAG | eco | eco Some search term | speed
llfourn [Coke]: sure thanks.
[Coke] buggable: tags
buggable [Coke], Total: 1536; BUG: 1027; UNTAGGED: 343; LTA: 154; NYI: 95; RFC: 61; CONC: 57; JVM: 57; REGEX: 49; SEGV: 28; UNI: 28; PERF: 27; TESTNEEDED: 24; NATIVECALL: 22; @LARRY: 20; POD: 20; IO: 18; TODO: 18; REGRESSION: 15; PRECOMP: 13; BUILD: 11; OO: 11; TESTCOMMITTED: 11; OPTIMIZER: 9; STAR: 7; BOOTSTRAP: 5; GLR: 4; MATH: 4; OSX: 4; REPL: 4; WEIRD: 4; SPESH: 3; WINDOWS: 3; RT: 2; BELL:
ugexe whats BELL? 14:51
ilmari .u BELL
yoleaux2 U+0007 BELL [Cc] (␇)
[Coke] [JVM] [UNI] \c[BELL] returns the U+0007 control code not U+1F514 BELL 14:52
^^
ilmari .u 🔔
yoleaux2 U+1F514 BELL [So] (🔔)
[Coke] u: BELL
unicodable6 [Coke], U+237E BELL SYMBOL [So] (⍾)
[Coke], U+2407 SYMBOL FOR BELL [So] (␇)
[Coke], gist.github.com/ec0d5a2539c69357d5...5bcbd5f970
[Coke] .u is old. use u:
yoleaux2 U+0020 SPACE [Zs] ( )
U+002E FULL STOP [Po] (.)
U+003A COLON [Po] (:)
ilmari u: ALERT
unicodable6 ilmari, Found nothing! 14:53
ilmari uh..
u: U+0007
unicodable6 ilmari, U+0007 <control-0007> [Cc] (control character)
b2gills m: my Nil $nil = Failure.new; dd $nil; # lizmat there is *some* use to allowing Nil as a type spec 15:13
camelia Failure $nil = Failure.new(exception => X::AdHoc.new(payload => "Failed"), backtrace => Backtrace.new)
lizmat and what is the use then ? 15:14
that could get a failure if you don't get a failure ? 15:15
*you
m: my Nil $fail = Failure.new
camelia ( no output )
lizmat m: my Nil $fail = 42
camelia Type check failed in assignment to $fail; expected Nil but got Int (42)
in block <unit> at <tmp> line 1
lizmat is that what you mean ?
b2gills It might be used by only 0.0000001% of code, but that still isn't 0% 15:16
I don't know how it could be used, but that is likely a Failure.new( 'of imagination' ) 15:17
Zoffix doesn't see it...
m: my Failure $x = Failure.new;
camelia ( no output )
Zoffix m: my Failure|Int $x = 42
camelia 5===SORRY!5=== Error while compiling <tmp>
Malformed my
at <tmp>:1
------> 3my Failure7⏏5|Int $x = 42
Zoffix m: my $x where Failure|Int = 42
camelia ( no output )
Zoffix m: my $x where Failure|Int = Failure.new 15:18
camelia ( no output )
b2gills m: multi sub t ( Nil $_ ){ say 'You gave me something empty or an error ' }; multi sub t ( Any $ ){}; t(42); t(try +'hello') 15:21
camelia You gave me something empty or an error
Zoffix m: multi sub t (Nil){ say 'You gave me something empty or an error ' }; multi sub t ( Any $ ){}; t(42); t(try +'hello')_ 15:22
camelia 5===SORRY!5=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> 3ub t ( Any $ ){}; t(42); t(try +'hello')7⏏5_
expecting any of:
infix
infix stopper
statement end
statement mod…
Zoffix m: multi sub t (Nil){ say 'You gave me something empty or an error ' }; multi sub t ( Any $ ){}; t(42); t(try +'hello')
camelia You gave me something empty or an error
b2gills If someone thinks it does something that it doesn't do, they will get an error and fix it. If exactly one person in the history of Perl 6 finds a **really really** good use-case, then it will be a good thing it wasn't an error.
The only reason I can see to make it an error is so that if someone uses it incorrectly they get a different error. 15:29
Geth rakudo/nom: 13cfd76b6b | (Elizabeth Mattijsen)++ | src/core/Baggy.pm
Make clearer what we return from Baggy!LISTIFY
16:29
rakudo/nom: db70a1fda8 | (Zoffix Znet)++ | 2 files
Fix previous output in REPL silencing errors

When an exception occurs in user's code, it ends up in $output, but we only print it if user's code did not produce any output.
Fix by always printing the result of the code when:
  - code did not produce any output
... (7 more lines)
17:26
rakudo/nom: 1891b6b50c | (Zoffix Znet)++ | t/02-rakudo/repl.t
Fix typo in test description
17:31
lizmat fwiw, I'm close to a fix for RT #130870 18:00
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130870
Zoffix Oh, I was about to comment on it. 18:02
Zoffix speeds up the typing...
done: rt.perl.org/Ticket/Display.html?id...xn-1451643 18:07
Well, it's just a generic comment. I don't have an optinion on what the final fix should be.
lizmat Zoffix: noted 18:10
hmmm... it looks like some tests needs fixing 18:29
m: my Int %h = a => 42; my Str %s = b => "foo"; try %h = %s; dd %h 18:31
camelia Hash[Int] %h = (my Int %)
lizmat should %h be empty here ???
Geth rakudo/nom: ae7bcf1b8e | (Elizabeth Mattijsen)++ | src/core/Map.pm
Fix for RT #130870

Basically, make Map.STORE create a temporary hash to which the assignment is done, and then transplant the internal $!storage back to the original object.
This actually breaks some tests in S09-typed-arrays/hashes.t, but I think these tests are faulty. On the brighter side, this actually also makes some todo tests pass.
18:50
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130870
Zoffix \o/ 18:55
Geth roast: 9f79b505fd | (Elizabeth Mattijsen)++ | 2 files
Unfudge now passing TODOed tests
18:56
timotimo isn't it fantastic when tests contradict each other ... 18:57
lizmat yeah 18:58
b2gills m: my \tester = (|flat(eager (False xx 9),True) xx *).iterator; multi sub foo ( $_ where tester.pull-one){ say 'test'; nextsame}; multi sub foo ( $_ ) {.say;$_}; eager ^100 .map: &foo # is this caused by spesh? 19:11
camelia 0
1
2
3
4
5
6
7
8
Constraint type check failed for parameter '$_'
in sub foo at <tmp> line 1
in block <unit> at <tmp> line 1
b2gills : my \tester = (|flat(eager (True xx 9),False) xx *).iterator; multi sub foo ( $_ where tester.pull-one){ say 'test'; nextsame}; multi sub foo ( $_ ) {.say;$_}; eager ^100 .map: &foo # it works when it is True more often than not
m: my \tester = (|flat(eager (True xx 9),False) xx *).iterator; multi sub foo ( $_ where tester.pull-one){ say 'test'; nextsame}; multi sub foo ( $_ ) {.say;$_}; eager ^100 .map: &foo # it works when it is True more often than not
camelia test
0
test
1
test
2
3
test
4
test
5
test
6
7
test
8
test
9
test
10
11
test
12
test
13
test
14
15
test
16
test
17
test
18
19
test
20
test
21
test
22
23
test
24
test…
Zoffix "is this caused by spesh" you can see if you run it with MVM_SPESH_DISABLE=1 19:14
b2gills I thought that something like that would be useful for logging every tenth value, so I tried it and it didn't work as you can see. 19:17
Geth rakudo: AlexDaniel++ created pull request #1028:
Make TimToady happy
22:01
elaADnlxie m: say ^∞ .grep: { last } 23:05
camelia (...)
elaADnlxie mch: say ^∞ .grep: { last }
committable6 elaADnlxie, ¦«2015.12»: ()␤¦«HEAD»: (...)
elaADnlxie bisect: old=2016.07 say ^∞ .grep: { last } 23:08
bisectable6 elaADnlxie, Bisecting by output (old=2016.07 new=ae7bcf1) because on both starting points the exit code is 0
elaADnlxie, bisect log: gist.github.com/7c3f68d6f70e4b97e6...29f4a18765
elaADnlxie, (2016-07-29) github.com/rakudo/rakudo/commit/22...263efba2ea
elaADnlxie c: all say ^∞ .grep: { last }
committable6 elaADnlxie, gist.github.com/db570f212263c5206a...0297ae99de 23:09
elaADnlxie 6c: say (^∞ .grep: { last })[^5]
committable6 elaADnlxie, ¦«2015.12,2016.02,2016.12,2017.01,HEAD»: (Nil Nil Nil Nil Nil)␤¦«2016.03,2016.04,2016.05,2016.06,2016.07.1,2016.08.1,2016.09,2016.10,2016.11»: (0 1 2 3 4) 23:10
elaADnlxie bisect: old=2016.11 say (^∞ .grep: { last })[^5]
bisectable6 elaADnlxie, Bisecting by output (old=2016.11 new=ae7bcf1) because on both starting points the exit code is 0
elaADnlxie, bisect log: gist.github.com/fb866f4a8e578028c3...eb1515a9ec
elaADnlxie, (2016-12-17) github.com/rakudo/rakudo/commit/70...3f2913ce8e
elaADnlxie heh, not the first time I find that I reported the same problem twice… 23:14