🦋 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:02 merpaderp left, merpaderp joined 00:07 reportable6 left 01:07 evalable6 left, squashable6 left, releasable6 left, bloatable6 left, nativecallable6 left, linkable6 left, notable6 left, committable6 left, bisectable6 left, sourceable6 left, statisfiable6 left, quotable6 left, benchable6 left, unicodable6 left, coverable6 left, greppable6 left, tellable6 left, shareable6 left 01:08 releasable6 joined 01:09 notable6 joined, greppable6 joined, statisfiable6 joined, shareable6 joined, coverable6 joined 01:10 squashable6 joined, nativecallable6 joined, linkable6 joined 01:13 eseyman left 01:35 eseyman joined
japhb Story in what sense? There is a raku-mode, I use it, it does what I need for the most part. 01:45
02:07 frost joined 02:09 benchable6 joined 02:10 sourceable6 joined 02:11 unicodable6 joined 02:23 simcop2387 left, perlbot left 02:24 simcop2387 joined, perlbot joined 02:33 floppy_disk joined
drakonis japhb: code completion works as expected, yeah? 02:39
i tried emacs and found it odd that completion didn't really work all that well
japhb drakonis: What kind of "code completion" are you talking about? Being able to tab-complete partial method/class/constant names, that sort of thing? 02:50
drakonis yeah, that's the one.
japhb Ah, in that case you're probably looking more for what's in Comma than in Emacs raku-mode 02:51
drakonis ah i see.
japhb raku-mode is more about highlighting, code layout defaults, correct region commenting, that sort of thing
drakonis i already have comma installed, but fair enough.
its still ways from being competitive with other major modes in emacs 02:52
japhb A recent version, I hope? Comma does regular releases.
drakonis its as recent as yesterday
japhb drakonis: Not terribly surprised; several of the folks who are really good at writing editor plugins work on Comma. 02:53
(And thus not on Emacs, I mean.)
drakonis bummer
japhb Opportunity for you? ;-) 02:54
drakonis ha, perhaps.
i'm not particularly great at elisp anyways
japhb I resemble that remark
perryprog Tangentially related, but I remember a person at a place I had a paid internship I had who wrote production applications in elisp 02:55
They loooved it
drakonis lol, elisp or common lisp?
perryprog Elisp!
drakonis ha, that's impressive
perryprog For sure. Had a pretty sick emacs setup, too. 02:56
(Duh)
drakonis haw, you gotta have that.
perryprog Admittedly emacs's first class support for elisp is pretty nice
japhb I bet. If you're going to invest all that time in learning one particular lisp variant, you'll tend to get into customizing
drakonis i'm coming off common lisp to check out raku
i dearly miss the editing experience i suppose 02:57
perryprog I've gotta finish learning sbcl
My favorite language has always been Clojure, though :)
drakonis i'm ambivalent towards clojure 02:58
perryprog It helps if you're coming from JVM land, like I was 02:59
drakonis that's true, yeah.
perryprog Having access to that giant toolbox helps a ton in understanding the power Clojure gives
drakonis clojure's popularity is largely due to that
perryprog Definitely
Somewhat decent interoperability from functional to OO isn't easy to pull off 03:00
(Not amazing, mind you, but there's only so much you can do ;) )
drakonis sure thing.
raku looks very nice though 03:02
i've heard about it back when it was still perl 6 but never actually bothered looking too deep into it
today i looked up the docs and actually got curious about it 03:03
seems like a lot of fun to play with
03:07 andinus left 03:08 evalable6 joined, floppy_disk left 03:09 bisectable6 joined, bloatable6 joined
drakonis this rakuast thing looks pretty cool 03:12
03:29 tejr left 03:38 tejr joined 03:42 tejr left
Voldenet Functional languages have the immutability causing performance problems that get shrugged off and clojure is no exception iirc 03:50
03:54 tejr joined 03:59 floppy_disk joined
Voldenet compare HEAD (^100000).reduce({ $^a + $^b }).say; ||| my $a = 0; for ^100000 { $a += $_ }; say $a; 04:00
04:09 reportable6 joined
floppy_disk what is the general file structure of a raku project? 04:30
04:39 zacts joined
japhb floppy_disk: docs.raku.org/language/modules#Pre...the_module is a start (though slightly out of date). App::Mi6 will create a reasonable starting skeleton, and there are some other tools for that as well; see docs.raku.org/language/modules-extra 04:50
floppy_disk i see, thanks a lot 04:51
japhb Sure 04:52
04:53 zacts left 05:06 Darkcoal joined 05:08 tellable6 joined 05:09 committable6 joined 06:02 mexen joined 06:07 reportable6 left 06:08 reportable6 joined, quotable6 joined 06:22 floppy_disk left 06:55 discord-raku-bot left, discord-raku-bot joined 07:08 Darkcoal left 07:10 Darkcoal joined 07:13 jjido joined 07:32 Darkcoal left 07:33 Darkcoal joined 07:41 Darkcoal left, Darkcoal joined 07:53 Darkcoal left, Sgeo left 07:54 Darkcoal joined 08:16 Darkcoal left, frost left 08:17 Darkcoal joined 08:18 frost joined 08:22 Darkcoal left 08:24 Darkcoal joined, jjido left 08:32 abraxxa joined 08:37 abraxxa left, abraxxa joined 08:52 frost left 08:53 dakkar joined 08:56 Manifest0 joined 08:59 frost joined 09:00 frost left 09:05 Darkcoal left 09:07 Darkcoal joined 09:21 abraxxa left 09:22 abraxxa joined
MasterDuke benchable6: compare HEAD (^100000).reduce({ $^a + $^b }).say; ||| my $a = 0; for ^100000 { $a += $_ }; say $a;       # Voldenet 09:36
benchable6 MasterDuke, starting to benchmark the 1 given commit
MasterDuke, ¦HEAD: «4===SORRY!4=== Error while compiling /tmp/Iy9MHdGyDL␤Missing block␤at /tmp/Iy9MHdGyDL:1␤------> 3y $b = Bench.new; $b.cmpthese(10, %subs)8⏏4<EOL>␤»
Voldenet huh~
it wasn't me, was it
MasterDuke no, that's new...huh 09:37
benchable6: 2015.12,2022.02 (^100000).reduce({ $^a + $^b }).say 09:38
benchable6 MasterDuke, starting to benchmark the 2 given commits
MasterDuke, ¦2015.12: «1.6428» ¦2022.02: «0.4185»
MasterDuke, benchmarked the given commits and found a performance difference > 10%, now trying to bisect
MasterDuke, benchmarked the given commits and found a performance difference > 10%, now trying to bisect 09:39
MasterDuke, benchmarked the given commits and found a performance difference > 10%, now trying to bisect 09:40
MasterDuke, benchmarked the given commits and found a performance difference > 10%, now trying to bisect 09:41
MasterDuke i need to quiet that a bit
benchable6 MasterDuke, benchmarked the given commits and found a performance difference > 10%, now trying to bisect
MasterDuke, benchmarked the given commits and found a performance difference > 10%, now trying to bisect 09:42
MasterDuke, «hit the total time limit of 240 seconds»
MasterDuke benchable6: compare HEAD (^100000).reduce({ $^a + $^b }).say; ||| my $a = 0; for ^100000 { $a += $_ }; say $a; 09:43
benchable6 MasterDuke, starting to benchmark the 1 given commit
MasterDuke, gist.github.com/0b0a6f6df5c5adf045...fd397d92fa
MasterDuke looks like it just didn't like the comment
Voldenet Whoa, that's quite a difference :O 10:11
10:12 jjido joined 10:27 jjido left 10:32 euandreh left, euandreh joined 10:54 frost joined 11:03 razetime joined 11:10 razetime left 11:11 razetime joined 11:26 Altai-man joined 11:56 frost left, donaldh joined 12:07 reportable6 left
Geth ecosystem: 6f7a7f3d35 | (Elizabeth Mattijsen)++ | META.list
Fix URL of libdigest
12:12
12:29 frost joined 12:47 frost left 13:08 reportable6 joined, razetime left 13:20 razetime joined 14:06 Sgeo joined 14:11 frost joined 14:14 frost left 14:20 frost joined 14:25 frost left 14:32 Darkcoal left 14:35 Darkcoal joined 14:50 morte_ joined 15:01 perlbot left, perlbot joined 15:21 razetime left 15:26 jjido joined 15:31 razetime joined
lizmat and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2022/03/14/2022-011-tau-2/ 15:32
15:33 jjido left 15:34 rjhb joined 15:36 rjhb left 15:42 patrickb left 15:43 patrickb joined 16:01 linkable6 left 16:02 linkable6 joined 16:14 morte_ left 16:21 morte_ joined 16:49 razetime left 16:54 jjido joined 16:57 nebuchadnezzar left 17:09 mexen left 17:26 Altai-man left, Altai-man joined 17:38 dakkar left 17:39 jjido left 17:43 jjido joined 18:07 reportable6 left 18:09 reportable6 joined 18:13 jjido left, Altai-man left 18:27 morte_ left
kiti_nomad[m] 草泥马,别搞政治正确 18:28
Don't follow the trend of politics 18:29
[Coke] google translate says that included the phrase "political correctness", which in the US, is a weird right-wing way to say "treat other people with respect". 18:32
but that's probably just a bad translation. 18:33
kiti_nomad[m] If you do not support Ukraine, will your computer not be able to work? Does politics affect programming? What kind of life did the people of Ukraine live before Russia and Ukraine went to war? Do you understand? No one really cares about life in Ukraine, so why write about those junk things? 18:35
lizmat "No one really cares about life in Ukraine" 18:37
Actually I do, good friends of mine lived in the Ukraine and had to flee
apart from that: Russia's government and clergy want me dead, literally! 18:38
so yes, I *do* care
and that's why I write about them in the Rakudo Weekly 18:40
[Coke] oh, and having googled a bit more about the chinese there, I see the apparently nonsensical intro is probably a standin for a rude phrase. 18:43
kiti_nomad[m] So why don't you support North Koreans, Cubans, Libyans, Syrians, Yugoslavs, and Afghanistan? 18:44
lizmat en.wikipedia.org/wiki/Grass_Mud_Ho...nd_species 18:46
so why don't you start with a more friendly intro?
kiti_nomad[m] A dog bit a beggar. No one cares about the life of that beggar unless someone is on the scene, because this is an opportunity to make a show. But they just pretended to intimidate the dog, and no one would really fight with the dog. Now those people say that beggars are pitiful when they see people 18:51
lizmat en.wikipedia.org/wiki/Whataboutism 18:56
18:57 ChanServ sets mode: +o lizmat
BinGOs [Coke]: all the cool fascists say "woke" and "cancel culture" these days. 18:59
[Coke] BinGOs: fair, PC is an earlier variant. 19:03
kiti_nomad[m] As far as I know, I think Ukraine is eager to be invaded by Russia. Because you can join the European Union or NATO in this way. Then you don't have to do anything, just stretch out your hands like those beggars, and you can be happy.
19:04 kiti_nomad[m] was kicked by lizmat (Your behavior is not conducive to the desired environment.))
Xliff 'bout time. 19:04
19:04 sena_kun left 19:05 ChanServ sets mode: -o lizmat
[Coke] Thank you. 19:05
Xliff lizmat: Sorry you had to deal with that. Know you are appreciated for who you are in this direction.
lizmat thank you all
I understand we are all living in a bubble and may not realize it 19:06
19:06 sena_kun joined
lizmat but I also do not want to have large discussions about that here 19:06
ugexe they were, ahem, begging for it 19:07
lizmat dinner& 19:11
19:12 ChanServ sets mode: +o [Coke] 19:19 Darkcoal left
Xliff No, this place is not for such things. 19:19
20:00 monkey_ joined 20:46 sjn_ is now known as sjn
Nemokosch what's the semantics of junctions? I find it very confusing but I don't think it's an issue per se 20:53
to show what I mean:
so all(1,4) > 3
this is False - makes sense, not all values are greater than 3 20:55
so all(1,4) <= 3
this is also False - again, makes sense, not all values are maximum 3
so all(1, 4) == 1 20:56
[Coke] m: say so all(1,4) == 1
camelia False
[Coke] (does camelia not work on discord bot sends? Guess that makes sense) 20:57
Nemokosch also False - still makes sense, not all values are equal to 1
so all(1, 4) != 1
this is True, even though not all values differ from 1 obviously
I get that this is because ! is a meta-operator but that's not the semantics I need
<= is not the same as !>
now, I want the non-meta negative counterpart of ==
[Coke] m: say any(1,4) &infix<!=> 1; say so any(1,4) &infix<!=> 1 20:59
camelia ===SORRY!=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> say any(1,4) &infix<!=>⏏ 1; say so any(1,4) &infix<!=> 1
expecting any of:
infix
infix stopper
postfix
st…
Nemokosch Camelia does work on discord sends every now and then btw but it's laggy so I didn't want to use it
[Coke] m: say any(1,4) &infix:<!=> 1; say so any(1,4) &infix:<!=> 1
camelia all(any(1, 4), True)
True
[Coke] so I showed both because I'm not sure the uncollapsed version is correct, but the collapsed version is. 21:03
Nemokosch again, what is the semantics, then? 21:05
oh, if you write &infix:<!=> instead of !=, it works well 21:07
I mean... if this really makes this sort of difference, I might open a problem solving issue for this...
21:19 jjido joined
no, the infix:<!=> version isn't actually right either 21:22
in fact it's completely wrong, as illustrated by the uncollapsed version
m: say so any(0,1,4) &infix:<!=> 1; 21:24
... anyway, this will be False because of the falsiness of 0
wait no, with any, it's no problem 21:26
with all, however
all(1,4) &infix:<!=> 2 #True 21:28
vs
all(0,1,4) &infix:<!=> 2 #False
21:36 abraxxa left 22:30 djerius left 22:33 djerius joined 22:34 jjido left 22:38 jjido joined
anyone who can say why 22:59
1+infix:<+> 4
is 5 will get a cookie
seems to me it gets parsed as 1+(+4) 23:01
so `any(1,4) &infix:<!=> 4` was a lie all along
moon-child m: my &f = &infix:<+>; say 1 + f 4 23:02
camelia 5
Nemokosch it's in fact any(1,4) & (!= 4)
and for some reason this != 4 is even `True` 23:03
infix:<!=> 4
now this parsing might not be intended, I don't actually know
moon-child yes 23:04
Nemokosch added a comment to the issue I've just created for != being so "meta" for junctions 23:12
23:20 squashable6 left 23:21 squashable6 joined 23:27 ChanServ sets mode: -o [Coke] 23:34 monkey_ left
ugexe any(0,4) != 0 is False #3748 -- github.com/rakudo/rakudo/issues/3748 23:34
23:39 ilogger2 left
Nemokosch > This may be a notabug, but it's really unexpected and annoying behavior. This makes junctions way too unpredictable to work with. 23:43
23:58 jjido left