Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Set by Zoffix on 27 July 2018.
lizmat well, it feels to me that the implementor is not being tormented anough for the features that users can use 00:00
jnthn Tough.
The whole reason it was specified this way was to give us a chance to optimize things.
lizmat if it is supposed to be only for dynamic variables, what use *are* the pseudo packages then?
jnthn OUTER:: isn't restricted in that way 00:01
lizmat doesn't that have similar issues ?
jnthn No, because we can lexically see it is being used
And make sure to preserve enough information to use it 00:02
lizmat because at compile time you can already resolve it, is what you're saying ?
jnthn Yes, or at least, at compile time we can see there's a use of OUTER:: and so not discard information we need in order to do late-bound lookups by name 00:03
lizmat what about CLIENT:: ?
especially if that's a different compilation unit ? 00:04
jnthn Also would be restricted, though I think we'd want to make sure that sub decls are counted as implicitly dynamic, since much of the purpose of it is to find the operator definition of the CLIENT 00:05
I think for modules that really want to monkey around, we can 1) provide a pragma for setting the default dynamicity of variables, and 2) providing the pragma export mechanism I previously discussed. 00:07
lizmat pragma export is something we really need :-)
jnthn Then P5tie could just say "well actually, make everything `is dyanmic` so I can find and tie it by name"
lizmat anyways, I'm too tired to think very straight....
so see you tomorrow&
jnthn 'night o/
japhb .ask AlexDaniel Can you tell if the Cro::WebSocket test failure is a Rakudo regression? (I assume there is some Blin magic to do that, but I've forgotten the incantation.) 00:09
yoleaux japhb: I'll pass your message to AlexDaniel.
jnthn sleep time, 'night o/ 00:24
AlexDaniel japhb: Cro::WebSocket – AlwaysFail 00:28
yoleaux 00:09Z <japhb> AlexDaniel: Can you tell if the Cro::WebSocket test failure is a Rakudo regression? (I assume there is some Blin magic to do that, but I've forgotten the incantation.)
AlexDaniel not a regression, I think…
01:55 titsuki_ joined 01:56 p6bannerbot sets mode: +v titsuki_ 02:00 timotimo left, titsuki left, llfourn left 02:04 llfourn joined 02:05 p6bannerbot sets mode: +v llfourn 02:08 timotimo joined, p6bannerbot sets mode: +v timotimo, lizmat left 02:12 ufobat left
AlexDaniel ohh, one is really easy 02:54
and is already fixed… cool :)
AlexDaniel found another module with .grep: { /foo/ }
releasable6 Next release in ≈1 day and ≈15 hours. 6 blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 03:00
03:03 lizmat joined, p6bannerbot sets mode: +v lizmat
AlexDaniel hm, that's about it, actually 03:05
03:44 squashable6 left 03:48 squashable6 joined, ChanServ sets mode: +v squashable6 03:49 p6bannerbot sets mode: +v squashable6 06:01 robertle left 07:28 patrickb joined, p6bannerbot sets mode: +v patrickb
patrickb .tell nine Did you see colabti.org/irclogger/irclogger_lo...-01-16#l95 07:31
yoleaux patrickb: I'll pass your message to nine.
07:38 patrickb left 08:02 robertle joined 08:03 p6bannerbot sets mode: +v robertle 09:53 ufobat joined 09:54 p6bannerbot sets mode: +v ufobat
lizmat Files=1265, Tests=88043, 387 wallclock secs (20.65 usr 6.24 sys + 2755.24 cusr 239.02 csys = 3021.15 CPU) 10:33
jnthn lizmat: Currently working on a `dynamic-scope` pragma; I'll for now have it switch on when we use /^P5/, but that means we should just be a pragma export mechanism away from a proper solution 11:05
lizmat: Can confirm this already fixes P5tie :) 11:08
lizmat jnthn++
jnthn wonders where the right place for pragma tests is... 11:12
Hm, maybe just with the kind of feature it affects
Geth rakudo: 871cbefc6f | (Jonathan Worthington)++ | src/Perl6/World.nqp
Add a `dyanmic-scope` lexical pragma

