Xliff \o 01:22
AlexDaniel not gonna lie I'm kinda proud of what I did to the sourceable bot :) 02:19
it works locally, let's see if it's going to work here… 02:21
AlexDaniel sourceable6: help 02:26
sourceable6 AlexDaniel, Like this: sourceable6: 42.base(16) # See wiki for more examples: github.com/perl6/whateverable/wiki/Sourceable
AlexDaniel please work 02:27
sourceable6: 42.base(16)
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...nt.pm6#L93
AlexDaniel sourceable6: 42.base: 16
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...nt.pm6#L93
AlexDaniel sourceable6: parse-base ‘11’, 2 02:28
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c....pm6#L3270
AlexDaniel sourceable6: ‘11’.parse-base: 2
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c....pm6#L1434
AlexDaniel sourceable6: 2018.01 ‘11’.parse-base: 2
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/fa4d...r.pm#L1362
AlexDaniel sourceable6: 5 < 42
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...t.pm6#L450
AlexDaniel sourceable6: &prefix:<+>(^10) 02:29
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...ic.pm6#L60
AlexDaniel sourceable6: [].unique(:with(-> $a, $, { dd $a }))
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c....pm6#L1652
AlexDaniel weekly: New bot: sourceable6! It's the next generation of SourceBaby. See colabti.org/irclogger/irclogger_lo...-12-05#l12 and the wiki page with examples: github.com/perl6/whateverable/wiki/Sourceable (big thanks to Alexander Kiryuhin for the initial whateverablized version) 02:32
notable6 AlexDaniel, Noted! (weekly)
Xliff AlexDaniel++! 02:50
I know not the kind of script-fu you used to accomplish that.
Parses string for methor or func name and then finds it in source?
AlexDaniel no
Xliff Well... don't leave me in suspense... :P 02:51
AlexDaniel it uses exhaustive regex matching to do wild guesses about what you have in the code, then it runs the resulting code for each guess
if it ends up with filename and line number in the output, then the guess was correct
s: Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new).tail() 02:52
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c....pm6#L1954
AlexDaniel here is what it went through to find the answer: gist.github.com/AlexDaniel/46495f5...7bbb93ab94
if you think it's crazy… yeah, it absolutely is 02:54
but you don't have to look inside :P :P :P
Xliff Um. Yer. Craze
AlexDaniel on the outside it just works
Xliff Hey... it ain't broke. 02:56
Nice job!!
AlexDaniel so the final code it used to get the output was
m: (Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new)).^can(‘tail’).map(*.cando(\((Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new)), |\()))).first(*.so)[0]
evalable6
AlexDaniel m: (Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new)).^can(‘tail’).map(*.cando(\((Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new)), |\()))).first(*.so)[0].file.say 02:57
evalable6 SETTING::src/core.c/Any-iterable-methods.pm6
AlexDaniel m: (Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new)).^can(‘tail’).map(*.cando(\((Seq.new(class :: does Iterator { has $!n = 10; method pull-one {say "pulling!"; $!n-- and 42 or IterationEnd }; method skip-one { $!n-- }; method count-only { 10 } }.new)), |\()))).first(*.so)[0].line.say
evalable6 1954
Xliff m: 42.say.cando 02:58
evalable6 (exit code 1) 42
No such method 'cando' for invocant of type 'Bool'. Did you mean any of these?
can
rand

in block <unit> at /tmp/ivp1aIPugB line 1
AlexDaniel m: say 42.^can(‘say’) 02:59
evalable6 (say)
AlexDaniel m: say 42.^can(‘say’)[0].file
evalable6 SETTING::src/core.c/Mu.pm6
AlexDaniel m: say 42.^can(‘say’)[0].line
evalable6 574
Xliff m: 42.^can('say')[0].^name
evalable6
Xliff m: 42.^can('say')
evalable6
Xliff m: 42.^can('say').say
evalable6 (say)
AlexDaniel s: 42.say
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...u.pm6#L574
Xliff m: 42.^can('say').^name.say
evalable6 List
AlexDaniel s: 42.say()
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...u.pm6#L575
Xliff m: 42.^can('say')[0].^name.say
evalable6 Method
Xliff m: 42.^can('say')[0].^name.line.say
evalable6 (exit code 1) No such method 'line' for invocant of type 'Str'. Did you mean any of these?
clone
lines
list
min

