🦋 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 eseyman joined, sjn joined, tbrowder__ joined, timo joined, reportable6 left, leah2 joined, ugexe joined, Tirifto joined 00:01 reportable6 joined 00:02 dg joined, laidback_01 joined, cm joined 00:03 leah2 left, jgaz joined, leah2 joined 00:04 ingy joined 00:05 guifa joined, a3r0 joined 00:27 jgaz left 00:29 jgaz joined 00:36 deoac left 00:39 jpn left 00:55 MasterDuke joined 01:26 teatime joined 01:27 teatwo left 01:58 derpydoo joined 02:26 teatwo joined 02:29 teatwo left, teatwo joined, teatime left 03:06 jpn joined 03:13 jpn left 04:13 nativecallable6 left, evalable6 left, sourceable6 left, statisfiable6 left, benchable6 left, coverable6 left, notable6 left, squashable6 left, bloatable6 left, quotable6 left, greppable6 left, committable6 left, releasable6 left, unicodable6 left, linkable6 left, bisectable6 left, reportable6 left, tellable6 left, shareable6 left 04:14 evalable6 joined, shareable6 joined, notable6 joined, tellable6 joined, sourceable6 joined, coverable6 joined, unicodable6 joined 04:15 statisfiable6 joined, committable6 joined, bisectable6 joined, quotable6 joined, linkable6 joined, reportable6 joined, greppable6 joined, nativecallable6 joined, bloatable6 joined, benchable6 joined 04:16 releasable6 joined, squashable6 joined 04:33 nebuchadnezzar left, nebuchadnezzar joined 05:07 jpn joined 05:18 jpn left 05:34 jpn joined 06:00 reportable6 left, reportable6 joined 06:28 dogbert11 joined 06:29 dogbert17 left 06:32 jpn left 06:34 jpn joined 06:49 andinus joined 06:50 jpn left 07:17 dogbert11 left 07:18 jpn joined 07:25 dogbert11 joined 07:26 jpn left 07:27 abc50 joined
gfldex lolibloggedalittle: gfldex.wordpress.com/2023/07/02/sa...hem-apart/ 07:53
08:02 jpn joined 08:08 jpn left
Voldenet >at tmp/2021-03-08.raku 08:29
it made me check the date twice 08:30
gfldex lolibloggedagain: gfldex.wordpress.com/2023/07/02/i-...ification/ 08:37
Voldenet: that file is around for quite some time indeed. I don't like to use a REPL because those refuse to keep good records.
08:48 abc50 left 08:49 sena_kun joined
Voldenet I hate repl too, prefer files, but I use dates with meaningful names instead 09:38
like `ttt.p6`, `x.raku` and so on 09:39
s/I use dates/I use files/
09:49 linkable6 left, evalable6 left, linkable6 joined 09:51 evalable6 joined 10:47 derpydoo left 10:53 Sgeo left 10:54 Vyrus joined, RonaldR34g4m left 11:04 jpn joined 11:11 jpn left 11:21 phogg left, phogg joined 11:31 leedo left, leedo joined 11:32 jcallen left 11:33 jcallen joined, lucs left 11:34 lucs joined
nemokosch files are inconvenient tbh 11:50
Voldenet depends on how you use them 11:54
i usually just do inotifywatch/run in loop and edit in separate window 11:55
12:00 reportable6 left, reportable6 joined 12:05 ab5tract joined
tbrowder__ fyi i finally found a module test error while using "mi6 test". a binary file had not been "cmod ++". i never saw a clue to that while it was covered up by a bash script. i may try changing test "run 'exe'" to "run 'raku exe'" and see what happens. 12:50
13:05 linkable6 left, evalable6 left, evalable6 joined 13:07 linkable6 joined 13:58 sena_kun left 14:00 sena_kun joined 14:05 bigdata joined 14:07 bigdata left
timo gfldex: that $_ in add-index-entry is a little wild :D 14:24
m: sub test() { INIT { $_ = 123; say "inited" }; END { say "DU at end is $_" }; say "inc DU from $_ to {++$_}"; }; test() for ^10; 14:25
camelia inited
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 t…
timo m: sub test() { INIT { $_ = 123; say "inited" }; END { say "DU at end is $_" }; say "inc DU from $_ to {++$_}"; }; test() for ^4;
camelia inited
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
DU at end is 124
timo is this safe to rely upon? 14:26
14:27 teatwo left, teatwo joined
timo m: sub test() { INIT { $_ = 123; say "inited" }; END { say "DU at end is $_" }; say "inc DU from $_ to $(++$_)"; }; test() for ^4; 14:27
camelia inited
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
inc DU from 123 to 124
DU at end is 124
14:31 zapwai joined 14:32 teatwo left, teatwo joined 14:33 teatwo left 14:34 teatwo joined
tbrowder__ duh, the missing file cmd was "chmod +x" to make it executable. i usually do that first thing when creating such a file, but muscle memory failed me, again. 14:34
so this works in the lives-ok {} test without an exectable file: "run 'raku', 'script'" 14:50
but, if the script is to be installed, then it probably won't execute. i'll add a test to check executables for the x bit. no idea how to do that for Windows. 14:53
better yet, in the test file, chmod +x each just before running its first run test 14:59
15:03 dogbert11 left 15:09 euandreh joined 15:14 euandreh left
guifa timo: that feels right. But assuming that you have a $_ outside the INIT and END blocks (it would feel off if it weren't that way since $_ I think would only be in the higher scope if it were so referenced, but I could be wrong on that) 15:20
ugexe you probably shouldn't modify other files inside tests 15:25
that is relying on the test to ensure a valid state of your distribution 15:26
that sentence is a bit ambiguous. rather, that is relying on the test to act as a sort of code-generation stage 15:27
checking for the +x bit in the test is the correct thing to do
15:49 euandreh joined 15:56 zapwai left 16:16 SmokeMachine left, SmokeMachine joined 16:24 raiph joined
gfldex timo: I wasn't even sure that works. Raku++ 16:27
timo gfldex: is there some issue to track regarding how you're saying that hyper and Proc::Async don't work well together? 16:36
afkbbl 16:37
16:47 euandreh left
gfldex timo: with a :degree highter 8 I get deadlocks. 16:51
16:55 rf left, euandreh joined
timo does it get better if you increase the raku max threads env var? 16:55
i wonder what causes that 16:56
perf stat ~/raku/install/bin/rakudo -e '(^5000).hyper(:degree(32), :batch(4)).map({ my $p = run :in, :out, :!chomp, <xxd>; $p.in.put($_ xx 1000); $p.in.close; $p.out.slurp(:close) });' 17:06
this seems to lock up here as well
17:11 zapwai joined 17:25 ab5tract left 17:51 bisectable6 left 17:53 bisectable6 joined 18:00 reportable6 left, bisectable6 left 18:01 reportable6 joined 18:02 bisectable6 joined
timo gfldex: i rewrote it to use Proc::Async and it no longer hangs 18:16
Geth ¦ problem-solving: finanalyst assigned to coke Issue POD6 to RakuDoc revision process github.com/Raku/problem-solving/issues/375 18:17
timo perf stat ~/raku/install/bin/rakudo -e 'use v6.e.PREVIEW; (^5000).hyper(:degree(32), :batch(4)).map({ my $p = Proc::Async.new("xxd", :w); my $out; $p.stdout.tap({ $out ~= $_ }); my $prom = $p.start; await $p.say($_ xx 100); $p.close-stdin; await $prom; $out });' 18:19
unfortunately for such simple cases it's a bit verbose. much verboser than the "run :out, :in" variant 18:20
:on-write(-> $blob { cur-promise .= then({ await $!proc.write($blob) }); }) # this is where the backtrace says the thread hangs, it goes straight into a sub await that first does my $*RAKUDO-AWAIT-BLOCKING := True; $*AWAITER.await($p) 18:24
that's from core.c/Proc.pm6 in line 33 18:25
18:44 lichtkind joined 18:51 Xliff joined 18:59 Sgeo joined 19:10 euandreh left 19:13 bisectable6 left 19:15 bisectable6 joined 20:05 jpn joined 20:10 jpn left 20:25 zapwai left 21:15 mark22k left 21:17 mark22k joined 21:23 vrurg left, derpydoo joined 21:35 jpn joined 21:39 sena_kun left, jpn left 21:56 derpydoo left, vrurg joined 22:17 bisectable6 left 22:19 lichtkind left 22:20 bisectable6 joined 22:52 raiph left
tbrowder__ ugexe: good points, will do, thanks 22:53
23:52 linkable6 left, evalable6 left, evalable6 joined 23:55 linkable6 joined