»ö« 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:19 Kaypie joined, p6bannerbot sets mode: +v Kaypie 00:20 kensanata left 00:22 quester left 00:41 kurahaupo left, kurahaupo joined 00:42 kurahaupo left, kurahaupo joined 00:43 p6bannerbot sets mode: +v kurahaupo 00:46 pecastro left
Kaiepi when i first started using perl6 i thought supplies were just the equivalent of javascript event emitters and would end up something i probably wouldn't need to use 00:52
i was completely wrong and now i use them all the time lol
they definitely help with writing more modular code 00:56
00:56 vrurg joined 00:57 p6bannerbot sets mode: +v vrurg
vrurg If anybody alive here who nows why overriding ACCEPTS for a class doesn't impress the smartmatch operator? It simply ignores the method... 01:02
tobs vrurg: did you override it on what you put on the RHS of the smartmatch? 01:04
vrurg tobs: say, on a Str in $obj ~~ "something"? 01:05
tobs yes, that would call "something".ACCEPTS($obj)
vrurg Augmentation? It doesn't look good... :( 01:06
In your interpretation it even reads oddly: as if a string accepts my object. If it's works this way – I will avoid using this feature. 01:08
mornfall how else would it work? 01:09
tobs m: "operand" ~~ class { method ACCEPTS ($acceptee) { say "do I accept $acceptee ?" } }
camelia do I accept operand ?
vrurg is too used to commong left-to-right evaluation order. 01:12
tobs vrurg: then you can use R~~ instead of ~~ 01:13
vrurg It now makes sense, but is still confusing. I have a context object which keeps track of contexts defined by unique strings. So, $context ~~ "ctx1" | "ctx2" would look great, but I'm not gonna augment junction for this. 01:14
tobs in that case, you might want to use === and the WHICH method 01:16
vrurg tobs: R isn't good too.
tobs: That sounds like the solution! Thanks! 01:17
tobs and write $context === "ctx1" | "ctx2", where === uses the result of $context.WHICH to compare, cf. docs.perl6.org/routine/=== and docs.perl6.org/routine/WHICH
mornfall that sounds super confusing :\ 01:18
=== is supposed to be the finest equality there is 01:19
vrurg And more than that, the context object is a collection of strings (contextes). It can't be uniquely identified with WHICH for that purpose. 01:21
mornfall i'd consider =~=
vrurg mornfall: thanks, I was just about to see if another operator would be helpful. :) 01:22
Kaiepi i also have a programming question if this one has already been answered 01:24
mornfall i think irc can handle some concurrency :p 01:25
Kaiepi alright
i'm writing a chat bot for a website and at the moment it's split into two modules
one for managing the websocket connection, one for handling state 01:26
the one handling state is also handling parsing and commands at the moment, but i want to abstract that out
the issue is i want to abstract it out in such a way that i can paramaterize a role of some sort with any kind of parser to allow for more customization 01:27
since other bots on the site have had the deficit of having very difficult to customize parsing
mornfall parsing isn't super composable by nature 01:28
Kaiepi parsing here can be split into two parts 01:29
one for stuff like battle and chat event messages, and one for chat messages 01:30
mornfall well, the problem is that parsing in the traditional sense is a very top-down matter
maybe you just want to allow competing parses for the same message and sort them out somehow (maybe spit out a score from each sub-parser)? 01:31
Kaiepi the only messages the parsers would be competing each other for are chat messages 01:32
mornfall sure, but parsing commands is easy, even extensibly 01:33
if there is a clear top-down structure, like the first word being a command, then you just dispatch on that 01:34
but if it is supposed to be free-form text, just running all the parsers and letting them tell you how good they think their match is might be the only reasonable option?
anyway, it's bedtime ... gl&hf o/ 01:36
Kaiepi night
thanks for the help
vrurg Kaiepi: the last mornfall suggestion is what I was thinking about: just a parser class used as a kind of filter. 01:37
01:38 yqt left
vrurg Then you could chain them, use parser classes as role parameters – whatever. 01:38
Kaiepi i was thinking a role that manages state that could be parameterized by a command parser and a regular chat message parser 01:40
state obtained from messages received that is 01:42
01:43 random_yanek left
vrurg Kaiepi: class Parser1 { grammar CommandSet1 { ... }; method parse( Str:D ) { ... } }; role StateMgr[ParserClass] { ... }; class Consumer does StateMgr[Parser1] { ... } 01:45
roughly.
Kaiepi looks about right 01:48
i can't use grammars though apart from parsing chat commands because the site's protocol is awful and inconsistent 01:49
vrurg If I understand you correctly, then it doesn't matter. Would it be a grammar or other way of handling the message – the idea is to let a parser class to handle it. I would only define a base role for parsers on top of all this which would demand a minimal set of methods – just to define a standard interface. And then just make things like $parser.accepts( $message ), etc. 01:52
Kaiepi yeah, i understood what you meant 01:53
so you understand what i mean by the protocol being awful it mixes a reasonably well thought out message format with messages that are just text and messages that are raw html 01:58
01:59 random_yanek joined, p6bannerbot sets mode: +v random_yanek
vrurg I hope so. :) The point is to define it your self (or have it defined for you by the client) how that mess is to be dealt with. Without clear definition there will be no good in-code solution. But generally it looks like a work for a filter. 02:00
You pour all the data into it, it lets go useless data bu keeps and gives you back what could be handled. 02:02
I also call it a 'driver architecture' to myself – from the times when drivers were probing available hardware and claiming the devices they could recognize. :) 02:03
02:04 st_elmo joined 02:05 p6bannerbot sets mode: +v st_elmo, lucasb left
Kaiepi m: for 0..3 { Promise.in(3).then({ .say }) } 02:22
camelia ( no output )
Kaiepi m: my @p = gather for 0..3 { Promise.in(3).then({ .say }) }; await Promise.allof: @p 02:23
camelia ( no output )
Kaiepi m: my @p = gather for 0..3 { take Promise.in(3).then({ .say }) }; await Promise.allof: @p
camelia Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept)
Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaugh…
Kaiepi m: my @p = gather for 0..3 { take await Promise.in(3).then({ .say }) }; await Promise.allof: @p
camelia Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept)
Can only use allof to combine defined Promise objects
in block <unit> at <tmp> line 1

