🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku
Set by ChanServ on 14 October 2019.
ggoebel raku: say (0..2) X (0..2) 00:02
evalable6 ((0 0) (0 1) (0 2) (1 0) (1 1) (1 2) (2 0) (2 1) (2 2))
ggoebel raku: say (2..0) X (0..2)
evalable6 ()
ggoebel why does the second produce an empty list? 00:03
lizmat m: dd (2..0).list 00:05
raku: dd (2..0).list
evalable6 ()
camelia ()
lizmat ggoebel ^^
m: say (2...0) X (0..2)
camelia ((2 0) (2 1) (2 2) (1 0) (1 1) (1 2) (0 0) (0 1) (0 2))
lizmat perhaps you meant that? ^^ 00:06
2..0 is an empty list, 2...0 is the sequence 2,1,0
timotimo i wonder if Our IDE should say anything when it encounters a range with the lhs bigger than the rhs 00:33
timotimo it could be annoying when that's what you actually want 00:44
elcaro timotimo: potentially the parser could pick it up for literal values (much like it does for @a[-1]) 01:10
timotimo absolutely 01:11
i'm refering to Comma only for this, though 01:12
elcaro I've been using Raku for 5 years, and there's one burning question about it I've had, but never asked... 01:15
timotimo uh oh
elcaro what is the point/benefit of `classify-list` and `categorize-list` over `classify` and `categorize`
timotimo oh interesting 01:16
elcaro the examples in the docs for the *-list versions can be achieved with the non *-list versions
the examples in the docs also look a bit odd syntactically (ie, say % .classify-list { ... })
I just... I don't see the point, but maybe I'm missing something
timotimo ah i remember now i believe 01:17
without classify-list on Hash, you can't easily decide what the type of hash you get
elcaro oh... so for typed hashes, eg %hash{Foo} ? 01:18
timotimo hm but we do have a :into for classify, too
elcaro is that what you mean by "type of Hash"... because List.classify/categorize always returns a Hash, right?
another reason for the `-list` versions I can see is modifying an existing hash 01:19
timotimo right, that too 01:20
elcaro you can sorta do this with the non-list versions, but it's a bit janky (%hash ,= % = (^5).classify(...))
ggoebel lizmat: thank you!
elcaro I guess what I'm really saying is... I don't think I've seen a really compelling reason to use the `-list` versions, and maybe the Docs could do better at showing what that reason is. 01:22
also... "janky" was the wrong adjective earlier. I meant more "inelegant", syntax-wise... though beauty is in the eye of the beholder 01:25
coldpress Regarding: is there an easy way to make the lists in a set of lists unique? (easy means: without declaring a custom class that overrides WHICH) -- the answer is yes: make each list a set. 04:41
m: Set(Set(1,2),Set(2,1)).say
camelia Set(Set(1 2))
jmerelo A couple of days to submit your talks to FOSDEM news.perlfoundation.org/post/fosde...for-papers 06:32
Geth doc: 74904259ae | JustThisGuyAZ++ (committed by Juan Julián Merelo Guervós) | doc/Type/Map.pod6
Update Map.pod6

Clarify what the list method returns.
06:38
linkable6 Link: docs.raku.org/type/Map
moon-child coldpress: that doesn't help if you want to have duplicate items in the lists, though 07:10
coldpress moon-child: fair point 07:35
moon-child an alternative would be to turn the set into a list and use .unique(:with(&[eqv])) 07:38
bbkr Hi. There is typo in 2020.12 announcement: "methods to Suppy.batch method" - SuppLy 11:02
moritz bbkr: thanks, I fixed it in the repo. Dunno where it's published, and if anybody can update it there as well.... 11:07
bbkr It's also in in tag description. 11:11
sena_kun I updated the tag description. 11:54
lizmat sena_kun: please note that that line should actually be removed 12:07
"`:emit-on-empty` and `:emit-once-on-empty` " did not make it to the final implementation, and were replaced by "emit-timed"
sena_kun lizmat, it documented was packed into release build, so no meaning to change it now. 12:14
jmerelo Anyone up for FOSDEM? news.perlfoundation.org/post/fosde...for-papers 12:15
sena_kun lizmat, I guess next time I will do changelog weekly, so that more people had time to actually read it, rather than doing something boring like this during a weekend.
lizmat sena_kun: that sounds like a plan :-) 12:27
xinming m: my %hash; my %n = |%hash<>:p.map({ .key => .value }); 15:27
camelia ===SORRY!===
MVMArray: Can't pop from an empty array
xinming A low level bug. ;-)
m: my %hash; my %n = |(%hash<>:p.map({ .key => .value }));
camelia ( no output )
xinming While the later one worked as expected 15:28
lizmat xinming: please make an issue for this1 15:56
!
xinming lizmat: already done 16:21
already done after I discovered this 16:22
github.com/rakudo/rakudo/issues/4132
[Coke] wonders if Todd & Margo is a nod to the neighbors in Christmas Vacation. 16:41
xinming Is there a module which we can limit the length? When the queue is full, the $queue.add-to-queue is blocked, wait for queue to be processed by other party? 17:01
Or someone can give me some hint on how this can be implemented.
I mean, a way to limit the length of the queue, or maybe pool, no matter what we call it. :-) 17:03
lizmat and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2020/12/21/2020-...releasmas/ 17:04
xinming what I try to do is doing something like throttle in Supply, Which is a bit like pipe in unix
tony-o do you want concurrent workers in the pool xinming ? 17:05
tellable6 2020-12-19T08:38:16Z #raku <jmerelo> tony-o great!
xinming tony-o: yea
the workers will be able to pull jobs from Channel. 17:06
It's a bit like token bucket filter
I dont' want to do it with loop + sleep interval to implement this. 17:07
What I want to do is something like, Supply, with token bucket filter pool implementation.
But block the sender when the bucket is full 17:08
tony-o use a $*SCHEDULER when you create the supply 17:09
tony-o m: $*SCHEDULER.say; 17:09
camelia ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable)
xinming hmm, bed time, Will dive deeper later 17:11
Xliff Morning. 20:25
How can I turn on request debugging when using Cro?
CRO_TRACE? 20:26
Geth ecosystem: 3b5c81814d | (Pawel Pabian)++ (committed using GitHub Web editor) | META.list
Renamed Text::Markov module repository.
20:52
Geth doc/de-trap-regex-trap-description: 8c39423ad1 | Altai-man++ (committed using GitHub Web editor) | doc/Language/traps.pod6
De-trap a trap's description

Closes github.com/Raku/doc/issues/3721
21:17
doc: Altai-man++ created pull request #3745:
De-trap a trap's description
21:18
doc/eval-example-fix: 8a816c13fb | Altai-man++ (committed using GitHub Web editor) | doc/Type/independent-routines.pod6
Update independent-routines.pod6

Closes github.com/Raku/doc/issues/3730 Closes github.com/rakudo/rakudo/issues/4061
21:23
doc: Altai-man++ created pull request #3746:
Update independent-routines.pod6
21:24
Geth ecosystem: 4b40395822 | (Pawel Pabian)++ (committed using GitHub Web editor) | META.list
Renamed JSON::RPC module repository.
21:36