This allows for specifying that:
  * Without args, all variables declared in the scope the pragma applies
   to will be automatically `is dynamic`
  * With args, the named variables declared in the scope the pragma
... (6 more lines)
11:29
rakudo: 88c46676c5 | (Jonathan Worthington)++ | src/Perl6/World.nqp
Apply the dyanmic-scope pragma for `use P5*`

Thus extending the workaround we already have in place to keep those working until the proper mechanism for them to use is available. This fixes the P5tie regression reported in #2616.
11:30
roast: 600827736d | (Jonathan Worthington)++ | S02-names/dynamic-scope.t
Add tests for `dynamic-scope` pragma
jnthn Huh, it didn't report the commit adding that to spectest.data 11:33
nine just bought a Comma subscription for work! 11:45
yoleaux 07:31Z <patrickb> nine: Did you see colabti.org/irclogger/irclogger_lo...-01-16#l95
nine tell patrickb I did. Will hopefully find some time for it later today 11:51
11:53 [Tux] left 12:01 [Tux] joined 12:02 p6bannerbot sets mode: +v [Tux], robertle left
lizmat jnthn: confirmed P5tie is clean again 12:03
jnthn Yay :)
12:04 robertle joined
timotimo do we have an up-to-date blin or toaster run for the release? 12:04
12:05 p6bannerbot sets mode: +v robertle
Geth rakudo: 9295616422 | (Elizabeth Mattijsen)++ | src/core/Date.pm6
Make sure $!daycount is nulled on subclasses of Date

The problem was that subclasses of Date do not use the fast-path creation of objects, but go through .bless. This missed an important part of the initialization of $!daycount. Fixes R#2615
12:05
jnthn timotimo: AlexDaniel++ did blin yesterday, which is where we have these various reports from 12:07
lizmat m: class A is Date { }; my $a = A.new(q/2019-01-18/); dd $a.succ 12:09
camelia Type check failed for return value; expected Int:D but got Int (Int)
in block <unit> at <tmp> line 1
timotimo i see all the committable invocations, but no gist with actual blin results at the moment
jnthn Ah, I didn't see that either 12:10
Geth roast: 529b04d2f5 | (Elizabeth Mattijsen)++ | S32-temporal/Date.t
Add tests for R#2615
12:13
timotimo ha, whoops 12:14
profiling the code that builds the flamegraph in moarperf froze my computer for a few minutes there 12:15
lizmat bisectable6: class A is Array[Str] {} 12:17
bisectable6 lizmat, Bisecting by output (old=2015.12 new=9295616) because on both starting points the exit code is 1
lizmat, bisect log: gist.github.com/0ca63181ecb8b06742...07f21daa3a 12:18
lizmat, (2016-06-09) github.com/rakudo/rakudo/commit/b6...430078bc7d
Geth tap-harness6/ufobat-patch-1: 194b1ebccd | (Martin Barth)++ (committed using GitHub Web editor) | bin/prove6
fixed version in bin/prove6
tap-harness6: ufobat++ created pull request #29:
fixed version in bin/prove6
12:19
lizmat ok, been like that always
Geth tap-harness6: 194b1ebccd | (Martin Barth)++ (committed using GitHub Web editor) | bin/prove6
fixed version in bin/prove6
12:36
tap-harness6: 4a4a8a0f21 | niner++ (committed using GitHub Web editor) | bin/prove6
Merge pull request #29 from perl6/ufobat-patch-1

