🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). 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 6 September 2022.
arkiuat tbrowder: sorry, got call away suddenly 00:02
+ed
00:14 Guest72 left 01:15 yewscion joined 01:24 yewscion left
tbrowder [Coke]: my ver of yr new with @arr => $.string is at github.com/tbrowder/MySudoku 01:27
01:29 nine left 01:30 nine joined
arkiuat oh no, I got "lang-call cannot invoke object of type 'VMNull' belonging to no language" 01:48
01:59 kylese left 02:00 kylese joined 02:15 kylese left, kylese joined 02:31 Guest72 joined 02:35 Aedil joined
Geth docker: e1a0b03de0 | AntonOks++ | 4 files
Bump to 2025.05 [skip workflow]
03:16
03:27 vasko left 03:29 vasko joined 03:30 Aedil left 03:45 kylese left 03:49 kylese joined 04:05 Aedil joined 04:22 Aedil left
Xliff Voldenet: Oh, darn... so I didn't need to go through all of this? gist.github.com/Xliff/c12d6a044266...c5346dc574 04:36
04:44 Aedil joined
Voldenet perhaps, but my version assumes that left is larger than right, if it were to handle additional cases, it'd be similar 04:44
04:45 sftp left
Xliff :) 04:45
Voldenet m: sub cycle($i) { |$i xx * }; sub grow-smaller($i1, $i2) { $i1.elems < $i2.elems ?? (cycle($i1), $i2) !! ($i1, cycle($i2)) }; say [Z] grow-smaller(<a b c>, ([0,0], [1,0])) 04:52
camelia ((a [0 0]) (b [1 0]) (c [0 0]))
Voldenet it's a bit shorter after all
probably not faster, I'd be scared to measure the cost of hackery 04:53
otoh it doesn't clone data, so it probably depends, as usual 04:56
frostcod Hi, is there a easy way to use the printf syntax in Raku's string interpolation, like python's f-string? 05:17
Xliff disbot1: Sort of. What are you trying to do? 05:51
Er... frostcod...
Voldenet++ # I'll give it a whirl. 05:52
06:08 Xliff left
Guest72 m: my $foo = 12.34; say "abc $foo.fmt('%u') xyz"; 06:18
camelia abc 12 xyz
Guest72 frostcod: afaik that's as close as it gets 06:19
06:23 Xliff joined
Xliff frostcod: Oops! Sorry. I had to hit scrollback to see your response, lol! 06:24
There is sprintf... 06:25
m: say sprintf('abc %02u xyz', 4)
camelia abc 04 xyz
Guest72 Xliff: while you were gone I suggested this:
m: my $foo = 12.34; say "abc $foo.fmt('%u') xyz";
camelia abc 12 xyz
Xliff Guest72, that would have been my suggestion, too but it falls apart when you need a lot of placeholders. 06:26
frostcod @.xliff @Guest72 I just feel that the f-string syntax in Python looks quite similar to Raku’s style. It would be really nice if Raku could support formatting numeric output directly within string interpolation using adverbs
Xliff disbot1: What were you envisioning?
frostcod something like this my Num $a = pi; say "{$a:.2f}" 06:27
Xliff Looking at fstring docs, it behaves a lot like say! 06:28
m: "say { π.fmt('%.2f') }"
camelia WARNINGS for <tmp>:
Useless use of "say { π.fmt('%.2f') }" in expression "say { π.fmt('%.2f') }" in sink context (line 1)
Xliff m: say "{ π.fmt('%.2f') }"
camelia 3.14
frostcod yeah, fmt is also a nice way
Xliff frostcod: Yeah. There is a slight variation, but to get it exact, you would need to write a slang, or your own version of <say> 06:29
frostcod Definitely, I think I’ll need to dive deeper into raku to implement that. Thanks for the suggestion! 06:33
Guest72 I don't recall the exact limits of what you can do with custom operators, but that might be another somewhat simpler option 06:35
m: sub prefix:<F> (Str $s is copy) { $s ~~ s:g/b/z/; $s }; say F"abc" 06:38
camelia azc
Guest72 then put your custom stuff in the sub
06:39 Sgeo left
librasteve beat me to it … maybe a postcircumfix can work without quotes (like a hash <> accessor) 06:40
06:42 lichtkind joined
Guest72 hm, that's an idea 06:42
at least for the version I just wrote, it'll only work with single quotes or else the {} will get interpolated and throw an error before the custom op even sees it. maybe there's some adverb to only disable bracket interpolation or something 06:43
I like the postcircumfix more as I think about it 06:45
wait, I don't think that'll work as just an operator without a slang, because everything inside it still has to parse as an expression, if I'm not just confused which is totally possile 06:51
Xliff So where can I get the community Comma from, now? 07:11
07:31 Xliff left 07:40 arkiuat left
Guest72 .tell Xliff looks like the standalone version is dead but the intellij idea plugin is being resurrected at github.com/ab5tract/comma-plugin 07:51
tellable6 Guest72, I'll pass your message to Xliff
07:54 arkiuat joined 07:55 wayland76 joined 07:56 apac joined 07:58 arkiuat left
wayland76 .tell ab5tract: To clarify, I wouldn't want to introduce extra stuff into Raku constructors either; it'd be a module. 08:00
tellable6 wayland76, I'll pass your message to ab5tract
wayland76 frostcod: If you're still around, docs.raku.org/language/slangs is the beginning of a Slangs tutorial. 08:02
08:10 dakkar joined 08:27 arkiuat joined 08:31 arkiuat left 09:16 arkiuat joined 09:21 arkiuat left 09:38 arkiuat joined 09:51 arkiuat left 10:04 arkiuat joined 10:33 hudo joined, hudo_ joined
wayland76 I've installed rakubrew, and installed zef using rakubrew, and now I'm getting 10:45
No such method 'meta-object' for invocant of type 'RakuAST::Declaration::Import'
Anyone have any ideas about that one? 10:46
10:56 yewscion joined
lizmat is there a RAKUDO_RAKUAST=1 stuck in your environment by any chance ? 10:59
11:01 yewscion left
wayland76 I tried it with RAKUDO_RAKUAST=0 and that didn't help. So I unset it, and that worked. 11:03
The thing that detects the environment variable -- does it check for non-zero, or does it check for non-empty string, or just its existence, or what?
lizmat I think it checks for existence atm 11:04
no, actually, non-empty string I think
if %*ENV<RAKUDO_RAKUAST> { ... }
wayland76 Yeah, non-empty string. 11:05
(confirmed by test).
lizmat m: if "0" { say "different from Perl" }
camelia different from Perl
wayland76 Thanks!
Oh! Interesting! Thanks!
11:05 arkiuat left 11:09 hudo__ joined, hudo_ left, hudo left 11:17 arkiuat joined 11:23 arkiuat left 11:41 arkiuat joined 11:46 arkiuat left, yewscion joined 11:52 yewscion left 12:08 arkiuat joined
librasteve Xliff: i get that comma standalone is a work of art - but sadly after ecumenical handed over the keys it became clear that the effort required to keep both on the bleeding edge of the custom intellij IDE tooling and the custom intellij plugins was too much to be justified by the user base … i 100% support the choice to maintain a current plugin since that meant less UI work and more speed to stay on top of the intellij 12:08
version firehose sad though it is … even if you had the last comma IDE download it is rapidly sunsetting as the underlying codebase rusts and likely would soon come to an abrupt end … note that the intellij raku plugin 2.0 should work well with latest intellij paid and free options
edument 12:09
12:09 Guest72 left, apac left
antononcube Interestingly (or maybe boringly ) currently I develop/maintain 60% of my Raku projects with the "last" Comma IDE, and 40% with IntelliJ (with Raku plug-in.) 12:37
ab5tract as long as you aren't hacking on the same projects in both, it should be fine 12:42
I had to modernize the project settings code significantly in order to have anything usable in the modern intellij
12:46 apac joined 12:58 MoC joined
tbrowder lizmat: my doc PR ref julian-date is out of sync with raku/doc, will fix soon 13:04
13:18 Guest41 joined
Guest41 test 13:19
13:19 Guest41 left 13:31 yewscion joined 13:37 yewscion left 13:59 apac left 14:39 Sgeo joined 14:56 yewscion joined
tbrowder [Coke]: ref yr Sudoku class, are you going to publish a Raku game for CLI or terminal use? i love sudoku, and have been playing an iPad version almost daily since us covid started. if you're not, then i will work on a published version myself (to use as a "cheat sheet" for iPad play. 14:58
15:06 librasteve_ joined
[Coke] I kind of want to make a solver (including for some variants) that shows possible next steps to work on, etc. But don't wait for me. 15:34
tellable6 2025-05-21T22:50:12Z #raku <wayland76> [Coke] (or nextsame/nextwith, depending on what you're doing)
hey [Coke], you have a message: gist.github.com/a7db6acb6d8c7bf3ee...abcada1f0c
[Coke] If you play, you may want the App::SudokuHelper - which gives a utility so you can say "show me all the combinations that add up to X (optionally with Y digits)", which is great for killers, etc.
tbrowder thnx. well yr proj sounds cool, i'll watch it it's on github 15:40
ah, the App::Sudo* is what i can use indeed. i looked at it before, but too quickly. 15:44
filed an issue--maybe that's where ya were heading with the array2string for new 15:53
arkiuat tbrowder: thanks again! I really like your current thinking on .julian-date, and the new commit on the Dateish rakudoc looks perfect. 16:32
16:50 Xliff joined
Xliff \o 16:51
tellable6 2025-05-22T07:51:28Z #raku <Guest72> Xliff looks like the standalone version is dead but the intellij idea plugin is being resurrected at github.com/ab5tract/comma-plugin
[Coke] I had mentioned perhaps 3D printing some camelia/raku stuff (I have a 4-color print I can easily do for camelia) - Any thoughts on UV printing? Looking into getting a home UV printer, so could do other stuff (presumably to just hand out at cons). Could do multi-color TUITs with full color camelias, etc. Anyone has any ideas, ping me. (Sadly, won't be in time for this year's US con) 16:56
17:03 dakkar left 17:13 Xliff left 18:07 silug left 18:08 silug joined 18:49 MoC left 19:23 Guest72 joined 19:45 librasteve_ left 19:50 yewscion left 20:06 Guest72 left 20:07 Guest72 joined 20:12 Xliff joined
Xliff \o 20:13
If I wanted to add something to the $~Quote braid, would I do this: $LANG.define_slang('Quote', ...)
tbrowder arkiuat: thanks! i have a hard time getting my head wrapped around that stuff, but my russian astro perl expert has really helped. i stopped comm with him after ukraine cause i didn't want him to possibly get in trbl with authorities there 20:22
arkiuat tbrowder, wow, I'll do the best I can. Working on that doc revision you requested right now 20:23
I'm just throwing together a little testing code to make sure I don't write an inaccurate description of the current behavior 20:24
20:25 nicole joined
tbrowder 👍 20:25
arkiuat I started writing stuff down and realized I wanted to double-check my assertions 20:26
antononcube @arkiuat with LLMs or without? 20:27
arkiuat no LLMs
yecch
definitely without
i'm just running an exhaustive loop through what I hope is one example each of all the possibly interesting variations 20:28
antononcube A perfect job for an LLM.
arkiuat well, you are welcome to do that if you like 20:29
but I understand how LLMs work well enough not to trust one with that sort of thing 20:30
antononcube Hmm... I welcome our new LLM-overlords.
arkiuat and I've seen enough subtly flawed results from attempting that sort of thing, even if I didn't
antononcube Same here. But, also, YMMV. The new "thinking" can be quite good in certain problem areas. 20:31
Guest72 something I wrote in another channel a few minutes ago: it'll probably simmer down when people figure out that LLMs don't think. not very different from looking at a piece of paper with writing on it and assuming the paper thought up the words 20:45
antononcube “Thinking LLM” or “reasoning LLM” are technical terms, sort of. I.e. some of the new, reasoning-purposes-built LLMs have “reasoning” or “thinking” in their names or descriptions. 21:11
@Guest72 No, LLMs are more than that you imply with your words-on-paper analogy. (Although, it is an interesting one.) 21:14
21:20 Guest72 left 21:23 Guest72 joined
Guest72 got disconnected for a few minutes, don't know if I missed anything 21:23
I disagree for a number of reasons, but I'm not trying to turn #raku into a debate club. I respect your freedom to have your own opinions
lizmat Xliff: that's what I would try 21:37
21:44 stanrifkin joined
Guest72 lizmat: may I PM you wrt some p6c modules I abandoned? 21:44
lizmat sure 21:45
Geth ecosystem: d633a93c6a | (Elizabeth Mattijsen)++ | META.list
Remove raydiak's modules

They will be re-issued as Raku Community Modules
21:58
tbrowder Guest72: 👍 22:05
Guest72 as long as my cover is blown, I'd like to formally go on the record apologizing for the meltdown I experienced when I tried to rejoin this community a few years ago. my head was not in a good place for personal reasons, and my behavior had become inexcusably uncooperative and harsh. I am sorry to the various people I probably offended, and wish you 22:43
all the best
22:48 yewscion joined 22:51 Guest72 left 22:53 yewscion left 23:08 Guest72 joined 23:27 wayland76 left 23:57 stanrifkin left