🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 6 September 2022.
00:00 reportable6 left 00:03 reportable6 joined
ugexe anthk_: zef v0.18.3 (just released) should be able to correctly use tar on openbsd. although i'm not sure that is what your problem is (you posted a Memory allocation error, but not the entire output from zef using --debug that contains that line) 00:23
01:03 linkable6 left, evalable6 left, evalable6 joined 01:05 linkable6 joined 01:11 razetime joined 01:25 guifa joined
SmokeMachine Ew features on RakuCron (github.com/FCO/RakuCron/blob/main/...kuconfig). Any suggestions and/or critics? 01:49
02:00 ab5tract left
antononcube @SmokeMachine Please, write a comprehensive README. At least a mission statement and/or motivation. 02:05
02:15 guifa left
@SmokeMachine I filed an issue proposing the addition of (LLM generated) documentation: github.com/FCO/RakuCron/issues/1 . 02:39
03:12 guifa joined 03:15 guifa__ left 03:24 MasterDuke left 04:19 razetime left
Geth ¦ problem-solving: 0rir assigned to coke Issue Ranges' purposes github.com/Raku/problem-solving/issues/382 04:31
04:32 mark22k left 04:34 mark22k joined 05:03 razetime joined 05:30 razetime left 05:39 samcv_ left 05:40 samcv joined 06:00 reportable6 left 06:02 reportable6 joined 06:10 RonaldR34g4m joined 06:11 Vyrus left 06:37 abraxxa joined 06:42 jpn joined 06:58 MoC joined 07:00 MoC left 07:05 MoC joined 08:03 Sgeo left 08:15 tea3po joined 08:18 teatwo left 08:24 MoC left 08:28 tea3po left, tea3po joined
nemokosch I wonder what it would take to pull glot.io to the latest Rakudo 09:08
Somehow there is a docker container and a nix package
However, there is an up-to-date Nix package for Rakudo 09:09
And probably an up-to-date Docker container as well, for what it's worth...
09:27 jpn left 09:36 jpn joined 10:24 MoC joined 10:50 m_athias left, m_athias joined 11:07 abraxxa left 11:12 abraxxa joined 11:28 abraxxa left
drakonis replit pulls from nixpkgs 11:37
nemokosch this one does too 11:38
11:47 ab5tract joined 12:00 reportable6 left 12:02 reportable6 joined
drakonis well 12:04
replit uses nix for it as opposed to generating docker images
also better maintained 12:05
nemokosch replit is not practical for the same purpose. The Discord bot uses the glot.io executor for producing output 12:09
replit is rather bulky if all you ever wanted was to run a little piece of code 12:10
12:13 ab5tract left 12:14 sftp left 12:19 ab5tract joined 12:22 squashable6 left 12:24 squashable6 joined 12:25 ab5tract left 12:49 kybr joined
kybr On Windows: `rakubrew download 2023.06` "Failed to extract archive." -- I also tried 2023.04 and 2023.02 12:54
nemokosch +1 13:01
kybr the extraction seems to happen, but it's half-baked. i downloaded and extracted the .zip for moar-2023.02 and it seems fine. I copied it into \rakubrew\versions\...moar-2022.06/... but a `rakubrew switch moar-2023.02` gives "Version moar-2023.02 is broken. Refusing to switch." 13:11
using rakudostar dist 13:19
13:42 RonaldR34g4m left
nemokosch Actually I'm not sure if i ever succeeded at installing with Rakubrew on windows 14:24
ugexe rakubrew is the only way i use rakudo on windows. i use `rakubrew build ...` not `rakubrew download ...` though 14:33
14:33 bigdata joined
nemokosch the windows build toolchain is a bit funny 14:34
14:55 MoC left 14:56 MoC joined 15:19 Sgeo joined
antononcube @lizmat Did / do you test "App::Rak" in some sort of sandbox? (For example, special user account, and/or Virtual Machine.) 15:26
kybr also: just starting the raku interpreter (unused) eats 35% of my CPU (Windows surface pro 7) 15:35
using rakudo-star moar-2023.06
nemokosch this is a long-standing problem 15:36
github.com/rakudo/rakudo/issues/5276 15:37
15:40 PipStuart left
ugexe fwiw windows 7 is no longer explicitly supported by libuv 15:49
15:51 PipStuart joined 16:05 codesections joined
librasteve did clone change in the past few months? 16:18
16:18 jpn left
nemokosch bisectable might help 16:21
if you give an example, maybe I can help, too
librasteve class Unit is export { has Str $!type; has Str @.names is rw = []; has Int @.dims = 0 xx NumBases; has MixHash $.dmix is rw = ∅.MixHash; #new by deep cloning an existing Unit method clone { nextwith :names([]), :type(''), :dims(@.dims.clone), :dmix($.dmix.clone) } } 16:23
nemokosch for @.dims.clone, nothing related for at least a year 16:28
MixHash has had a commit in february but it shouldn't change clone 16:30
for Array.clone, actually, the implementation didn't change but it's kind of complex 16:32
sorry, if you need something specific, you will probably need to invoke bisectable. I see no commits that even touched that kind of code for at least half a year 16:33
librasteve ok - that pretty much rules that out then... appreciate the help! 16:42
tonyo librasteve: what're you trying to figure? 16:52
tbrowder__ hi, any windows ppl try to install cpan perl modules in github workflows? i'm having success using cpanm on macos but the same line on windows fails 17:18
17:18 linkable6 left, evalable6 left
tbrowder__ with several dep modules failing 17:19
17:21 linkable6 joined, evalable6 joined
ugexe macos comes with perl installed 17:27
i doubt some base windows image does
17:46 bigdata left
librasteve tonyo: thanks ... but this is some code I wrote and I seem to have made a naughty bug! 17:54
18:00 reportable6 left 18:02 reportable6 joined 18:07 abraxxa-home joined 18:14 squashable6 left 18:15 squashable6 joined 18:19 sena_kun joined 18:22 sena_kun left 18:23 sena_kun joined 18:34 abraxxa-home left 18:35 abraxxa-home joined 18:41 abraxxa-home left
tbrowder__ actually i found the base windows image does come with strawberryperl installed, and it does include cpanm. 19:03
so i have made some progress.
at last check the windows cpan load line now works. the error now is with zef installing a raku module that can’t work with windows. 19:10
rir_ rir 19:36
19:38 rir_ left 19:59 MoC left
jgaz Theoretically, is it possible to use built-in language features to extend existing operators? Example: `!(<)` returns a Bool but could I extend it to accept a `:k` and get the Int of an offset given `@small !(<) :k @large`? 20:00
librasteve jgaz: yes definitely - you will need something like this (think of the built in as multi already)... 20:03
multi infix:<\<> ( $left, $right, :$k) is export { ... } 20:05
^^ discord has dropped the '&'
and then you need to follow the guidance here docs.raku.org/language/functions#Multi-dispatch to make sure that your signature is distinctive 20:07
nemokosch I wonder if that's really where the adverb would go in the syntax
it's a bit funny, I can imagine it would have to go after the second argument
there is also another challenge: !(<) is a deduced operator. Not sure if you can overload something like that 20:08
librasteve thinking of m:g/.../ probably it needs to huddle the actual operator 20:09
nemokosch and if you cannot, the ! meta-operator might remove whatever you added for the base operator (<)
librasteve maybe @small !(<:k) @large
nemokosch although you know, !(<) can probably be rephrased as (>=) 😛
jgaz Thanks! Raku is complicated but I love its expressivity. I'm just trying to experement. 20:11
20:15 teatwo joined 20:18 tea3po left
librasteve m: multi infix:<+> ( $l, $r, :$k ) { 'yo' }; say 1 + 2 :k; 20:21
Raku eval yo
20:24 teatwo left
librasteve m: multi infix:('<') ( $l, $r, :$k ) { 'yo' }; say 1 < 2 :k; 20:25
Raku eval Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku You can't adverb &infix:«<» at /home/glot/main.raku:1 ------> ) ( $l, $r, :$k ) { 'yo' }; say 1 < 2 :k⏏; expecting any of: pair value
20:25 teatwo joined
librasteve close, but no cigar 20:25
nemokosch maybe because it has chaining associativity? 20:27
jgaz I see I'm not the only person scratching their head about this. :) 20:29
nemokosch operator adverbs didn't turn out to be that useful, outside of a few special situations
librasteve you could mixin a role to one or both args and then use the arg type to distinguish the multi 20:35
m: role K {}; multi infix:('>=') (K $l, $r) { 'yo' }; my $a = 3 but K; say $a >= 2; 20:39
Raku eval True
20:42 rjbs left 20:43 rjbs joined
SmokeMachine There are new features on RakuCron (github.com/FCO/RakuCron/blob/main/...kuconfig). I'm thinking next start logging some stuff there. Does, any one, have any suggestion for a good module for logging? Or is it better to do that by hand? I'm thinking on using raku.land/zef:jonathanstowe/Lumberjack, opinions? 21:11
21:34 teatwo left
antononcube @SmokeMachine Do it by hand! (Which, I assume,means “make a module.”) 21:43
21:46 buffet joined
nemokosch Well, if there is a good enough alternative? I don't know much about Lumberjack though 21:48
But it seems to me that we keep building essentially the same things over and over. There are at least 3 individual branches of GTK bindings, several leftover HTTP server/client libraries, loads of old templating engines and/or HTML generators... 21:49
SQL generators as well
21:54 tejr left
SmokeMachine antononcube: no, I meant just use &say and open files... 22:02
antononcube I see. Also, my suggestion/ issue for “RakuCron” is not that serious…. 22:03
SmokeMachine nemokosch: me neither, but I like what I see... it seems to be some some dispatchers/plugins... raku.land/?q=Lumberjack 22:04
antononcube: I disagree, I think that's very important! but I didn't like the generated documentation... so I was trying to regenerate it with no success... 22:06
antononcube Ah. It is just a jump-start. Some human interaction is most likely always needed. 22:07
nemokosch hm, what generated documentation? 22:10
SmokeMachine nemokosch : github.com/FCO/RakuCron/issues/1
nemokosch 😂 22:15
librasteve i think we need a process to sunset modules and/or to detect if there is an active author 22:25
nemokosch that's a good idea, and probably in accordance with the raku-community-modules account 22:26
librasteve yeah - the community can decide to adopt stuff that has ongoing value 22:27
nemokosch I'm trying to do some housekeeping there, especially with the modules that are based on some existing technology
22:41 silug left, silug joined
are subsets our-scoped by default? 22:41
22:44 silug left 22:45 sena_kun left
tbrowder__ ref windows CI testing: is there any way to make META6.json contents different for different OSs? 22:55
im 22:56
22:56 merp left
tbrowder__ *in the same repo? 22:56
vendethiel Turned out to be very unpredictable too tbh 22:59
I re-read the design doc that mentions it and I got confused anew
nemokosch if $prefix.defined && (%!providers{$prefix} :exists) { @providers = %!providers{$prefix}; } 23:10
just read this bit in the code of Template6
that paren is required
otherwise it would attach to &&
vendethiel Or when you have to switch between not and ! because it’d attach to the wrong one… 23:19
ugexe tbrowder: No, but what are you trying to do? 23:31
23:56 evalable6 left, linkable6 left 23:58 evalable6 joined 23:59 linkable6 joined