00:14 lgtaube left 00:15 lgtaube joined, p6bannerbot sets mode: +v lgtaube 01:29 lizmat left 02:37 Ven`` left 03:37 Ven`` joined 03:38 p6bannerbot sets mode: +v Ven``
Geth rakudo: 32d480aba0 | (Nick Logan)++ (committed using GitHub Web editor) | 7 files
Add $?DISTRIBUTION (#2574)

Add a variable to give module authors a way to access *any* file in their distribution as well as the distribution meta data.
It might seem like `$?FILE` can provide everything required, but some `CompUnit::Repository` may not have an e.g. on-disk representation of the files listed in the meta data -- this allows IO access using the file names as listed in the meta data regardless of the `CompUnit::Repository` that loaded it.
Some uses:
  * `say "Version: " ~ $?DISTRIBUTION.meta<ver>`
  * `$?DISTRIBUTION.content('lib/Any/Module/In/Distribution.pm6').open.slurp(:close)`
  * `$?DISTRIBUTION.content('resources/libraries/p5helper').open.slurp(:close)` ( similar to `%?RESOURCES<libraries/p5helper>.IO.open.slurp(:close)` )
05:07
roast: facfda41ea | (Nick Logan)++ | 7 files
Add tests for $?DISTRIBUTION
05:08 Ven`` left 07:22 dct joined, p6bannerbot sets mode: +v dct 09:32 lizmat joined, p6bannerbot sets mode: +v lizmat
lizmat Files=1262, Tests=87957, 368 wallclock secs (19.82 usr 5.90 sys + 2631.95 cusr 220.48 csys = 2878.15 CPU) 09:32
yoleaux 09:27Z <jmerelo> lizmat: is there some info about the next Perl Toolchain Summit? Because I'd like to propose a few topics and/or attend...
09:29Z <jmerelo> lizmat: (and maybe propose a venue)
lizmat .tell jmerelo the channel to ask this question on is #pts on irc.perl.org 09:33
yoleaux lizmat: I'll pass your message to jmerelo.
[Tux] Rakudo version 2018.12-84-g32d480aba - MoarVM version 2018.12-12-g77ac5ef61
csv-ip5xs0.959 - 0.965
csv-ip5xs-207.133 - 7.356
csv-parser24.459 - 25.233
csv-test-xs-200.433 - 0.441
test6.882 - 8.170
test-t1.841 - 1.993
test-t --race0.844 - 0.861
test-t-2032.326 - 32.793
test-t-20 --race10.836 - 11.155
10:26
10:31 lizmat_ joined, p6bannerbot sets mode: +v lizmat_ 10:35 lizmat left 10:39 lizmat_ is now known as lizmat 10:57 dogbert2_ joined, p6bannerbot sets mode: +v dogbert2_
AlexDaniel robertle++ # uploading rakudo package on 31st :) 11:14
robertle I totally don't understand these build failures, it is almost as if the boxes on which I can build are different from the auto-builders... 11:23
11:29 Ven`` joined 11:30 p6bannerbot sets mode: +v Ven`` 11:45 lizmat_ joined, p6bannerbot sets mode: +v lizmat_
AlexDaniel robertle: also it feels like we didn't have these issues previously? 11:46
I wonder if it's something that changed in rakudo or if it's the machines themselves that are now for some reason different? 11:47
11:48 lizmat left 12:44 lizmat_ is now known as lizmat
lizmat m: dd Array.shape 12:48
camelia (*,)
lizmat should that work on a type object?? ^^^
m: role A { multi method a() { 42 }; multi method a() { 42 } }; dd A.a 13:20
camelia 42
lizmat m: role A { multi method a() { 42 }; multi method a(--> Int:D) { 42 } }; dd A.a
camelia Ambiguous call to 'a(A: )'; these signatures all match:
:(A: *%_)
:(A: *%_ --> Int:D)
in block <unit> at <tmp> line 1
lizmat feels to me both should be giving the ambiguous call error ? 13:21
nine robertle: spesh bugs can be sensitive to timing since spesh runs in a separate thread
timotimo you can use MVM_SPESH_BLOCKING to prevent timing sensitivity from being a problem 13:23
instead of shoving work off to another thread and going on with its life, it'll wait for the other thread to finish that particular piece of work
i like using it when i run benchmarks 13:32
Geth rakudo: 26c0e620a8 | (Elizabeth Mattijsen)++ | 5 files
Provide some return types to Arrays
13:44
15:00 Ven` joined 15:01 p6bannerbot sets mode: +v Ven`
Geth rakudo: d248d47e79 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals.pm6
Introduce R:I:ImplementationDetail role

Classes marked with this role can not be instantiated with .new, and will stringify to a message indicating that they're a Rakudo specific implementation detail.
Inspired by R#2575
15:23
synopsebot R#2575 [closed]: github.com/rakudo/rakudo/issues/2575 How foreign is ForeignCode?
rakudo: 588037f065 | (Elizabeth Mattijsen)++ | src/core/ForeignCode.pm6
Mark Foreigncode class as Rakudo implementation detail
rakudo: 467394b8e3 | (Elizabeth Mattijsen)++ | src/core/Dateish.pm6
Make IS-LEAP-YEAR calculation ab out 2x as fast

By using a native int for year: I doubt we can reliably state whether a year is a leap year by the time we run out of int precision.
nqp/master: 4 commits pushed by (Paweł Murias)++ 15:29
nqp: 13b31bfa9a | (Paweł Murias)++ | t/nqp/058-attrs.t
Test that using attributes on type objects throws exceptions
nqp: e8b82fdb10 | (Paweł Murias)++ | docs/ops.markdown
Document BINARY_ENDIAN_NATIVE flag
15:35
rakudo: 0368fe95be | (Elizabeth Mattijsen)++ | src/core/Str.pm6
infix:<~> can also return junctions

Fixes R#2568
16:13
synopsebot R#2568 [open]: github.com/rakudo/rakudo/issues/2568 Junction concat infix:<~> should be Cool
lizmat wonders where infix:<~> is actually testes 16:24
*tested
" ~ " occurs in 236 test files
16:25 Ven` left
moritz S15-nfg/concat-stable.t S15-nfg/concatenation.t 16:35
S03-operators/misc.t # the ASCII case
lizmat moritz++ 16:50
Geth roast: dbd19e9b39 | (Elizabeth Mattijsen)++ | S03-operators/misc.t
tests added with R#2568
16:58
synopsebot R#2568 [open]: github.com/rakudo/rakudo/issues/2568 [testneeded] Junction concat infix:<~> should be Cool
Geth roast: 4cbeca811f | (Elizabeth Mattijsen)++ | S01-perl-5-integration/isms.t
Add tests for R#2556

Is also the first "use isms" test. There'll be more to follow, but this will allow R#2556 to be closed.
17:09
synopsebot R#2556 [open]: github.com/rakudo/rakudo/issues/2556 [testneeded] Should =~ be a warning rather than an error?
Geth rakudo: c9fe9463e6 | (Elizabeth Mattijsen)++ | t/spectest.data
Run "use isms" tests
17:10
AlexDaniel lizmat: what about github.com/rakudo/rakudo/issues/13...-420647471 ? 17:36
I find “isms” really weird :)
17:40 Ven`` left 18:26 Ven`` joined 18:27 p6bannerbot sets mode: +v Ven``
lizmat AlexDaniel: well, it's been documented since June, and it's been in 2 R* releases 18:38
I'm a bit reluctant to change it (again) now, as I want to use it in my P5 modules...
which I now more or less can, because it is in 2 R* releases 18:39
AlexDaniel lizmat: yeah but maybe we can have an alias?
lizmat I'm neutral on that, perhaps jnthn has a better opinion on that 18:41
just to be clear: I wanted something that would allow some p5isms to be valid if needed, e.g. in conjunction with P5 modules
hence I called it "use p5isms" originally, which Zoffix then suggested we'd generalize 18:42
the $a=~$b case is different in that it is, in and of itself, valid Perl 6 code 18:43
19:19 Ven`` left
lizmat is it me, or is -I. currently broken ? 19:31
given a Foo.pm6 in the current dir, "perl6 -I. -e 'use Foo'" fails for me with: 19:32
===SORRY!===
Cannot resolve caller new(IO::Path:U: Any:U, :CWD(Str)); none of these signatures match:
if the module doesn't exist, it fails properly 19:33
if it is in another directory, it all works ok: seems to be limited to using "-I.", at least for me 19:34
ugexe pointed out I probably had a META6.json file in the dir of -I , and he was right 20:05
Geth rakudo: 04dd52f9fc | (Elizabeth Mattijsen)++ | src/core/Exception.pm6
Add "addendum" to X::Method::NotFound

So we can give better error messages for specific cases.
21:06
rakudo: b6c8f5ed19 | (Elizabeth Mattijsen)++ | src/core/Pair.pm6
Add specific info for Foo ~~ (10 => Bar)

In response to R#2512
   $ perl6 -e 'Any ~~ (10 => "ten")'
   No such method '10' for invocant of type 'Any'
   Did you try to smartmatch against a Pair specifically? If so,
   then the key of the Pair should be a valid method name, not '10'
synopsebot R#2512 [open]: github.com/rakudo/rakudo/issues/2512 Smartmatch with Any and Pair tries to call a non-existent method on Any
rakudo: a6d8858e41 | (Elizabeth Mattijsen)++ | src/core/Exception.pm6
Make X::TypeCheck::Assignment not barf on strange $got values

Makes the error mentioned in R#2503 slightly less LTA.
21:22
synopsebot R#2503 [open]: github.com/rakudo/rakudo/issues/2503 Can't assign Nil to an attribute from a role
gfldex m: my int @a = 1,2,3; say @a[1].WHAT; 21:59
camelia (Int)
gfldex is there a way to provide int literals?
or am I literally stuck with Int? :-> 22:00
lizmat gfldex: what do you mean with int literals? what is your desired output ? 22:04
gfldex lizmat: I would like to get (int) on @[1].WHAT. 22:06
lizmat aahhh... ok
that would sorta require for .WHAT to become a real method, which it isn't 22:08
I guess the basic issue is that even if a routine has --> int in its signature 22:11
what comes out of the sub, is hllized:
m: sub a(--> int) { my int $a = 42 }; use nqp; dd nqp::objprimspec(a) # should be 1
camelia 0
lizmat afk for some r+r for the last 48 minutes of the year& 22:12