in block <unit> at /tmp/no4IWtka2f line 1
AlexDaniel s: say(42) 03:00
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/9b8c...rs.pm6#L12
Xliff m: 42.^can('say')[0].^name.^methods.say
evalable6 (BUILD Capture Int Num chomp pred succ match su…
Xliff, Full output: gist.github.com/7e097db1219538e825...f19fb82bd2
Xliff m: 42.^can('say')[0].line.say
evalable6 574
Xliff m: 42.^can('say')[0].file.say 03:01
evalable6 SETTING::src/core.c/Mu.pm6
Xliff OK. I see what you did that.
s/that/thar/
moarvm++ # Massive introspection.
AlexDaniel jnthn: I'm conflicted :D on one hand it works perfectly, on the other hand it's against all common sense. colabti.org/irclogger/irclogger_lo...-12-05#l12 03:03
source code for those who don't mind being unable to unsee: github.com/perl6/whateverable/blob...rceable.p6 03:04
there has to be a better way but for now it does everything I wanted it to do :) 03:11
lizmat Files=1290, Tests=109646, 207 wallclock secs (27.96 usr 8.09 sys + 2920.40 cusr 260.61 csys = 3217.06 CPU) 08:30
Geth rakudo: a9afa01b94 | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Abstract parse-base workhorse into private method

