korvo librasteve_: I've proofread the gist and attached a working compiler. LMK if you want edits; I'm gonna go get ready for dinner. 00:44
01:41 Pixi` joined 01:42 zupss joined 01:44 zups left, Pixi left 01:49 kaskal- left, kaskal joined 01:51 Pixi__ joined, [Coke]_ joined 01:56 lucs_ joined 02:00 Pixi` left, quotable6 left, committable6 left, evalable6 left, lucs left, notable6 left, linkable6 left, sorenson left, coverable6 left, greppable6 left, sourceable6 left, [Coke] left, unicodable6 left 02:03 evalable6 joined, greppable6 joined, sourceable6 joined, linkable6 joined, committable6 joined, notable6 joined, quotable6 joined 02:05 sibl joined 02:06 sorenson joined 02:15 sibl left 02:19 sibl joined 02:39 [Coke]_ is now known as [Coke] 02:48 hulk joined 02:49 kylese left 03:15 hulk left, kylese joined 03:24 sibl left 03:25 sibl joined 03:41 sibl left 03:50 sibl joined 03:51 melezhik_ left 04:35 sibl left 05:07 sibl joined 05:26 Aedil joined 05:43 melezhik joined
disbot6 <aruniecrisps> @librasteve I just realized I may need to change the title of my article on the github repo to match the blog post title 05:46
06:19 sibl left 06:21 sibl joined 06:36 tejr left 06:45 tejr joined 06:57 Aedil left 06:59 Aedil joined 07:22 abraxxa joined 07:52 sibl left 08:11 Sgeo left 08:33 sibl joined 08:48 sibl left 09:01 sibl joined 09:10 dakkar joined 09:34 sibl left
Geth raku.org/main: 115ca3153e | librasteve++ | 2 files
Text::Markdown <- Markdown::Grammar
10:44
raku.org/main: 2b89bc9028 | librasteve++ (committed using GitHub Web editor) | 0 files
Merge branch 'Raku:main' into main
raku.org/main: ebf3327fe7 | librasteve++ (committed using GitHub Web editor) | 2 files
Merge pull request #283 from librasteve/main

