🦋 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.
00:08 reportable6 left 00:25 frost joined 00:37 frost left 00:49 Kaiepi joined 00:50 frost joined 00:54 Kaiepi left 01:04 linkable6 left 01:08 reportable6 joined 01:18 frost left 01:42 euandreh left 02:04 frost joined 02:29 frost left 02:37 frost joined 02:50 frost left 02:54 frost joined 03:24 frost left 03:41 Kaiepi joined 04:29 shinto joined 04:40 razetime joined 05:06 linkable6 joined 05:26 shinto left 06:07 reportable6 left 06:09 reportable6 joined 06:40 tejr left, tejr joined 06:46 mexen joined 06:54 Flwyd left 07:14 razetime left 07:36 frost joined 07:37 seednode99 left 07:38 seednode99 joined 07:46 razetime joined 08:02 frost left
El_Che www.bleepingcomputer.com/news/secu...s-of-apps/ 08:02
raku does not have a culture of pinning versions nor it's something suggested by the docs. Maybe something to think about 08:03
08:09 Kaiepi left, [Coke] left, japhb left, sena_kun left, MasterDuke left, jmcgnh left 08:10 TempIRCLogger__ joined 08:11 RakuIRCLogger left, RakuIRCLogger joined 08:12 TempIRCLogger left 08:14 TempIRCLogger__ left 08:18 Manifest0 left 08:20 TempIRCLogger joined, Kaiepi joined, [Coke] joined, japhb joined, sena_kun joined, MasterDuke joined, destroycomputers joined, perlbot joined, simcop2387 joined, gordonfish joined, dg joined, jmcgnh joined, camelia joined, m_athias joined, nine joined, Geth joined, sftp joined, Oshawott joined, cono joined, sjn joined, jercos joined, bartolin joined, phogg joined, leedo joined, dustinm` joined, swaggboi joined, greyrat joined, Od1n joined, lucs joined, kawaii_ joined, tonyo joined, synthmeat joined, vodkra joined, ugexe joined, a3r0_ joined, moon-child joined, skaji joined, SmokeMachine joined, nebuchadnezzar joined, patterner_ joined, zostay joined, leont joined, PotatoGim joined, Ekho joined, KotH joined, rba joined, ecocode joined, Henry151 joined, spacekookie joined, esh joined, tinita joined, epony left 08:21 Manifest0 joined, jmcgnh left, epony joined 08:23 RakuIRCLogger left, RakuIRCLogger joined 08:25 Sgeo left 08:27 RakuIRCLogger left, RakuIRCLogger joined 08:29 jmcgnh joined 08:33 jjido joined 08:44 dakkar joined 08:45 abraxxa joined 08:47 abraxxa left 08:49 abraxxa joined
gfldex He published under MIT and complains that nobody is sharing back … 08:49
08:53 frost joined 08:55 abraxxa left 08:56 abraxxa joined 08:58 tejr left, tejr joined
Nemokosch xD 09:09
I mean, this tells a lot about the people as well 09:10
"I don't have to share back? Okay, then I won't."
gfldex Sharing back takes time. So one could argue it being a good thing, as it indicates open source is not used by slackers. :-> 09:11
lizmat El_Che: I try to give the good example: all of my modules are version pinned in their dependencies, as far as is possible 09:23
09:34 jjido left
El_Che lizmat: yes, yours. Someone new to raku, wont do that is it's not something that's explicitly encouraged 09:42
09:46 mexen left
lizmat true, but at the moment it's also a hassle, we need to make that easier 09:47
09:47 mexen joined
lizmat like, if in the META a dependency is declared on Foo:ver<42>:auth<zef:bar>, any statement "use Foo" of a module in that distribution should automatically use *that* version, and nothing else 09:48
currently you have to keep track, and I know from experience, that is tricky
same for scripts BTW
09:49 frost left
lizmat starts on a Weekly covering two weeks 09:51
.oO( what was I thinking skipping a week? )
09:56 abraxxa left 10:00 abraxxa joined 10:03 jjido joined 10:20 jjido left 10:40 jjido joined 10:48 holyghost joined 11:00 frost joined 11:12 jjido left 11:25 frost left
tbrowder hi, i am now motivated to version pin all my deps. and the incident referenced above seems like a good reason for the raku community to push module authors to the Zef repo 11:30
Skarsnik well, like CPAN/PAUSE x) 11:31
tbrowder ?
zef could be modified to report such 11:32
blin also?
Skarsnik I mean with the CPAN, you have to upload a version of your module to/on PAUSE, so there is not really unversionned stuff 11:33
tbrowder hm, i thought the pinning issue was also in the modules deps where the using author should specify the exact version to be used 11:36
Skarsnik Should be only in the Meta, kinda annoying to have to update your code just to update a deps 11:37
tbrowder yep, i agree, my dumb thought was do it in each using rakumod 11:39
11:41 Altai-man joined
tbrowder but i keep seeing some discussion here about is the Meta dep accepted as authoritative for zef--i'm probably confusing it with something else 11:41
11:43 Altai-man left
moon-child I should also hope that, culturally, the raku community is less prone to such stunts 11:47
js seems to get them about once or twice every year, which is really not that much. And they are huge 11:48
11:55 Altai-man joined 12:08 reportable6 left 12:09 reportable6 joined
El_Che having to declare versions in de .rakulib files and in META6.json is LTA 12:37
and error-prone
lizmat indeed... and I know from experience 12:39
12:55 jjido joined 12:59 Xliff left 13:01 euandreh joined 13:20 holyghost left, holyghost joined 13:38 monkey_ joined 13:39 monkey_ left
tbrowder that's where zef could help 13:44
and blin?
ref desired std file extensions, etc. 13:45
will the "t" directory in a module dir become "rakutest" 13:46
El_Che I don't know if zef should do it or put part in the functionality in code 13:56
e.g. what go does when they fixed they module workflow problem (which sucked before):
go mod tidy && go mod vendor
they just use the name in the code file, and the go mod tool writes a go.mod file with the versions 13:57
(granted raku's module plugging system is richer, but just to illustrate the principle) 13:58
(they fixed the different version of the same module dependency problem by seeing each import path as unique, eg "import github.com/nxadm/mylib and "import github.com/nxadm/mylib/v2", with v2 just being a directory 13:59
14:09 jjido left
tbrowder ok, i've been checking zef issues and i think i missed something recently: does test::META actually check for dependencies now? i stopped using it some time ago, but i'll check it now... 14:30
hm, i don't see that it does, so where should module version checks be made! 14:36
.*?
my use of App::Mi6 i think is what made me stop using Test::META since it checks for errors, too. 14:38
i think i understand ugexe's position bettter now. maybe i'm coming late to the dance, but the whole issue sounds like a problem solving one for rsc...i'll see what's there now... 14:42
arg! i see lots of issues, and one or more related to versioning. 14:46
El_Che tbrowder: that's what I mean with "in code": I meant "in core" typo 14:47
tbrowder got it. is there an active effort on that on a branch you know of? 14:49
El_Che I think the idea is rather new 14:50
"new"
14:54 Sgeo joined
tbrowder thnx. i find it difficult to zero in on actual discussion on doco of accepted problem solutions when i do visit raku/problem-solving--layout makes my head hurt...156 open issues doesn't help... 14:57
maybe issue creators should advertise more, ask for votes, maybe rsc should highlight some for active discusion on #raku or #raku-dev, or maybe i'm rip van winkle!! 15:00
El_Che not everyone is as passionate about the same issue (e.g. some people don't care about pinning) 15:02
and even less people can implement it
sjn Didn't we have some Perl 6 (as it was then) hack days some years ago? Maybe worth reviving those again. :-) 15:12
"Raku hacking weekend", via some video conferencing (Jitsi?) where one person starts out giving an example of how to solve a specific class of problems, then others can pick up similar issues and get a little support underways until they're confident... 15:13
sjn wouldn't mind participating in something like that (speaking with both my .pm and my local hackerspace hats on) 15:15
15:15 Altai-man left
guifa lizmat: so technically, today's issue is of "Raku Fortnightly (not Fornitely #`[getoffourlawn])" ? 15:23
15:24 silug joined 15:26 razetime left
El_Che reflects on how sjn is a born organizer :) 15:29
lizmat ideally, I would like to see in-person hackathons
but given the current situation, I guess an online hackathon would also be helpful
El_Che the bus factor becomes the covid factor 15:30
lizmat inverted, I'd hope? we want R to be as low as possible :-) 15:31
15:35 stevied joined
tbrowder any core hackers gonna be at houston in june? 15:51
sjn El_Che: I'm a born suggester of tasks for others. :-P 15:52
lizmat tbrowder: I will not
sjn Houston is far away :-|
(not that I'm a core hacker in any way :-D) 15:53
tbrowder yes, i know, sorry to miss seeing you again ☹️
El_Che sjn: you're the Raku-whisperer 15:55
15:58 eseyman left 16:26 lichtkind joined, jjido joined 16:33 Guest26 joined 16:34 eseyman joined 16:46 jjido left 17:36 dakkar left 17:39 holyghost left 17:43 abraxxa left
tonyo sjn: a lot of module/tooling advances came during PTS, i don't think any of us on that side of raku would complain about another hand in the pot 17:49
18:08 reportable6 left 18:09 reportable6 joined 18:10 jjido joined 18:12 jjido left
lizmat and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2022/01/10/2022-...-perching/ 18:46
19:12 linkable6 left, evalable6 left
Skarsnik There was the squashzton on WE for while 19:14
MasterDuke lizmat: i'd rather an in-pub hackathon, in-person i suspect it's too dark to read 19:31
lizmat++ for the weekly
lizmat could be in a pub. could be *nudge nudge* 19:32
Nemokosch what does "perching" mean? 19:38
MasterDuke in english? sort of like crouching/sitting/standing on top of something. birds perch on branches. a perch is a place/thing to do that on. so in this context it is a reference to the request for a "python perch", i.e., a place to put python-related raku blog posts 19:42
El_Che I wouldn't mind seeing old friends again 19:47
most ofyou I saw at the yapce in... amsterdam
19:53 dextercd joined
lizmat yeah :-( too long ago 20:03
El_Che yeah, the time we saw each other at flanders pm were also nice 20:08
we need to make a mental note for after covid
20:13 linkable6 joined, evalable6 joined 20:42 Guest26 left
Skarsnik hm, how could I express Raku identifier token (look super complex in STD), I mean accepting Foo-Bar? 20:58
m: grammar Foo {token TOP {<more-ident>+<ident>*}; token more-ident {<ident>+"-"?}}; say Foo.parse("foo-bar"); say Foo.parse("foo-"); 21:05
camelia 「foo-bar」
more-ident => 「foo-」
ident => 「foo」
more-ident => 「bar」
ident => 「bar」
「foo-」
more-ident => 「foo-」
ident => 「foo」
Skarsnik sadly this match foo- x) 21:06
21:12 seednode99 left 21:13 seednode99 joined 21:16 Guest1244 joined
tonyo What're you trying to accomplish skarsnik? 21:19
Skarsnik I am doing a weird slang and I want to accept foo-bar as symbols name for sub 21:21
ugexe <more-ident> matches 'foo-', and <ident>* matches something 0 or more times, so yeah
tonyo Why not just ident ** 1 % '-' 21:22
And be more explicit than ident as ugexe points out
21:26 seednode99 left 21:27 seednode99 joined
ugexe i would probably just hard code sensible values 21:29
x-1 isnt a value ident afterall
valid^ 21:30
tonyo grammar Foo { token TOP { ^ <id> $ }; token id { (<[a..z0..9]>+) ** 1..2 % "-" }; }; say Foo.parse("id")??"yes"!!"no"; say Foo.parse("id1-id2")??"yes"!!"no"; say Foo.parse("id1-")??"yes"!!"no";
evalable6 yes
yes
no
Skarsnik 1 does not match ident thou
tonyo no but "hello-world" is a valid ident
ugexe ah it doesn't, i thought it would 21:31
Skarsnik ident is alpha + _ I think?
wait, maybe digit are also included 21:32
21:32 qorg11 left
tonyo oh, then: 21:32
m: grammar Foo { token TOP { ^ <id> $ }; token id { <ident> ** 1..2 % "-" }; }; say Foo.parse("id")??"yes"!!"no"; say Foo.parse("id1-id2")??"yes"!!"no"; say Foo.parse("id1-")??"yes"!!"no";
camelia yes
yes
no
tonyo that will work then ^
21:33 seednode99 left
Skarsnik <ident>Basic identifier (no support for C<'> or C<->). Same as C« <.alpha> \w* » 21:33
21:33 qorg11 joined 21:34 seednode99 joined, seednode99 left
Skarsnik ** Range % is neat ^^ 21:34
Thanks anyways ^^ 21:35
21:35 seednode99 joined
Skarsnik Could be nice if we could tell comma "This class is an action for this grammar, plz complete me method name" x) 21:39
21:58 Guest1244 left
Skarsnik debugging grammar is really not fun :( 22:09
22:16 lichtkind left, lichtkind joined
Skarsnik I think I am in grey teritory, chain grammar by inheriting them xD 22:29
22:33 jjido joined
Skarsnik Ok, having <ws> mean 2 things in the 2 grammars is not great xD 22:47
22:56 jjido left
tonyo Skarsnik: with grammars it's really hard to depend on something further up 23:00
if you're writing a slang it's better to be explicit
ugexe github.com/ugexe/Perl6-Grammar--HT...m6#L14-L36 23:02
Skarsnik I have a grammar that parse snes asm instruction (and a class that 'assemble' them), Now I am doing a slang to generate Raku subs that returns me bytecode. So I reuse the Asm grammar in the slang. But I defined ws as \h* in the ASM grammar (more easier to work by explicit line) 23:05
23:18 tbrowder_ joined
guifa Actually, doing roles for adding tokens is pretty standard practice AFAIK 23:24
23:27 stevied left
Skarsnik I think what is mainly missing in Grammar is a good way to express error. Not sure what could be done, maybe having access to more context? like I am an identifier token and it fails to parse for a certain parent I could error? or even knowing what fail in your token could help x) 23:35
23:35 lichtkind left
Skarsnik like token affection { <identifier> '=' <value> ERROR<!value> { die "Missing value for affection" }} (well you could add it in the action class I guess for this) 23:38