🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). This channel is logged for the purpose of keeping a history about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Log inspection is getting closer to beta. If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 25 August 2021.
00:06 reportable6 left 00:07 reportable6 joined, archenoth left 00:21 jmcgnh joined 01:13 frost joined 01:56 guifa left 02:03 p6steve left 02:05 p6steve_ joined 02:51 jorge joined
jorge hi 02:51
can I hack people with raku? 02:52
Voldenet computers maybe, but not people 02:58
03:00 guifa joined 03:03 jorge left 03:17 Guest35 left 04:17 bloatable6 left, greppable6 left, nativecallable6 left, notable6 left, quotable6 left, coverable6 left, linkable6 left, benchable6 left, statisfiable6 left, bisectable6 left, releasable6 left, sourceable6 left, reportable6 left, unicodable6 left, committable6 left, evalable6 left, shareable6 left, tellable6 left, bisectable6 joined, releasable6 joined 04:18 sourceable6 joined, benchable6 joined 04:19 statisfiable6 joined, bloatable6 joined, quotable6 joined, committable6 joined, coverable6 joined, greppable6 joined, reportable6 joined 04:20 evalable6 joined, tellable6 joined, nativecallable6 joined, unicodable6 joined, linkable6 joined, notable6 joined, shareable6 joined 04:52 xinming left 04:53 xinming joined 04:58 Kaiepi left 05:18 perlbot left, simcop2387 left 05:19 simcop2387 joined, perlbot joined 06:07 camelia left, crystalfrost[m] left, pierrot left, maettu left, gordonfish left, toddr left, tbrowder left, merpaderp left, lucs left, esh_ left, SmokeMachine left, tonyo left, mtj left, drakonis left, maettu joined, lucs joined, merpaderp joined, mtj joined, esh joined, lucs left, lucs joined, SmokeMachine joined, tbrowder joined, drakonis joined, tonyo joined, toddr joined 06:08 reportable6 left, drakonis left, drakonis joined, crystalfrost[m] joined, pierrot joined, gordonfish joined 06:09 reportable6 joined 06:14 camelia joined 06:18 lockywolf left, dutchie left, charsbar left, pjlsergeant left, charsbar joined, pjlsergeant joined 06:19 lockywolf joined, dutchie joined 06:23 Sgeo_ left
nine yet 06:30
06:49 jjido joined 07:30 abraxxa joined 07:33 abraxxa left 07:35 abraxxa joined 07:39 abraxxa left 07:40 abraxxa joined
moritz working on it? :D 07:42
lizmat is reminded of the final episode of Dollhouse 07:47
"Despite its best efforts, the L.A. Dollhouse has been unsuccessful in stopping the mind-wiping technology from spreading out of control."
"depicts a post-apocalyptic future where the mind-wiping technology of the Dollhouse has developed to the extent that vast numbers of people can be remotely wiped and have new personalities implanted"
en.wikipedia.org/wiki/Dollhouse_(TV_series) 07:48
CIAvash I'm reminded of Ghost in the Shell 07:53
MasterDuke en.wikipedia.org/wiki/The_Left_Hand_(Dollhouse) was a fantastic episode, Victor as Topher was a phenomenal acting job 07:55
also reminiscent of Altered Carbon 07:57
08:02 dakkar joined 08:33 jjido left 09:07 frost left 09:09 frost joined 09:12 p6steve_ left 09:27 frost left
kawaii_ Why does smartmatch against true always match? 09:41
I've got this sub here, which checks a cache first and then a database if nothing returned from the cache, and I wanted a DRYer way of doing the log output than just if/else based on the state of $cached. www.irccloud.com/pastebin/JGXlYhj8/ 09:46
But apparently I can't use `when True` or `when False` here as they always smartmatch? 09:47
MasterDuke `when * === True` should work 09:49
09:50 abraxxa left 09:51 abraxxa joined
kawaii_ oh, they do, thanks! 09:52
09:59 abraxxa left 10:01 abraxxa joined 10:05 abraxxa left 10:06 abraxxa joined 10:09 Kaiepi joined
nine kawaii_: it's simply by definition. It's simply useful to have an "always matching" and "never matching" value, .e.g in $my-version ~~ ($desired-version // True) 10:10
10:24 Altai-man joined 10:37 frost joined 11:13 mexen joined 11:16 jjido joined 11:28 maettu left 11:50 maettu joined 12:06 reportable6 left 12:07 reportable6 joined 12:32 jjido left 12:38 jrjsmrtn left 13:03 bigdata joined 13:14 wingfold left 13:19 Sgeo joined 13:20 Sankalp- joined, Sankalp left, Sankalp- is now known as Sankalp
moritz kawaii_: if I remember correctly, it was introduced because people wrote things like { $_ > 0 } or * > 0 as smart-matchers, and those return True when evaluated. If smart-match then went on smart-match the original value against that return value, it would confuse the heck out of everyone 14:12
14:20 linkable6 left, evalable6 left
lizmat and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2022/05/23/2022-21-math-like/ 14:21
14:23 evalable6 joined, linkable6 joined 14:27 Guest35 joined
[Coke] lizmat++ 14:29
14:55 frost left 15:27 ChanServ sets mode: +o [Coke]
[Coke] ? Someone just gave me ops? 15:28
15:30 ChanServ sets mode: -o [Coke]
tonyo fish sucks 15:44
[Coke] squash: what 16:01
there used to be a bug called "squashable" - gone, yes?
lizmat: in the live log viewer, topic setting shows as just a send from a user, not that the user has set the topic. 16:04
(e.g. raku-doc from a few moments ago)
16:04 Xliff left
Geth doc/old-docs: 8e4d915c9b | Coke++ | 3 files
Remove references to Squashatons

  * explainer doc
  * reference in community page, including defunct bot
closes #4066
doc/old-docs: 55fe1e9973 | Coke++ | 3 files
Revert "Remove references to Squashatons"

This reverts commit 8e4d915c9b1e3654a0cd09f07869f0ffdc4c1fee.
  (Wrong branch, apologies)
doc: 165ea10539 | Coke++ | 3 files
Remove references to Squashatons

  * explainer doc
  * reference in community page, including defunct bot
closes #4066
16:13 linkable6 left 16:14 linkable6 joined 16:38 dakkar left 16:46 jjido joined
lizmat [Coke]: not just on the live view, also on the daily: irclogs.raku.org/raku-doc/2022-05-23.html 17:05
17:12 nebuchadnezzar left 17:16 Altai-man left
tonyo does finanalyst hang out in here? 17:24
lizmat looks like he last left the channel on 28 Mar 2022 17:26
irclogs.raku.org/search.html?nicks...annel=raku 17:27
17:32 mexen left
guifa Would be there a way to do a pragma for different compilers? Obv we only have Rakudo, so it's pointless, but just thinking if you had code that could be like if $*COMPILER ~~ Rakudo { optimized-NQP-code } else { vanilla-Raku-code } 17:34
I guess maybe Macros could handle that pretty easily
17:53 jrjsmrtn joined
[Coke] finanalyst is mainly an email person, I think. 17:53
He did join the raku-doc call this past weekend, briefly. 17:54
17:54 abraxxa left
[Coke] guifa: assuming macros were evenly distributed across compilers. 17:54
m: say $*COMPILER
camelia Dynamic variable $*COMPILER not found
in block <unit> at <tmp> line 1
guifa or whatever that dynamic variable was to get at the compiler / VM 17:55
[Coke] but (assuming we find the right var), checking that var is probably easiest.
lizmat m: say Compiler.new.version 17:56
camelia v2022.04.75.g.19.c.3.bd.180
lizmat m: say Compiler.new.backend 17:57
camelia moar
lizmat m: say Compiler.backend
camelia moar
[Coke] m: say Compiler.new.keys; # awww
camelia (0)
lizmat m: say Compiler.^methods 17:58
camelia (TWEAK backend id verbose-config supports-op release codename Str gist name auth version signature desc BUILDALL)
[Coke] m: say Compiler.new.^methods; #ahh
camelia (TWEAK backend id verbose-config supports-op release codename Str gist name auth version signature desc BUILDALL)
[Coke] heh. I did it in another channel by accident, but you beat me to it. :) 17:59
lizmat m: dd Compiler.new.name
camelia "rakudo"
18:06 reportable6 left 18:08 reportable6 joined
tonyo m: dd $*VM 18:12
camelia VM moar = VM.new(config => {:ar("ar"), :arflags("rcs"), :arout(""), :as("as"), :asm(".s"), :asmout("-o "), :asmswitch("-S"), :auxclean("\@:"), :be("0"), :bindir("/home/camelia/rakudo-m-inst-1/bin"), :booltype("_Bool"), :can_specific_werror("1"), :can_…
18:20 jjido left 18:21 sftp left 18:22 sftp joined 18:54 zsomta joined 18:55 zsomta left
tbrowder hi, i have a question about using raku and zef for the debian root user: 19:03
does root have to have its own /root/.raku directory? 19:04
another question: can the zef executable work properly if linked to /usr/local/bin? 19:06
question 3: if root installs a module, where is it stored? 19:08
the questions are somewhat rhetorical since i think the zef standards have changed a bit over the years, and also may be implemented differently between os types and whether they are this 19:10
*third party packages, local installs, or official packages from the OS provider. 19:11
then genesis of my query is the need for spinning up new hosts from a variety of sources such as digital ocean, my favorite bare-iron provider, etc. i would like them all to have the same default behavior: raku (with zef) is installed by root in a location available to all users. when root installs a module with zef, it is installed in the default location for all users to search first. 19:19
i am having problems with inconsistent behavior between my primary host having started with raku/zef many years ago versus a new debian 11 host using the rakudo-pkg installation. 19:23
19:41 n1to joined 19:47 Xliff joined 19:48 p6steve joined
Xliff m: my % = (a => 1, b => 2, c => 3, d => 4); %a.pairs.map( { .key .= uc if .value %%2 == 0 }); %a.gist.say 19:48
camelia ===SORRY!=== Error while compiling <tmp>
Variable '%a' is not declared. Perhaps you forgot a 'sub' if this was
intended to be part of a signature?
at <tmp>:1
------> % = (a => 1, b => 2, c => 3, d => 4); ⏏%a.pairs.map( { .key…
Xliff m: my %a = (a => 1, b => 2, c => 3, d => 4); %a.pairs.map( { .key .= uc if .value %%2 == 0 }); %a.gist.say
camelia Cannot modify an immutable Str (a)
in block <unit> at <tmp> line 1
Xliff You can't modify the key of a pair?
19:49 Sauvin left 19:50 Sauvin joined
Xliff m: my %a = (a => 1, b => 2, c => 3, d => 4); %a.pairs.map( { .value .= succ if .value %%2 == 0 }); %a.gist.say 19:51
camelia {a => 2, b => 2, c => 4, d => 4}
[Coke] m: say 6 %% 2 19:56
camelia True
[Coke] m: say 6 % 2
camelia 0
[Coke] fyi
20:39 guifa left 20:52 jrjsmrtn left 20:53 merpaderp left, jrjsmrtn joined 20:54 merpaderp joined 21:11 discord-raku-bot left 21:12 discord-raku-bot joined 21:18 guifa joined 21:39 bigdata left 22:00 jj58 joined 22:04 jjido joined, n1to left 22:07 jj58 left 22:46 Xliff_ joined
[Coke] should we remove REA from default zef searches? 23:03
shouldn't dead modules be the sort of thing you have to go looking for?
ah, not just dead but also "slightly out of date but still a prereq for something". nevermind 23:04
23:14 grondilu joined
grondilu I get an annowing warning "unhandled Failure in DESTROY". 23:15
since it's during destruction, it's kind of hard to debug.
also it's not consistent: sometimes it appears, sometimes not. 23:16
it shows about once at of ten on some minimal code I wrote.
but everytime on the original code. 23:17
here is the "minimal code" : gist.github.com/grondilu/39bcb969f...33a1289049
it's not really small, but hopefully it's clear enough.
I could possibly try to minimalize it more, but since the warning does not show at each execution, it's kind of hard to find the truly minimal version. 23:18
it's for my chess module FYI 23:19
it might be related to github.com/rakudo/rakudo/issues/4852
Xliff_ grondilu: Have you tried adding a "submethod DESTROY { CATCH { default { .message.say; .backtrace.concise.say } }; nextsame }" to class Square? 23:20
grondilu no, I haven't
Xliff_ Let me know if that works for you. 23:21
grondilu I've just tried on my original code, which complains all the time, and I see no differencee 23:22
(actually almost all the time) 23:23
Xliff_ Ah well, it was worth a shot. 23:28
grondilu: You might want to range check your .pred calls 23:31
m: 0.pred.say
camelia -1
Xliff_ m: Nil.pred.say
camelia Nil
Xliff_ m: 'a'.pred.say 23:32
camelia Decrement out of range
in block <unit> at <tmp> line 1
Xliff_ grondilu: ^^
23:32 jjido left
grondilu oh yes but in my original code I had a subset so -1 was supposd to generate an error too 23:32
grondilu edited the gist 23:34
what I don't get is why would DESTROY call .left? 23:36
23:40 grondilu left 23:42 silug left 23:43 silug joined
Xliff_ grondilu: Donno. But sticking a guard on that would effectively kill the Failure. 23:55
tellable6 Xliff_, I'll pass your message to grondilu