So it can be used later for val() processing
08:47
lizmat m: dd val(" Inf ") # wonders whether this is correct behaviour 08:59
evalable6 NumStr.new(Inf, " Inf ")
lizmat hmm... looks like we lost camelia :-( 09:00
question is: should the spaces in the string representation be saved or not ? 09:01
nine VM seems to have lost network connectivity 09:08
tellable6 2019-12-05T00:36:23Z #raku <tbrowder> nine Using Inline::Perl5, is there any way to use a Raku module from a Perl program? I don't see anything like quite like that in the README, nor does it seem likely, but it could be useful.
lizmat .tell tbrowder metacpan.org/pod/Inline::Perl6 09:12
tellable6 lizmat, I'll pass your message to tbrowder
nine tbrowder: there are several, none of them really good. You can for example v6::run('use Test') but that doesn't help that much as there's no way to get at the loaded package. One, symbols are only imported into the lexical scope (the EVAL in this case) and two, packages/classes are undefined and will arive as undef in Perl 5 code 09:17
tbrowder: I do have plans for providing a solution and I have already implemented an important part for my memory leak fix this year. 09:18
tbrowder .tell nine thanks! 10:09
tellable6 tbrowder, I'll pass your message to nine
|Tux| Rakudo version 2019.11-99-ga9afa01b9 - MoarVM version 2019.07.1-403-g9442b1a7c
csv-ip5xs0.707 - 0.775
csv-ip5xs-206.296 - 6.597
csv-parser21.588 - 21.600
csv-test-xs-200.431 - 0.433
test7.163 - 7.471
test-t1.713 - 1.733
test-t --race0.856 - 0.865
test-t-2029.787 - 29.911
test-t-20 --race9.221 - 9.457
10:20
lizmat m: dd :2[17,".",5] # wtf? what does this even mean ? 12:26
evalable6 19.5
Geth rakudo: 519cef492f | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Revert previous commit

  - not going to need Str!parse-base for val processing
  - but keep the return value constraints
12:52
Geth nqp: 1b5834027a | (Paweł Murias)++ | 2 files
[js] Bump serialization format version

The changes didn't affect use at they where to things that we don't implement yet.
13:59
tyil Rakudo Star uses rakudo.perl6.org/downloads/[rakudo|nqp]/ to get to the downloads for Rakudo and NQP, a similar construction does not exist for raku.org 14:27
is this intended, and should I update the URLs to point to GitHub instead, or will this be added to raku.org in the future? 14:28
patrickb tyil: rakudo.perl6.org seems to be some sort of proxy to rakudo.org (or the other way round). 14:32
It's not live yet, but I have done quite a large overhaul of rakudo.org and the downloads. 14:33
tyil patrickb: alright, for now I'll keep using the rakudo.perl6.org URLs then, and I'll update them in R* when you're done 14:41
patrickb I'm not sure what the reasoning for the existence of rakudo.perl6.org is (given there is rakudo.org).
tyil since the perl6.org variant still works, I'm not in any hurry
from what I understand, the URLs I'm using are just redirects to the GitHub release tarballs
patrickb Intuitively I'd say let rakudo.(raku|perl6).org die and use rakudo.org 14:42
tyil I'm unsure if there's other things using those URLs, but if Rakudo Star is the only one, I can agree 14:43
patrickb I didn't know about rakudo.perl6.org until now...
I think us relying on github.com for hosting them is a consequence of the infra server death we suffered some months ago. I think it has not been finally decided yet, where the files are hosted in the future. Mayby both, github and our own servers. 14:45
tyil more is better for that kind of stuff 14:46
patrickb Yeah, backup and all. 14:48
vrurg Perhaps it would make sense for R* to try different sources to download the tarball? 14:58
tyil vrurg: those downloads are only done when building the R* release 14:59
but its still something I can look into if it makes my work easier :p
vrurg tyil: I know. Still, if there be same copy of the rakudo sources tarball on both github and raku.org – why not to try each? Just make sure its sum is not changed. 15:01
tyil hmm
might be useful to ensure nothing malicious is going on
even if just for checksumming and then discarding all other sources 15:02
japhb I'm collecting a list of all games (of any size, genre, level of polish, UI toolkit) written in Raku ... if you have written one, or know of one that I should include, please ping me! :-) 16:31
Geth ¦ problem-solving: lizmat assigned to jnthn Issue What should `val()` support? github.com/perl6/problem-solving/issues/138 16:41
AlexDaniel squashable6: status 17:52
squashable6 AlexDaniel, ⚠🍕 Next SQUASHathon in ≈10 hours (2019-12-07 UTC-12⌁UTC+20). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
jdv79 anyone know what i did wrong here?: nopaste.xyz/?4bffb51720a53fe0#eAai...pZBfFnPLs= 19:06
AlexDaniel jdv79: some kind of issue with the submodule 19:39
s: val 19:53
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/519c...s.pm6#L212
AlexDaniel s: val("2") 19:54
sourceable6 AlexDaniel, github.com/rakudo/rakudo/blob/519c...s.pm6#L236
Geth rakudo: patzim++ created pull request #3340:
Prevent silently swallowing errors on submodule update
19:55
nqp: patzim++ created pull request #588:
Prevent silently swallowing errors on submodule update
19:59
rakudo: db43d13413 | (Patrick Böker)++ | Configure.pl
Prevent silently swallowing errors on submodule update
20:18
rakudo: 382d18bdaa | (Patrick Böker)++ (committed using GitHub Web editor) | Configure.pl
Merge pull request #3340 from patrickbkr/sub-mod-upd-no-silent-error

Prevent silently swallowing errors on submodule update
nqp: f994d5ea63 | (Patrick Böker)++ | Configure.pl
Prevent silently swallowing errors on submodule update
20:19
nqp: df9f7c16ef | (Patrick Böker)++ (committed using GitHub Web editor) | Configure.pl
Merge pull request #588 from patrickbkr/sub-mod-upd-no-silent-error

Prevent silently swallowing errors on submodule update
tyil all tests seem to pass on my machine, if anyone has some spare time, please test rc1 of rakudo-star 2019.11 dist.tyil.nl/raku/rakudo-star/ 23:53