🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku
Set by ChanServ on 14 October 2019.
cpan-raku New module released to CPAN! PDF::Class (0.4.4) by 03WARRINGD 01:04
timotimo RubioTerra: is that just one call of .subst or do you call it in a loop? 01:11
RubioTerra timotimo: It's a loop 02:16
timotimo RubioTerra: is it the same substitution every time? 02:17
if yes, then maybe the :g aka :global adverb in the subst call would be right for you
RubioTerra Kinda, I chop off some characters from the end if they are there 02:18
timotimo OK, subst will start at the front and search through the string; if you have an anchor at the end, it's not yet smart enough to calculate that it'd never work earlier than X from the end
but if you know already, you can set a starting position 02:19
RubioTerra Hmm... how do I set the starting position? That would help
timotimo ah dang, i was mistaken 02:20
at least it's not in the docs
RubioTerra Anyway, what I did was add a marker to the string and make a single subst at the end.
I guess it will be faster than any substitution 02:21
timotimo possibly
if the match is simple, you can work with .ends-with 02:22
RubioTerra hmm... you're right
timotimo perhaps together with a junction 02:23
like .ends-with(any <a b c d>)
RubioTerra $var .= subst(/foo$/, '') will parse the whole string, right? 02:25
timotimo yes, unfortunately 02:27
a thing the optimizer needs to learn one day
a "small matter of programming" ;)
RubioTerra yeah, the regex engine needs a lot of care
timotimo, while we're at it, let me ask you another question. 02:32
CommaIDE is throwing an error when I try to run the tests
Unhandled exception in code scheduled on thread 4
timotimo that's the tests of your code? 02:33
RubioTerra yes
timotimo yeah, it does sound like an exception message from rakudo
RubioTerra I've updated the IDE recently and reused the old config files. Maybe that's it
timotimo maybe; creating a new "SDK" could perhaps help
RubioTerra Yeah, I'll try that 02:34
I can run the tests fine from command line
timotimo otherwise, more context of the error message could help figure things out
RubioTerra Well this is the first time I've used the pre-compiled rakudo package (Windows 10 here) 02:35
I've noticed the tests try to run moar.exe from the wrong path.
But, even after providing a copy on the dir it expects it gives me that error 02:36
cpan-raku New module released to CPAN! Sparrowdo::RemoteFile (0.0.3) by 03MELEZHIK
timotimo the wrong path, like from an earlier installation?
RubioTerra It tries to launch C:\rakudo\install\bin instead of C:\rakudo\bin 02:38
Maybe the problem is with the pre-compiled package
timotimo i think the newer rakudo versions are relocatable 02:41
what version of rakudo are you working with here?
RubioTerra 2020.02.1
timotimo i don't know if anything is different about the windows version but there should be a perl6.exe and/or raku.exe in the bin folder that you can launch, rather than just a .bat file; is that the case? 02:43
RubioTerra yes
timotimo i wonder if maybe comma checks for an install/ folder first when you give the location, and the install/bin is from an older installation and wins 02:44
RubioTerra I don't think that's the case, because the rakudo dir is correct.
The problem is that it seems to expect the tree to be intall/bin,/ instead of bin/ 02:45
timotimo oh, the install/bin part doesn't actually exist?
RubioTerra exactly 02:48
executable are inside C:\rakudo-2020.02.1\bin, but it tries to call from C:\rakudo-2020.02.1\install\bin 02:49
cpan-raku New module released to CPAN! Term::Choose (1.6.5) by 03KUERBIS 02:51
timotimo it's supposed to figure all that out when you select the right folder :\ 02:52
RubioTerra Hm... I'll try and do a clean install later. Maybe that's because I'v reused the old configs 02:53
timotimo possible, but it's possible a clean install will also just keep the configs, too 02:55
does the SDK in the project structure dialog show the right version, or does it completely refuse to set up? 02:56
RubioTerra It does show the right version
timotimo that's certainly odd 02:57
you should be able to find the SDK settings in the XMLs somewhere
RubioTerra Hm... Just noticed something
timotimo probably in your project's .idea folder if you have a folder-based project
RubioTerra The error occurs when I try to run the tests in debug 02:58
The path error, I mean
timotimo you might be expected to select the bin folder rather than the rakudo folder 03:02
RubioTerra hm 03:04
xinming Is there other alternatives form handling like Cro::HTTP::Form in raku? 07:05
Cro::WebApp::Form 07:09
moritz Hi all. What are the download permalinks for 2020.01 rakudo star release (and its signature file)? 07:12
AlexDaniel moritz: the ones on rakudo.org/downloads should be permanent 07:18
moritz AlexDaniel: that links to rakudo.org/star and that again links to rakudo.org/latest/star/src 07:20
that is *not* a permalink to this particular version 07:21
AlexDaniel you're right, yeah 07:22
moritz which kinda sucks for a Dockerfile 07:23
AlexDaniel I got confused a bit by the Binary Releases
what about rakudo.org/downloads/star ?
moritz that looks better, thanks! 07:24
AlexDaniel it is linked by “You can also download one of the older releases” text, kinda hidden 07:25
moritz thanks for the help! 07:26
moritz tries to build a star 2020.01 docker fimage 07:27
Geth doc/master: 4 commits pushed by (JJ Merelo)++ 08:51
cpan-raku New module released to CPAN! Math::Libgsl::Matrix (0.1.4) by 03FRITH 13:17
guifa2 Is there a prettier way to initialize a dynamic variable if it's not already been previously set? 13:27
lizmat prettier than what ?
guifa2 The only thing that works for me is 'my $*foo = $CALLERS::('*foo') // initial-value;' and that just feels way too hacky 13:28
lizmat I mean, the core registers code that gets called when a certain dynamic variable doesn't exist
I guess there could be value in HLLizing this
otoh, jnthn is reworking that part of dynamic variables, because it is a huge source of slowdown :-) 13:29
jnthn guifa2: `temp $*foo //= initial-value` 13:30
Might do the job for you
lizmat: The way RakuAST compiles dynamic variable access is already, at least in theory, a bit more efficient :) 13:31
guifa2 jnthn: $*foo //= is the first thing I tried, but it errors saying that the dynamic variable isn't found 13:33
m: sub foo { temp $*foo //= 5; say $*foo }; foo 13:34
camelia Dynamic variable $*foo not found
in sub foo at <tmp> line 1
in block <unit> at <tmp> line 1
jnthn Oh, it might not already exist? Hm. 13:36
I guess you could always poke a $foo into GLOBAL or PROCESS... :) 13:38
guifa2 I'm probably going to do a rewrite of some stuff to obviate the need for it though, and the workaround works for (despite feeling hacky, it actually is literally working as designed/intended, which is kind of cool)
jnthn Which exists by is empty
guifa2 haha
jnthn *but is
lizmat m: Rakudo::Internals.REGISTER-DYNAMIC(q/$*FOO/,{ say "hello"; 42 }); dd $*FOO 13:39
camelia hello
42
lizmat jnthn: I meant that functionality 13:39
jnthn Ah, that's a bit too special-case-y for general exposure 13:41
lizmat more special casey than just poking it in GLOBAL or PROCESS ?
jnthn I mean it solves a "do some work on first use" problem, which is a general problem, but only for dynamic variables. 13:42
lizmat I guess we could move this to a userland module 13:45
s/move/do
s/to/in
mayuresh hello to all. :-) 13:57
it's been a while since I was here.
the roughness of life turned me into a horrible person.
realised it in time, took a break, recuperated. 13:58
feels nice to be nice amoung nice people
:-)
isn't anyone around?
gah, who am i kidding, it's too early on a sunday for most of you folks. 13:59
see you around after a couple of hours. :-)
bye.
Geth ecosystem: melezhik++ created pull request #487:
module moved to CPAN
14:54
ecosystem: d8b5cce40d | (Alexey Melezhik)++ (committed using GitHub Web editor) | META.list
module moved to CPAN
14:55
ecosystem: 584fa82a3b | (Alexey Melezhik)++ (committed using GitHub Web editor) | META.list
Merge pull request #487 from melezhik/master