fixed version in bin/prove6
12:38 robertle left
ufobat there is a version 0.0.6 of this module on cpan, which has a bug, the version 0.0.6 is not on github :-( 12:44
12:45 dogbert2_ joined, p6bannerbot sets mode: +v dogbert2_ 13:12 robertle joined, p6bannerbot sets mode: +v robertle
Geth rakudo: 35ecfc8e24 | (Elizabeth Mattijsen)++ | src/core/traits.pm6
Make sure we parameterize parent specification

By adding a genetic trait handler that handles this case. Fixes R#2611
13:12
[Tux] Rakudo version 2018.12-236-g929561642 - MoarVM version 2018.12-35-gc001ce23c
csv-ip5xs0.796 - 0.819
csv-ip5xs-206.893 - 7.011
csv-parser23.348 - 23.834
csv-test-xs-200.438 - 0.444
test7.491 - 7.591
test-t1.864 - 1.867
test-t --race0.868 - 0.939
test-t-2031.158 - 31.636
test-t-20 --race10.082 - 10.732
13:33
Geth tap-harness6/master: 7 commits pushed by (Leon Timmermans)++ 13:38
lizmat s/genetic/generic/, duh 14:00
dogbert2_ genetic algorithms, impressive :) 14:02
Geth roast: e58a55d5b9 | (Elizabeth Mattijsen)++ | S05-grammar/inheritance.t
Add tests for R#2611
14:06
15:40 lizmat left
AlexDaniel timotimo: everything is ticketed, no need for a gist 16:19
unless you want to see some irrelevant results :) 16:22
16:30 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke, MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke 16:31 robertle left
AlexDaniel hmmmmm huh 16:47
===SORRY!=== Error while compiling /home/alex/.zef/store/uri.git/e5c85512db5446fa4f7a38e421170cd602a53dce/t/expected.txt
so zef attempted to execute a .txt file… maybe there's an issue with zef? 16:48
filed a ticket here: github.com/ugexe/zef/issues/286 16:54
ufobat AlexDaniel, it's fixed already 17:13
AlexDaniel oh, really?
ufobat oh no, TAP::Harness fixed it, not sure if zef relies on prove6
AlexDaniel 4 minutes ago :o
ufobat github.com/perl6/tap-harness6/comm...d5cb03d765 17:14
AlexDaniel ufobat: github.com/ugexe/zef/commit/e1da41...90e182efbb 17:15
:)
ufobat yay :D 17:19
17:33 dct joined, p6bannerbot sets mode: +v dct 17:36 lizmat joined, p6bannerbot sets mode: +v lizmat
MasterDuke i don't think there's been a MoarVM/NQP bump since the 1st, seems like now might be a good time 17:48
AlexDaniel yeah, I've been trying for the last hour or so :) 18:05
lizmat AlexDaniel: what's the problem ?
Geth nqp: 73a1c59fdd | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/MOAR_REVISION
[MoarVM Bump] Brings 22 commits

MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...gc001ce23c c001ce23c fix declaration after code (thanks @dod38fr) 2bc5ce7b8 Fix segfaults related to corrupted CStruct STables 58caebf4f Use correct static frame in plugin resolution 7fc6be108 Add a limit on spesh plugin guard set size ... (18 more lines)
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...gc001ce23c
rakudo: 99d30be2a9 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/NQP_REVISION
[NQP Bump] 73a1c59fd [MoarVM Bump] Brings 22 c […]

