»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋
Set by Zoffix on 25 July 2018.
00:01 netrino__ joined 00:06 Manifest0 left 00:11 Manifest0 joined 00:15 Manifest0 left 00:20 Manifest0 joined 00:25 Manifest0 left, lucasb left 00:30 Manifest0 joined, coldforged left 00:35 netrino__ left 00:39 MasterDuke joined, MasterDuke left, MasterDuke joined 00:40 netrino__ joined 00:52 Sgeo__ joined 00:55 Sgeo_ left 00:57 Manifest0 left 01:03 Manifest0 joined 01:13 Manifest0 left, netrino__ left 01:18 Manifest0 joined 01:19 netrino__ joined 01:41 Manifest0 left 01:45 molaf left 01:46 Manifest0 joined 01:53 netrino__ left
cpan-p6 New module released to CPAN! OEIS (1.0.0) by 03TOBS 01:55
01:58 molaf joined, Manifest0 left 01:59 netrino__ joined 02:03 Manifest0 joined 02:07 Manifest0 left 02:09 MasterDuke left 02:12 Manifest0 joined 02:21 Manifest0 left 02:26 Manifest0 joined 02:31 netrino__ left 02:37 Manifest0 left 02:38 netrino__ joined 02:43 Manifest0 joined 02:48 Manifest0 left, angelds joined, adu joined 02:53 Manifest0 joined 02:58 nadim_ left 02:59 Manifest0 left 03:01 hythm joined 03:04 Manifest0 joined 03:09 hythm_ joined, hythm left 03:12 Manifest0 left 03:16 Manifest0 joined 03:17 hythm_ left 03:23 Manifest0 left 03:28 Manifest0 joined 03:30 veesh left, hythm joined 03:32 netrino__ left 03:33 hythm left 03:34 nadim_ joined, hythm joined 03:35 veesh joined 03:37 netrino__ joined 03:41 Manifest0 left
hythm p6: my %h1 = < a 1 >; my %h2 = < a 2 >; my @a = %h1, %h2; say @a.unique(:as(&.<a>)) # How to unique based on hash key? 03:42
camelia ({a => 1} {a => 2})
03:46 Manifest0 joined 03:47 skids left 03:54 Manifest0 left
elcaro hythm: you mean merge hashes? 03:58
m: my %h1 = < a 1 >; my %h2 = < a 2 >; say my %h3 = %h1, %h2;
camelia {a => 2}
elcaro this works because I'm assigning to a Hash 03:59
03:59 Manifest0 joined
elcaro If you wanna put pairs into an array, based on unique key, here's one way 04:01
flatten you hashes to produce a list of pairs, then unique by key 04:02
m: my %h1 = < a 1 >; my %h2 = < a 2 >; say my @a = (%h1, %h2).flat.unique(as => *.key)
camelia [a => 1]
elcaro but unique will see the first and not the second... where as in hash merge, later keys overwrite older ones 04:03
04:03 Manifest0 left 04:09 hythm left, netrino__ left 04:10 Manifest0 joined 04:11 veesh left 04:16 netrino__ joined, hythm joined, Manifest0 left
hythm eclaro I don't mean to merge hashes, what I'm trying to achieve is if I have my @a = { a => 1}, {a => 2}, { b => 3}; when I @a.unique, I want the result to be {a => 1 }, {b => 3} 04:17
elcaro well i guess it's similar to a merge, but you want a list of pairs when your done, right 04:21
04:21 jmerelo joined
hythm right 04:23
for example ({name => 'a', age = 20 }, {name => 'b', age = 30 }, {name => 'a', age = 40 }).unique: :as(*.name) # something like that 04:25
elcaro m: my @a = {a => 1}, {a => 2}, {b => 3}; say my @b = @a.map(|*).unique(as => *.key)
camelia [a => 1 b => 3]
elcaro same theory applies as above... need to flatten your Hashes out into a list of Pairs... once you have a stream of Pairs, you can `unique` them via the key
04:26 Manifest0 joined
hythm Thanks, Will try that 04:26
elcaro ok, with multiple keys it's a little different 04:27
jmerelo squashable6: status
squashable6 jmerelo, 🍕🍕 SQUASHathon is in progress! The end of the event in 2 days and ≈9 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
elcaro let me play with your example there a sec
m: say ({name => 'a', age => 20 }, {name => 'b', age => 30 }, {name => 'a', age => 40 }).unique(as => *<name> eq 'a')
camelia ({age => 20, name => a} {age => 30, name => b})
elcaro like that? 04:28
04:28 molaf left
elcaro or you want any duplicate names to be filtered 04:28
hythm exactly. the above works. thank you 04:29
elcaro well, it just filters names that are 'a'... if you just want uniqe names, then drop the `eq 'a'` part
m: say ({name => 'a', age => 20 }, {name => 'b', age => 30 }, {name => 'a', age => 40 }).unique(as => *<name>) 04:30
camelia ({age => 20, name => a} {age => 30, name => b})
elcaro yeah that was an oops on my part... no need to check if name is eq to anything... this just says you want to filter out hashes with a previously seen value in the 'name' key 04:31
hythm: tio.run/##K0gtyjH7/z@3UsEhUcFWQUOB...ZoBlDy/38A 04:33
hythm right, I was trying with &.<name>, while I should have used *.<name> like you did 04:36
elcaro *.<name> works... as does *<name>
another cool method to keep in mind is `squish` which is like `uniq` in unix, ie. filter consecutive duplicates 04:37
m: say < a a b b a c c >.squish
camelia (a b a c)
hythm right, I got confused a little (bad from my part) because the docs examples using & 04:38
elcaro but you can do .squish(as => *<somekey>) all the same
hythm nice, yes squish would be faster too
elcaro yeah, & is when you're passing a callable
m: say < one One ONE Two TWO >.unique(as => &lc) 04:39
camelia (one Two)
hythm yeah, makes sense
04:45 hythm left 04:46 kurahaupo left, kurahaupo joined 04:47 curan joined 04:48 netrino__ left 04:51 veesh joined 04:55 netrino__ joined 04:56 Manifest0 left 05:00 Manifest0 joined 05:05 Manifest0 left 05:07 dolmen joined 05:10 Manifest0 joined 05:16 Sgeo_ joined 05:17 Manifest0 left
jmerelo .tell holyghost this is just to let you know that, after repeated warnings in this channel, I have requested your upload privileges to CPAN to be removed: www.nntp.perl.org/group/perl.modul...00215.html . I am sorry about that, but there was no other alternative. 05:17
yoleaux jmerelo: I'll pass your message to holyghost.
05:18 nadim_ left 05:19 Sgeo__ left 05:23 Manifest0 joined 05:27 netrino__ left 05:29 veesh left 05:31 veesh joined 05:34 netrino__ joined 05:38 nadim joined 05:39 dolmen left 05:40 vrurg left 05:41 Manifest0 left 05:45 Manifest0 joined 05:50 Manifest0 left, dolmen joined 05:52 dolmen left 05:54 dolmen joined 05:55 Manifest0 joined 06:03 Manifest0 left 06:07 netrino__ left 06:08 Manifest0 joined 06:13 Manifest0 left, netrino__ joined
Geth doc: 15ce9aaf09 | (JJ Merelo)++ | doc/Language/variables.pod6
Adds examples for anon refs #1655
06:16
synopsebot Link: doc.perl6.org/language/variables
squashable6 🍕🍕🍕 First contribution by JJ++! ♥
jmerelo tell AlexDaniel the bots should point at Rakudo, NQP and MoarVM, not doc :-) 06:17
06:17 jmerelo left 06:18 Manifest0 joined 06:22 Manifest0 left 06:26 dolmen left 06:27 Manifest0 joined 06:30 adu left
SmokeMachine jmerelo have you forgotten the . on .tell? 06:36
Too late... 06:37
06:39 vrurg joined 06:57 Manifest0 left 07:00 noisegul joined
noisegul o/ 07:01
07:01 Manifest0 joined 07:10 Xliff joined
Xliff \o 07:10
yoleaux 30 May 2019 08:47Z <jnthn> Xliff: Yup, the value seems to match up with that hypothesis.
30 May 2019 09:33Z <holyghost> Xliff: There's code for drawing GameObjects, Entity, MovingEntity and Sprites, I've put comments in all relevant files. This afternoon I'm going to try to put the first game subsystem in for starting out the game by drawing a Room (.pm6) in the main-loop
30 May 2019 18:17Z <holyghost> Xliff: I'd like to debug the graphics system on Tuesday at GMT+2
Xliff .tell holyghost From now on, please use emails for these missives. I'd like to keep then OFF OF YOLEAUX.
yoleaux Xliff: I'll pass your message to holyghost.
07:11 Manifest0 left
Xliff m: my %h = ( 1=>1, 2=>2, 3=>3, 4=>4 ); for %h.keys { when 1 | 2} 4 { %h<1>:delete } default { .say } } 07:12
camelia 5===SORRY!5=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> 3, 3=>3, 4=>4 ); for %h.keys { when 1 | 27⏏5} 4 { %h<1>:delete } default { .say } }
expecting any of:
block or pointy block
Xliff m: my %h = ( 1=>1, 2=>2, 3=>3, 4=>4 ); for %h.keys { when 1 | 2 | 4 { %h<1>:delete } default { .say } }
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3h.keys { when 1 | 2 | 4 { %h<1>:delete }7⏏5 default { .say } }
Xliff m: my %h = ( 1=>1, 2=>2, 3=>3, 4=>4 ); for %h.keys { when 1 | 2 | 4 { %h<1>:delete }; default { .say } }
camelia 3
Xliff m: $*PERL.compiler.version.say 07:13
camelia v2019.03.1.385.ga.643.b.8.be.1
07:15 Manifest0 joined 07:17 robertle_ joined 07:18 netrino__ left 07:22 netrino__ joined 07:28 Manifest0 left 07:33 Manifest0 joined, netrino__ left 07:39 dolmen joined 07:44 dolmen left 07:48 dolmen joined 07:49 dolmen left 07:52 reach_satori left 07:54 angelds left, Manifest0 left 07:59 Manifest0 joined 08:06 Manifest0 left 08:07 domidumont joined 08:11 Manifest0 joined 08:17 reach_satori joined 08:18 domidumont left, Manifest0 left 08:24 Manifest0 joined 08:26 rindolf joined 08:31 Manifest0 left, ravenousmoose joined 08:35 Manifest0 joined 08:36 kurahaupo_ joined 08:39 kurahaupo left 08:41 Sgeo_ left 08:42 Sgeo_ joined
AlexDaniel ahem 08:48
08:49 squashable6 left 08:53 squashable6 joined, ChanServ sets mode: +v squashable6
squashable6 Webhook for rakudo/rakudo is now active! Mind your words, they are important. 08:54
AlexDaniel should be alright now!
08:54 Sgeo__ joined
kawaii good morning friends :) 08:57
08:57 Sgeo_ left
gfldex m: dd $*IN.lines.Seq.Supply; 08:58
camelia Supply.new
Altreus SmokeMachine: I'm learning a lot of Perl6 from this code but I will not be able to help with it for a while xD
gfldex I can't file where Seq.Supply is defined. Any pointers?
*find
Altreus kawaii: 08:59
gfldex Found it. I was to blind while reading Any.pm6. 09:00
kawaii Altreus: PR to replace DBI with Red in Pokeapi when sir? ;)
Altreus when I'm as deep in perl6 as you are :P
kawaii Altreus: hey we have an October this year right? We can tag some of the API::Discord issues with `Hacktoberfest` tags and see if the cool kids help out 09:03
09:03 leont joined
Altreus we might do 09:03
the world might end before then so either way we're good 09:04
Can someone help me understand how the keyword `model` is introduced in Red? 09:08
I can see the code that makes it work, but I don't see the magic where it creates the keyword itself
jnthn Altreus: grep EXPORTHOW 09:09
09:09 reach_satori left
jnthn Altreus: If you want to see a smaller module introducing a package declaration, see OO::Monitors 09:09
Altreus ah nice, thanks :) 09:10
09:11 reach_satori joined
Altreus I suppose EXPORTHOW is named in parallel with ClassHOW, i.e. works on meta 09:12
jnthn Yes 09:13
kawaii Altreus: I want to make another library, or maybe revisit API::Cloudflare
jnthn Even deeper: the compiler has a hash %*HOW that tracks the current mappings between package declarators and metaclasses :)
09:18 Manifest0 left 09:23 Manifest0 joined, reach_satori_ joined 09:25 reach_satori left 09:27 Manifest0 left
Altreus kawaii: awoo? 09:29
09:34 Manifest0 joined 09:35 sena_kun joined 09:37 kurahaupo_ left 09:38 kurahaupo joined 09:43 Manifest0 left
SmokeMachine Altreus: you mean you think you don't know enough to help? If so, I'm sure its not true... for example, here is a issue that would be easy to you to close: github.com/FCO/Red/issues/163 09:43
Altreus: github.com/FCO/Red/projects/2 09:44
github.com/FCO/Red/issues?utf8=✓&a...needed%22+ 09:46
Geth doc: 28f8591a8d | (JJ Merelo)++ | doc/Language/variables.pod6
Adds example for anon class, closes #1655
synopsebot Link: doc.perl6.org/language/variables
09:48 Manifest0 joined
Altreus SmokeMachine: I am helping with ideas :D 09:50
SmokeMachine: oh yeah, I can contribute docs too ^_^
SmokeMachine Altreus: that helps a lot! :) 09:51
09:54 rindolf left
SmokeMachine Altreus: have you seen this as complementation of the `schema` discussion? github.com/FCO/Red/issues/15 09:59
09:59 vrurg left 10:00 rindolf joined 10:05 Manifest0 left 10:10 Manifest0 joined, Sgeo_ joined
Altreus nyet 10:12
SmokeMachine: what did you use to make README.md?
SmokeMachine mi6 build...
Altreus new tools to learn :) 10:13
SmokeMachine it's generated throw the pod6 on Red.pm6
Altreus ya, I've updated that but can't check I've not broken it without trying to convert it
10:13 Sgeo__ left
SmokeMachine through 10:14
10:15 noisegul left
SmokeMachine modules.perl6.org/dist/App::Mi6:cpan:SKAJI 10:15
10:18 reach_satori joined 10:19 reach_satori_ left
Altreus github.com/FCO/Red/pull/164 10:21
migrations are a whole other thing that I've been struggling with at work for a long time xD 10:22
nothing so far has beaten "SQL scripts in a discoverable place"
10:24 rindolf left
gfldex lolibloggedalittle: gfldex.wordpress.com/2019/05/31/wh...ever-does/ 10:25
Altreus loli haet pizza? 10:27
hrm, sort of surprised that $*IN.lines isn't already DWIMmy enough to work that way 10:28
gfldex Altreus: Channels can fill up all your RAMz real qick in a hurry. 10:29
Altreus ah heck 10:30
10:30 rindolf joined
Altreus what does «self.list.Supply» do then? something unrequited? 10:32
uh
unrequired
Is it the case that $*IN.lines.Supply is not an async supply being fed by something when more lines arrive on STDIN? 10:34
10:36 gregf_ joined
jnthn Altreus: See my SO answer for an explanation of that, and how to do it right :) 10:36
Or "as right as is possible today"
10:46 Manifest0 left 10:51 Manifest0 joined, leont left 10:55 holyghost joined
holyghost Good morning. 10:55
yoleaux 05:17Z <jmerelo> holyghost: this is just to let you know that, after repeated warnings in this channel, I have requested your upload privileges to CPAN to be removed: www.nntp.perl.org/group/perl.modul...00215.html . I am sorry about that, but there was no other alternative.
07:10Z <Xliff> holyghost: From now on, please use emails for these missives. I'd like to keep then OFF OF YOLEAUX.
Altreus got it 10:56
There's a lot of information if you just keep following links!
holyghost PaganVisions2 compiles now except for the script, I need to debug it with Xliff on Tuesday
I'm off for the weekend 10:57
10:57 holyghost left
Altreus This community is very wholesome 10:57
11:00 reach_satori left 11:02 reach_satori joined 11:13 mowcat joined
SmokeMachine Altreus: thank you! merged! 11:14
11:15 reach_satori left 11:17 mowcat left 11:18 mowcat joined 11:31 Manifest0 left 11:37 Manifest0 joined 11:48 Manifest0 left
woolfy .tell jmerelo I want to discuss your latest action with you in private discussion please. 11:50
yoleaux woolfy: I'll pass your message to jmerelo.
11:53 Manifest0 joined, cpan-p6 left 11:59 lgandras joined 12:00 cpan-p6 joined, cpan-p6 left, cpan-p6 joined 12:02 mowcat left
lizmat weekly: news.perlfoundation.org/2019/05/cal...y-2-4.html 12:12
notable6 lizmat, Noted!
lizmat did the squashathon not start already ? 12:21
sena_kun squashable6, status
squashable6 sena_kun, 🍕🍕 SQUASHathon is in progress! The end of the event in 2 days and ≈1 hour. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
sena_kun, Log and stats: gist.github.com/07f2569c6832a6c8ca...f04d237cea
lizmat aha,.. ok
sena_kun lizmat, seems like it is 12:22
12:22 aeruder_ joined, iviv_ joined 12:23 spycrab0_ joined, Spot___ joined, peteretep_ joined 12:24 integral left, perlbot left, timeless_ joined, Mithaldu left, perlbot joined
lizmat sorta expected jmerelo would have twittered about it 12:24
12:24 mtj_ left, spacedbat left, jnthn left, rjbs left 12:25 jcallen left, gks joined, rjbs joined, timeless left, dotdotdot left, spycrab0 left, peteretep left, iviv left, Spot__ left, gks_ left, aeruder left, unclechu left, rba[m] left, albongo left, integral_ joined, iviv_ is now known as iviv, spycrab0_ is now known as spycrab0, peteretep_ is now known as peteretep, go|dfish left 12:26 mtj_ joined, jnthn joined, dotdotdot joined, syntaxman left, hoelzro_ left 12:27 spacedbat joined, syntaxman joined, hoelzro joined, timeless_ is now known as timeless, jcallen joined, albongo joined, unclechu joined, Brock left, rba[m] joined, Mithaldu joined, awwaiid joined 12:28 jhill left 12:29 jhill joined
cpan-p6 New module released to CPAN! Result (0.2.3) by 03SAMGWISE 12:35
12:36 Manifest0 left 12:37 reach_satori joined 12:41 Manifest0 joined 12:48 Manifest0 left 12:51 leont joined 12:53 go|dfish joined 12:54 Manifest0 joined 12:55 holyghost joined
woolfy squasha 13:05
(sorry, wrong window)
13:07 Manifest0 left 13:08 rindolf left 13:09 domidumont joined 13:10 rindolf joined 13:11 curan left
El_Che woolfy: squasha your self! 13:16
13:16 Manifest0 joined, pmurias joined
pmurias hi 13:16
is telling people to "npm install -g" rakudo.js in it's README a good idea? 13:17
woolfy Claudio Ramirez: I just did... 13:19
El_Che don't squasha da pasta!
13:20 vrurg joined
cpan-p6 New module released to CPAN! HTML::Lazy (0.0.1) by 03SAMGWISE 13:21
New module released to CPAN! Structable (0.0.3) by 03SAMGWISE
13:29 Manifest0 left 13:30 kiwi_67 joined 13:31 kiwi_67 left 13:34 Manifest0 joined 13:36 skids joined
Altreus how long does m.p6.o take to index these ^ ? 13:40
more than 20 minutes? :P
sena_kun Altreus, around so, iirc 13:41
13:41 Manifest0 left 13:47 Manifest0 joined 13:52 Manifest0 left 13:58 Manifest0 joined
leont It's a cronjob AFAIK 13:59
I think it runs every 15 minutes 14:00
14:12 pmurias left 14:14 pmurias joined 14:18 zxcvz joined 14:20 jelkner joined
jelkner ugexe, do you have a minute? 14:21
i was referred to you by sena_kun on the cro channel
i am having troubles installing cro, and sena_kun thinks its a zef issue, not a cro issue 14:22
i'm a high school teacher whose planning period is about to end 14:23
so i'll need to log off
sena_kun pastebin.com/uKH6T6zp <- looks pretty odd, as it has the distributions, but doesn't install it. environment I believe is ubuntu 18.10 with rakudo-pkg installed.
jast given his idle time of 15 hours, don't hold your breath :)
jelkner np, sena_kun, how best to report this so it can be handled later?
sena_kun I'd bet on github.com/ugexe/zef/issues with a detailed report: zef version, `zef which`, what was done, logs. 14:24
at the very least it'll be a case description to not write it out every time
Xliff \o 14:26
sena_kun Xliff, o/
holyghost Xliff 'lo
Xliff needs coffee.
holyghost Xliff, I've sent you some email
Xliff holy: Fine.
14:26 mowcat joined
Xliff jnthn: Any idea how to fix issue with uint8? 14:27
jelkner sena_kun, will the pastebin link hang around, or should i paste the error into the issue? 14:29
sena_kun jelkner, I see its expire time is set to `never`, so you can just add an url to paste and that'd be ok
jelkner thanks!
14:38 Manifest0 left 14:40 lichtkind joined
ugexe that version of zef looks ancient 14:40
its reporting versions as e.g. Cro::HTTP:ver('0.8.0')
not :ver<0.8.0> 14:41
14:42 Manifest0 joined
sena_kun jelkner, ^ 14:46
14:48 lichtkind left 14:51 lgandras left 14:55 bob_ joined 14:56 bob_ left, bob_birdrock joined 14:58 jelkner left
ugexe github.com/ugexe/zef/issues/299#is...-497729660 14:59
they have two versions installed
zef:ver('0.1.15') and zef:ver('0.7.1')
the lower version is in the home repo which is checked first, which is why it is being used over 0.7.1 15:00
so `zef nuke home` would probably fix it
15:02 pmurias left
sena_kun ugexe++ 15:03
15:19 nadim left 15:20 Manifest0 left, integral_ left, integral_ joined, integral_ is now known as integral 15:24 guifa joined 15:25 Manifest0 joined 15:31 Manifest0 left
Xliff m: sub foo(Num() $n is rw) { $n++ }; my $x = 1; foo($x) 15:38
camelia Cannot resolve caller postfix:<++>(Num:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Num:D $a is rw)