module moved to CPAN
cpan-raku New module released to CPAN! Sparrowdo::Cpanm::GitHub (0.0.3) by 03MELEZHIK 15:04
tbrowder i'm about to dip into Raku on Win 10. for those with raku win experience, which is the best path for installation in your opinion? 15:13
patrickb tbrowder: That's a very subjective question. I'm a big fan of the precompiled zip archives that can be downloaded on rakudo.org. (Disclamer: I'm the one making those a reality) 15:17
tbrowder patrickb: i'll give that a try, then, thnx 15:18
patrickb tbrowder: The only other alternative I know of is Rakudo Star. That can also be downloaded from rakudo.org 15:19
patrickb tbrowder: Also rakubrew works on Windows. So you can use that as well. 15:19
tbrowder a disclaimer: i just tried the star release for 2020.01 and it installed ok, but the raku executable seemed to be unhappy when running it in a command window.
tbrowder i used the in installer, not choclatey 15:20
*win
samebchase- Hey Rakuers, I have added a description for Raku in my recommendations for programming languages to learn codesurfers.net/links/ (search for "Raku"). Let me know, if you would prefer me to make any modifications. 15:39
moritz samebchase-: thanks for that! 15:46
samebchase-: if you have space for another sentence there, maybe mention concurrency using the observer pattern, and grammars? 15:47
samebchase- I am planning to write an extended article about beginning programming with Raku on the same website. Will let you all know.
moritz: Can you please expand on the "observer pattern". Honestly, I don't know. I will make the modifications if you give me a short sentence. I can also add something about first-class grammar support. 15:48
samebchase- Added this paragraph: "Notable features include first-class support for grammars, modern concurrency primitives, a MOP, being able to easily define arbitrary operators, and keeping in line with Perl's legacy, all new regexes." cc: moritz 16:05
timotimo not bad 16:10
moritz samebchase-: that's pretty good :D 16:48
samebchase-: re observer pattern, the most important part is that raku doesn't offer low-level primitives like threads and locks (it does, but it's not the primary API) 16:49
but instead primitives that compose well, like queues, tasks and supplies
and I just realize that "observer pattern" is likely the wrong term 16:50
Geth ¦ problem-solving: JJ assigned to AlexDaniel Issue Give Travis.com permission to access raku-community-modules repositories github.com/Raku/problem-solving/issues/179 16:58
Geth ecosystem: 902545e4c1 | (David Warring)++ | META.list
renamed module sources: /p6-css/*-p6 -> /css-raku/*-raku
17:22
timotimo true, observer pattern would really be using .tap and .close on the taps manually 17:37
chloekek For some reason VS Code opens “.at” files as Raku 19:31
andrzejku Hello 19:35
rindolf andrzejku: hey 19:38
chloekek: what are ".at" files? 19:39
andrzejku rindolf, how is raku today?
rindolf andrzejku: don't know
chloekek rindolf: Seems to be Autotest, part of GNU Autotools 19:42
rindolf chloekek: ah
chloekek Now that I know it has to do with GNU Autotools, I also know I don’t want to have anything to do with these files :)
rindolf chloekek: i don't see it here: duckduckgo.com/?q=autotest+autotoo...amp;ia=web 19:45
chloekek p6: use *; 19:51
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
use used at line 1 (in Raku please use "v" prefix for pragma (e.g., "use v6;", "use v6.c;") instead)
chloekek p6: use **;
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
use used at line 1 (in Raku please use "v" prefix for pragma (e.g., "use v6;", "use v6.c;") instead)
chloekek p6: use v*; 19:53
camelia 5===SORRY!5=== Error while compiling <tmp>
Could not find v in:
inst#/home/camelia/.raku
inst#/home/camelia/rakudo-m-inst-2/share/perl6/site
inst#/home/camelia/rakudo-m-inst-2/share/perl6/vendor
inst#/home/camelia/rakudo-…
chloekek p6: use v6.*;
camelia Don't know setting RESTRICTED
at gen/moar/ModuleLoader.nqp:257 (/home/camelia/rakudo-m-inst-2/share/perl6/lib/Perl6/ModuleLoader.moarvm:previous_setting_name)
from gen/moar/ModuleLoader.nqp:261 (/home/camelia/rakudo-m-inst-2/share/perl6/lib/…
Geth whateverable: b8895a49ae | (Aleks-Daniel Jakimenko-Aleksejev)++ | xbin/build.p6
Make it possible to use builds from any branch

This was almost done in 09c46d5915edfca48944fc8854dc85697cdf0d3d but it didn't fully work because non-master commits were not seen by the bots (even though builds were being created). #45 is now almost closable.
Currently you still have to use SHAs in order to get bots to use these builds (you can't use branch names), but hopefully it won't take long to improve that.
20:35
Geth whateverable: 13bcd27a74 | (Aleks-Daniel Jakimenko-Aleksejev)++ | xbin/build.p6
Use <> in build.p6

Using <> (but *not* «») makes the code a little bit more readable.
21:50
cpan-raku New module released to CPAN! Sparrowdo::Cpanm::GitHub (0.0.4) by 03MELEZHIK 22:02
cpan-raku New module released to CPAN! Sparrowdo::RemoteFile (0.0.4) by 03MELEZHIK 22:18
melezhik vrurg: Test-Async, last version succeeds on RakuDist - repo.westus.cloudapp.azure.com/raku...945144.txt 23:59