NQP bump brought: github.com/perl6/nqp/compare/2018....g73a1c59fd
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....g73a1c59fd
AlexDaniel lizmat: no problem now, had issues installing dependencies for the z script… 18:06
lizmat AlexDaniel++ 18:07
lizmat pulls and builds
japhb does the same 18:11
AlexDaniel lizmat: how do you think, what can be done with github.com/rakudo/rakudo/issues/2618 ? 18:13
there's no license specified, so I don't think we can easily fork it… 18:14
also the module itself is a port of a p5 module, which also has no license
jnthn I suspect PR is the best that can be done
lizmat yeah, feels to me as well
AlexDaniel there's a PR already 18:15
jnthn "Sure, the tests might have passed previously, but installation itself would have always failed." - this also means nobody could possibly have installed it
AlexDaniel ah, I see that the p5 module has this: “Released to the public domain by Paul Schlyter, December 1992”
but that doesn't help much
jnthn: yeah, not asking about the blocker, asking about the module itself :)
I also confirmed that indeed, it was not installable 18:16
jnthn Ah, OK. Yeah, if there's no license then there's not much to be done short of the author being responsive to the PR and/or issue asking for license.
AlexDaniel does anybody have access to perlpilot's repos, btw? 18:17
18:19 robertle joined
jnthn Oh, darn, I only just saw who the author is :( 18:19
18:19 p6bannerbot sets mode: +v robertle
jnthn Darn :( 18:20
AlexDaniel I should've worked on this. I did help transferring Sake but at the time I didn't think about other modules… 18:23
18:24 dct left
lizmat just got a hang in t/spec/S17-supply/syntax.t with spectest :-( 18:26
AlexDaniel lizmat: can you please ticket it?
lizmat hasn't seen that in a *looong* time
it's not repeatable
AlexDaniel lizmat: but “not repeatable” how many thousands of runs do you have in mind? :) 18:27
lizmat well, let's see: I don't think I've seen that in at least 3 months, at 10+ spectests on average a day... close to a 1000 ?
so one thousand 18:28
AlexDaniel file a ticket, please :)
jnthn dinner time, bbl
AlexDaniel not saying it's a blocker, just saying it should be written down
lizmat R#2621 18:29
AlexDaniel btw there seems to be some movement to add .t6 extension support to things github.com/perl6/doc/issues/2576#i...-455633515 18:30
zef already supports it, that's how that ticket came to be
lizmat sets of a few spectests and is off to dinner& 18:38
18:48 [Coke] left, [Coke] joined, [Coke] left, [Coke] joined, p6bannerbot sets mode: +v [Coke] 18:49 [Coke] left 20:08 dct joined, p6bannerbot sets mode: +v dct
lizmat no hangs in 10 spectest runs. About 1 random test file failing with No plan found in TAP output :-( 20:19
20:25 dct left, AlexDaniel left 20:26 AlexDaniel joined, p6bannerbot sets mode: +v AlexDaniel 20:28 j3nnn1 joined, p6bannerbot sets mode: +v j3nnn1 20:36 ufobat left 20:42 MasterDuke left 21:55 titsuki_ left
AlexDaniel where's synopsebot ? 22:07
22:09 synopsebot joined, ChanServ sets mode: +v synopsebot
AlexDaniel fixed it 22:10
22:10 p6bannerbot sets mode: +v synopsebot 22:11 Kaiepi left 22:12 Kaiepi joined, p6bannerbot sets mode: +v Kaiepi
lizmat m: class A { has %.b is rw; method c() { $.b } } # shouldn't this be a compile time error ? 22:28
camelia ( no output )
lizmat note the %.b vs $.b
AlexDaniel no 22:29
m: class A { has %.b is rw; method c() { $.abc }; method abc() { say 42} }.new.c
camelia 42
AlexDaniel it's a method call on self 22:30
note that this *is* a compile time error: 22:31
m: class A { has %.b is rw; method c() { $!b } }
camelia 5===SORRY!5=== Error while compiling <tmp>
Attribute $!b not declared in class A
at <tmp>:1
------> 3 A { has %.b is rw; method c() { $!b } }7⏏5<EOL>
lizmat m: class A { has %.b is rw; method c() { $.b = %( a => 42 ) } }; A.new.c # fails 22:32
camelia Cannot assign to a readonly variable or a value
in method c at <tmp> line 1
in block <unit> at <tmp> line 1
lizmat m: class A { has %.b is rw; method c() { %.b = %( a => 42 ) } }; A.new.c # works ok
camelia ( no output )
lizmat so I was wondering :-)
AlexDaniel I don't think it necessarily fails 22:46
m: class A { has %.b is rw; method c() { say $.b }; A.new.c # ok?
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3method c() { say $.b }; A.new.c # ok?7⏏5<EOL>
expecting any of:
statement end
statement modifier
statement modifier loo…
AlexDaniel m: class A { has %.b is rw; method c() { say $.b }; }; A.new.c # ok?
camelia {}
AlexDaniel yeah
jnthn $.b is really $(self.b) 22:57
lizmat ok, so not a compilation error 22:59
releasable6 Next release in ≈19 hours. 4 blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 23:00
23:17 j3nnn1 left 23:40 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke, MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke