🦋 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:08 Manifest0 left 01:25 bdju joined 01:26 hulk joined 01:27 kylese left 01:28 kst left, kst joined 01:29 nine left 01:30 nine joined 02:15 hulk left, kylese joined 03:01 MasterDuke joined 05:30 Sgeo left 06:24 vrurg joined 06:27 vrurg_ left 06:53 MasterDuke left 07:06 Manifest0 joined 08:27 dakkar joined 09:21 jpn joined 09:27 sena_kun joined 10:09 jpn left 10:10 jpn joined
tbrowder thank you librasteve. how much does wordpress charge for their part of the recipde? 11:04
ref Sieve of Eratosthenes, i’ll try it on my best host. 11:07
11:38 jpn left 12:01 Chanakan joined, jpn joined
librasteve tbrowder: wordpress.com is a blogging platform not to be confused with wordpress.org which is an OSS content management software (written in PHP) used by 30-40% of all websites 12:07
12:08 jpn left
I use wordpress.org and it is 100% free 12:08
12:09 jpn joined 12:11 perlbot left, simcop2387 left 12:16 simcop2387 joined 12:17 perlbot joined
ab5tract tbrowder: thanks! the details from Whateverable are useful but it really requires both Perl and Raku timings to be able to make a proper comparison with the historical results 12:28
antononcube @librasteve I am sort of “tired” updating my DigitalOcean droplet (running a Cro service.) So, I started considering a week or so ago using a Docker image. DigitalOcean make fair amount of noise about their Docker integration. It is not clear to me how good it is or is it worth the effort. 12:42
jdv probably worh^Hth it ^H 12:43
if you aren't "fluent" in docker it might be more annoying at first, like anything else really 12:44
antononcube Yeah, any Docker project I have been asked to make so far took 5-10 times longer than expected. 12:45
librasteve I tried the AWS LightSail service for some online Jupyter demos a while back - which I guess is similar to DigitalOcean + Docker ... rakujourney.wordpress.com/2022/08/...rc-slides/ and the lightsail video share.vidyard.com/watch/exK8EPkk6wV5AF2wbgCS5Q? 12:50
I abandoned this due to the weakness of the free of charge / cheapest lightsail container not being fast enough for development and so on ... so now I use AWS EC2 and can adjust the server size "dynamically" (ie I can load the same image onto a small or medium according to how impatient/rich I am) 12:52
two things I can suggest would be helpful:- (i) raku.land/zef:librasteve/CLI::AWS::EC2-Simple (this makes a vanilla ubuntu server and optionally runs a setup to install raku + Docker + Docker-Compose on that box ... there is a config yaml where you specify the EC2 instance type you want, the image you want to load and so on) and (ii) I keep a chain of live raku oriented Dockerfiles here 12:59
github.com/librasteve/raku-Dockerfiles that are working today ... this one docker run -it librasteve/rakudo:scipy should work out of the both (x86 only - a limitation of Jupyter Scipy model)
/both/box/
I'm happy to support this and would welcome adding Cro to the mix (or Hummingbird...) 13:02
tbrowder antononcube: what would you like to see changed in App::Mi6? What does it do that you don’t like? 13:04
[Coke] if you're not logged into github, where do you get the git url for a repo? (thought it was clicking on the "<>Code \/" button but that does nothing. 13:16
jast if the button does nothing, maybe the page wasn't loaded correctly? if I click that, I get a popup that gives me the HTTPS URL and a "copy" button 13:21
[Coke] are you logged in to github? 13:22
jast I tested in private mode, so no
anyway you can always just use the web URL, e.g. github.com/rakudo/rakudo 13:23
antononcube @tbrowder I have used "App::Mi6" once for diagnostic purposes -- that was good / useful. The second time I tried to use it I forgot its assumptions or workflow. It got a bunch files changed and complained about not having PAUSE credentials setup. 13:24
lizmat that feels like a log time ago: zef is default in App::Mi6 for a long time nonw
*now
antononcube @tbrowder So, I guess the first things to propose are: 1) yes/no/cancel dialog when changing files, 2) including to Zef ecosystem and making a default. 13:25
13:26 guifa joined
@lizmat Hmm.. ok. I will have to verify that. 13:26
[Coke] Might have picked some settings the first time you touched it and saved them in the dist.ini that you wouldn't get now if you started fresh 13:28
13:29 jpn left
[Coke] I was very happy to start using it and all my (admittedly tiny) packages use it now 13:29
lizmat fwiw, all mu 200+ distributions also use App::Mi6 :-)
*my 13:30
antononcube @lizmat Dully noted. (Really, good to know!) 13:31
13:32 jpn joined
[Coke] "duly" 13:32
lizmat well, App::Mi6 *is* pretty dull to me
[Coke] HA
lizmat it does what it's supposed to do!
without much excitement :-)
antononcube @Coke Ok, also "duly"... 13:33
tbrowder antononcube: a couple of things: (1) skaji, the author is slow to respond, i would love to have it as a community module, but he does like doc improvement suggestions. 13:35
i devloped Mi6::Helper to help me ease creation of new modules to be managed by mi6. 13:37
lizmat tbrowder: OOC, what is wrong with "mi6 new Foo" ?
s/or missing from/
tbrowder i am currently working on a lint mode point out problems or suggestions with a module repo directory 13:38
lizmat: i don't know. 13:39
lizmat I was triggered by "to help me ease creation of new modules" 13:40
it was my understanding that Mi6::Helper was intended to help migration of existing distributions to App::Mi6 ? 13:41
tbrowder yes, but i haven't gotten to the "old=" mode yet. the "lint" mode is a step in that direction 13:42
it was a bear trying to kill all the bugs with the "new" mod 13:43
*mode 13:45
it will do at least two things to help non-mi6-type distros: (1) check for missing dependencies not in the META6.json file and (2) check for files in "resources" properly referenced in the meta file 13:49
i
i know one thing y'all don't like about mi6-helper is separating pod from code files and putting it in a separate rakudoc file. i can make thatN 13:52
lizmat many of my modules have a separate .rakudoc file: it just requires a tweak in the dist.ini 13:53
tbrowder that an option, but i like ir because it is easier for me to provide a better text flow. yr mileage may differ.
13:55 guifa left 13:56 Sgeo joined
tbrowder while on this subject, what do you think about a "best practices" started somewhere? early on i asked Damian cause i loved his Perl book and he said it was too early. but what about now? 13:58
lizmat I think now would be a good time, but fwiw I'd rather see course.raku.org finished :-) 14:00
tbrowder yes
is there an easy way to get that in pdf? 14:01
lizmat not that I know :-( 14:02
antononcube @tbrowder Using pandoc, but LaTeX hast to be installed, and that might not be easy. 14:04
ab5tract ConTeXt is easier/more minimal than LaTeX to install 14:08
and way, way easier to customize
and its also a pandoc output
wiki.contextgarden.net/Main_Page 14:16
antononcube (Using "✍️" instead of "duly/dully noted"...)
@ab5tract I was wondering is installing "pdflatex" of similar sufficient. 14:21
14:24 guifa joined
@ab5tract Have you used ConTeXt with both pandoc and org-mode? 14:25
14:28 guifa left
tbrowder a5tract: 2.00s on my Debian x64 14:28
raku v2024.02 14:30
using lizmat's version 14:35
and the perl version showed: 0.49s 14:38
v5.32.1 14:39
non-precompiled. 14:40
jdv what versions of the code are you using?
tbrowder for the sieve? 14:50
i used the last version in ab5tract's link to the issue 14:51
raku 2024.02, perl 5.32.1 14:52
jdv oh, ok 14:54
lizmat actually, my version has one flaw 15:04
with sub sieve(int $n) instead of sub sieve($n) 15:05
and: my $start = nano; and my $end = nano; and printf "%.2fs\n", ($end - $start) / 1000000000;
I get .80 second for Raku and 0.87 for Perl 15:06
so it's at least on par with Perl
with 5.28.0 on Intel 15:07
On a M1, I get 1.24s (Raku) vs 0.64s (Perl 5.30.3) 15:11
ab5tract tbrowder: I was interested in the non-optimized original verion, actually 15:14
tbrowder oh, i'll try that, and lizmat's fix, too 15:15
ugexe a 6 year old perl isnt exactly fair, although probably doesnt matter much
ab5tract but it's definitely awesome that lizmat++'s optimized version can catch up with JIT involved
lizmat and that's without using nqp 15:16
tbrowder i'll checkout a more recent perl (but slower host) 15:19
ab5tract thanks for looking into it tbrowder. don't forget to put some timings into the ticket too :)
15:24 david_ joined
tbrowder will do 15:54
fyi, no surprise but machine makes larger diff for me perl-wise. my latest perl (on latest debian) is an older server on dedispec.com; not worth posting in issue 15:57
with lizmat's latest i'm getting variable times, lowest so far is 0.44s 16:02
on my "new" debian 16:03
averaging around 0.85s 16:05
16:06 jpn left
tbrowder and 0.49s for p5.32.1 16:06
librasteve raku: 1.03s, perl: 0.66s on M1 16:12
evalable6 (exit code 1) 4===SORRY!4=== Error while compiling /tmp/rBHjAm3YBz
Confused
at /tmp/rBHjAm3YBz:1
------> 31.038⏏4s, perl: 0.66s on M1
expecting any of:
whitespace
librasteve oops
16:17 Guest23 joined
lizmat yeah, so I guess we can say that Perl is upto 2x as fast as Raku 16:21
if you deduct startup times (0.11 for Raku, and 0.02 for perl on my M1), we're looking at .94 vs .64 16:23
Guest23 Given a 2d array A, and a list P: row,column, I can reference the cell at row, column with something like A[P.head;P.tail] or A[P.head][P.tail]. Is there a more concise way to do this? I've tried using hypers with [] ... something like A >>[]>> P ... without success. 16:27
[Coke] I am not aware of a different syntax there (and those are pretty concise, no?) 16:28
ab5tract Guest23: you can always wire up a custom operator as well 16:31
Guest23 No complaints; of course it's fine as is. It's just handy to directly apply a list to a 1d array, I thought there might be something similar for 2d (or higher). 16:32
lizmat m: use v6.*; my @a = [1,2],[3,4]; my @e = 1,1; dd @a[||@e]
camelia 4
lizmat m: use v6.*; my @a = [1,2],[3,4]; my @e = 1,0; dd @a[||@e]
camelia 3
lizmat this is actually new syntax in 6.e 16:33
but already available in 6.e.PREVIEW
Guest23 woohoo! 16:36
[Coke] lizmat++ 16:37
lizmat I vaguely remembered implementing something like that quite a while ago :-)
Guest23 Does it also extent to dimensions >2? That would be cool. 16:38
lizmat It extends to any number of dimensions as far as I remember
16:41 dakkar left, Guest23 left 16:44 Guest92 joined
Guest92 Sorry, browser crash. Thanks for the preview. I'll look forward to trying it out. 16:45
16:45 Guest92 left
[Coke] anyone have a pointer to a writeup on *why* the REPL can't run all code? I know there's a cheat with the context each line is run in, but don't recall the exacts. 17:34
ab5tract Guest92: It's already available in recent (last year or so?) builds. `use v6.*` or `use v6.e.PREVIEW` will make it available 17:38
[Coke] (as lizmat did when invoking camelia above)
lizmat [Coke]: grammar changes don't carry over 17:39
and some natives I believe
[Coke] Want to put all the limitations into a doc page on the REPL 17:42
but I don't have to start with a full list, just the general warning is fine 17:43
17:45 Guest20 joined 17:55 Guest20 left
tbrowder m: say $*VER 18:06
camelia Dynamic variable $*VER not found
in block <unit> at <tmp> line 1
tbrowder m: say $*VERSION 18:07
camelia Dynamic variable $*VERSION not found
in block <unit> at <tmp> line 1
18:07 tea3po left
tbrowder m: $*DISTRO 18:13
camelia ( no output )
lizmat tbrowder: what do you want to know ? 18:14
tbrowder trying to show distro or version, think i forgot quotes and maybe braces and .gist 18:16
lizmat m: say $*DISTRO 18:21
camelia opensuse-leap (15.4)
tbrowder duh, fergot the “say” 18:26
thnks
18:27 soverysour joined
lizmat yw 18:27
18:27 soverysour left, soverysour joined 18:32 teatime joined 18:53 abraxxa-home joined 18:54 abraxxa-home left 18:56 abraxxa-home joined 19:13 lizmat left, lizmat joined, discord-raku-bot left 19:14 lucerne left, lucerne joined 19:15 Altai-man joined 19:16 greenfork left, patrickb left, atweedie left, greenfork joined, clarkema left 19:19 bingos_ is now known as BinGOs, BinGOs left, BinGOs joined 19:20 pierrot joined 19:21 david_ left, gfldex left, Geth left 19:22 Geth joined 19:24 david_ joined 19:31 mtj joined, gfldex joined 19:49 soverysour left 20:39 Altai-man left, sena_kun joined 21:57 sena_kun left 22:01 abraxxa-home left