🦋 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 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 8 June 2022.
japhb Quibono: Sure, the more the merrier. Do note that it's a LOT of work to go from "the basics" to "can compete with Rakudo on MoarVM". But this is why the language is defined by its test suite -- if your compiler can pass the test suite, it compiles Raku. 00:01
Quibono Yeah that makes sense, like 1000 tests in the roasts?
Voldenet more backends is doable 00:02
00:03 Sankalp joined 00:07 reportable6 left 00:09 reportable6 joined 01:09 sourceable6 left, releasable6 left, linkable6 left, quotable6 left, tellable6 left, statisfiable6 left, greppable6 left, bloatable6 left, coverable6 left, evalable6 left, nativecallable6 left, reportable6 left, committable6 left, unicodable6 left, bisectable6 left, shareable6 left, benchable6 left, notable6 left, sourceable6 joined 01:10 bloatable6 joined, nativecallable6 joined, benchable6 joined, linkable6 joined, coverable6 joined, greppable6 joined, evalable6 joined, tellable6 joined 01:11 notable6 joined, reportable6 joined, shareable6 joined, quotable6 joined, unicodable6 joined 01:12 releasable6 joined, committable6 joined, bisectable6 joined, statisfiable6 joined 02:12 notable6 left, evalable6 left, coverable6 left, greppable6 left, quotable6 left, releasable6 left, shareable6 left, statisfiable6 left, sourceable6 left, benchable6 left, bloatable6 left, nativecallable6 left, tellable6 left, reportable6 left, bisectable6 left, committable6 left, linkable6 left, unicodable6 left, coverable6 joined 02:13 linkable6 joined, releasable6 joined, reportable6 joined, notable6 joined, tellable6 joined, bisectable6 joined, benchable6 joined 02:14 committable6 joined, unicodable6 joined, bloatable6 joined, statisfiable6 joined, sourceable6 joined, quotable6 joined, greppable6 joined, evalable6 joined, shareable6 joined 02:15 nativecallable6 joined 02:23 thowe left 02:24 thowe joined, thowe left 02:29 thowe joined 03:29 quotable6 left, sourceable6 left, coverable6 left, tellable6 left, benchable6 left, notable6 left, bisectable6 left, linkable6 left, bloatable6 left, statisfiable6 left, greppable6 left, shareable6 left, evalable6 left, committable6 left, nativecallable6 left, unicodable6 left, releasable6 left, reportable6 left, reportable6 joined, committable6 joined 03:30 bloatable6 joined, unicodable6 joined, notable6 joined, releasable6 joined, sourceable6 joined, bisectable6 joined, quotable6 joined 03:31 nativecallable6 joined, statisfiable6 joined, greppable6 joined, benchable6 joined, evalable6 joined, tellable6 joined, linkable6 joined, shareable6 joined 03:32 coverable6 joined 04:32 coverable6 left, evalable6 left, notable6 left, tellable6 left, bisectable6 left, greppable6 left, linkable6 left, bloatable6 left, committable6 left, statisfiable6 left, sourceable6 left, reportable6 left, nativecallable6 left, unicodable6 left, benchable6 left, shareable6 left, releasable6 left, quotable6 left, notable6 joined 04:33 statisfiable6 joined, benchable6 joined, unicodable6 joined, nativecallable6 joined, bisectable6 joined 04:34 evalable6 joined, reportable6 joined, shareable6 joined, linkable6 joined, tellable6 joined, greppable6 joined 04:35 sourceable6 joined, bloatable6 joined, quotable6 joined, committable6 joined, releasable6 joined, coverable6 joined 05:26 daxim joined 06:06 reportable6 left 06:07 reportable6 joined 06:26 saint- left 06:58 linkable6 left 06:59 linkable6 joined 07:00 linkable6 left 07:01 Nemokosch joined
Nemokosch . 07:01
tellable6 2022-07-22T23:16:22Z #raku <SmokeMachine> Nemokosch: I have done something that looks like that: github.com/FCO/MemoizedDOM/blob/ma...o/Todo.pm6
2022-07-23T11:11:01Z #raku <lizmat> Nemokosch: github.com/lizmat/HTML-Entities-Fast on its way to the ecosystem
07:02 linkable6 joined
Nemokosch Okay okay, thank you. I'm gonna check it out soon. First I want to profile HTML::Tag without the entity encoding because yes... that's still too slow 07:03
Nemokosch öööh 07:11
is join meant to be slow?
I rendered a 4 column, 3 row table, the whole program ran for 180 milliseconds with the profiling 07:15
90 of which belongs to one single join call, apparently
07:16 dustinm` left
yeah no, this is bullshit; hypering has a high initial cost that kills the benchmark 07:24
actually you might have even pointed this out in a way, now that I think of it 07:25
07:44 dustinm` joined 07:59 linkable6 left 08:01 linkable6 joined
I don't know who to reach out to with the MoarVM profiler HTML but it would be really-really desirable to properly handle the history with JS 08:06
it's quite tough to return
Kaiepi the profiler js has a habit of printing massive numbers for no obvious reason and grinding my browser to a halt at times 08:14
Nemokosch true 08:17
but the biggest problem is that I'm yet to find out how to get anything useful from it
Kaiepi i'm on this whole MOP tangent from my networking work out of readings i got from the profiler when benchmarking a prototype of some packet abstractions 08:18
it was spending a weirdly long amount of time in routines originating from there 08:19
08:27 jaguart joined
Nemokosch I don't know... could it be that the sheer cost of running methods is this big? I wouldn't know 08:29
and this profiler seems barely useful at all
I click on something that seems big and the parts that show up don't nearly add up to the value
Kaiepi metamethods are small and run as such, the problem is they carry a lot of weight and inefficiencies get blown out of proportion that way 08:30
the changes from github.com/rakudo/rakudo/pull/4936 etc. influence build times, for instance 08:32
Nemokosch there were 174361 sink calls... 08:35
I think the "exclusive time" row doesn't contain valid percentages, by the way 08:36
inclusive time:
9.48% (20.98ms)
exclusive time:
0.6% (12.99ms)
08:52 sena_kun joined 09:02 habere-et-disper joined
habere-et-disper Adverbs appear to not be checked for syntax/typos. Is this meant to be the case? 09:06
For example the plural form tripped me up: 09:07
m: say '123abc456'.substr-eq: 'abç', 3, :ignoremarks
camelia False
habere-et-disper Compare with: 09:09
m: say '123abc456'.substr-eq: 'abç', 3, :ignoremark
camelia True
09:24 lichtkind__ joined 09:29 discord-raku-bot left 09:30 discord-raku-bot joined 09:34 ab5tract joined, discord-raku-bot left, discord-raku-bot joined
ab5tract o/ 09:35
Nemokosch I think adverbs are just pairs 09:42
I don't know if there was some deliberate design choice with this, I mean that they don't check the keys 09:43
09:55 Nemokosch left 10:14 Sgeo left 10:23 habere-et-disper left 11:23 evalable6 left 11:26 evalable6 joined 11:29 RaycatWhoDat left 11:42 discord-raku-bot left 11:43 discord-raku-bot joined 11:48 discord-raku-bot left, discord-raku-bot joined 11:56 jaguart left 11:58 discord-raku-bot left, discord-raku-bot joined 12:07 reportable6 left 12:08 reportable6 joined
ab5tract any idea why two datetimes that for all intents and purposes look the same don't smartmatch each other? 12:24
m: my $dt = DateTime.now; say $dt ~~ $dt.clone
camelia False
ab5tract Seems... strange 12:25
Nemokosch I don't see any ACCEPTS method for them... 12:27
If this really is the case, I suppose Any.ACCEPTS would be used, which checks for object identity 12:30
I don't know if there is any specific reason for this, though. Maybe it just went unnoticed
gfldex ab5tract: please file a rakudobug
ab5tract gfldex: will do 12:32
gfldex: just to clarify, that just means adding a bug to the rakudo repo on github, correct? 12:38
gfldex aye
Nemokosch if we can trust the documentation, it seems like it's rather a "design bug" than an "environment bug" 😅 12:40
probably not intentional though 12:41
ab5tract It could do string comparison or even an instant comparison 12:42
hmm, it even provides == 12:43
good to know, but makes ACCEPTS an even stranger omition, as I wouldn't expect the numeric op to be provided for DateTime 12:44
Nemokosch == does Int coercion, as you might know 12:45
ab5tract in this case that involves a cast to Instant
Just going by the docs here. Maybe == isn't specifically defined, it's behavior is just documented... 12:46
Nemokosch sorry, not Int, Numeric 12:48
I tend to forget there are other numbers as well 😅
and yes, apparently Instant "is Cool does Real", so for some, to me unknown reason, it can be used for Numeric coercion 12:50
guifa an Instant is at its core just a number, and it logically makes sense to use > < = ≤ ≥ ≠ with that value 12:51
Nemokosch how does this coercion happen, though? 12:53
gfldex Comparing DateTime is quite wonky in general. If you compare 2 timestamps, what precision do you want? 12:54
ab5tract I would say you want the precision that is defined
as precise as the datetime's themselves, that is
Nemokosch there is no .Numeric on DateTime or Dateish, yet I can call .Numeric on an instance
ab5tract so if you don't want seconds, you make sure you are comparing datetimes that don't have seconds
gfldex That may mean that some ppl will miss appointments. Humans tend to think about equalness down to the minute, maybe second. 12:55
guifa Nemokosch: an Instant turns into (at the moment) a POSIX-like time stamp (unix epoch, but iirc POSIX doesn't do fractional time, but Instant.Numeric preserves sub-second precision)
tellable6 guifa, I'll pass your message to Nemokosch
12:57 Nemokosch joined
Nemokosch . 12:57
tellable6 2022-07-24T12:55:52Z #raku <guifa> Nemokosch: an Instant turns into (at the moment) a POSIX-like time stamp (unix epoch, but iirc POSIX doesn't do fractional time, but Instant.Numeric preserves sub-second precision)
Nemokosch negative: 12:58
m: DateTime.now andthen .Instant eqv .Numeric andthen .say
camelia True
Nemokosch They do the same - but how does DateTime get a .Numeric method in the first place? 13:00
13:05 dakkar joined 13:10 Nemokosch left
lizmat re DateTime.ACCEPTS: github.com/rakudo/rakudo/commit/31...00b6e74797 13:12
13:13 linkable6 left
Nemokosch In master already? 😂 13:14
13:15 linkable6 joined
ab5tract Thanks lizmat! I had a feeling you would be on top of this :) 13:32
Gotta go for now. Have a great afternoon everyone! 13:33
13:34 ab5tract left
Nemokosch 👋 13:40
13:52 dakkar left
Quibono Hello everyone 14:07
14:11 Xliff joined
lizmat Quibono /o 14:21
Quibono How are you doing lizmat? 14:46
lizmat pretty well :-) and you? 14:47
Quibono Good. Hoping to start making a VM tonight and maybe learn some raku. 14:52
lizmat good for you!
14:59 equinox joined 15:50 vrurg_ joined, vrurg left 16:05 sena_kun left 16:07 ab5tract joined 16:09 sena_kun joined 16:16 guifa left 16:41 jaguart joined 17:01 equinox left 17:20 sena_kun left 17:27 Kaiepi left 17:34 sena_kun joined
nine Nemokosh: the parts that show up when you click on something big in the profiler cannot add up to the total, since there's also the exclusive time spent in that big thing itself. 17:42
tellable6 2022-07-22T15:48:42Z #raku <ab5tract> nine I'd be interested in perusing a list of low-hanging fruit for new-disp, if you have the tuits to put one together
nine new-disp? Isn't it a little late for that considering it's been merged for almost a year now? 17:43
Nemokosch 🤣 17:48
17:49 jaguart left
\s/new-disp/RakuAST, then 🧠 17:52
17:57 jaguart joined 17:58 jaguart left
by the way 17:58
you must come to discord, s// is built in
17:58 jaguart joined 18:07 reportable6 left 18:09 reportable6 joined 18:23 lichtkind__ left 18:24 lichtkind joined
nine ab5tract: sorry, I'm quite under the weather right now. I'd just run a spectest with RAKUDO_RAKUAST=1 and look at a few of the failing ones. Compilation failures due to unrecognized syntax are often the easier ones as you often just have to copy&paste from the old grammar and adjust a little. Actions are much easier to write now. Hardest part is finding the relevant bits of the old actions. 18:28
18:37 guifa joined 18:40 lichtkind left 18:41 lichtkind joined 18:48 lichtkind left 18:49 lichtkind joined 18:58 Kaiepi joined 18:59 dogbert11 joined, dogbert17 left 19:01 [Coke]_ joined 19:02 [Coke] left 19:08 Sgeo joined 19:29 [Coke]_ left 19:37 [Coke] joined
SmokeMachine I don't know how useful it is (if useful at all), but I've been playing on adding Cro web components using pro template and web socket. Would someone like to take a look at it and tell me if it could be useful for anything, please? github.com/FCO/Cro-WebSocket-WebCo...Routes.pm6 19:49
19:58 coleman left 20:02 coleman joined
SmokeMachine Does anyone have any opinion about that? 20:16
20:28 ab5tract left
Nemokosch I'm not competent at this, sorry 20:44
21:17 sena_kun left 21:35 vrurg_ is now known as vrurg 22:35 evalable6 left, linkable6 left 22:36 linkable6 joined, evalable6 joined 23:13 [Coke] left 23:15 [Coke] joined 23:23 vasko left 23:26 melezhik joined
melezhik .tell lizmat for some reasons rak does not search on my SparkyCI alpine test box - sparrowhub.io:2222/report/914 - but maybe this Rakudo version thing? 23:26
tellable6 melezhik, I'll pass your message to lizmat
23:34 melezhik left 23:35 aris32 joined