🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku
Set by ChanServ on 14 October 2019.
00:00 oneeggeach joined 00:19 monkey__ left 00:21 pecastro left 00:33 monkey__ joined 01:14 vike left 01:55 monkey__ left 02:13 vike joined 02:18 kvw_5 joined 02:20 vike left 02:22 kvw_5_ left 02:44 mahafyi left, _jrjsmrtn joined 02:45 __jrjsmrtn__ left 03:00 aindilis joined 03:04 oneeggeach left 03:09 monkey__ joined 03:10 oneeggeach joined 03:13 muffindrake left 03:14 muffindrake joined 03:37 oneeggeach left 03:38 kaiwulf left 03:48 Sgeo_ joined 03:50 Sgeo left 03:54 monkey__ left 03:56 rindolf joined 04:12 Kaiepi left, Kaiepi joined 04:21 wamba joined 04:44 Toilie left 04:58 xinming left, xinming joined 05:06 eax left 05:28 xinming left, xinming joined 05:47 xinming left 05:49 xinming joined 06:02 vike joined, parabolize left 06:19 aluaces joined 06:20 ufobat joined 06:52 Sgeo_ left 06:59 aborazmeh left 07:12 jmerelo joined 07:34 Manifest0 left 07:36 Manifest0 joined 07:38 defaultxr left 07:49 stoned75 joined, domidumont joined 07:57 pecastro joined 07:58 xinming left, abraxxa joined 07:59 xinming joined 08:03 abraxxa left 08:04 frost-lab joined, abraxxa joined 08:20 Pitonisa joined 08:21 mahafyi joined 08:24 aindilis left, aindilis` joined 08:28 defaultxr joined 08:34 Pitonisa left 08:43 dakkar joined 08:48 mahafyi left 08:49 xinming left 08:50 xinming joined 09:11 Kaiepi left 09:13 Kaiepi joined 09:30 plvicente joined 09:47 plvicente left 09:50 asy joined 09:52 asymptotically left 10:03 Kaiepi left 10:04 Kaiepi joined 10:07 asy is now known as asymptotically 10:16 dakkar_ joined, dakkar left 10:30 xinming left, xinming joined 10:33 plvicente joined 10:34 asy joined 10:35 asymptotically left, asy is now known as asymptotically 10:44 stoned75 left 10:48 plvicente left 10:58 Doc_Holliwood joined 11:09 orinthe0 joined, orinthe left, orinthe0 is now known as orinthe 11:19 plvicente joined 11:22 MasterDuke left 11:24 dakkar_ is now known as dakkar 11:35 MasterDuke joined
Doc_Holliwood @Stern-Brocot = 0, 1, 1, { |(@Stern-Brocot[$_ - 1] + @Stern-Brocot[$_], @Stern-Brocot[$_]) given ++$+1 } ... *; 11:39
what's that ++$+1 doing?
MasterDuke pre-incrementing (`++`) the anonymous state variable (`$`) and adding one to it (`+ 1`) 11:41
11:49 plvicente left 11:50 aluaces left 11:52 frost-lab left 12:06 MasterDuke left 12:07 MasterDuke joined 12:27 plvicente joined 12:41 plvicente left 12:53 MasterDuke left 12:54 monkey__ joined 12:55 MasterDuke joined 13:00 plvicente joined 13:04 xinming left 13:06 xinming joined 13:32 kaiwulf joined, DarthGandalf left 13:33 plvicente left 13:43 monkey__ left 13:46 abraxxa left, abraxxa joined 13:50 aluaces joined 13:52 Sgeo joined 13:56 notagoodidea joined
notagoodidea Looking at benhoyt.com/writings/count-words/ I was doing a version in Raku. 13:56
Basically, it is : my $counts = BagHas.new; $counts.add($_.lc.comb(/\w+/)) for $*IN.lines; and spurt $counts.kv in a file. 13:57
MasterDuke .words instead of .comb(/\w+/) should be faster 13:58
we've just been chatting about this over in #moarvm 13:59
notagoodidea The differences between .words and .comb(/\w+/) is the punctation handling too? 14:02
m: say "foo,bar".comb(/\w+/); 14:04
camelia (foo bar)
notagoodidea m: say "foo,bar".words;
camelia (foo,bar)
14:18 kakadzhun joined 14:30 parabolize joined 14:45 aindilis` left 14:51 xinming left, xinming joined 14:57 plvicente joined, Doc_Holliwood left 15:00 Kaiepi left 15:03 kakadzhun left
notagoodidea mm MasterDuke you were talking about the article or just .words vs .comb? I have simple solution around ~3s pastebin.com/9JQ3V6Nm 15:08
MasterDuke the article 15:10
you must have good hardware, it takes 11s for me 15:13
notagoodidea nah, I was using one version of the input not the 10x duplicate -_-' 15:15
with a simple time and output to stdout ~22sec :D 15:19
that hurts. 15:21
MasterDuke ha, i get ~1.5s for the single input
notagoodidea You have good hardware :D 15:22
MasterDuke ryzen 3700x, pretty happy with it
notagoodidea i5-6200U, 8Go from a Thinkpad X270. 15:23
With the profiler, its ~33sec 15:24
Now, how to do better :D 15:26
MasterDuke a plain hash is faster. a Bag goes off the .WHICH of the keys, so ends up allocating many more Strs 15:29
notagoodidea Yep, I was looking at it. But even `lc` and `words` alone take ~2s on my computer (in the profiler) 15:30
15:31 stux|RC left 15:33 Doc_Holliwood joined
MasterDuke i can get it down to 9.5s by switching to a branch of moarvm i'm working on 15:36
15:37 b2gills left 15:41 stux|RC joined 15:52 plvicente left 15:53 Kaiepi joined 15:57 epony left 16:00 BarrOff[m] left 16:02 APic left 16:07 plvicente joined 16:12 b2gills joined 16:18 Doc_Holliwood left
notagoodidea mm, weird using a Hash if indeed faster than a BagHash but the %foo.sort(*.values).reverse is slower on the Hash than the BagHash ?? 16:19
lizmat *.values ?? not *.value ? 16:21
notagoodidea thanks lizmat that was it, stupid mistakes :D 16:24
16:25 mowcat joined 16:29 parabolize left 16:37 APic joined 16:38 epony joined 16:40 APic left 16:45 APic joined 16:52 plvicente left 16:54 parabolize joined 16:56 plvicente joined 17:03 mowcat left 17:10 tbrowder__ joined 17:14 juanfra__ left, tbrowder left, ssm left, juanfra__ joined, juanfra__ left, juanfra__ joined, vike left, tbrowder__ is now known as tbrowder, ssm joined 17:15 plvicente left 17:17 karupanerura left 17:19 karupanerura joined, gordonfish left 17:31 gordonfish joined 17:37 dakkar left 17:53 brtastic joined, vike joined 18:00 ssm_ joined 18:03 ssm left, juanfra__ left, Nasrudin left 18:05 aborazmeh joined, juanfra__ joined, Nasrudin joined 18:06 aborazmeh left, aborazmeh joined 18:07 kiti_nomad[m] left, l-as left, tusooa left, unclechu left, JJAtria[m] left, CIAvash left 18:08 AlexDaniel` left, pwr22 left, Tirifto[m] left, Nasrudin left, patrickbkr[m] left, uzl[m] left, notagoodidea left 18:09 ThaEwat left, juanfra__ left 18:18 xinming left 18:20 xinming joined 18:25 DarthGandalf joined 18:32 domidumont left 18:33 ThaEwat joined, wamba left 18:41 wamba joined 18:42 kiti_nomad[m] joined, AlexDaniel` joined, patrickbkr[m] joined, Tirifto[m] joined, unclechu joined, tusooa joined, JJAtria[m] joined, l-as joined, uzl[m] joined, Nasrudin joined, juanfra__ joined, pwr22 joined, CIAvash joined 18:47 brtastic left 18:51 aborazmeh left 18:55 aborazmeh joined, plvicente joined 19:06 Sgeo_ joined 19:07 plvicente left 19:10 El_Che_ joined, avarab joined, avarab left, avarab joined, ufobat left, jjmerelo joined, drakonis- joined 19:11 stux|RC-- joined, notable6 left, quotable6 left, drakonis left, Sgeo left, jmerelo left, avar left, El_Che left, stux|RC-only left, markmarkmark left, quotable6 joined, notable6 joined, bisectable6 left 19:12 drakonis- is now known as drakonis 19:14 markmarkmark joined
lizmat and another Rakudo Weekly News hits the Net: rakudoweekly.blog/2021/03/15/2021-...year-itch/ 19:15
codesections lizmat++ 19:16
19:18 mowcat joined 19:28 domidumont joined 19:31 ambs left, spacebat2 left, ambs joined 19:32 spacebat2 joined, domidumont left 19:47 jjmerelo left 19:52 tailgate joined
codesections .ask MasterDuke I saw you mention in #moarvm that your Raku startup time is ~75ms. Have you done anything to get it that fast, or do you just have a fast machine? I'm at ~125ms 19:55
tellable6 codesections, I'll pass your message to MasterDuke
19:58 neshpion joined 20:10 bisectable6 joined 20:14 rindolf left 20:15 Doc_Holliwood joined 20:19 bisectable6 left, bisectable6 joined 20:24 Kaiepi left
gfldex codesections: time raku -e 'use v6' # real 0m0.086s # model name : AMD Ryzen 7 5800X 8-Core Processor 20:34
codesections gfldex: interesting. Similar here, but that's different than how I had been measuring startup time. Out of curiosity, what do you get for time raku -e 'unit sub MAIN {}' 20:42
gfldex codesections: real 0m0.094 20:43
:D Perl 5 is to fast to be measued 20:44
codesections interesting. I get 0.104. I'm curious both about why I see so much bigger a jump with &MAIN than you do and surprised that either of us have as large a one as we do/that loading an empty &MAIN takes 10%+ of the startup time 20:45
gfldex do you got fast RAM? 20:46
japhb gfldex: I kinda wondered when machines would get fast enough that perl5 startup was sub-1ms. Guess it finally happened. :-) 20:48
codesections gfldex: 3000MHz 20:49
japhb: yeah, Perl's startup time is pretty impressive. Basically as fast as Bash (though Dash still has a bit of a lead) 20:51
gfldex 3400MHz here. I could see a speedup in other workloads too after the upgrade. (povray, lzo)
MasterDuke codesections: haven't done anything extra. ryzen 3700x, 3200mhz ram
0.092s for `time raku -e 'unit sub MAIN {}'` 20:52
the 0.075s is for `time raku -e ''` 20:53
codesections Fascinating. That's a good 10% faster than me, with a ryzen 3950x, 3000MHz ram 20:54
gfldex Does raku still look for modules, even if there is no use-statement?
japhb gfldex: RAKU_MODULE_DEBUG (I think that's the name) should tell youi 20:55
leont For me it fluctuates between 80-100 msec
20:55 dmc00 left
japhb Sorry RAKUDO_MODULE_DEBUG 20:55
MasterDuke codesections: decent ssd? 20:56
20:56 bisectable6 left, notable6 left, quotable6 left, statisfiable6 left, greppable6 left, bloatable6 left, benchable6 left, tellable6 left, nichfury left, shadowpaste left, takside left
japhb 130-136ms for raku -e '' here, but this is a several-year-old laptop. 20:56
codesections nvme, even 20:57
20:57 bisectable6 joined, notable6 joined, quotable6 joined, statisfiable6 joined, greppable6 joined, bloatable6 joined, benchable6 joined, tellable6 joined, nichfury joined, shadowpaste joined, takside joined
MasterDuke i will admit to being slightly surprised it was this fast. istr it usually being ~0.12s 20:57
same here (nvme ssd)
gfldex Once the cache is primed, SSD wont change things. 20:58
I got 64GB in my linux box now. It refuses to read from disk. :)
I just learned that CX::Return can't .resume. Makes sense. :) 21:02
21:11 stoned75 joined 21:16 takside left, takside joined 21:19 wamba left 21:26 stoned75 left 21:29 notagoodidea joined 21:30 xinming left 21:31 xinming joined 21:34 shadowpaste left 21:37 shadowpaste joined 21:43 brtastic joined 21:48 Black_Ribbon joined 21:52 japhb left 21:54 japhb joined
tellable6 2021-03-15T19:55:46Z #raku <codesections> MasterDuke I saw you mention in #moarvm that your Raku startup time is ~75ms. Have you done anything to get it that fast, or do you just have a fast machine? I'm at ~125ms 22:00
codesections go home, tellable6, you're drunk 22:01
notagoodidea Hahaha :D
ok, so my bottleneck is post circumfix { }.. I think that is the hard stop to try with an hash. 22:07
22:08 sena_kun left
MasterDuke you could just call %hash.AT-KEY directly, but that'd be an optimized version, not the simple version 22:13
22:17 brtastic left
notagoodidea MasterDuke: Oh. I finally used a combo of AT-KEY/ASSIGN-KEY and is defined(0). 22:23
22:25 xinming left
lizmat weekly: don't forget Covid Observer next week: covid.observer/news/#20210308 22:25
notable6 lizmat, Noted! (weekly)
22:25 xinming joined
uzl[m] lizmat++ 22:39
I'm always amazed how liz keeps on top of everything Raku related :) 22:40
lizmat well, I missed the 1 year anniversary of covid.observer :-( 22:49
so I'm not on top as I could be
22:55 xinming left, xinming joined 22:56 notagoodidea left
lizmat sleep& 22:57
22:57 stux|RC-- left 23:00 stux|RC-only joined 23:02 spacebat2 left 23:07 spacebat2 joined
japhb I dunno who is still awake in here (so I guess I'll announce it again in a few hours when Europe is waking up), but I've got something to announce: 23:07
🎉‭🎉‭🎉‭ I've just released MUGS 0.0.5 at github.com/Raku-MUGS (and uploaded into the fez/zef ecosystem). 23:08
It's built on lots of other Raku awesomeness, including Cro, Red, and RPG::Base (see github.com/Raku-MUGS/MUGS/blob/mai...lt-with.md for more details) 23:09
It's a platform for building game services, designed to host any game, and any UI. 23:10
Currently I have only a few (very simple) games uploaded, and two simple UIs: CLI (ANSI terminal) and WebSimple (basic HTML/trivial CSS) 23:11
m6locks holy crap
japhb I have in the works a full-screen TUI, a GTK+ interface, and lots more games -- including some twitch-style games, proving that Cro can serve fast enough to play at least 2D games remotely. 23:12
m6locks DOOM?-)
japhb Anyone interested can join me on #mugs here at Freenode or file issues on the github.com/Raku-MUGS repos
m6locks: Well, I did write a DOOM level viewer in Perl 5, I suppose I could port that .... :-) 23:13
23:13 dogbert11 joined
japhb I'd have to revive the OpenGL work that I did back in the Parrot days, but perhaps that's worth doing. Hmmmm. 23:13
japhb drops another yak on the "to be shaved" heap 23:14
m6locks nice, I'd reckon DOOM runs on GTK since it's been ported everywhere
japhb (BTW, performance-wise, there are recently merged patches for Cro that make its minimum RTT faster, but the Cro folks are working to put the finishing touches on their next release, so if you try it now, expect it to be slightly slower.) 23:15
23:16 Doc_Holliwood left
japhb m6locks: Oh yeah, definitely does run on everything (it's hilarious to see classic Doom inside emulators inside modern Doom games, BTW) 23:16
23:16 dogbert2 left
m6locks :) 23:17
japhb My kids have recently gotten to see the games of my teen years by finding them as easter eggs in the follow-ons from *their* teen years, which is kinda fun to watch. "Oh yeah, I remember this level, you have to get over to that spot over there to get the chainsaw." 23:18
Anyway, release roadmap is here: github.com/Raku-MUGS/MUGS/blob/mai...roadmap.md 23:20
Anyone interested in working on (or playing) games implemented in Raku, please join me on #mugs :-)
MasterDuke japhb: wouldn't github.com/Raku-MUGS/MUGS-Games/bl...od#L18-L25 be slightly faster as `.first`s? 23:24
japhb LOL 23:25
I was not expecting that as an early reaction!
MasterDuke heh, i was just clicking around randomly
japhb Yes, it would be faster, but 1) This is on the client side, so it is not as performance-critical as on the server side, however 2) It should be fixed anyway since the WebSimple gateway uses the client code to talk to the backend, so it isn't purely limited by a single user's inputs; thankfully 3) the lists are usually quite short. :-) 23:27
Oh, come to think of it, first might not be all that much faster there, because the expected case is that none of the greps find anything. Would speed up handling of errors. 23:30
MasterDuke i'm to bed, but it looks cool
japhb I figured most people would be heading to bed (or already in it) at this time of day, 23:31
but I also noticed a few people this week talking about their personal games-in-Raku project, so I figured announcing now (and then again in a few hours) was better than sitting on it even longer.
ugexe i wouldnt expect first to be much/any faster... its not actually going to grep every element in bool context 23:32
moon-child m: sub postfix:<&>(Code &x) { start &x }; { sleep 2; say 1 } & 23:33
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3ode &x) { start &x }; { sleep 2; say 1 }7⏏5 &
expecting any of:
infix stopper
moon-child why doesn't ^^ work?
ugexe or rather its not going to grep every element after encountering one match
23:33 mowcat left
japhb ugexe: Ah, didn't realize that was optimized away. 23:33
23:34 mowcat joined
japhb m: sub postfix:<&>(Code &x) { start &x }; ({ sleep 2; say 1 })& 23:34
camelia Type check failed in binding to parameter '&x'; expected Callable[Code] but got Block (-> ;; $_? is raw = O...)
in sub postfix:<&> at <tmp> line 1
in block <unit> at <tmp> line 1
japhb OH! 23:35
m: sub postfix:<&>(&x) { start x() }; ({ sleep 2; say 1 })&
camelia ( no output )
moon-child works locally anyway 23:36
japhb moon-child: You had extra space before the postfix op, and had doubled-up the type constraint on the x param.
moon-child ahh I see
so Code &x means it has to return COde?
japhb moon-child: Yeah, which you can see by looking at the implementation of the Callable role 23:38
github.com/rakudo/rakudo/blob/mast...llable.pm6 23:39
23:47 _jrjsmrtn left 23:48 __jrjsmrtn__ joined