🦋 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. |
|||
00:03
DarthGandalf joined
00:11
molaf joined
00:14
sena_kun joined
|
|||
[Coke] | (TPF Grant requests) once the current period of submissions finishes (not sure it's been announced yet), they'll get posted on news.perlfoundation.org and you can comment and review during the comment period. | 00:16 | |
00:16
Altai-man_ left
|
|||
[Coke] | ... unless this is a special request trying to setup a fund? | 00:16 | |
ah, nope, regular submission. :) | 00:17 | ||
00:18
Petr37_ joined
00:27
molaf left
00:44
Petr37_ left
00:55
wklew left
01:03
marcusr left
01:04
marcusr joined
01:12
Xliff left
01:16
CIAvash left,
matiaslina left,
Nasrudin left,
a3f left
01:17
CIAvash joined,
a3f joined
01:20
Nasrudin joined
01:21
matiaslina joined
01:31
oddp left,
CIAvash left
01:32
CIAvash joined,
a3f left,
dataange` joined,
dataangel left
01:41
a3f joined
01:46
dataange` left,
zacts joined,
dataangel joined
01:48
zacts left
01:50
cpan-raku left,
cpan-raku joined,
cpan-raku left,
cpan-raku joined
01:51
zacts joined
02:06
Manifest0 left,
Manifest0 joined
02:07
marcusr left
02:08
marcusr joined
02:12
zacts left
02:13
Altai-man_ joined
02:16
sena_kun left
02:20
marcusr left
02:22
marcusr joined
02:53
ensamvarg3 joined
03:31
NewGreyhawke joined
03:59
zacts joined
04:14
sena_kun joined
04:16
Altai-man_ left
04:22
gnufr33dom joined
04:26
xinming left
04:27
xinming joined
04:28
OpenZen left
04:58
andrzejku joined
05:11
silug7 joined
05:12
silug left,
silug7 is now known as silug
05:13
zacts left
05:22
rindolf joined
05:29
andrzejku left
05:30
bocaneri joined
05:42
kensanata joined
05:51
aluaces joined
05:57
__jrjsmrtn__ joined
05:59
_jrjsmrtn left
06:03
NewGreyhawke left
06:13
Altai-man_ joined
06:16
sena_kun left
06:21
andrzejku joined
06:35
veesh_ joined
|
|||
holyghost | IF I find the time, I might do some guile bindings for raku | 06:35 | |
I've put it in my TODO.txt file | 06:36 | ||
problem is, I don't know where to start | |||
06:36
veesh left
|
|||
holyghost | binding the raku system has an enormous time load | 06:37 | |
06:37
veesh_ is now known as veesh,
wamba joined
|
|||
holyghost | What I want to do is have some packages extended. So program scheme (in guile) for features | 06:38 | |
I still have to think twice about that | |||
guile was made by GNU and rms to extend programs | 06:39 | ||
I probably don't need nqp extensions, now that I think of it, but perl6 can be extended this way by guile, so you can write extra scheme code for your program | 06:40 | ||
inlining does not make sense BTW | |||
it probably be better coded in nqp and C, raku's implementation languages | |||
I still have to figure that out, I've never written anything in nqp but as it's perl, I'll manage | 06:41 | ||
Anyway, I have to have some kind of weekend, so, I'm off | 06:42 | ||
06:42
holyghost left
07:02
leont joined
07:11
nicholatian joined
07:20
marcusr left
07:22
marcusr joined
07:36
ufobat joined
|
|||
gfldex | lolibloggedalittle: gfldex.wordpress.com/2020/07/24/aw...-a-bugfix/ | 07:37 | |
07:38
cpage_ joined
07:39
pecastro joined
07:40
cpage left,
cpage_ is now known as cpage,
_jrjsmrtn joined
07:42
__jrjsmrtn__ left
08:14
sena_kun joined
08:16
Altai-man_ left
08:25
ensamvarg3 left
08:28
MasterDuke joined
08:34
Sgeo left
|
|||
kawaii | Good morning I/ | 08:35 | |
moritz | \o kawaii | 08:37 | |
09:02
oddp joined
09:07
marcusr left
09:09
marcusr joined,
JJMerelo joined
|
|||
Geth | advent: 67ef2c7c8e | (JJ Merelo)++ | 20th/README.md Add some clarification, refs #48 |
09:19 | |
09:23
Black_Ribbon left
09:31
pat_js joined
09:35
JJMerelo left
09:50
markoong joined
09:53
JJMerelo joined
09:55
abraxxa left
09:58
abraxxa joined
10:03
JJMerelo left
10:04
|oLa| joined
10:08
markong joined
10:09
markoong left,
|oLa| left
10:13
Altai-man_ joined
10:16
sena_kun left
10:40
xinming left
10:41
xinming joined
10:47
wamba left
10:53
antoniogamiz joined
|
|||
antoniogamiz | o/ | 10:53 | |
is there a way to eliminate the call stack when an exception is thrown? | |||
tadzik | probably, but I feel like there might be a better solution to what you're trying to do :) | 10:57 | |
what's your goal? | |||
antoniogamiz | My goal is to throw an exception when a user has specified a non-existent directory | ||
I want to show a helpful message instead of the message + the backtrace | 10:58 | ||
tadzik | then you're probably better off catching the exception in the UI code and printing something more helpful than the entire stack | 10:59 | |
antoniogamiz | hum, that makes sense, thanks :) | 11:00 | |
tadzik | full exceptions are worth keeping for future debugging, even though they don't make the best UI :) It's worth to do some extra legwork in the UI so that you don't take the tools away from your future self ;) | ||
11:01
wamba joined
|
|||
tadzik | this also allows you to give the message more context and customize it to your domain | 11:01 | |
11:05
MetroMSI left
11:16
MasterDuke left
11:25
JJMerelo joined
11:27
zacts joined
11:38
abraxxa left
11:45
antoniogamiz left
12:01
rindolf left
12:14
sena_kun joined
12:16
Altai-man_ left
12:39
Petr37 joined
|
|||
Petr37 | can i create uwp apps in Raku? | 12:39 | |
12:43
pat_js left
|
|||
sena_kun | Petr37, the en.wikipedia.org/wiki/Universal_Wi...s_Platform one? Unrealistic for now, unless you can handle implementing of their API, I think, or can come up with some hacks. | 12:43 | |
Petr37 | thanks | 12:45 | |
12:47
JJMerelo left,
El_Che left
12:52
__jrjsmrtn__ joined
12:53
_jrjsmrtn left
13:00
El_Che joined
13:06
pi4 left
13:20
a3r0 left
|
|||
Petr37 | have Raku wxvidgets binding? | 13:21 | |
w | |||
13:33
a3r0 joined
13:37
molaf joined
13:47
tejr left
13:51
dolmen joined
13:54
tejr joined
13:57
antoniogamiz joined
|
|||
Petr37 | may be gui libri available? | 13:58 | |
library | 13:59 | ||
sena_kun | Petr37, there are gtk bindings available, also github.com/hankache/perl6-IUP | 14:00 | |
Petr37 | i need webview component,but i can't find it in iup | 14:01 | |
14:04
OpenZen joined
|
|||
Petr37 | what about gtk? can o find webview there? | 14:04 | |
sena_kun | I saw demo of webkit IIRC. | 14:06 | |
Petr37, github.com/Xliff/p6-WebkitGTK <- maybe this can be relevant? | |||
gist.github.com/Xliff/afed9c58e738...6645520c8f <- also this. | 14:07 | ||
14:08
rindolf joined
|
|||
Petr37 | sena_kun, thank you very much!! ))) | 14:10 | |
sena_kun | You can ping Xliff here or create a ticket if there is something unclear. | 14:11 | |
Petr37 | understood 👍 | ||
14:13
Altai-man_ joined
|
|||
cpan-raku | New module released to CPAN! Hash2Class (0.0.9) by 03ELIZABETH | 14:15 | |
14:15
sena_kun left
14:19
wamba left
14:23
Petr37 left
14:31
dolmen left
14:32
dolmen joined
14:34
Petr37 joined
14:43
xinming left
14:46
xinming joined
14:51
gnufr33dom left
15:03
NewGreyhawke joined
15:04
dolmen left
15:07
wklew joined
15:13
Petr37 left
15:17
skids joined
|
|||
codesections | Looking at the logs from the past couple of hours, I'm really struck by how nice/helpful everyone here is :) tadzik: I think your answer about exceptions was one of the most polite/tactful ways of addressing a potential XY problem I've seen | 15:21 | |
tadzik | aw thanks :) | 15:26 | |
I learned from the best, this channel (and #perl6 before it) is how I learned a lot about being kind on the internet | |||
codesections | :) | 15:31 | |
kawaii | I think in general the Raku community is probably the kindest and most inclusive I've been a part of | 15:33 | |
programming communities in general (looking at you, Rust) are well known for elitism and toxicity - none of that here :) | 15:34 | ||
15:34
ufobat left
15:35
tejr left
|
|||
kawaii | and then there's this absolute gem from Perl monks usercontent.irccloud-cdn.com/file/...AIhmlM.png | 15:35 | |
tadzik | huh, I haven't noticed that from the Rust community | ||
codesections | Haha, that's funny – I was just about to say "I'm coming from Rust, which is *also* known as a kind & inclusive place, but Raku seems even better" | ||
tadzik | I guess I was lucky :) | ||
kawaii | codesections, tadzik: see; www.reddit.com/r/rust/comments/63a..._the_rust/ | 15:36 | |
codesections | so I'm surprised (/a bit sad) that you got that impression of Rustacians | ||
kawaii | codesections: I originally tried learning Rust a couple of years back, and was met by "ah well if you're asking basic questions like this you'll never be a Rust programmer _like me_" | 15:37 | |
codesections | I'm really sorry to hear that. That sucks :( | 15:38 | |
guifa | codesections: that’s one of the things I love about Raku too. I think part of it is the TIMTOWTDI mindset of raku invites more people and, from the very get-go, recognizes a diversity of solutions | ||
So no one can just jump in and categorically say “this is the only solution why couldn’t you think of it?" | 15:39 | ||
kawaii | codesections: I moved on to Raku, didn't look back, and much happier I did on retrospect :) | ||
guifa | Instead, it’s more like, “Well, here’s one way you can do it, with X, Y, Z advantages/disadvantages, and here’s another one with A, B, and C, based on your situation, think aboutit and figure out what works best” | 15:40 | |
codesections | I guess I also got lucky. When I got into Rust, the only language I knew was JavaScript (and I wasn't so great at that!). I asked a *lot* of dumb questions and always got helpful replies. Really sucks that you had the opposite experience | ||
tadzik | kawaii: I feel like the "circlejerking" there is perhaps the biggest takeaway, but I don't feel like that's unique to Rust – I see that in every echochamber, and I've seen it on this channel too, multiple times :) People struggle to be objective about topics they're deeply invested in | 15:41 | |
15:41
tejr joined
|
|||
tadzik | then again, perhaps I lack your perspective. I've had nothing but positive experiences with Rust community, they were limited to #rust:matrix.org and the Warsaw irl user group | 15:42 | |
kawaii | tadzik: my mistake might have been asking on StackOverflow :) | 15:43 | |
tadzik | the zealotry and idolizing own tech I find more amusing than annoying :) | ||
kawaii: possibly :) | |||
not sure how the community is over there | |||
codesections | oh, interesting – I also didn't use SO much. I mostly asked my dumb questions on r/rust | 15:44 | |
maybe there is something about the SO rust culture. I have to say, I've never really gotten a good vibe from SO in general; folks seem oddly interested in earning Internet Points :) | 15:45 | ||
(but maybe I just never got into it in the right way/early enough – I've heard it used to be better) | 15:46 | ||
to be clear I *read* plenty of SO answers, I just don't ask many questions | |||
kawaii | ^ the best way of using SO, read, don't write. | 15:47 | |
I know that people in this IRC are keen on people asking more Raku questions on SO though, and you're likely to just get answers from people here anyway. | 15:50 | ||
[Coke] | .seen jjmerelo | 15:58 | |
tellable6 | [Coke], I saw jjmerelo 2020-07-22T11:38:09Z in #raku-dev: <JJMerelo> Please propose yourself with a PR or directly if you've got the privs. | ||
[Coke] | .ask jjmerelo stackoverflow.com/questions/519478...pl-plugins - can you accept ugexe's answer there? | 15:59 | |
tellable6 | [Coke], I'll pass your message to JJMerelo | ||
Geth | doc: coke self-assigned docs.raku.org/type/Str faq reference github.com/Raku/doc/issues/3530 42b7ac7c14 | Coke++ | doc/Type/Str.pod6 closes #3530 |
16:07 | |
16:08
wklew left
|
|||
linkable6 | Link: docs.raku.org/type/Str | ||
DOC#3530 [closed]: github.com/Raku/doc/issues/3530 [RFE][docs] docs.raku.org/type/Str faq reference | |||
Geth | doc: coke assigned to codesections Issue Improvements to util/list-missing-methods.p6 [tracking issue] github.com/Raku/doc/issues/3529 coke self-assigned use v.6 github.com/Raku/doc/issues/3514 reduce emphasis of old 'use v6' usage closes #3514 |
16:10 | |
16:13
cpan-raku left,
cpan-raku joined,
cpan-raku left,
cpan-raku joined
16:14
sena_kun joined
|
|||
16:16
Altai-man_ left
|
|||
linkable6 | Link: docs.raku.org/language/pragmas | ||
DOC#3514 [closed]: github.com/Raku/doc/issues/3514 [docs] use v.6 | |||
Geth | doc: 8d2fbaf37b | Coke++ | doc/Language/testing.pod6 Remove reference to v6.c Closes #3512 |
16:21 | |
linkable6 | Link: docs.raku.org/language/testing | ||
DOC#3512 [closed]: github.com/Raku/doc/issues/3512 [RFE][docs] use v6.c mentioned not shown | |||
guifa | kawaii codesections exactly true. The most common people to answer on SO are me, raiph, lizmat, jnthn, bgills2, jjmerelo, etc. Probably the biggest decider on who answers (unless it’s a really deep question), is time of day ;-) | 16:28 | |
But the reason for SO is that here we canhelp you with the question — but for SO, we get you and others (I’ve also occasionally posted questions people have asked here and given a self-answer for that reason) | 16:29 | ||
gfldex | lolibloggedalittle: gfldex.wordpress.com/2020/07/24/mi...ng-quotes/ | ||
guifa | gfldex: interesting, never thought about using the <> calling construct to mimic quoting (at least where white space is insignificant) | 16:33 | |
[Coke] | where is the new rakudoc repo? | 16:34 | |
16:34
finsternis left
16:37
antoniogamiz left
|
|||
codesections | this? github.com/Raku/rakudoc | 16:37 | |
[Coke] | thanks! | 16:42 | |
16:53
zacts left
17:06
tejr left
17:11
tejr joined
17:17
Kaiepi left
17:24
Kaiepi joined
17:30
NewGreyhawke left
|
|||
Geth | doc: d0d8fbcb50 | Coke++ | 4 files Remove bin/p6doc, xt/ test. Closes #3483 |
17:35 | |
doc: 9d2c27d808 | Coke++ | doc/Type/independent-routines.pod6 Fix typo |
|||
linkable6 | DOC#3483 [closed]: github.com/Raku/doc/issues/3483 [docs][xt] xt/p6doc-blackbox.t failures | ||
Geth | doc: ba9f2f7f4d | Coke++ | 3 files learn words/avoid neologism. |
||
linkable6 | Link: docs.raku.org/type/independent-routines | ||
doc: b1c6df8540 | Coke++ | 3 files Remove refs/reqs to unused modules Move one to build-only dep Most of #3480 |
17:48 | ||
linkable6 | DOC#3480 [open]: github.com/Raku/doc/issues/3480 [docs][meta] Re-check dependencies for META6.json and reevaluate its role | ||
Geth | doc: 653149a184 | Coke++ | 2 files remove Pod::To::SectionFilter closes #3531 |
17:50 | |
linkable6 | DOC#3531 [closed]: github.com/Raku/doc/issues/3531 remove Pod::To::SectionFilter | ||
17:53
aluaces left
|
|||
Geth | doc: c65147ea03 | Coke++ | Makefile Make 'help' the default make action Hides some of the issues mentioned in #3035 |
17:54 | |
linkable6 | DOC#3035 [open]: github.com/Raku/doc/issues/3035 [build][site] Some targets in the Makefile do not work any more | ||
Geth | doc: coke self-assigned many failures in xt/examples-compilation.t github.com/Raku/doc/issues/3532 d562572ded | Coke++ | doc/Language/glossary.pod6 ... it's not used anywhere in the repo anymore and is obsolete. closes #3287 |
17:55 | |
Voldenet | gfldex: I'm not sure if that's still relevant, but having custom operators used to massively slow down parsing | 17:56 | |
m: my $s = BEGIN now; sub x { $^a }; x 4; say now - $s | |||
camelia | 0.02101044 | ||
Voldenet | m: my $s = BEGIN now; sub prefix:<x> { $^a }; x 4; say now - $s | ||
camelia | 0.3397623 | ||
Voldenet | yep, still the case | ||
timotimo | it's true | ||
Voldenet | it's a nice feature for long-running code, but I don't use it for scripting | 17:57 | |
timotimo | i would assume it's still among a few other things optimizing the NFA again for the whole operator category | 17:58 | |
when you have the operator in a module, you get it loaded super fast | |||
after precompilation is done, of course | |||
Voldenet | oh | ||
gfldex | There was no work done on making that area of Rakudo fast. So I have hopes the problem will be solved by somebody who is not me. | ||
linkable6 | Link: docs.raku.org/language/glossary | ||
DOC#3287 [closed]: github.com/Raku/doc/issues/3287 [docs][meta] p6y to rakuy | |||
timotimo | you're refering to custom operators, right? | 18:01 | |
gfldex | aye | ||
timotimo | ah, i misread, you said "no work done" | ||
yeah that's accurate | |||
18:02
andrzejku left
|
|||
gfldex | time raku -Ilib example/basic.raku | 18:04 | |
user 0m0.784s | |||
thatäs with spawning 2 processes and a 2 worker threads for processing | |||
Voldenet | actually, after precompilation is done, the base cost is still around 300ms, however it doesn't increase with every operator added | 18:05 | |
timotimo | ah, dang | ||
perhaps in that case it can properly mix in all of the operators at once | |||
instead of recomputing and re-optimizing the nfas after each one in turn | |||
gfldex | I'm quite happy to trade that overhead for good error handling and much easier debugging over any bash script. | 18:06 | |
timotimo | mhm | 18:07 | |
Voldenet | I'm not sure if it's valid to even mix all operators at once | 18:11 | |
m: sub a { "sub $^a" }; sub prefix:<x> { ":x $^a" }; sub prefix:<a> { ":a $^a" }; say x 4 | 18:13 | ||
camelia | :x 4 | ||
Voldenet | m: sub a { "sub $^a" }; sub prefix:<x> { ":x " ~ a $^a }; sub prefix:<a> { ":a $^a" }; say x 4 | ||
camelia | :x sub 4 | ||
18:13
Altai-man_ joined
|
|||
Voldenet | this works, but if a in prefix:x was interpreted as prefix:a it wouldn't ;P | 18:13 | |
not that I'd expect anyone using this for anything | 18:14 | ||
gfldex | well … | ||
18:16
sena_kun left
18:17
zacts joined
|
|||
timotimo | prefix operators don't allow space | 18:18 | |
18:21
xinming_ joined
18:23
bocaneri left,
xinming left
|
|||
Voldenet | m: sub prefix:<a> { ":a $^a" }; say a4 | 18:24 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: a4 used at line 1 |
||
Voldenet | m: sub prefix:<a> { ":a $^a" }; say a 4 | ||
camelia | :a 4 | ||
Voldenet | m: sub prefix:<!> { ":a $^a" }; say !4 | ||
camelia | :a 4 | ||
Voldenet | most puzzling | 18:25 | |
18:26
aluaces joined,
aluaces is now known as alberto,
alberto is now known as Guest91264
|
|||
codesections | `a4` is a valid identifier, but `!4` isn't | 18:27 | |
18:29
sena_kun joined
18:30
Altai-man_ left
|
|||
Voldenet | so prefix operators actually require space on usage if they'd be interpreted as identifier with its arguments… | 18:32 | |
18:37
tejr left
|
|||
oddp | And the fancy 3d8 infix op isn't possible either. :( | 18:38 | |
18:44
tejr joined
|
|||
guifa | timotimo: the lack of spaces is my biggest issue with making a custom prefix :-( | 18:45 | |
timotimo | you can only unspace | 18:46 | |
sub names aren't broad enough for your needs? | 18:47 | ||
guifa was just about to say that doing a sub would probably be a decent alternative | |||
lol | |||
It’s just noas clean looking to name a sub after a non-idenifier | 18:48 | ||
codesections | My biggest issue with custom operators right now is that they basically don't work in the REPL (but I'm sure that'll be fixed at some point) | 18:49 | |
Unrelatedly, I just realized/learned that Raku allows you to recurse in an anonymous block with &?BLOCK. That's really nice! | 18:51 | ||
guifa | and, fwiw, you can do the same with regexen, by using <~~> | ||
(although &?BLOCK is compile time, not sure if <~~> is) | 18:52 | ||
codesections | (APL has anon recursion with ∇ and it's amazing. I kind of want to make that a Raku operator now …) | ||
"&?BLOCK is compile time" what do you mean by that? I know it's a compile-time variable, but I thought it was just giving the runtime a "name" for the unnamed block it's in? | 18:53 | ||
so you could still do anything runtime-related you want to, right? Or am I confused? | 18:54 | ||
(also, I didn't know about <~~> – thanks for the tip!) | |||
guifa | codesections: it means it can be linked through at compile time (e.g. not having to look it up, like if you used ::BLOCK or something) | 18:59 | |
codesections | Oh, you mean "no runtime perf penalty", basically? | 19:00 | |
guifa | And possibly better optimization | ||
codesections | Also, I can't find any docs on `<~~>`. Do you know where it it/should be? | ||
(If it's not documented, I can open an issue) | |||
guifa | Compare with using, say, ::OUTER::OUTER (which I actually do), the scopes have to get looked up | 19:01 | |
<~~> is not documented for some very strange reason | |||
codesections | right, I'm with you now. I thought you were saying it was less powerful by virtue of being a compile time construct (because it couldn't access run time info) and I couldn't figure that out. But being lower cost/free makes sense | 19:02 | |
guifa | If you need match on it, you need to save it to a named capture, btw. E.g. / pre $<inner>=<~~> post / | ||
but take all perfomance questions from me with a grain of salt, that’s not my area of expertise at all | 19:03 | ||
guifa motions at <local-alpha> token’s current glacial performance | |||
codesections | Thanks. Can you show an example of `<~~>` in use? I'm having trouble figuring out the syntax in my REPL | 19:04 | |
timotimo | m: say "(((()))(()))" ~~ / ['(' $<inner>=<~~>? ')']+ / | 19:05 | |
camelia | 「(((()))(()))」 inner => 「((()))(())」 inner => 「(())」 inner => 「()」 inner => 「()」 |
||
guifa | m: say “[[[][]][]]” ~~ / ‘[‘ ~ ‘]’ <~~> / | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in curly single quotes; couldn't find final "’" (corresponding starter was at line 1) at <tmp>:1 ------> 3say “[[[][]][]]” ~~ / ‘[‘ ~ ‘]’ <~~> /7⏏5<E… |
||
guifa | ugh timotimo’s computer didn’t do stupid smart quotes like mine did | ||
but… jinx ;-) | |||
codesections | Thanks to you both :) | 19:06 | |
guifa . O O ( also mine needed a * modifier) | |||
oh! timotimo just thought of how subs aren’t a great substitute for prefixes | 19:07 | ||
subs have a fixed precedence | |||
19:08
Sgeo joined
|
|||
timotimo | indeed they do | 19:08 | |
list prefix | |||
they gobble up basically everything to the end of command | |||
guifa | so if I say my @a = pfx-as-sub 5, 6, 7; it will always eat up the 6 and 7, whereas with prefixes, I could give it a tighter precedence than the comma operator to only work on 5 | ||
timotimo | true | 19:09 | |
you could 5.&pfx-as-sub | |||
but then it'll be a suffix :D | |||
guifa | I feel like .&foo and method $invocant: $arg are the two most underused features | 19:10 | |
Comma still doesn’t support code highlighting for the latter *coughcoughjnthnsenakuncoughcough* | |||
timotimo | .&bleh is a way to do a sub call that gets curried for WhateverCode | 19:11 | |
which is perhaps where i use it most often? | |||
guifa | I’ve used it for some custom coercesions | ||
just to align better with code that has .Str or .Num etc | 19:12 | ||
coercions* | |||
codesections | guifa: really? I'm surprised to hear that – I use .&foo *all* the time | ||
I'm sure you're right – I haven't looked at enough other people's code to know. But I'm surprised | |||
guifa | codesections: it probably depends on the type of code you’re writing. I’m working almost always in my modules’ spaces, so if I need a method, I can just write it :-) | 19:13 | |
Although I’m abotu to do very bad naughty things to DateTime | |||
guifa grins evily | |||
codesections | "If I need a method, I can just write it" Fair enough. One place I use it *all* the time, though, is in tests: `my-fn('input').&is(42)` just reads so much better to me | 19:16 | |
19:16
thundergnat joined
|
|||
guifa | hmm; I never thought about using it like that in tests | 19:16 | |
I kind of like it, tbh | |||
thundergnat | m: sub infix:<d> ($a, $b) { (1..$b).roll($a) }; say 4 d 6; sub term:<3d8> { 3 d 8 }; say 3d8; # Roll the dice! | 19:17 | |
camelia | (5 3 4 6) (2 1 7) |
||
guifa | someone’s about to start DnDing | ||
thundergnat | in response to oddp abut 45 minutes ago... | 19:18 | |
guifa | aah | ||
oddp | Yeah, but I was refering to the obligatory whitespace that you had to use. | 19:19 | |
19:19
zacts left
|
|||
oddp | Oh wait. Damn. | 19:19 | |
timotimo | m: sub postcircumfix:<.should-be( )>($a, $b) { if $a !== $b { say "oh no" }; $a }; 99.should-be(5).say | ||
camelia | oh no 99 |
||
thundergnat | obligatory whitespace? in the last command? | 19:20 | |
timotimo | screw the rules | ||
oddp | Sweet, good to know, thanks, thundergnat! | ||
codesections | hmm, I'm still confused by <~~> | 19:21 | |
m: say "The quick brown fox jumps over the lazy dog" ~~ /\w+ $<inner>=<~~> \w+/ | |||
camelia | Nil | ||
codesections | why is that Nil? | ||
oddp | Now I just need to sprinkle some metaprogramming on top of that to generate all possbile combinations. ;) | ||
thundergnat | theres (almost always) some way to break the rules | ||
timotimo | no whitespace allowed | ||
oh | 19:22 | ||
there is no termination condition | |||
only infinitely long texts have any hope of matching | |||
19:23
wamba joined
|
|||
codesections | m: say "The quick brown fox jumps over the lazy dog" ~~ /\w+ <ws> $<inner>=<~~>? <ws> \w+/ | 19:25 | |
camelia | 「The quick brown fox jumps over the lazy」 ws => 「 」 inner => 「quick brown fox jumps over the」 ws => 「 」 inner => 「brown fox jumps over」 ws => 「 」 inner => 「fox jumps」 ws => 「 」 ws => … |
||
timotimo | i recommend using <.ws> so it doesn't show up in the result | 19:27 | |
19:28
wamba left
|
|||
codesections | thanks, I'd forgotten about that. That does clean it up quite a bit :) | 19:30 | |
19:31
patrickb joined,
Ven`` joined
19:38
molaf left
19:53
NewGreyhawke joined,
NewGreyhawke left
19:58
rypervenche left
19:59
dolmen joined
20:02
rypervenche joined,
NewGreyhawke joined
20:12
reach_satori left,
reach_satori joined
20:13
Altai-man_ joined
20:16
sena_kun left
20:26
Petr37 joined
|
|||
Petr37 | rakudo.js is still development? | 20:26 | |
20:26
Altai-man_ left
|
|||
Petr37 | if yes,ehere i can find documentation? | 20:27 | |
20:32
sena_kun joined
20:48
markong left,
markoong joined
20:51
molaf joined
20:56
kensanata left
20:59
dataangel left
21:00
pmurias joined
|
|||
pmurias | Petr37: it's not really developed at this moment | 21:01 | |
tellable6 | 2020-07-20T17:42:09Z #raku <[Coke]> pmurias do you have directions on how to generate an updated npm module? Want to make sure we keep up to date on the rakudo.js versions if possible. | ||
Petr37 | pmurias, ok, understood | 21:02 | |
pmurias | Petr37: got a new job at Google so kind of focused on that, before was affected by all the social distancing bullshit pretty bad (and a bit hearbroken) so couldn't get myself to work on it much | 21:04 | |
21:05
APic left
|
|||
moritz | pmurias: congrats on the new job! | 21:05 | |
21:06
wamba joined,
APic joined
|
|||
pmurias | moritz: thank you | 21:06 | |
21:11
wamba left,
pmurias left
21:12
rindolf left,
wamba joined
21:26
leont left
21:27
zacts joined
|
|||
cpan-raku | New module released to CPAN! Hash2Class (0.1.0) by 03ELIZABETH | 21:29 | |
21:35
markoong left
21:42
wamba left
|
|||
zacts | hello | 21:43 | |
is the raku language and syntax implemented in raku on-top of MoarVM or is a bunch of it implemented in C? | 21:44 | ||
like if I wanted to add a new operator to the language would I just need to know raku, or would I also need to know C? | |||
El_Che | raku should be enough | 21:46 | |
zacts | cool, thanks | ||
El_Che | there is moarvm, nqp (subset of raku closer to the metal) and raku | ||
zacts | ok | 21:47 | |
21:47
NewGreyhawke left
|
|||
rypervenche | zacts: Creating a new operator is very easy to do. andrewshitov.com/2018/10/31/assign...in-perl-6/ | 21:56 | |
Hmm, I feel like docs.raku.org/language/optut is rather cluttered. | 21:57 | ||
zacts | oh awesome thanks :-) | 21:59 | |
timotimo | pretty much all classes, subs, operators are implemented in raku | 22:01 | |
the grammar that is used to parse raku code in rakudo is also implemented in nqp | 22:02 | ||
soon, thanks to the rakuast project, it'll be much more accessible from raku code without having to deal with the idiosyncracies of nqp | |||
22:10
dataangel joined
|
|||
oddp | Might just be due to my inexperience with it and the way nqp usually is formatted, but some of it really reads like the most horrible c++ template metaprogramming code. :( | 22:11 | |
22:11
NewGreyhawke joined
|
|||
timotimo | some places have been put through a little optimization process | 22:12 | |
22:14
Altai-man_ joined
22:16
sena_kun left
22:17
OpenZen left,
OpenZen joined
22:20
markoong joined,
OpenZen left,
OpenZen joined
22:32
dolmen left
|
|||
Geth | doc: 372f5467cb | (V. N)++ (committed using GitHub Web editor) | doc/Type/Proc/Async.pod6 update method start for Proc::Async github.com/rakudo/rakudo/blob/mast...c.pm6#L307 |
22:58 | |
doc: e9b7ac4221 | (Will Coleda)++ (committed using GitHub Web editor) | doc/Type/Proc/Async.pod6 Merge pull request #3508 from interlab/patch-3 update method start for Proc::Async |
|||
linkable6 | Link: docs.raku.org/type/Proc::Async | ||
23:01
adu joined
|
|||
adu | is there a grammar channel? | 23:01 | |
timotimo | if you mean on IRC, then i'm not aware of one | 23:02 | |
23:05
patrickb left
|
|||
rypervenche | adu: Do you have a question about grammars? | 23:08 | |
adu | not really | 23:09 | |
Geth | ¦ doc: coke assigned to JJ Issue Change from p6doc to rakudoc github.com/Raku/doc/issues/3203 | 23:10 | |
adu | I haven't used raku since it was called perl6, is there a new file extension? | 23:11 | |
timotimo | the old ones keep working for quite a while | ||
but we do have rakumod, and rakudoc as well as .raku | |||
adu | should new code use .raku? | 23:12 | |
timotimo | i think i need a bit of confirmation on that | ||
oh, you mean the method? | |||
adu | file extension | 23:13 | |
timotimo | ok | ||
rypervenche | Yep, .raku should be used for Raku files. .rakumod for modules. | 23:14 | |
Assuming you're on any recent version of Rakudo. | |||
adu | looks like Feb | 23:17 | |
rakudo-0.2020.02-1.fc32.x86_64 | 23:18 | ||
timotimo | modules already put the full filenames in their provides sections, so i can imagine .rakumod will also work properly in older versions | ||
probably not with -Ilib and friends | |||
kawaii | Trying to make a method, using the name `user.id { }` and getting an error about a missing block? | 23:19 | |
github.com/shuppet/p6-api-discord/...b55ddf9fc1 | |||
not seen this before, ideas? | |||
timotimo | i don't think methods are allowed to have a . in their name just like that | 23:25 | |
kawaii | ah that's a shame | ||
timotimo | so when it sees the . it knws your identifier is over and there ought to be a signature, or the block | ||
kawaii | I will git amend and force push so that no one thinks I am a fool | ||
timotimo: `+ a06b4d7...e7106a3 master -> master (forced update)` | 23:28 | ||
no one will ever know, thanks ;) | |||
what does `\s*` in raku regex signify? one space? an infinite number of spaces? | 23:29 | ||
[Coke] | \s is space - * is a modifier that says "0 or more of the preceding thing" | 23:38 | |
m: dd "asdf" ~~ / \s* / | |||
camelia | Match.new(:orig("asdf"), :from(0), :pos(0)) | ||
[Coke] | m: dd ? "asdf" ~~ / \s* / | ||
camelia | Match.new(:orig, :from(0), :pos(0)) | ||
[Coke] | m: dd ?("asdf" ~~ / \s* /) | ||
camelia | Bool::True | ||
kawaii | ah, thanks :) | 23:40 | |
23:40
xelxebar_ left,
xelxebar joined
23:42
NewGreyhawke left
23:43
Petr37 left
23:48
adu left
23:49
pecastro left
|
|||
kawaii | so I have `~~` in my capture here, `when $message.content ~~ / '<@' '!'? <(\d+)> '>' \s* '++' / { ... }`, if I change that to `==` will it prevent matching when someone puts arbitrary text after the '++`? | 23:56 | |
23:59
Ven`` left
|
|||
timotimo | no | 23:59 | |
instead you will want to anchor the end with $ |