Pr…
02:24
Kaiepi oh right $_ gets overridden
vrurg .allof is not needed for await.
Kaiepi it's not?
vrurg await @p works perfectly ok.
Kaiepi since when?
vrurg Dunno. :) 02:25
Kaiepi m: my @a = lazy gather for 0..3 { take Promise.in($_).then({ say $_ }) }; await @a
camelia Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept)
Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaugh…
02:26 molaf left
Kaiepi m: my @a = lazy gather for 0..3 { take Promise.in($_).then({ say $_ }) }; await Promise.allof(@a) 02:26
camelia Earlier failure:
(HANDLED) Cannot .elems a lazy list
in block <unit> at <tmp> line 1

Final error:
Type check failed in binding to parameter '$N'; expected Int but got Failure (&CORE::infix:<orelse>...)
in block <unit> at <tmp> line …
Kaiepi m: my @a = lazy gather for 0..3 { take await Promise.in($_).then({ say $_ }) }; await @a
camelia Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept)
An operation first awaited:
in block <unit> at <tmp> line 1

Died with the exception:
vrurg m: my @p = (1..3).map: { start { sleep rand; say "done" } }; note @p; await @p; 02:27
camelia [Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Planned) Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncau…
vrurg m: my @p = (1..3).map: { start { sleep rand; say "done" } }; await @p;
camelia done
done
done
vrurg remove 'await' from 'take await' 02:28
m: my @a = lazy gather for 0..3 { take Promise.in($_).then({ say $_ }) }; await @a
camelia Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept)
Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaugh…
Kaiepi m: my @a = lazy gather for 0..3 { take Promise.in($_).then({ say $_ }) }; await await @a 02:29
camelia Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept)
An operation first awaited:
in block <unit> at <tmp> line 1

