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 |