The following do not match for other reasons:
(Bool:D $a is rw)
(Bool:U $…
15:38 Manifest0 joined
Xliff m: sub foo(Int() $n is rw) { $n++ }; my $x = 1e0; foo($x) 15:38
camelia Cannot resolve caller postfix:<++>(Int:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Int:D $a is rw --> Int:D)

The following do not match for other reasons:
(Bool:D $a is rw)
Xliff ^^ Still running into mutable type errors on conversion. 15:39
15:39 ravenousmoose left 15:40 Sgeo__ joined
bob_birdrock sub foo($n) { $n++ }; my $x = 1; foo($x); 15:40
Has the same results for me.
Xliff sub foo($n) { $n++ }; my $x = 1; foo($x); 15:41
m: sub foo($n) { $n++ }; my $x = 1; foo($x);
camelia Cannot resolve caller postfix:<++>(Int:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Int:D $a is rw --> Int:D)

The following do not match for other reasons:
(Bool:D $a is rw)
Xliff m: sub foo($n is rw) { $n++ }; my $x = 1; foo($x);
camelia ( no output )
Xliff m: sub foo($n is rw) { $n++ }; my $x = 1; foo($x).say;
camelia 1
Xliff m: sub foo(Int() $n is rw) { $n++ }; my $x = 1e0; foo($x).say;
camelia Cannot resolve caller postfix:<++>(Int:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Int:D $a is rw --> Int:D)

The following do not match for other reasons:
(Bool:D $a is rw)
bob_birdrock Wow!
Xliff m: sub foo(Int() $n is rw) { ++$n }; my $x = 1e0; foo($x).say; 15:42
camelia Cannot resolve caller prefix:<++>(Int:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Int:D $a is rw --> Int:D)

The following do not match for other reasons:
(Bool $a is rw)
(M…
Xliff m: sub foo(Int $n is rw) { ++$n }; my $x = 1e0; foo($x).say;
camelia Type check failed in binding to parameter '$n'; expected Int but got Num (1e0)
in sub foo at <tmp> line 1
in block <unit> at <tmp> line 1
bob_birdrock So why does adding "is rw" make it work?
Xliff m: sub foo(Int $n is rw) { ++$n }; my $x = 1; foo($x).say;
camelia 2
bob_birdrock Oh, because it's not mutable otw
Xliff Yeah.
bob_birdrock <duh>
Xliff Ongoing issue.
bob_birdrock So Int() $n is rw should work too
Xliff m: sub foo(Int() $n is rw) { ++$n }; my $x = 1; foo($x).say;
camelia 2
Xliff So it does.
Note that the problem occurs if the type is different. 15:43
m: sub foo(Int() $n is rw) { ++$n }; my $x = 1e0; foo($x).say;
camelia Cannot resolve caller prefix:<++>(Int:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Int:D $a is rw --> Int:D)

The following do not match for other reasons:
(Bool $a is rw)
(M…
bob_birdrock aahhh
tobs bob_birdrock: the thing here is that Int() coerces the argument if it has to. This potentially creates another object. No what do you expect from mutating that other object with respect to the argument that was passed to the call?
bob_birdrock But but but but....
Ohhhh
Xliff tobs: I'd expect it to work because { my $x = 1 } does not specify type. 15:44
bob_birdrock So Int() coerces a scientific(?) number in this case...
1e0
15:44 Sgeo_ left
Xliff 1e0 is a Num literal 15:44
bob_birdrock Int doesn't want to coerce a Num 15:45
Xliff Now... { my Num $x = 1e0 } should not work.
Num and Int are Cool, so they can convert between each other just fine.
bob_birdrock Auto-boxing/unboxing 15:46
Xliff One fix....
m: sub foo($n is rw) { $n .= Int if $n.^can('Int').elems; ++$n }; my $x = 1e0; foo($x).say;
camelia 2
Xliff But I shouldn;'t have to do all that!!
bob_birdrock In other words, Perl should know when and how to do this automagically 15:47
Xliff Yep.
bob_birdrock So what is actually happening? Is Perl creating a new object during coercion, which happens to not be mutable? 15:50
15:51 jmerelo joined
jmerelo squashable6: status 15:52
yoleaux 11:50Z <woolfy> jmerelo: I want to discuss your latest action with you in private discussion please.
squashable6 jmerelo, 🍕🍕 SQUASHathon is in progress! The end of the event in 1 day and ≈22 hours. See github.com/rakudo/rakudo/wiki/Mont...Squash-Day
jmerelo, Log and stats: gist.github.com/48f452eb0663b35b09...bece7041fd
15:52 yqt joined
tobs bob_birdrock: this would be the most complete account of the issue, I think github.com/perl6/problem-solving/issues/21 15:52
15:52 Sgeo_ joined
jmerelo .tell AlexDaniel Are the bots ready for the squashathon? 15:53
yoleaux jmerelo: I'll pass your message to AlexDaniel.
tobs in Perl 6 you need a container holding a value to mutate that value. If I understood correctly, (Int() $x is rw) takes in the caller's container to make the value mutable, but then, if the value had to be coerced, you lose track of that container (which will still hold the old value) and can't modify the new value anymore. 15:55
15:55 Sgeo__ left
tobs jmerelo: yes colabti.org/irclogger/irclogger_lo...05-31#l232 15:56
15:57 patrickb joined
jmerelo tobs: ah, great. It's only that no one has done anything, yet... 15:57
.tell AlexDaniel thanks! 15:58
yoleaux jmerelo: I'll pass your message to AlexDaniel.
tobs I have a workshop upcoming, too much other things to do…
16:03 Manifest0 left 16:04 mtg joined
namibj tobs: sounds very reasonable, the container GC feeding. It would need to have types so you can't pass a mutable that gets coerced during the function call itself. Allow the callee's signature to force the caller to either manually cast and loose the reference, or otherwise be known not to have a reference anymore (escape analysis for converting heap to stack in the optimizer is at least closely relates). 16:07
Allow footgun-protection.
AlexDaniel .
yoleaux 15:53Z <jmerelo> AlexDaniel: Are the bots ready for the squashathon?
15:58Z <jmerelo> AlexDaniel: thanks!
SmokeMachine m: sub foo(Int() $n is rw) { ++$n }; my $x = "1"; foo($x); say $x.^name 16:09
camelia Cannot resolve caller prefix:<++>(Int:D); the following candidates
match the type but require mutable arguments:
(Mu:D $a is rw)
(Int:D $a is rw --> Int:D)

The following do not match for other reasons:
(Bool $a is rw)
(M…
SmokeMachine m: sub foo(Int() $n is rw) { $n }; my $x = "1"; foo($x); say $x.^name 16:11
camelia Str
SmokeMachine m: sub foo(Int() $n is rw) { say $n.^name }; my $x = "1"; foo($x); say $x.^name
camelia Int
Str
16:12 Manifest0 joined
namibj If there was an alternative way to allow polymorphism in a friendly way, where the callee operates on a non-coerced container with alk that entails. 16:18
16:26 Manifest0 left 16:27 Sgeo__ joined 16:31 Sgeo_ left 16:32 Manifest0 joined 16:47 sena_kun left 16:52 molaf joined 16:53 nadim joined 17:13 kaare_ left, Sgeo_ joined 17:17 Sgeo__ left
squashable6 🍕 patzim++ opened pull request “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939 17:20
🍕🍕🍕 First contribution by patzim++! ♥
🍕 patzim++ requested a review on pull request “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939 17:21
🍕 patzim++ opened pull request “Move the core comp unit repo to a separate folder”: github.com/rakudo/rakudo/pull/2940 17:25
🍕 patzim++ requested a review on pull request “Move the core comp unit repo to a separate folder”: github.com/rakudo/rakudo/pull/2940
🍕 patzim++ wrote a comment on “Move the core comp unit repo to a separate folder”: github.com/rakudo/rakudo/pull/2940...-497794031 17:27
17:29 kaare_ joined 17:34 bfisher left 17:36 Manifest0 left 17:43 Manifest0 joined 17:48 Sgeo__ joined
squashable6 🍕 vrurg++ edited a review on pull request “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939...-244436972 17:51
🍕🍕🍕 First contribution by vrurg++! ♥
🍕 vrurg++ submitted a review on pull request “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939...-244436972
🍕 vrurg++ wrote a comment on a review for “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939...r289489624
🍕 vrurg++ wrote a comment on a review for “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939...r289489227
🍕 vrurg++ wrote a comment on a review for “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939...r289488896
17:51 Sgeo_ left
SmokeMachine vrurg: we could do something like: `red-do :version<0.0.1> {...}’ and make it use a “schema” instead of a “connection”... 17:54
jmerelo notable6: weekly "Perl6 quick syntax reference" is ready for preorder and will be published in November 11th www.amazon.es/Perl-Quick-Syntax-Re....J.+Merelo
notable6 jmerelo, Noted!
vrurg SmokeMachine: I see. Yep, makes sense if the schema is what I think of it: a collection of connection and models. Is it? 17:55
SmokeMachine vrurg: yes, that’s what’s on my mind currently... 17:56
vrurg jmerelo: As you're the documentation person: 6.e.PREVIEW is available as of yesterday. Perhaps it shall be noted in the docs.
jmerelo vrurg: thanks! 17:57
vrurg SmokeMachine: you're moving towards big corporate projects. Sounds great!
jmerelo vrurg: is it going to be in the next rakudo release? As I understand it, it's in master now, right?
vrurg jmerelo: ping me if any help is needed. I have started some bits on building rakudo in its docs directory. 17:58
jmerelo vrurg: at long last :-)
vrurg jmerelo: yes, in master and gonna be released.
jmerelo OK. I'll note that in an issue. Thanks for letting me know.
vrurg jmerelo: Wait, wait, wait! I promised you nothing! ;)
jmerelo: yw and thank you too! 17:59
jmerelo vrurg++
vrurg: github.com/perl6/doc/issues/2831 18:01
18:05 zxcvz left 18:13 Sgeo_ joined 18:16 ravenousmoose joined, Sgeo__ left 18:18 ravenous_ joined 18:19 leont left
vrurg jmerelo: I'll keep my eye on it. 18:20
18:21 ravenousmoose left
squashable6 🍕 vrurg++ closed issue “Need t/spectest.data.6.d”: github.com/rakudo/rakudo/issues/2557 18:24
🍕 vrurg++ wrote a comment on “Need t/spectest.data.6.d”: github.com/rakudo/rakudo/issues/25...-497813104
18:24 zakharyas joined 18:31 sauvin left 18:32 Manifest0 left 18:37 Manifest0 joined 18:49 Sgeo__ joined, domidumont left 18:52 zakharyas left, Sgeo_ left 18:58 netrino__ joined
squashable6 🍕 patzim++ synchronize pull request “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939 19:01
19:07 jmerelo left 19:08 kst` is now known as kst
cpan-p6 New module released to CPAN! Gnome::Gdk (0.13.1) by 03MARTIMM 19:09
19:14 farcas82 joined, leont joined
cpan-p6 New module released to CPAN! Gnome::N (0.13.2) by 03MARTIMM 19:25
New module released to CPAN! Gnome::Gtk3 (0.13.1) by 03MARTIMM
New module released to CPAN! Gnome::Glib (0.13.2) by 03MARTIMM
New module released to CPAN! Gnome::GObject (0.13.2) by 03MARTIMM
Geth doc: 2d276d107c | Coke++ | xt/code.pws
fix word.
19:34
19:38 mowcat left 19:42 rindolf left 19:47 yqt left 19:53 pecastro joined 19:55 Sgeo_ joined 19:58 rindolf joined, Sgeo__ left 20:00 hythm_ joined
hythm_ where does `gather` store the taken values, and can they be accessed from within the `gather` block? 20:01
20:02 uzl joined
hythm_ in this gist, i m trying to take a value only if it was not taken before. gist.github.com/hythm7/2f3308afb94...ef89367845 20:03
uzl The "Here be dragons." in docs.perl6.org/type/Attribute#method_get_value had me chuckle ;-) 20:05
Would anybody mind skimming over the following posts: uzluisf.gitlab.io/posts/2019/raku-attributes/? Mostly looking for inaccuracies :-)! 20:08
20:11 ufobat_ joined 20:15 ufobat__ left 20:17 kaare_ left, kaare_ joined, uzl left 20:26 feldspath joined
tobs hythm_: a gather returns a Seq that is backed by the code block you provide. The taken values are stored nowhere as the block is lazily evaluated. The next value is only produced (by running the block until the next take) when someone asks for it from the Seq. 20:28
20:29 veesh left 20:30 feldspath left
tobs you could of course keep a record of taken values yourself, but there is also a unique method which does the filtering for you 20:34
m: say gather { .take xx 2 for ^10 }
camelia (0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9)
20:34 Sgeo__ joined
tobs m: say gather { .take xx 2 for ^10 }.unique 20:34
camelia (0 1 2 3 4 5 6 7 8 9)
20:34 veesh joined 20:38 Sgeo_ left 20:41 ravenous_ left
hythm_ thanks tobs 20:43
20:49 ravenousmoose joined 21:00 Sgeo_ joined 21:03 Sgeo__ left 21:12 skids left 21:26 ravenousmoose left 21:27 Manifest0 left 21:30 hythm_ left 21:33 Manifest0 joined 21:40 Sgeo__ joined 21:43 Sgeo_ left 21:51 leont left 21:53 Manifest0 left 21:58 Manifest0 joined 22:01 netrino__ left 22:07 cpan-p6 left 22:09 cpan-p6 joined, cpan-p6 left, cpan-p6 joined
squashable6 🍕 ugexe++ wrote a comment on “Move the core comp unit repo to a separate folder”: github.com/rakudo/rakudo/pull/2940...-497877132 22:17
🍕🍕🍕 First contribution by ugexe++! ♥
22:18 Manifest0 left 22:19 patrickb left 22:22 Manifest0 joined 22:23 adu joined 22:27 ijneb left 22:30 netrino__ joined 22:31 bob_birdrock left 22:36 ijneb joined
lizmat weekly: yakshavingcream.blogspot.com/2019/...erl-6.html 22:38
notable6 lizmat, Noted!
22:40 Cabanossi left
lizmat weekly: www.amazon.com/dp/1484249550/ref=c...8Cb4GSMCXH 22:42
notable6 lizmat, Noted!
lizmat weekly: www.amazon.com/dp/1484249550
notable6 lizmat, Noted!
22:48 Manifest0 left 22:52 Cabanossi joined 22:53 Manifest0 joined 23:02 Manifest0 left 23:04 netrino__ left 23:07 Manifest0 joined 23:09 netrino__ joined 23:11 Manifest0 left
Geth ¦ problem-solving: AlexDaniel assigned to jnthn Issue The status of PREVIEW modifier. github.com/perl6/problem-solving/issues/34 23:12
23:19 Manifest0 joined 23:26 mtg left
squashable6 🍕 vrurg++ submitted a review on pull request “ Fix non-reloc install &…”: github.com/rakudo/rakudo/pull/2939...-244555002 23:29
23:37 rindolf left, Sgeo_ joined 23:40 Sgeo__ left 23:42 netrino__ left 23:47 Manifest0 left 23:48 netrino__ joined, pecastro left 23:53 Manifest0 joined