🦋 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/Iy9MHdGyDLMissing blockat /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
|