Died with the exception:
Kaiepi huh
vrurg my @a = lazy gather for 0..3 { take await Promise.in($_).then({ say "ok" }) }; await @a
oops. 02:30
m: my @a = lazy gather for 0..3 -> $sec { take Promise.in($sec).then({ say $sec }) }; await @a
camelia 0
1
2
3
vrurg Now it's more understandable output. ;) 02:31
Kaiepi m: my Str @foo; say @foo.WHAT 02:37
camelia (Array[Str])
02:39 molaf joined
Kaiepi huh i thought it'd be a List 02:39
02:39 p6bannerbot sets mode: +v molaf 02:41 Cabanossi left 02:42 Cabanossi joined 02:43 p6bannerbot sets mode: +v Cabanossi
timotimo @ for @rray :) 02:44
02:51 holyghost joined, p6bannerbot sets mode: +v holyghost
timotimo more precisely, though: @ stands for Positional 02:54
the default is Array, though
03:18 benjikun joined 03:19 p6bannerbot sets mode: +v benjikun, agentzh_ left 03:29 quester joined, p6bannerbot sets mode: +v quester 03:30 quester left 03:31 quester joined, p6bannerbot sets mode: +v quester 03:40 leont left
SmokeMachine m: my await do for 0..3 -> $sec { Promise.in($sec).then({ say $sec }) } 03:44
camelia 5===SORRY!5===
Type 'await' is not declared
at <tmp>:1
------> 3my await7⏏5 do for 0..3 -> $sec { Promise.in($sec).
Malformed
my
at <tmp>:1
------> 3my7⏏5 await do for 0..3 -> $sec { Promise.in(

»
SmokeMachine Promise.in
m: await do for 0..3 -> $sec { Promise.in($sec).then({ say $sec }) } 03:45
camelia 0
1
2
3
SmokeMachine m: await do for 0..3 -> $sec { Promise.in($sec).then({ say $sec }) }; say now - BEGIN now
camelia 0
1
2
3
3.01649523
03:53 kurahaupo_ joined 03:54 p6bannerbot sets mode: +v kurahaupo_ 03:56 kurahaupo left 03:58 kurahaupo_ left 03:59 kurahaupo joined, p6bannerbot sets mode: +v kurahaupo 04:00 kurahaupo_ joined 04:01 p6bannerbot sets mode: +v kurahaupo_, SqrtNegInf joined 04:02 p6bannerbot sets mode: +v SqrtNegInf 04:03 kurahaupo left 04:18 nullheroes joined 04:19 Cabanossi left, p6bannerbot sets mode: +v nullheroes, Cabanossi joined 04:20 p6bannerbot sets mode: +v Cabanossi 04:22 coet left 04:52 epony joined, p6bannerbot sets mode: +v epony 05:04 Sgeo_ joined, p6bannerbot sets mode: +v Sgeo_ 05:05 Sgeo left 05:15 zacts joined, p6bannerbot sets mode: +v zacts
holyghost I will extend my Markov Chain methods in Game::Markov next week 05:16
also sample methods 05:17
It's difficult stuff for me
but you can do many excellent things with it
such as calculating/approximating integrals 05:19
05:19 graphene left
holyghost surfaces, ... 05:19
05:20 graphene joined 05:21 p6bannerbot sets mode: +v graphene 05:23 kurahaupo_ left
holyghost You might use it in games for prediction or approximations 05:26
even 3D models I believe 05:27
05:35 vike left 05:40 st_elmo left, st_elmo joined 05:41 p6bannerbot sets mode: +v st_elmo 05:51 nige_ joined, p6bannerbot sets mode: +v nige_ 05:55 Kaypie left 05:57 Kaiepi left, Pikk3wyn joined, p6bannerbot sets mode: +v Pikk3wyn, Kaiepi joined 05:58 p6bannerbot sets mode: +v Kaiepi 06:04 Kaypie joined 06:05 p6bannerbot sets mode: +v Kaypie 06:08 Kaypie left, lizmat left 06:19 Khisanth left 06:23 zacts left 06:33 Khisanth joined 06:34 p6bannerbot sets mode: +v Khisanth 06:52 loops left 06:54 loops joined, Pikk3wyn left, p6bannerbot sets mode: +v loops 07:05 rindolf joined 07:06 p6bannerbot sets mode: +v rindolf 07:16 ufobat_ joined 07:17 p6bannerbot sets mode: +v ufobat_
Elronnd is it possible to use given to do pattern-matching? E.G. if I have a class A { has Int $.a; has Str $.b; } can I match on As that have 5<=a? 07:22
ufobat_ good morning
m: class Foo { }; Foo.new( :yada ); 07:23
camelia ( no output )
ufobat_ m: class Foo { }; Foo.new( :yada; );
camelia Unexpected named argument 'yada' passed
in block <unit> at <tmp> line 1
ufobat_ this error is confusing :-(
holyghost Elronnd give $foo { when /string/ ...) 07:27
s/give/given 07:28
ufobat_ m: class Foo { has $.a; has $.b; }; given Foo.new(:a(5), :b(12)) { when *.a > 4 and *.b < 10 { say "greater 4"} }
camelia ( no output )
Elronnd ufobat_: thanks 07:30
ufobat_ but i think that doesnt "destructure" your object, it calls the getter-methods on it 07:31
nige_ o/ 07:32
Elronnd well, it solves my problem so ¯\_(ツ)_/¯
ufobat_ my %h = (a => 5, b => 8); ; given %h { when *<a> > 4 and *<b> < 9 { say "greater 4"} } 07:33
evalable6 greater 4
nige_ i'm having trouble removing colour codes from Perl 6 error output with .subst 07:37
when i try and match this: ===SORRY!=== Error while compiling 07:39
with $colour-free-error = $error.subst(/\X1B <[0..9;]>* 'm'/, '', :g); 07:41
the ESC characters remain in the output
rosetta code to the rescue: rosettacode.org/wiki/Strip_control...ing#Perl_6 07:49
removing the control character first helped
advent-driven-development++ 07:50
ufobat_ isnt there a way to tell perl6 not to use color for its output at all? 07:53
does anyone know a perl6 module that does provide `resources`?
nige_ there is an environment variable to ask rakudo to produce JSON
it might be useful for logging systems - otherwise the log file will contain colour codes 07:54
07:58 caa51h_ left 08:00 kurahaupo joined, p6bannerbot sets mode: +v kurahaupo 08:03 nige_ left, caa51h joined 08:04 p6bannerbot sets mode: +v caa51h 08:16 jmerelo joined, p6bannerbot sets mode: +v jmerelo 08:21 grumble left 08:22 grumble joined, p6bannerbot sets mode: +v grumble 08:43 rindolf left 08:46 rindolf joined, p6bannerbot sets mode: +v rindolf 08:53 kurahaupo left 08:54 kurahaupo joined, kurahaupo left, kurahaupo joined 08:55 p6bannerbot sets mode: +v kurahaupo
jmerelo .seen daotoad 08:55
yoleaux I saw daotoad 14 Oct 2018 22:38Z in #perl6: * daotoad smiles and waves
jmerelo .seen nige123 09:02
yoleaux I haven't seen nige123 around.
jmerelo .seen nigehamilton
yoleaux I haven't seen nigehamilton around.
09:02 graphene left 09:04 graphene joined 09:05 p6bannerbot sets mode: +v graphene 09:11 quester left 09:23 domidumont joined, p6bannerbot sets mode: +v domidumont
jmerelo Introducing the 1000? project www.facebook.com/groups/perl6/perm...182860695/ 1000 questions about #perl6 asked in SO by... soonish. We need your help! 09:31
09:33 domidumont left 09:34 domidumont joined 09:35 p6bannerbot sets mode: +v domidumont 09:36 domidumont left 09:41 domidumont joined
Geth doc: 0b63543c58 | (JJ Merelo)++ | 2 files
Revising stuff related to Raku

It's been properly addressed in the FAQ and glossary, probably nothing else is needed for the time being. Closes #2443
09:41
09:41 p6bannerbot sets mode: +v domidumont 09:49 alainbb joined, p6bannerbot sets mode: +v alainbb
mornfall b2gills: btw., what do you mean concurrent access to hashes needs explicit locks? :\ 09:55
09:57 benjikun left 09:59 dalek left, benjikun joined 10:00 p6bannerbot sets mode: +v benjikun 10:01 Geth left 10:09 irco joined 10:10 p6bannerbot sets mode: +v irco 10:13 pmurias joined, p6bannerbot sets mode: +v pmurias, xlat joined 10:14 p6bannerbot sets mode: +v xlat 10:21 |oLa| joined 10:22 p6bannerbot sets mode: +v |oLa| 10:23 |oLa| left 10:28 lizmat joined, p6bannerbot sets mode: +v lizmat
ufobat_ lizmat, have you created the issue regarding my stackoverflow question about exporting %*SUB-MAIN-OPTS, if not I would do it 10:31
lizmat ufobat_: I don't think I did, so please :-)
ufobat_ lizmat, i just read your comment so i am a bit late :-)
okies will do now 10:32
xlat Hi, does nativecall support Str encoded('utf16')?
I'm asking 'cause I was mapping Win32::GetFullPathName and have to hack the str before the call with ~"\0"
otherwhise I got randomly corrupted results 10:33
jmerelo lizmat, ufobat_ while you're at it, would it make sense to have also an exportable $*POD? stackoverflow.com/questions/536342...porting-it
lizmat jmerelo: I think it would...
10:35 lucasb joined, p6bannerbot sets mode: +v lucasb
jmerelo xlat: I have no idea. Could you maybe ask this also in StackOverflow if you don't get an answer here? Or even if you do? 10:36
xlat Yeah, I'll do 10:37
jmerelo ufobat_: please post your issue around here so that I can piggyback on it to ask for that above
lizmat hmmm... did we lose Geth ? 10:44
ufobat_ jmerelo, i was distracted by alexander gerst on the "sendung mit der maus" ;-) sorry 10:45
mornfall lizmat: Geth timed out 10:47
lizmat paging timotimo moritz Zoffix : seems we lost Geth 10:49
ufobat_ jmerelo, github.com/rakudo/rakudo/issues/2532 10:50
jmerelo lizmat: is that on the same machine as the other bots? I mean, squashable6 and the others?
let me check
releasable6: status
lizmat I have no idea
releasable6 jmerelo, Next release in ≈6 days and ≈8 hours. 4 blockers. 0 out of 19 commits logged
jmerelo, Details: gist.github.com/5ffa0158f43a3ed850...51472e38e0
jmerelo No, it's not. I don't have access to that machine, then...
ufobat_: thanks 10:51
ufobat_ regarding my other StackOverflow question stackoverflow.com/questions/536380...l6-modules I wrote this github.com/ufobat/p6-ResourceExtra...ractor.pm6
i am looking for feedback, please. I've no clue what i've done, and I dont want to put rubbish into the ecosystem. 10:52
PR are welcome :)
jmerelo ufobat_: that's interesting.
lizmat ugexe nine ^^^
10:53 ablackack20 joined
ufobat_ ugexe already explained to me that this it not going to work on all boxes becasue you might have resources in the META6 that can not be installed on *your* fs becaus it might lack unicode support and stuff 10:53
10:54 p6bannerbot sets mode: +v ablackack20
ufobat_ i would document that in the module of course 10:54
lizmat hmmm... but that's the whole point of %RESOURCES, is that it would hide such issue for you :-( 10:55
ufobat_ absolutly
but because %*RESOURCES hides this issues you can't have access to directories. You should code in a way that you dont need to have that. But if you do want have it, and you know that your FS is able of doing it.. why not 10:58
10:58 yqt joined
ufobat_ and i think %*RESOURCES dont work if you have'nt installed the module yet, right? 10:58
10:58 ablackack20 left, bobv joined, p6bannerbot sets mode: +v yqt
jmerelo xlat: thanks! stackoverflow.com/questions/536915...ted-result Please everyone take a look at this 10:59
lizmat hmmm...
ufobat_ but i think this could be addressed in rakudo itself, in a similar way i did here github.com/ufobat/p6-ResourceExtra...m6#L40-L44
Kaiepi what are you doing with %*RESOURCES?
ufobat_ but this is a bad hackery
10:59 p6bannerbot sets mode: +v bobv
ufobat_ Kaiepi, BAialdor for example has a feature that you can set a template or views *directory* 11:00
Kaiepi i don't get what you mean
ufobat_ Kaiepi, and i am currently writing a cro app that might ship a few files in adirectory, and i just want all to be served
Kaiepi ohhh 11:01
ufobat_ i've got resources/folder/<list of random stuff>
i need to mention each file in a) the source code, b) the META6.json, c) provide access to it either of the fs or the %?RESOURCES, depending if the module is installed or not 11:02
my module would fix those 3 issues
excpet b)
11:10 sena_kun joined, p6bannerbot sets mode: +v sena_kun
buggable New CPAN upload: Algorithm-LDA-0.0.6.tar.gz by TITSUKI modules.perl6.org/dist/Algorithm::L...an:TITSUKI 11:13
11:16 wamba joined, p6bannerbot sets mode: +v wamba
lizmat m: class A:ver<0.4.2> { }; dd A.^ver # inspired by last p6Advent post 11:17
camelia v0.4.2
lizmat m: class A:auth<minime> { }; dd A.^auth
camelia "minime"
11:27 KillaH joined, KillaH left 11:42 kensanata joined, p6bannerbot sets mode: +v kensanata 11:49 robertle joined 11:50 p6bannerbot sets mode: +v robertle 11:56 mscha joined, p6bannerbot sets mode: +v mscha
mscha my @foo; @foo[2] = 4; dd @foo.maxpairs; # What string context? 11:56
m: my @foo; @foo[2] = 4; dd @foo.maxpairs; # What string context?
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at <tmp> line 1
(2 => 4,).Seq
jmerelo mscha: strange 11:59
m: my @foo; @foo[2] = 'd'; dd @foo.maxpairs;
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at <tmp> line 1
(2 => "d",).Seq
jmerelo m: my @foo; @foo[2] = 'd'; @foo.maxpairs.perl.put; 12:00
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
(2 => "d",).Seq
in block <unit> at <tmp> line 1
jmerelo m: my @foo; @foo[2] = 'd'; say @foo.pairs 12:01
camelia (0 => (Any) 1 => (Any) 2 => d)
jmerelo mscha: ^^^ the problem is when converting that array to pairs. docs.perl6.org/routine/maxpairs It's rather unexpected .pairs behavior than a bug... 12:03
12:26 alainbb left 12:30 leont joined, p6bannerbot sets mode: +v leont 12:37 adnrzejek joined 12:38 p6bannerbot sets mode: +v adnrzejek 12:39 adnrzejek left
tyil can I configure IRC::Client to use a certificate for certfp authentication? and if yes, how would I go about it? 12:40
jmerelo tyil: there does not seem to be anyone available to answer this... Maybe you can try Stackoverflow? :-) 12:48
tyil I can post it there, hang on ^^ 12:49
mscha jmerelo: thanks, but is that really not a bug? I don't see why converting to pairs would stringify anything. 12:51
m: my @foo; @foo[2] = 4; my @bar = @foo.pairs; say @bar[2]; # No error here
camelia 2 => 4
tyil jmerelo: stackoverflow.com/questions/536925...-ircclient posted :) 12:54
jmerelo thanks! Good luck.
mscha jmerelo: it seems more likely that it's doing a string comparison involving (Any). But .max() doesn't give an error...
tyil thanks :>
mscha m: my @foo; @foo[2] = 4; say @foo.max; 12:55
camelia 4
jmerelo mscha: yep, but maxpairs is rather .pairs.max 12:56
m: my @foo; @foo[2] = 4; say @foo.pairs.max;
camelia 2 => 4
jmerelo mscha: hey, that works.
m: my @foo; @foo[2] = 4; say @foo.maxpairs;
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
(2 => 4)
in block <unit> at <tmp> line 1
mscha m: my @foo; @foo[2] = 'bar'; say @foo.pairs.max(*.value);
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
2 => bar
in block <unit> at <tmp> line 1
mscha Ah.
jmerelo mscha: maybe ask in StackOverflow? Could be a bug, anyway... 12:57
mscha jmerelo: will do
jmerelo mscha: thanks!
jmerelo clickbaits www.facebook.com/groups/perl6/perm...182860695/ to encourage everyone to _really_ use Stackoverflow to the max, in order to help & expand the Perl 6 community 12:58
lucasb mscha: hi. well there's a hole in the array, an undefined element, no? 12:59
comparing with an undefined element will certain warn. what is curious, I agree is the "string" context 13:00
mornfall jmerelo: some of us are too old for SO :p 13:01
(i also wish writing PODs would garner as much enthusiasm as posting to SO :p) 13:02
lucasb yeah, I think there may be a bug in maxpairs.
13:02 pmurias left
lucasb max/min ignores undefined elements. so, why shouldn't maxpairs? 13:02
m: say (2,Any,3,Int,4).max 13:03
camelia 4
lucasb m: say (2,Any,3,Int,4).maxpairs
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
(4 => 4)
in block <unit> at <tmp> line 1
Use of uninitialized value of type Int in string co…
jmerelo mornfall: one thing does not exclude the other. Even if you have excellent PODs, there might be still some unanswered questions
mornfall: it's more about reaching out, or complementing pods
mornfall: and I'm pretty sure I'm older than you
mornfall jmerelo: you are young in spirit, surely :) 13:05
mscha lucasb: what's strange is that .max() doesn't warn, but .maxpairs() (and .pairs.max(*.value)) does. 13:08
stackoverflow.com/questions/536926...ned-values
13:14 andrzejek joined, p6bannerbot sets mode: +v andrzejek
andrzejek lookatme_q: :) 13:16
13:16 pmurias joined, p6bannerbot sets mode: +v pmurias
pmurias ufobat_: re extracting the files from resources into a directory I agree with Brad Gilbert that teaching Cro to use RECOURCES seems like a better idea 13:25
13:30 kerframil joined, p6bannerbot sets mode: +v kerframil, pmurias left
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> $a, $l { $a => $l }; say @c 13:37
camelia Too few positionals passed; expected 2 arguments but got 1
in code at <tmp> line 1
in block <unit> at <tmp> line 1
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c
camelia [1 => a 2 => b 3 => c]
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; @c.elems
camelia [1 => a 2 => b 3 => c]
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; @c.elems.say 13:38
camelia [1 => a 2 => b 3 => c]
3
13:41 pmurias joined, p6bannerbot sets mode: +v pmurias 13:42 davidb211111 joined, benjikun left 13:43 p6bannerbot sets mode: +v davidb211111 13:45 pmurias left 13:46 pmurias joined, p6bannerbot sets mode: +v pmurias, davidb211111 left 13:48 graphene left 13:50 graphene joined 13:51 p6bannerbot sets mode: +v graphene
Xliff \i 13:52
\o even
13:52 jmerelo left
sena_kun o/ 13:52
Xliff Does META6.json handle native dependencies? 13:53
sena_kun "handles" as?
as to be able to specify "I want such and such system libs, go for it", not yet, as far as I know. but you can ship those yourself using `resources`. 13:54
13:54 pmurias left 13:55 pmurias joined, p6bannerbot sets mode: +v pmurias
Xliff At the very least something that says "Hey, this requires this native lib" 13:57
I thought "depends": "name:from<native>" worked, but zef chokes on it.
sena_kun this doesn't work yet, afaik. 13:58
once again, you can ship if by hands. otherwise I don't know. :/
Xliff OK, thanks!
b2gills mornfall: Changing hashes concurrently can lead to data races. I.E. the hash could change between when you read it and when you write back to it. If you are just reading it, then it will work fine. 13:59
14:12 graphene left 14:13 graphene joined 14:14 p6bannerbot sets mode: +v graphene
SmokeMachine m: say Int cmp Str 14:14
camelia Use of uninitialized value of type Int in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
Same
in block <unit> at <tmp> line 1
Use of uninitialized value of type Str in string contex…
SmokeMachine max uses cmp that’s why is trying to stringify... ^^ 14:15
14:16 vike joined 14:17 p6bannerbot sets mode: +v vike
SmokeMachine m: my @a; @a[2] = 4; @a.pairs.max: *.value <=> *.value 14:19
camelia Use of uninitialized value of type Any in numeric context
in whatevercode at <tmp> line 1
Use of uninitialized value of type Any in numeric context
in whatevercode at <tmp> line 1
Use of uninitialized value of type Any in numeric context…
14:19 pmurias left
El_Che For those of us discussing native apps a few days ago: daringfireball.net/2018/12/electro...ative_apps 14:23
14:24 pmurias joined, p6bannerbot sets mode: +v pmurias 14:25 pecastro joined 14:26 p6bannerbot sets mode: +v pecastro 14:27 pmurias left 14:32 pmurias joined, p6bannerbot sets mode: +v pmurias
mscha m: my int @foo = 1,2,3; say @foo > 2; # huh? 14:32
camelia Cannot resolve caller Real(array[int]:D: ); none of these signatures match:
(Mu:U \v: *%_)
in block <unit> at <tmp> line 1
mscha m: my Int @foo = 1,2,3; say @foo > 2; # works fine 14:33
camelia True
pmurias El_Che: that seems like a self-congratulatory Mac users post
I need to make a design choice for rakudo.js, when running with gather/take enabled I need to decide if make function call and decontainerization etc. always return a Promise, *or* make it sometimes return a promise and then deal with with the fact that Perl 6 objects can't expose a 'then' js method
the second option will likely mean that perl 6 methods will likely be prefixed
El_Che pmurias: is there an other type of mac users? :) 14:34
lizmat congratulates herself # doesn't want to feel left out 14:35
El_Che lizmat: and I congratulate you!
:)
lizmat mscha: could you please file an issue for that ? 14:36
El_Che his rant makes sense, though
(as an ocasional mac user)
pmurias El_Che: I met a few who treat it like something unixy that you don't have to fool around to set things up with like it's (happened a lot with a least me with) linux
mscha lizmat: will do. 14:37
El_Che pmurias: yeah, it took me a long time to configure a mac to be a good enough work environment like Linux. My Linux setup is scripted.
the upside is that during the process I made azerty support acceptable for me: github.com/pqrs-org/KE-complex_mod...s/pull/460 :) 14:43
typing alt + shift + 1 + letter to type a letter with an accent is not very workable (what were they thinking in Cupertino?) 14:44
pmurias El_Che: things like getting the wifi to work is something that you have struggle on the modern linux desktop, not some fancy customisation ;) 14:50
14:58 mscha left
pmurias is waiting till chromebooks take over ;) 15:10
ufobat_ pmurias, I dont; teaching it to x (==cro) means that you still need to teach x-1 others. I agree that my module is a workaround/hack. But i am not yet willing to give up my search for a simpler interface 15:11
maybe a subclass of IO::Path would do the job better? 15:13
pmurias ufobat_: you mean as a better interface for RESOUCES? 15:14
?
15:17 Kaiepi left
ufobat_ yeah, because there are mainly 2 things i dislike about %*RESOURCES, a) it must be installed otherewise %*RESOURCES is empty, if ia m not mistaken, b) %*RESOURCES does not provide any usefull way to retrive information from it. you need to know exactly what you looking for 15:17
15:17 Kaiepi joined
ufobat_ there is no for %*RESOURCE.kv -> $name, $io { ... } 15:18
there is no way to get all files that where in one directory
15:18 p6bannerbot sets mode: +v Kaiepi
ufobat_ if %*RESOURCES would support .kv and wouljd work like written in the design.perl6.org/S22.html#%25%3FRESOURCES I would be happy with it 15:19
because a %*RESOURCE<first-dir>.kv would also be possible, then 15:20
pmurias is design.perl6.org/S22.html#%25%3FRESOURCES an up to date spec? 15:23
ufobat_ i think no, but i dont know it
pmurias it has the header all synopsis have but I think we keep linking to it 15:24
ufobat_: the problem with plugging a fake resource path to modules not expecting it is that it will then end up being passed to slurp etc. 15:35
El_Che pmurias: wifi? That 2000 or something. It's been a while since it doesn't work out of the box for me 15:36
pmurias: last time I had a wifi problem (dropped connections), it wasn't linux as the problem was worse on Windows (couldn't pass kernel parameters). It was a known problematic but widely installed intel wifi card 15:37
pmurias El_Che: had it on my current laptop like ~3 years before (it got fixed after like a year or something by a random ubuntu update) 15:39
ufobat_ pmurias, i didn't get it, sorry 15:42
do you mean if i would create a IO::Resource (a IO::Path like) interface for it? 15:43
pmurias do you want it pluggable transparently or just with minimal effort?
15:45 kaare__ joined 15:46 p6bannerbot sets mode: +v kaare__
pmurias ufobat_: after a moderate about of thought it seems a IO::Path like interface could work 15:47
ufobat_: it even seems like it might be possible for builtins to accept it
ufobat_ there is no "interface", so fully transparently isn't possible, without adding another role to rakudo?
but I could just implement the common methods in a IO::Resource class? 15:49
15:49 lizmat left
ufobat_ then I don't need to export it into a tempdir() and i dont have the contrains of non-utf or case-insensetive filesystems 15:50
pmurias ufobat_: seems like a good start 15:53
ufobat_ pmurias, thanks for your help :) 15:54
pmurias El_Che: I think the "desktop is dying" idea is actually manifesting on at least some of the linux desktop 15:55
15:58 lizmat joined, p6bannerbot sets mode: +v lizmat
pmurias * some of the distros 15:59
15:59 coet joined, p6bannerbot sets mode: +v coet 16:00 pmurias left 16:02 molaf left, pmurias joined, p6bannerbot sets mode: +v pmurias 16:05 termos14 joined, termos14 left
Woodi imo, desktops will be in good condition (not niche just for pro work) until network speed will allow to carry very un-performant devices and do all computations somewhere remote. so we still have some time :) 16:38
16:39 MilkmanDan left 16:40 MilkmanDan joined, p6bannerbot sets mode: +v MilkmanDan 17:03 jmerelo joined 17:04 p6bannerbot sets mode: +v jmerelo 17:06 dalek joined, ChanServ sets mode: +v dalek, p6lert left, p6lert joined, Geth joined, ChanServ sets mode: +v Geth
jmerelo Geth is back. Great! 17:06
17:06 p6bannerbot sets mode: +v dalek, p6bannerbot sets mode: +v p6lert 17:07 p6bannerbot sets mode: +v Geth 17:10 Geth_ joined, dalek left, d4l3k_ joined, p6lert left, Geth left, p6lert_ joined
lizmat whee! .oO( instant gratification on commits :-) 17:11
17:11 p6bannerbot sets mode: +v Geth_, p6bannerbot sets mode: +v d4l3k_, p6bannerbot sets mode: +v p6lert_, d4l3k_ is now known as dalek, Geth_ left
[Coke] docs site still failing to build, btw. 17:11
yoleaux 8 Dec 2018 04:46Z <finanalyst> [Coke]: new version of Pod::To::BigPage processes Pod::Defn on a local version of docs. zef now installing new version.
17:11 Geth joined, ChanServ sets mode: +v Geth 17:12 p6lert_ left, p6lert joined, SourceBaby joined, ChanServ sets mode: +v SourceBaby, p6bannerbot sets mode: +v Geth, p6bannerbot sets mode: +v p6lert 17:13 p6bannerbot sets mode: +v SourceBaby 17:15 kurahaupo left
[Coke] can someone help me get access to the doc site again? Assuming I was using ssh keys on a different box and lost the password. 17:15
17:15 kurahaupo joined
jmerelo [Coke]: I don't think I can, but let me check... 17:16
17:16 p6bannerbot sets mode: +v kurahaupo
jmerelo [Coke]: What's the problem now? 17:16
[Coke] the site running the doc build needs to have the new version of the module. 17:17
(now that it has the new version of rakudo)
moritz is the new version released? 17:18
jmerelo [Coke]: I'm doing it now
moritz: yes
moritz runs zef upgrade Pod::To::BigPage
jmerelo moritz:
moritz: it's actuall Pod::To::HTML
[Coke] ? 17:19
no it isn't.
moritz The following distributions will be upgraded: Pod::To::HTML:ver<0.4.0>:auth<Perl 6>
[Coke] Pod::To::BigPage is the one that got bumped in the meta6.json
moritz Pod::to::BigPage is at the latest version
in zef
jmerelo [Coke]: and then Pod::To::HTML
[Coke] as long as it gets fixed I won't argue. 17:20
jmerelo [Coke]: I see what you mean. docs.perl6.org/build-log/build-201...+00:00.log
[Coke]: But it didn't fail last time I checked yesterday morning. 17:21
[Coke] once the modules are updated you can trigger a rebuild by github.com/perl6/infrastructure-do...rg-rebuild
jmerelo: it's been failing all along.
every time I've checked the build logs since the site updated rakudo
how were you checkin that it didn't fail? 17:22
jmerelo [Coke]: I checked the update.log at the root of docs.perl6.org. Also, it's generating the perl6.html page correctly: docs.perl6.org/perl6.html#t36.2.5.2
[Coke] docs.perl6.org/build-log/build-201...+00:00.log docs.perl6.org/build-log/build-201...+00:00.log docs.perl6.org/build-log/build-201...+00:00.log , e.g., all failures.
jmerelo: what URL is the update.log at? 17:23
jmerelo [Coke]: right, but there's been a few builds since yesterday and it didn't fail.
[Coke] if there have been builds, where are the logs?
jmerelo [Coke]: it's not copied unless it fails. I checked it while it was being built yesterday morning... That last failing log is from ~ 6 hours before I checked 17:24
[Coke] if they're working, and not getting pushed to the build log dir, that's a different failure mode.
jmerelo [Coke]: logs are only published if they fail.
[Coke] how were they working if they didn't have the updated module, I wonder.
jmerelo: ah. that's a bad design. 17:25
jmerelo [Coke]: well, they're right there for the admin to see, in the logs/build-log directory. 17:26
[Coke]: not my design...
[Coke] never said it was.
jmerelo [Coke]: point is
[Coke] point is, the build system was broken by an untested update (or, worse, an update with a known failure) 17:27
jmerelo [Coke]: Pod::To::BigPage was upgraded yesterday, and that stopped failing.
[Coke]: as always, things were a bit more complicated. 17:28
[Coke]: but everything is pretty much in the issue: github.com/perl6/doc/issues/2424 17:29
[Coke] yes, but from over here, looks like that issue was not part of the discussion about whether or not to roll out the updated rakudo on the build box. 17:30
17:30 graphene left
[Coke] sort of thing that would have been caught by (at one extreme) a more automated deployment process, or, (at the other extreme) a change management discussion before pushing out a potentially breaking change. 17:31
jmerelo [Coke]: we'll, it's also kind of a catch-22 situation. We needed to upgrade _because_ new Pod features had been rolled out and _were_ in the documentation.
17:31 graphene joined
[Coke] but why push a breaking change when another change was needed as a followup? 17:32
from a deployment standpoint, it's more correct to combine those changes and do them simultaneously.
17:32 p6bannerbot sets mode: +v graphene
jmerelo [Coke]: which kinda what was done. 17:32
[Coke] BTW, I'm not trying to blame anyone, just trying to point out how we can do this better going forward.
jmerelo [Coke]: I know, and I appreciate that. 17:33
[Coke] jmerelo: the module's changes weren't even *published* when the rakudo update was done.
jmerelo [Coke]: well, they were... kinda.
[Coke]: as I say, it's complicated.
[Coke]: let's start with a fact that has not been mentioned before: I was away from my desktop, in a sofa, due to back pain and on sedatives. 17:34
[Coke] "it broke". that's not complicated; esp. when it didn't have to.
hope you feel better.
jmerelo Right before that, I had bumped up Pod::To::BigPage so that it was updated, and was about to do it. 17:35
lizmat hugs jmerelo
jmerelo [Coke]: not perfect, still with heat on the zone and painkillers, but at the desktop, now.
lizmat: thanks
[Coke]: anyway, you are right, things shouldn't be done that way, but it was due to unexpected circumstances. 17:36
We were about to upgrade Rakudo and push the new version of Pod::To::BigPage, but then things went loose.
The site was broken for a day, and I kinda tried to fix it yesterday morning (European time), which I think I did. 17:37
[Coke] moritz: if you can get me access to the build box again, I'd appreciate it. Probably just need a password reset for coke 17:38
jmerelo [Coke]: I don't think I have the privs for that. But let me give it a try 17:39
moritz [Coke]: can do
[Coke]: you can "sudo su - perlbrew" to manipulate the rakudo that the doc build uses 17:41
17:42 kurahaupo left, kurahaupo joined, kensanata left 17:43 p6bannerbot sets mode: +v kurahaupo
jmerelo huggable: moritz 17:44
huggable jmerelo, nothing found
jmerelo anyway
[Coke] hey, i was trying to ssh into the wrong host this whole time, so that's why I thought I didn't have the right password. moritz++
jmerelo hugs moritz [Coke] lizmat
17:54 kurahaupo left, kurahaupo joined 17:55 p6bannerbot sets mode: +v kurahaupo
[Coke] is there a zef command to verify that you've got versions of dependencies installed that satisfy meta6.json? 17:58
we probably want to have a t/ test that verifies deps (whether it's a callout to zef or a handrolled one with use/require)
jmerelo [Coke]: zef install --deps-only will install new versions if they are more up-to-date 17:59
[Coke]: but that's right, we should have that.
[Coke]: it probably involves some CompUnit dark magic I don't really know how to do, but yes, we should have it.
[Coke] there was a point when docs upped the req to 0.5.0+ but 0.4.0 was still installed where my zef didn't fail. 18:00
(I think because 0.5.0 was not an available option) 18:01
(yet)
18:02 zakharyas joined 18:03 p6bannerbot sets mode: +v zakharyas
jmerelo [Coke]: yep. finanalyst bumped it to 0.4.1 but, since there's a big change (processing defn) here, I finally decided to go full 0.5.0. During that time I think that the reqs in perl6/doc were not changed, so it didn't fail. 18:03
18:04 DarthGandalf left
jmerelo let me recap: old version of rakudo, reqs not changed → didn't fail. It started to fail when rakudo was changed, p2bp was changed, reqs were not. 18:04
18:05 DarthGandalf joined, p6bannerbot sets mode: +v DarthGandalf 18:08 daxim left 18:13 satori_ joined, satori_ left, reach_satori joined 18:14 p6bannerbot sets mode: +v reach_satori 18:19 yqt left 18:23 rouking left 18:33 epony left 18:34 graphene left 18:36 graphene joined, kerframil left 18:37 p6bannerbot sets mode: +v graphene 18:39 kurahaupo left 18:40 kurahaupo joined 18:41 p6bannerbot sets mode: +v kurahaupo 18:44 Fleuri25 joined, Fleuri25 left
tbrowder um, docs sandbox time? 18:48
jmerelo tbrowder: UK, I think. 18:49
It's one hour less than here.
tbrowder sorry, i’m being too short here. i mean: wouldn’t it be useful to a docs testbed viewable by anyone? 18:52
jmerelo ah, right. Yep, it would be great to have a production server that is different from the test server. 18:54
19:02 kurahaupo left, kurahaupo joined 19:03 p6bannerbot sets mode: +v kurahaupo
buggable New CPAN upload: Object-Trampoline-0.0.6.tar.gz by ELIZABETH modules.perl6.org/dist/Object::Tram...:ELIZABETH 19:03
19:04 jast left 19:06 jast joined 19:07 p6bannerbot sets mode: +v jast 19:11 rfold joined 19:12 p6bannerbot sets mode: +v rfold
tbrowder if i’m successful with my next rakudo pr, it will also probably disrupt the docs as did defn, so a real testbed would be handy! 19:20
19:21 xlat left 19:25 nullheroes left
jmerelo timotimo's Advent article has made it to Conway's life forum: conwaylife.com/forums/viewtopic.php...amp;t=3612 19:25
timotimo *gasp*
lizmat weekly: conwaylife.com/forums/viewtopic.php...amp;t=3612 19:30
notable6 lizmat, Noted!
19:31 pmurias left 19:32 pmurias joined, p6bannerbot sets mode: +v pmurias, andrzejek left
jmerelo we're getting lots of visits to the site, most of them from USA ,UK, Germany. The Slashdot post was the one that sent the most visits 19:35
weekly: m.slashdot.org/story/349126
notable6 jmerelo, Noted!
19:36 dpkg6 joined 19:37 p6bannerbot sets mode: +v dpkg6 19:41 dpkg6 left 19:43 telex left 19:47 telex joined, p6bannerbot sets mode: +v telex 19:52 domidumont left 19:56 pmurias left 19:57 jmerelo left, pmurias joined, p6bannerbot sets mode: +v pmurias
Elronnd I have a c library with a function that has this signature void terminal_print_ext8(int, int, int, int, int, const char*, int*, int*). So I tried to wrap it like this: our sub print_ext(int32, int32, int32, int32, int32, int32, Str, Pointer[int32], Pointer[int32]) is native("BearLibTerminal") is symbol("terminal_print_ext8") { * }. But when I say my $destw = Pointer[int32].new(); my $desth = 19:57
Pointer[int32].new(); print_ext(0, 0, 0, 0, 0, "Bla", $destw, $desth), I get an error of Calling print_ext(Int, Int, Int, Int, Int, Str, NativeCall::Types::Pointer[int32], NativeCall::Types::Pointer[int32]) will never work with declared signature (int32, int32, int32, int32, int32, int32, Str, NativeCall::Types::Pointer[int32] $, NativeCall::Types::Pointer[int32] $). I'm guessing that this is down to a
mismatch between NativeCall::Types::Pointer[int32] $ and NativeCall::Types::Pointer[int32], but what really is the difference there?
And how do I resolve that? 19:58
timotimo i would recommend "int32 $destw is rw, int32 $desth is rw" instead
Elronnd how do I declare the variables of $destw and $desth then? 20:00
(Sorry, I'm new to perl)
I tried my int32 $destw is rw, but got an error. If I just do my int32 $destw, I get the same signature mismatch 20:02
20:03 quester joined, p6bannerbot sets mode: +v quester 20:04 molaf joined 20:05 p6bannerbot sets mode: +v molaf
timotimo that should actually work, though 20:08
but the signature mismatch could be about something else
i mean having "my int32 $destw = 5" and then the "int32 $destw is rw" in the signature 20:09
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; say @c.rotor(2) 20:20
camelia [1 => a 2 => b 3 => c]
((1 => a 2 => b))
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; say @c.map({$_.key, $_.value}).flat.rotor(2) 20:21
camelia [1 => a 2 => b 3 => c]
((1 a) (2 b) (3 c))
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; say @c.map({$_.key, $_.value}).flat.roundrobin(2) 20:23
camelia [1 => a 2 => b 3 => c]
No such method 'roundrobin' for invocant of type 'Seq'
in block <unit> at <tmp> line 1
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; say @c.map({$_.key, $_.value}).flat.Array.roundrobin(2)
camelia [1 => a 2 => b 3 => c]
No such method 'roundrobin' for invocant of type 'Array'
in block <unit> at <tmp> line 1
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; say roundrobin( @c.map({$_.key, $_.value}).flat )
camelia [1 => a 2 => b 3 => c]
((1 a 2 b 3 c))
Xliff m: my @a = <1 2 3>; my @b = <a b c>; my @c = do for @a Z @b -> ($a, $l) { $a => $l }; say @c; say roundrobin( @c.map({$_.key, $_.value}) ) 20:24
camelia [1 => a 2 => b 3 => c]
((1 2 3) (a b c))
20:33 pmurias left
Xliff Elronnd: Your problem isn't the pointers, it's the naked 0s 20:35
So: our sub print_ext(int32, int32, int32, int32, int32, int32, Str, Pointer[int32], Pointer[int32]) is native("BearLibTerminal") is symbol("terminal_print_ext8") { * }; my int32 ($a, $b, $c, $d, $e, $f) = (0 xx 6); print_ext($a, $b, $c, $d, $e, $f, "Bla", $destw, $desth) 20:37
Leaving $destw and $desth as you had them. 20:38
20:39 wamba left
Xliff Note that » my int32 ($a, $b, $c, $d, $e, $f) = (0 xx 6); « is the equivalent of » my int32 ($a, $b, $c, $d, $e, $f) = (0, 0, 0, 0, 0, 0); « 20:39
20:39 wamba joined
timotimo the default for int32 is also 0, so you can leave out the initialization if you want 20:39
20:40 p6bannerbot sets mode: +v wamba
Elronnd Xliff: nah, I found the issue, it was that I had the wrong number of args 20:45
I figured it out, works now
Xliff OK
20:50 graphene left 20:52 graphene joined 20:53 p6bannerbot sets mode: +v graphene
[Coke] yawns. 21:22
OT: any MTG Arena players here? 21:24
lizmat www.facebook.com/groups/perl6/perm...839492696/ # perl at 35C3 21:28
21:28 andrzejek joined 21:29 p6bannerbot sets mode: +v andrzejek 21:34 robertle left 21:35 zakharyas left 21:37 st_elmo left 21:40 AlexDaniel joined, p6bannerbot sets mode: +v AlexDaniel 21:52 andrzejek left, yqt joined 21:53 p6bannerbot sets mode: +v yqt, bobv left, graphene left 21:55 graphene joined 21:56 p6bannerbot sets mode: +v graphene, graphene left 21:58 graphene joined, p6bannerbot sets mode: +v graphene 22:04 ChoHag left 22:13 wamba left 22:20 ChoHag joined 22:21 p6bannerbot sets mode: +v ChoHag 22:29 yqt left
[Coke] re: curly braces vs. square brackets (or parens or angle brackets) - suggestion for a word that covers the variety but isn't confusable with one of the individual kind? 22:39
22:42 rindolf left
[Coke] leanings towards "balanced delimiters" 22:42
reach_satori Is there something similar to beautifulsoup for perl6? 22:43
i'm trying (arduously) to learn it and a little web-scraper seems like a good first project
Geth doc: 0573fb5e69 | Coke++ | doc/Language/modules.pod6
whitespace
doc: 133c83753c | Coke++ | doc/Language/glossary.pod6
cover something that is not just a bracket
[Coke] what is beautifulsoup? 22:44
pypi.org/project/beautifulsoup4/ ?
reach_satori yes
22:48 jast left 22:50 jast joined 22:51 p6bannerbot sets mode: +v jast
sena_kun phew 23:08
second article is done. \o/
23:11 pecastro left
Xliff sena_kun++ 23:21
sena_kun Xliff, o/
by the way, I am already leaving, but if someone can grammar-wise check my Advent posts(14th and 15th), that will be very helpful. :) 23:22
o/ 23:35
23:35 sena_kun left 23:52 kurahaupo_ joined 23:53 p6bannerbot sets mode: +v kurahaupo_ 23:55 kurahaupo left