🦋 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.
00:17 swaggboi joined 02:20 human-blip left 02:24 human-blip joined 02:36 MasterDuke joined 02:45 kylese left 02:46 kylese joined 03:15 kylese left, kylese joined 03:16 MasterDuke left 03:38 human-blip left 03:51 human-blip joined 04:02 derpydoo left 04:13 human-blip left 04:18 human-blip joined 04:56 amenonsen left 05:10 amenonsen joined 05:24 human-blip left 05:25 human-blip joined 05:34 human-blip left 05:41 human-blip joined 05:53 human-blip left 06:11 vrurg_ joined 06:13 vrurg left 06:57 sftp left 07:00 hudo_ joined 07:01 hudo_ left 07:02 hudo_ joined, hudo_ left, hudo_ joined 07:04 hudo__ left 07:05 human-blip joined 07:08 hudo_ left 07:09 hudo_ joined 07:25 abraxxa joined, perlbot left 07:26 perlbot joined 07:40 abraxxa left 08:22 epony left, jpn joined 08:25 Sgeo left 08:35 sena_kun joined
patrickb librasteve: I've long wanted to have some analytics for raku.org, docs.raku.org and rakudo.org. I have ideas of how to proceed but it's not made it to the top of my to-do list yet. I believe getting insight into what options people (don't) like can help here. 08:43
librasteve: I do hope your cleanup work will work out. (In the past I quickly started hitting walls as everyone's favorite option needs to be represented and prioritized either by putting it at the top or better put directly on raku.org above the link to rakudo.org. :-P) 08:48
09:11 dakkar joined 09:31 abraxxa joined 10:02 sftp joined 10:05 pat_js left 10:06 pat_js joined
El_Che_ librasteve: commented on #98 10:19
10:45 epony joined
tbrowder__ hi, i'm working on a 12:27
Calendar module that will provide some customizable options. I am considering a config file using one of TOML, YAML, Hjson, or something similar. my personal choice is either Hjson os TOML. Hjson is a really clean user interface and code reading it converts it to std JSON. any prefs should be entered as an issue at <github.com/tbrowder/Calendar> 12:33
12:41 hvxgr left 12:57 hvxgr joined 13:01 jpn left 13:28 ilogger2 left 13:42 ilogger2 joined 13:49 jpn joined
antononcube @tbrowder At this point I have made two calendar modules — both have smaller scope than what you try to do. Hence are fairly lightweight. 13:55
The customization of the second calendar module, “Markup::Calendar” is done via named arguments: “style”, “tooltip”, and “hyperlink”. 13:57
I did not consider using special format files, like, TOML or YAML. But I consider using JSON. (I decided not to.) 13:58
As I mentioned before, I want to make calendars quickly in a Markdown files or Jupyter notebook environments. 14:00
I have not heard about Hjson until few days ago. (Because of the package submitted by T. Akiyama.) 14:06
14:22 vrurg_ is now known as vrurg 14:24 epony left 14:25 epony joined 14:39 jgaz joined 14:42 jgaz left, jgaz joined 14:44 jpn left 14:51 jpn joined, vlad joined 16:03 mark22k left 16:05 mark22k joined 16:12 epony left 16:13 epony joined 16:58 sftp left 17:00 sftp joined, Xliff joined
Xliff \o 17:01
tellable6 2024-01-31T12:44:00Z #raku <ab5tract> Xliff: you can also use `Terminal::Print::Input` ... it should probably have been it's own module
2024-01-31T15:20:43Z #raku <[Coke]> xliff: did 'brew install libgdata'. Do you need full names? I thought raku was smart about that.
2024-01-31T15:21:47Z #raku <[Coke]> xliff: os is 14.1.2 which is "Sonoma", I think.
2024-01-31T15:25:39Z #raku <[Coke]> xliff: names: gist.github.com/coke/a1512fde67908...a98a18b3b8
2024-02-07T13:44:07Z #raku <tbrowder__> Xliff got yr prs, thnx
Xliff Coke: Thanks. I need to release JSON-GLib before I can release GData, though.
Want to do that in the next couple of weeks. 17:02
m: class A { has $!b; has $!c; has $!d; method ^attributes { callsame.reverse }; }; A.^attributes.gist.say' 17:03
camelia ===SORRY!=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> ame.reverse }; }; A.^attributes.gist.say⏏'
expecting any of:
infix
infix stopper
statement end
statement …
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes { callsame.reverse }; }; A.^attributes.gist.say 17:04
camelia Too many positionals passed; expected 1 argument but got 2
in method attributes at <tmp> line 1
in block <unit> at <tmp> line 1
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes { callwith(::?CLASS).reverse }; }; A.^attributes.gist.say
camelia Too many positionals passed; expected 1 argument but got 2
in method attributes at <tmp> line 1
in block <unit> at <tmp> line 1
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes { callwith(::?CLASS.HOW).reverse }; }; A.^attributes.gist.say 17:05
camelia Too many positionals passed; expected 1 argument but got 2
in method attributes at <tmp> line 1
in block <unit> at <tmp> line 1
Xliff Huh. Can you override a MOP call like this?
lizmat yes 17:06
under the hood it mixes in the method into a new HOW, afaik
Xliff So what am I missing? 17:07
Is there an example out there on the intrawebs?
lizmat a positional parameter in your ^attributes method?
m: class A { has $!b; has $!c; has $!d; method ^attributes($) { callwith(::?CLASS.HOW).reverse }; }; A.^attributes.gist.say 17:08
camelia (Nil)
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes($) { callwith(::?CLASS).reverse }; }; A.^attributes.gist.say
camelia (Nil)
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes($) { callwith(::?CLASS.HOW).reverse }; }; A.^attributes.gist.say 17:09
camelia (Nil)
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes ($) { ":P" }; }; A.^attributes.gist.say
camelia :P
Xliff Hrmph... OK, that's one part.
m: class A { has $!b; has $!c; has $!d; method ^attributes ($) { callsame(self.HOW) }; }; A.^attributes.gist.say
camelia Too many positionals passed; expected 0 arguments but got 1
in method attributes at <tmp> line 1
in block <unit> at <tmp> line 1
Xliff m: class A { has $!b; has $!c; has $!d; method ^attributes ($) { callsame }; }; A.^attributes.gist.say 17:10
camelia Nil
lizmat yeah, I would be surprised if that would work...
Xliff Do I need to write my own HOW for a class? 17:11
lizmat you probably need to save the original HOW in a constant, and use that in the call
m: class A { has $!b; has $!c; has $!d; my constant how = $?CLASS.HOW; method ^attributes ($) { how.attributes(how) }; }; A.^attributes.gist.say 17:12
Xliff OK. Will experiment and share if I get it working.
camelia MoarVM panic: Memory allocation failed; could not allocate 131072 bytes
lizmat heh
Xliff d'oh
lizmat m: class A { has $!b; has $!c; has $!d; my constant how = $?CLASS.HOW; method ^attributes ($) { how.attributes(self) }; }; A.^attributes.gist.say
camelia MoarVM panic: Memory allocation failed; could not allocate 131072 bytes 17:13
lizmat something like that :-)
Xliff Yeah. OK. Will try and look into that one.
I think I'll start with figuring out how to write my own HOW for that particular class.
lizmat m: class A { has $!b; has $!c; has $!d; my constant how = $?CLASS.HOW; method ^attributes ($obj) { how.attributes($obj) }; }; A.^attributes.gist.say 17:14
you can always subclass ClassHOW
camelia MoarVM panic: Memory allocation failed; could not allocate 524288 bytes
Xliff lizmat: That's what I'm thinking about.
m: class A { has $!b; has $!c; has $!d; my constant how = ::?CLASS.HOW; method ^attributes ($obj) { how.attributes($obj) }; }; A.^attributes.gist.say
camelia MoarVM panic: Memory allocation failed; could not allocate 524288 bytes 17:15
Xliff I'm thinking it's calling itself.
the "10 goto 10" problem.
m: class A { ... }; class A { has $!b; has $!c; has $!d; my constant how = ::?CLASS.HOW; method ^attributes ($obj) { how.attributes(A) }; }; A.^attributes.gist.say 17:16
camelia MoarVM panic: Memory allocation failed; could not allocate 131072 bytes
Xliff m: class A { ... }; class A { has $!b; has $!c; has $!d; my constant how = ::?CLASS.HOW; method ^attributes ($obj) { callwith(A) }; }; A.^attributes.gist.say 17:17
camelia Nil
Xliff Yeah, I think this has confused the internals. A.^attributes is calling A.^attributes not how.attributes.
At least that's the behavior I'm seeing. 17:18
OK. Will work around. Thanks lizmat++
lizmat yw
17:26 derpydoo joined 17:29 epony left
tbrowder__ antononcube: i filed an issue with the Hjson module author for a bad link. the official Hjson site is now at hjson.github.io 17:30
it really is a clean scheme for a config file
antononcube Great thanks! 17:31
tbrowder__ yw 17:32
17:37 dakkar left 17:41 abraxxa left
bscan Just sharing here. Now that CommaIDE development has been discontinued, I've been making more updates to the Raku Navigator Language Server. LSP is great and allows collaboration across vscode users, emacs, neovim, etc. If anyone wants to help, let me know! Updates shown here: www.reddit.com/r/rakulang/comments...r_updates/ 18:12
18:13 epony joined
lizmat bscan++ 18:14
librasteve tbrowder: I am having a good experience with YAMLish. I found that TOML is too simplistic to adapt to my needs - encoding a unit object. JSON is very line noisy. YAML had the expressive power and readability for me. And YAMLish is very easy to adapt via a custom Schema. 19:04
19:04 vlad left
bscan ++ 19:05
19:08 epony left
tbrowder__ librasteve: thnx 19:25
El_Che_ bscan: do you know of a intellij plugin for using that raku lang servicer 19:31
librasteve yep --- its up above in this thread somewhere 19:33
El_Che_ ok, nice, will have a look soonish 19:34
librasteve JetBrains (via github.com/ballerina-platform/lsp4intellij for example)
this is just from a general search but seems to do the job 19:35
19:55 jpn left 19:56 jpn joined 20:02 jpn left 20:48 xinming left 20:50 xinming joined 21:07 jpn joined 21:14 jpn left 21:28 jpn joined 21:50 wlhn joined
fwiw I think that JetBrains Intellij is in catch up mode here and that LSP is likely to become a core feature (rather than plugin mediated) 21:53
bscan Agreed. JetBrains Fleet is built from the ground up to be more focused on remote development, with native LSP support. 22:20
22:49 Sgeo joined 23:06 sftp_ joined, sftp left, sftp_ is now known as sftp 23:10 dutchie left, dutchie joined, epony joined
El_Che_ I tried fleet 23:12
disliked it like I dislike VS Code
23:25 sena_kun left 23:27 epony left 23:48 jpn left 23:52 sftp_ joined, sftp left, sftp_ is now known as sftp 23:59 wlhn left