Revert Text::Markdown <- Markdown::Grammar
11:32 melezhik left 11:41 librasteve_ left 12:25 sibl joined 12:46 sibl left
disbot6 <antononcube> Adding some new Raku-advent-calendar images today. 13:50
Voldenet I really enjoyed the monadic programming article, nothing says christmas more than titanic death counts ;> 13:56
disbot6 <shalokshalom> Is multiple dispatch in Raku implemented via monomorphism? 13:57
lizmat explain monomorphism in this context? 13:58
disbot6 <shalokshalom> en.wikipedia.org/wiki/Monomorphization
<antononcube> @Voldenet Yeah, I was wondering should I alternatively use (1) mushroom dataset, (2) RakuLLM-prompts collection , or ()
lizmat shalokshalom it's my understanding that a type of process like happens *at runtime* 14:00
Voldenet yeah mushroom dataset is nicer probably
disbot6 <shalokshalom> I know that multiple dispatch is mostly implemented at compile time
lizmat in Raku, it is not 14:01
Voldenet No, most languages don't implement multiple dispatch
in a way that raku does
disbot6 <antononcube> Hmm, all the alternative datasets have more complicated structure, except "fisher-iris".
lizmat basically, when a multi is called, the call-site contains information with which it can then quickly determine which candidate to be called using so-called "guards"
14:02 librasteve_ joined
lizmat however, this happens at *run-time*, so the initial call will have to go through the try-binding process to determine the correct candidate 14:02
shalokshalom perhaps check out 6guts.wordpress.com/2021/04/15/rak...ispatcher/ and associated articles 14:03
disbot6 <shalokshalom> thanks 14:04
<shalokshalom> I meant in Raku
<shalokshalom> Numerous people have confirmed this here before
<shalokshalom> Thanks for the link 14:05
Voldenet raku has dynamic dispatch, the most dynamic one - jit compiler is responsible for optimizing it
disbot6 <shalokshalom> most who implement multiple dispatch, do it dynamically
<shalokshalom> I am talking about the type evaluation
<shalokshalom> so what it dispatches it on
Voldenet m: multi sub x(Str $n) { "Str" }; multi sub x(Any $n) { "Any" }; my Any $x = "test"; say x($x) # a lot of languages would insist on saying "Any" 14:06
camelia Str
Voldenet sadly plenty of languages (js, python) don't have dynamic multi dispatch built into languages, so you have to resort to rolling your own multi 14:08
14:09 melezhik joined
librasteve_ m: say Str ~~ Any 14:18
camelia True
librasteve_ I enjoyed (re) reading jnthn’s article … is 6guts.wordpress.com a community blog site? if so, may be nice to see if we can revive it a bit 14:20
[Coke] I think that's jnthn's personal site. 14:23
disbot6 <librasteve> ahhh - i see it is jnthns musing over 15 years or so ...
lizmat note, there's also: github.com/Raku/CCR/tree/main/Rema...orthington
I guess I need to include the final posts there
disbot6 <librasteve> is there a "set of resources recommended for core devs" anywhere - i would like to make sure this is on the list 14:24
<librasteve> oh CCR - that deserves a link on raku.org unless there are ano=y objections - should we pull in the 6guts items there? 14:26
<librasteve> oh sorry, I guess that's what you mean - let me know if i can help (and your recommendation how to gather from wordpress to github md files) 14:28
lizmat librasteve I'll take care of adding the remaining articles 14:40
I'd really someone taking care of setting up CCR so that any remastered documents wind up on a nice (github.io) site
*like 14:55
Voldenet (actually, jit runtime is responsible, not compiler) 14:57
hm, I actually think raku runtime could do a bit of monomorphization and will do it 14:59
a bit like nodejs where you do `function(x) { switch(x.type)… }` – jit doing typeguards and magic methods is an obvious step 15:01
now that I spent some time pondering I'm not entirely sure if this kind of monomorphization isn't already done 15:03
lizmat that's what dispatch does, but at runtime? 15:11
15:15 simcop2387 left 15:18 simcop2387 joined 15:59 Sgeo joined
Geth Papers/main: 5b3fac9676 | (Elizabeth Mattijsen)++ | minutes/20251206.md
Add RSC meeting minutes for 2025-12-06
16:09
Papers/main: f3debfc930 | (Elizabeth Mattijsen)++ | announcements/20251210.md
Announce stepping down of Vadim Belman
16:11
[Coke] :( 16:27
lizmat indeed :-( 16:31
melezhik Ohh . -( 16:46
17:26 bdju left 17:35 dakkar left 17:40 abraxxa left
disbot6 <aruniecrisps> 🙁 17:49
18:07 mcmillhj joined
Voldenet I'd assume that jit is making monomorphized code based on assumptions about types, so perhaps it can also do dynamic dispatch statically 18:10
somehow
mcmillhj which method/submethod would I add logic to catch attributes that are passed to a class so I can then use them to set a private attribute? As an example, I want to create a `Point` class that accepts an `x` and `y` attribute but then want to actually store the (x, y) representation as a Complex number. 18:11
Voldenet m: class Point { has Complex $!z; submethod BUILD(:$x,:$y){ $!z=$x+$y*i }; method x{$!z.re}; method y{$!z.im} }; say Point.new(x=>3,y=>4).x, " ", Point.new(x=>3,y=>4).y # mcmillhj 18:12
camelia 3 4
mcmillhj oh cool, thank you 18:13
I didn't realize you could reference them in BUILD without declaring them with `has`
Voldenet BUILD actually accepts anything 18:17
as long as it's named
m: class Point { submethod BUILD(:$x,:$y){ say %_ }; }; say Point.new(:3x :4y :5foo :6bar)
camelia {bar => 6, foo => 5}
Point.new
18:41 mcmillhj left
[Coke] anyone will to help out debug a #cro issue, someone having trouble connecting to an insecure HTTPS connection on localhost (connecting to other sites with https works, connecting with a perl script instead of raku works to the localhost) 19:11
*willing
*I'm* will. :P
19:39 melezhik_ joined 19:44 Sgeo_ joined 19:48 melezhik_ left 19:49 linkable6 left, Sgeo left, notable6 left, notable6 joined, linkable6 joined 19:50 quotable6 left, quotable6 joined 20:14 Geth__ joined 20:18 Geth left 20:21 Geth__ left, Geth joined 20:24 itaipu left 20:27 itaipu joined
disbot6 <librasteve> I can try ... its late here ... will noodle a bit tonight, likely tomorrow to get real traction 20:56
<librasteve> i found the thread on IRC and the issue btw 20:57
21:12 melezhik left 21:54 _________ is now known as noodly, noodly is now known as _________ 21:55 _________ is now known as noodly, noodly is now known as _________