🦋 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.
perryprog Yup. Check out the section "Successfully used in production at" on raku.org 00:01
tbrowder Petr: jnthn’s xls module is best. mine is in limbo for now.
00:02 reportable6 left 00:03 Petr left 00:04 Petr joined, reportable6 joined
Petr thanks 00:04
tbrowder but Raku’s Inline::Perl5 module is very usable for interface with many Perl modules. and its author is very helpful if you run into problems
perryprog is the author you
Petr I cant find Raku books, nothing 00:06
I from dotnet and have problems with learning )) 00:08
00:12 berber44 joined
berber44 what is "test-t benchmark"? Is this the same as roast test suit? 00:13
00:15 ggoebel left
Petr what you think about Gumbo? seems to be outdated 00:15
berber44 I've read in Rakudo Weekly that new dispatch mechanism made test-t benchmark 20% faster. Does it mean that roast test suit runs 20% faster? 00:16
00:20 Petr left
tbrowder perryprog: author is @nine 00:27
perryprog darn, thought you being cheeky :P
tbrowder ;-D 00:28
00:30 bdju left
tbrowder he helped and updated the module when i was trying to interface with a Perl XLS module: John McNamara’s excellent xls writer modules 00:31
which i have used for over 20 yrs
Tirifto Hello again! Raku is throwing me this error: ‘Cannot look up attributes in a Door type object’. Door is a class I made, but I can’t think of anything that would prevent attribute lookup. Are there any well-known gotchas I may have missed? 00:32
tbrowder how are attrs defined? code example? 00:33
can we see Door class decl? 00:35
and its use? a gist? 00:36
00:40 Petr joined
Petr Can Raku run on android devices& 00:40
?
00:42 bdju joined
Tirifto tbrowder: I’m working on a small (text-based) game for a jam; Door is an Entity (basic game object) supposed to link Rooms together. For design reasons, I don’t actually put Door objects into Rooms, but I make Doorside objects, each of which is supposed to refer to a Door and delegate its messages to it. But the ‘name’ method didn’t work as intended when called on Doorside. I thought maybe I misunderstood how d 00:48
elegation worked, so I tried to override it with a custom method that just called ‘name’ on the Door object explicitly. That’s when I got the error.
Here’s a link to the relevant pieces of code; I can send more if that helps, I just wanted to avoid all the side clutter. zerobin.net/?e1a93ba281fc2ef0#WxeV...bMyDCjzDk=
00:52 Petr left
Tirifto Oh wait. 00:52
Ohh, when Raku says ‘Door type object’ it literally means the object representing the Door type. I wrongly thought it meant any object whose type was Door. That gives me a clue as to what might be wrong. Sorry for the confusion. >_< 00:54
(The gist I printed actually tipped me off; thanks!)
Juerd Tirifto: It may help to know that a typed variable starts out containing the type object 00:56
Tirifto: So simply having "class Door { has $.foo }; my Door $d; $d.foo;" will get you that error 00:57
That's because $d is not defined, and thus contains the type object
Tirifto Juerd: I sort of knew about it but hadn’t realised the implication in this situation. Thank you for pointing that out. >_< 00:59
Juerd The error message may be slightly LTA because it could mention that the value is not defined to help out people unfamiliar with this pattern.
Tirifto Hmm… that sounds nice to have! 01:05
01:07 eseyman left
berber44 Hello! Could someone give any hint please what is "test-t benchmark" in the Raku ecosystem? 01:09
01:09 eseyman joined
Tirifto berber44, this is just a wild guess, but perhaps it refers to Rakudo’s internal performance tests? Raku programs often have tests in the ‘t’ directory, and the only mention of ‘test-t benchmark’ I found was in an article discussing performance improvements in Rakudo. 01:17
Yet another question: When method calls are delegated to another object, they work with the delegatee’s attributes and not with the original object’s attributes, right? 01:21
Geth doc: doomvox++ created pull request #3971:
order-of-declaration and multi-dispatch
01:24
tbrowder Tirifto: so do you need any help now? 01:28
Tirifto tbrowder: Not badly. ^ ^ The original problem was resolved, but now I have a new one with delegation. I can likely just read through the documentation and work around it, though. 01:30
berber44 Tirifito, I was asking regarding this line in the recent Rakudo weekly: "The really good news is that the well-known test-t benchmark..." And it seems that no one knows anything about this "well-known" benchmark. :-(((((" 01:32
tbrowder if you have any probs, a complete example in a gist helps very much those who are helping you
Tirifto berber44, there seems to be a comment form on the article; perhaps you could submit a question there? 01:35
berber44 Good idea. 01:36
tbrowder “well-known” probably means to core devs
berber44 Ahh, thanks.
Tirifto tbrowder, thanks for the hint! 01:37
tbrowder the Raku “ecosystem” is large and not always easily described to newcomers. please feel free to file an issue in the appropriate place (ask for advice for what “appropriate” is here) 01:39
berber44 tbrowder, thanks! 01:43
01:46 Sgeo left 01:48 Sgeo joined 01:57 berber44 left
tbrowder .tell berber44 you are very welcome 02:03
tellable6 tbrowder, I'll pass your message to berber44
02:32 jess is now known as catoshi_nyakamot, catoshi_nyakamot is now known as CatoshiNyakamoto
Xliff . 03:10
03:32 linkable6 left, evalable6 left 03:54 Xliff left 03:57 CatoshiNyakamoto is now known as jess 04:01 berber44 joined 04:33 berber44 left
japhb .tell berber44 test-t is part of a benchmark suite whose performance results are posted semi-regularly to #raku-dev by |Tux|. You can find them in the channel logs. 05:13
tellable6 japhb, I'll pass your message to berber44
05:17 ufobat joined 05:33 abraxxa joined, abraxxa left 05:35 abraxxa-home joined 05:38 abraxxa joined 05:39 eseyman left 05:43 abraxxa left, abraxxa joined 06:02 reportable6 left 06:06 reportable6 joined 06:42 ggoebel joined 06:44 jjido joined 06:50 Manifest0 left 07:01 Od1n joined
Od1n hello 07:01
07:30 Sgeo left 07:34 linkable6 joined 07:35 evalable6 joined 07:42 anser joined 07:54 jjido left 07:56 cognominal_ joined 07:58 Manifest0 joined 08:00 cognominal left 08:03 dakkar joined 08:42 avar left 08:43 avar joined 08:55 MasterDuke left 09:35 MasterDuke joined 09:36 ggoebel left 10:35 ufobat left 10:37 satyavvd joined 11:23 ggoebel joined 11:30 sena_kun joined 12:02 reportable6 left 12:03 reportable6 joined 12:33 jjido joined 12:40 ggoebel left 13:17 sena_kun left 13:21 berber44 joined 13:25 wonner joined 13:46 berber44 left 13:50 jjido left 13:53 melezhik joined
melezhik . 13:53
14:10 anser left 14:13 Sgeo joined 14:20 melezhik left 14:55 tejr left 14:56 tejr joined, xinming_ left 14:58 xinming_ joined 15:12 wonner left 15:25 euandreh left 15:27 euandreh joined 15:45 dakkar left, dakkar joined 15:52 berber44 joined 16:05 berber44 left 16:12 abraxxa left 16:20 ilogger2 left 16:21 pierrot_ joined, pierrot left 16:22 daxim left 16:24 daxim joined 16:31 dakkar left 16:32 ilogger2 joined 16:49 immediate joined, satyavvd left 16:52 tejr left, tejr joined 17:14 immediate left 17:21 a3r0_ left 17:23 Petr joined
Petr can i compile my programm to exe? 17:23
lizmat not at the current time 17:24
it's on the wish-list though :-)
Petr ok, continue using perl 5 )) 17:25
17:29 immediate joined
moon-child til this is koscher 17:30
17:30 rypervenche left
moon-child m: sub infix:<op>($x, $y, $z) {} 17:30
camelia ( no output )
moon-child roasted, too
17:32 Petr left 17:38 jjido joined 17:53 squashable6 left 17:57 squashable6 joined 17:58 guifa joined
guifa o/ 17:58
moon-child \o
18:02 reportable6 left 18:05 chloekek joined 18:27 abraxxa-home left 18:50 swaggboi left 19:05 reportable6 joined
guifa so random question: if I switch to the RakuAST branch, will that also have the new-disp stuff in it? I know they were being worked on in parallel for a while. I imagine much of the work was orthogonal so the answer is probably yes, but wanted to check 19:36
lizmat I think RakuAST has been rebased on new-disp, yes 19:42
MasterDuke i believe rakuast was just rebased after new-disp was merged, so yeah
lizmat so you'd be getting all of the new-disp goodies
chloekek m: try open('/not/exist'); say $!.WHAT; 19:43
camelia (AdHoc)
chloekek m: open('/not/exist').WHAT 19:44
camelia ( no output )
chloekek m: open('/not/exist').WHAT.say
camelia (Failure)
raydiak m: sub infix:<op> ($x, $y, $z) is assoc<list> { $x + $y - $z }; say 1 op 2 op 3 # moon-child 19:55
camelia 0
moon-child right, that works with assoc<list>, but roast tests doing it with an assoc<right>! 19:56
raydiak heh...idk about that one :)
19:57 jjido left
raydiak with a named it lets it take an adverb, but 3 positionals? no idea 19:58
moon-child m: sub infix:<op>($x, $y, $z) is assoc<right> { $x + $y * $z }; say [op] [1, 2, 3, 4, 5] 19:59
camelia 47
moon-child ^ what roast tests 20:00
raydiak which test is it in? maybe there's something in the syns about it 20:02
20:02 immediate left
raydiak I mean which file 20:02
moon-child S32-list/rduce.t 20:03
raydiak not sure why you'd define something as an operator if it only works for reduction. interesting though, I guess 20:10
git blame points to TimToady 20:14
tonyo_ why would that be an infix anyway? 20:17
raydiak that's why it's confusing, you can never directly use it as an infix operator 20:21
[Coke] all blame points to TimToady! 20:31
tonyo_ if the signature was different i'd be one thing
[Coke] (in a good way. :)
tonyo_ m: sub infix:<op>($x, *@a) is assoc<right> { $x + [*] @a }; say 1 op (2,3,4); 20:32
camelia 25
tonyo_ i'd meaning it'd
raydiak agreed, that would at least do something 20:36
20:43 monochromec joined
monochromec Is there a developer advocate or spokesperson of the project? 20:45
Or somebody who may be willing to advocate the language in a news outlet?
tonyo_ monochromec: in what capacity? 20:50
monochromec Doing an episode on the project as part of a FLOSS podcast. 20:51
[Coke] Do you have a news outlet in mind/all set just looking or a person, or are you looking for a marketing person?
monochromec A project coordinator or some other dev with a technical background who can talk about the project, its roadmap and history (esp. the things that set Raku apart from Perl) would be ideal. 20:53
20:55 monkey_ joined
[Coke] lizmat, codesections, maybe someone from the steering committe. ^^ 20:57
tonyo_ the history part might vary widely depending upon who steps forward
20:57 xinming_ left, xinming_ joined 21:01 monkey_ left, monkey_ joined
monochromec And how would I get in touch with the steering committee? Is there a mailing list or something similar? 21:03
[Coke] I'd volunteer jnthn, but I don't want to add to his plate. :)
.ask lizmat any suggestions for monochromec's request for someone to talk about Raku on a podcast? 21:04
tellable6 [Coke], I'll pass your message to lizmat
[Coke] she'll see it when she comes back, she's on the RSC.
leave an email or something?
monochromec Mail address is [email@hidden.address] Thanks for your help! 21:05
Mail address is gig@lininlaws.eu. Thanks for your help!
21:05 monochromec left
[Coke] thanks for helping us get the word out! 21:09
21:18 Petr joined
guifa lizmat++ MasterDuke++ Both of those are critical to getting Intl::Format::DateTime up and running. new-disp fixes some weird compilation issues with the DateTime::Timezones and RakuAST…well… obviously for constructing formatters à la lizmat's new .fmt ^_^ 21:18
Petr It is possible to run raku on android& 21:19
?
guifa Petr: Possible, sure. But I don't know of any pre-made library for it. 21:20
but someone else might
Petr Cant find any info about
raydiak istr there was talk about someone getting it to work on termux 21:22
21:23 kawaii_ left, mjgardner left, zostay left
guifa So there's two routes I'd look at initially: you can build Rakudo on the JVM, although I'm not sure if it runs okay with ART (I suppose it should though), or you can also use the JS build of Rakudo inside of a WebView and communicate that way, but that's definitely a crazy round about way to do it 21:24
21:24 PotatoGim left, leont left, tbrowder left, SmokeMachine left, pjlsergeant left 21:25 ecocode__ left, patterner_ left, skaji left, pjlsergeant joined, rjbs left, rjbs joined, PotatoGim joined 21:26 skaji joined, SmokeMachine joined, patterner_ joined
Petr thanks 21:27
21:28 tbrowder joined 21:29 Petr left, mjgardner joined, zostay joined, kawaii_ joined 21:30 ecocode__ joined
raydiak .tell Petr I also found a mention of someone running it under debian in UserLAnd (play.google.com/store/apps/details?id=tech.ula) 21:37
tellable6 raydiak, I'll pass your message to Petr
21:38 xinming_ left, leont joined 21:40 xinming_ joined 22:02 jjido joined 22:13 berber44 joined 22:14 djerius left 22:15 djerius joined 22:29 gcd joined 22:31 chloekek left 22:59 monkey_ left 23:11 Maylay left 23:13 Maylay joined 23:29 squashable6 left 23:37 xinming_ left 23:51 berber44 left