🦋 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.
antononcube 🦥 10:18
(Any similarities with active raccoons are accidental.) 10:20
melezhik . 11:19
AntonAntonov: I see the last Raku-JavaScipt-D3 build fails - sparky.sparrowhub.io/report/gh-ant...t-D3/23460 11:20
tbrowder melezhik: i think i see great potential to ease admin burden in yr sparky and module friends. is there a single point of entry for a noob user to find a cookbook recipe to do that? 12:06
tellable6 tbrowder, I'll pass your message to melezhik
librasteve tbrowder: I agree that a cookbook example of sparky would be very helpful for me also a noob 12:20
melezhik . 14:07
tellable6 2025-02-05T12:06:50Z #raku <tbrowder> melezhik: i think i see great potential to ease admin burden in yr sparky and module friends. is there a single point of entry for a noob user to find a cookbook recipe to do that?
melezhik tbrowder: sure, could please elaborate on your Sparky question ?
could -> could you
in other words, what exactly are you going to do with sparky ... 14:09
librasteve melezhik: I cant answer for tbrowder, but I wonder if sparky can do some CICD automation for my use cases - currently I use GitHub Actions to build and push some Dockerfiles to Docker hub for example ... github.com/librasteve/raku-Dockerfiles ... can it do that, if so where can I find a getting started recipe? 14:29
melezhik librasteve: I see 14:30
librasteve: Sparky definitely do that, before me start pointing any directions, may I ask you, you considering Sparky as self hosted (on your infrastructure) or as a service - what is available via sparky.sparrowhub.io instance ? 14:32
in any case a cookbook will be pretty much the same, it's just with self-hosted you'll gain more control and flexibility , but you'll need to host sparky yourself, not a bug deal though 14:36
public service option is less hassle , but in that case there is burden of maintaining users repos on my - sparky.sparrowhub.io instance ... 14:37
my -> me
bug -> big 14:38
melezhik . 15:08
antononcube I am very pleased with Grok: x.com/antononcube/status/1886959138267345308 15:15
lizmat to bad it's on the swastika site 15:38
*too
melezhik. librasteve: I wonder why you need this in your pipeline - github.com/librasteve/raku-Dockerf...y.yaml#L18 15:42
antononcube @lizmat I should make a "study" across all the models I can access what do they think about "LLM and Raku." 15:55
Grok, unfortunately, did not give me access to their API. (Maybe their policy has changed, I have to check / re-apply.) 15:56
timo do you think it would be bad for you to just leave grok out in the cold? 16:04
tbrowder melezhik: i'm talking about basic things i have to do to manage remote debian servers: adding a new one, setting up ssh properly, adding users, adding new services, managing apache web servers, dns, upgrading raku and modules, etc. i think yr system can do most of that, if not all. is there some single config file or directory where i can define a template from which to do that for all servers? can i do most periodic things with a 17:12
single cron job on master server? etc.
librasteve melezhik: ah - I just copiued a cookbook - guess dont need an emulator - thanks! 17:18
OK - don't worry about the dockerfile example too much (it is already retty much working so I do not have any tuits to rebuild it - I'll just tune in to what you have for Tom Browder and see if I can make sense fo that 17:20
tbrowder: fwiw I have nade two simple AWS only tools - github.com/librasteve/raku-CLI-AWS-EC2-Simple to manage a set of EC2 instances and github.com/librasteve/raku-CLI-Wordpress to install and run WP + nginx + certs + db remotely - you are welcome to try them ... I am thinking of a new one (with some common features with the WP one) but to install and run Cro + nginx + db remotely 17:26
however, I am also looking at some simple use cases with opentofu.org
antononcube @timo No, I won’t leave Grok — I payed $85 to get access to it. 18:41
[Coke] _sunk cost fallacy_ 19:00
lizmat m: dd @().^name, %().^name # feels inconsistent 19:06
camelia "List"
"Hash"
lizmat one would expect %() to return a Map 19:06
*could
antononcube @Coke I am not sure it is a sunk cost fallacy. Sunk cost fallacy, would be if I give $85 with the hope I can get access to Grok's Web API. (And still don't get it.) 19:25
melezhik . 19:41
librasteve: looks like we are talking about managing fleet of servers over ssh on periodic basis on Ansible fashion, right ? 19:43
oh, that was meant for tbrowder: sorry 19:44
anyways )
so, yes. I don't think for that case Sparky even required, Sparrowdo which is in nutshell just a ssh Sparrow tasks runners should be enough 19:45
sparrowdo.wordpress.com/2017/01/07...-core-dsl/ this post is quite old, but still actual ... 19:46
Sparky is in nutshell is just ( well not exactly ) a web UI for sparrowdo, one can start with Sparrowdo and if they require web UI they may migrate to Sparky which is quite easy 19:47
as for template sort of project, let me actually create a repo with some easy to start stuff, and you might start with it 19:48
melezhik I guess github.com/melezhik/sparrowdo/tree/master has some sort of cookbooks for beginners , again I can create a GitHub repo with some example standard sparrowdo configuration and templates 19:56
tbrowder: is it something what you are looking for ? cc librasteve: 19:57
tbrowder yes, kinda like ansible and similar, but better with raku 21:03
librasteve lizmat: afaiui %() for Hash is the equivalent to [] for Array since {} cannot always be guaranteed to provide a Hash instead of a Block ... although I have never had an issue with {} ... so not entirely suprising that %() -> Hash and @() -> Map is inconsistent 21:12
that said I think that this is good 21:13
m: my @a = [1,2,3]; say @a;
evalable6 [1 2 3]
Raku eval [1 2 3]
librasteve and this is bad
m: my %h = %( :a(0), :b(1), :c(2) ); say %h; 21:14
Raku eval {a => 0, b => 1, c => 2}
evalable6 {a => 0, b => 1, c => 2}
librasteve m: my %h = {:a(0), :b(1), :c(2)}; say %h;
Raku eval {a => 0, b => 1, c => 2} Potential difficulties: Useless use of hash composer on right side of hash assignment; did you mean := instead? at /home/glot/main.raku:1 ------> my %h = {:a(0), :b(1), :c(2)}⏏; say %h;
evalable6 Potential difficulties:
Useless use of hash composer on right side of hash assignment; did you mean := instead?
at /tmp/AGXJwonsK4:1
------> my %h = {:a(0), :b(1), :c(2)}<HERE>; say %h;
{a => 0, b => 1, c => 2}
librasteve ^^ sorry its the second one with the warning that I dislike 21:15
melezhik tbrowder: github.com/melezhik/sparrowdo-template
lizmat librasteve you realize that the { } and the [ ] in your example are superstituous ?
m: my @a = 1,2,3; say @a; 21:16
camelia [1 2 3]
lizmat m: my %h = :a(0), :b(1), :c(2); say %h;
camelia {a => 0, b => 1, c => 2}
librasteve yeah I know that that's good ... my point is that I CAN list assign an Array to an Array, but I CANNOT list assign a Hash to a Hash 21:17
so perhaps you can throw that angle in to your considerations 21:19
lizmat m: my %a = :42a; my %b = :666b; my %c = |%a, |%b; dd %c # with a little extra syntax, you can :-)
camelia {:a(42), :b(666)}
librasteve well I guess I can do that, but my dumb brain thinks it should be OK to assign an Array [] to an Array @ (which works despite the supercilious []) and it should also be OK to assign a Hash {} to a Hash % (which requires me to drop the superfluous {}) 21:22