🦋 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:07 cpan-raku left 00:08 cpan-raku joined, cpan-raku left, cpan-raku joined 00:21 Black_Ribbon joined 01:17 molaf left 01:20 mowcat left, aborazmeh joined, aborazmeh left, aborazmeh joined 01:29 molaf joined
cpan-raku New module released to CPAN! Tomty (0.0.13) by 03MELEZHIK 01:50
01:50 aborazmeh left 01:57 aluaces joined 02:05 Manifest0 left 02:06 Manifest0 joined 02:10 skids left 02:14 perfi joined 02:20 hythm joined
hythm Hello, have a question in this gist gist.github.com/hythm7/7bafa02262e...dd7472c2f1 , I know it's late, but asking anyway :) 02:50
02:54 samebchase joined, nekomune left 03:04 nekomune joined 03:45 justchecking123 joined 03:47 rbt left, rbt joined 04:03 justchecking123 left 04:08 molaf left 04:10 perfi left, rbt left, rbt joined 04:30 perfi joined 04:33 perfi left 04:34 perfi joined 04:57 perfi left 05:00 perfi joined, perfi left 05:11 skids joined 05:14 sena_kun joined 05:16 sno left 05:18 sno joined 05:19 maettu joined 05:22 Kaiepi left 05:29 Kaiepi joined 05:30 Kaiepi left 05:31 Kaiepi joined, jmerelo joined 05:39 zacts joined 05:41 bocaneri joined 05:42 Altai-man joined 05:44 zacts left, sena_kun left 05:46 maettu left
moritz hythm: what's happening is that STDOUT and STDERR are pipes. If you read from STDOUT until there is nothing left (so EOF), you risk filling the STDERR pipe until its maximum buffer size 05:49
tellable6 2020-10-14T14:24:16Z #raku <SmokeMachine> moritz Hi! Do you know if is thee a way of doing this work?`grammar Bla { rule num($a) { \d+ } }; say 42 ~~ /<num=.Bla::num(13)>/`
moritz hythm: then when the program you are calling tries to write to its STDERR, that write operation blocks until somebody reads from the STDERR pipe 05:50
05:59 xinming_ joined
moritz SmokeMachine: IMHO it's a rakudo bug. If the call works without arguments (and no params in the declaration), then it should work with params as well 06:01
SmokeMachine: it seems without arguments, rakudo passes `self' implicitly, without it not. 06:02
06:02 xinming left 06:09 zacts joined 06:13 squashable6 left 06:14 andrzejku joined 06:15 squashable6 joined 06:29 epony left 06:33 skids left 06:43 maettu joined 06:45 Sgeo left, zacts left
hythm moritz, Thanks, If I understood correctly I guess setting the buffer size of STDOUT and STDERR to 0 should fix the issue 06:47
06:48 patrickb joined 06:54 Doc_Holliwould joined
hythm may be not, I think I understand now why it worked when I tried with `Proc::Async`, as I read the output from STDOUT and STDERR `whenever` there is any. Thanks moritz. 06:56
07:02 leont joined 07:03 domidumont joined
moritz hythm: another, pretty simple option is to use :merge if you don't need stdout and stderr separately 07:06
07:14 kst left 07:18 epony joined
Geth_ doc: c0b85935bd | (Moritz Lenz)++ | doc/Type/Proc.pod6
Proc: add a section explaining deadlocks

people have stumbled across that at least twice in the last two weeks, so it seems prudent to at least document it.
07:30
linkable6 Link: docs.raku.org/type/Proc
07:35 dakkar joined, hythm_ joined
hythm_ thanks moritz 07:36
07:38 MasterDuke joined 07:40 hythm_ left 07:44 mid_laptop left, mid_laptop joined 07:49 wamba joined 07:50 rbt left, rbt joined 07:53 zacts joined
SmokeMachine moritz: thanks 07:53
I think I found a intermittent bug on .relative
m: multi a(IO() $file where .f) { start { my $a = $file.relative: "/etc"; say $a; die "wrong: file: $file, a: $a" if $a eq "." || $a.starts-with: "../" } }; multi a(IO() $dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a "/etc"
camelia default/grub_installdevice.old
default/useradd
default/grub_installdevice
default/nss
default/useradd.rpmnew
default/runuser
default/su
default/grub.rpmnew
default/grub.old
default/grub
sysconfig/bootloader
rpm/macros.fdupes
rp…
SmokeMachine m: multi a(IO() $file where .f) { start { my $a = $file.relative: "/etc"; die "wrong: file: $file, a: $a" if $a eq "." || $a.starts-with: "../" } }; multi a(IO() $dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a "/etc" 07:54
camelia An operation first awaited:
in code at <tmp> line 1

Died with the exception:
Failed to get the directory contents of '/etc/ppp': Failed to open dir: Permission denied
in code at <tmp> line 1
SmokeMachine m: multi a(IO() $file where .f) { start { my $a = $file.relative: "/etc"; die "wrong: file: $file, a: $a" if $a eq "." || $a.starts-with: "../" } }; multi a(IO() $dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a "/etc"
camelia An operation first awaited:
in code at <tmp> line 1

Died with the exception:
Failed to get the directory contents of '/etc/ppp': Failed to open dir: Permission denied
in code at <tmp> line 1
SmokeMachine m: multi a(IO() $file where .f) { start { my $a = $file.relative: "/tmp"; die "wrong: file: $file, a: $a" if $a eq "." || $a.starts-with: "../" } }; multi a(IO() $dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a "/tmp" 07:55
camelia An operation first awaited:
in code at <tmp> line 1

Died with the exception:
Failed to get the directory contents of '/tmp/systemd-private-38777dfab8ff4fffb49cfca2d846111e-ntpd.service-61H4XY': Failed to open dir: Permission denied
…
07:55 hythm left
SmokeMachine I'm not being able to reproduce here... 07:55
bu I'm getting error 70% of time I run the same code... 07:56
could, please, someone else try to reproduce that?
www.irccloud.com/pastebin/t2c7IihR/
that do not happens without the start 07:58
some times `$a eq "."` is true and some times `$a.starts-with: "../"` is true... but none should be true ever, right? 08:00
usercontent.irccloud-cdn.com/file/.../image.png 08:08
08:19 maettu left 08:35 pecastro joined 08:46 MasterDuke left 08:58 zacts left 09:05 maettu joined 09:08 MasterDuke joined 09:10 rbt left, rbt joined 09:22 maettu left 09:43 sena_kun joined 09:45 Altai-man left 09:46 lizmat_ joined 09:48 lizmat left, lizmat_ is now known as lizmat
SmokeMachine m: multi a(IO() $file where .f) { start { my $a = $file.relative: %*ENV<HOME>; die "wrong: file: $file, a: $a" if $a eq "." || $a.starts-with: "../" } }; multi a(IO() $dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a %*ENV<HOME> 09:56
camelia WARNING: unhandled Failure detected in DESTROY. If you meant to ignore it, you can mark it as handled by calling .Bool, .so, .not, or .defined methods. The Failure was:
Failed to find '/home/camelia/.local/share/systemd/user' while trying to do '.d'…
SmokeMachine m: multi a(IO() $file where .f) { start { my $a = $file.relative: %*ENV<HOME>; say "wrong: file: $file, a: $a" if $a eq "." || $a.starts-with: "../" } }; multi a(IO() $dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a %*ENV<HOME> 09:57
camelia wrong: file: /home/camelia/evalbot/build.pl, a: .
WARNING: unhandled Failure detected in DESTROY. If you meant to ignore it, you can mark it as handled by calling .Bool, .so, .not, or .defined methods. The Failure was:
Failed to find '/home/cameli…
09:58 zacts joined 10:12 astronavt___ joined 10:13 wamba left 10:18 domidumont left 10:36 wamba joined 11:11 rindolf joined 11:15 Doc_Holliwould left 11:20 frost-lab joined
SmokeMachine could anyone reproduce that? 11:32
11:49 maettu joined, Kaiepi left, Kaiepi joined 11:53 rbt left 11:54 rbt joined 12:02 Black_Ribbon left 12:12 AlexDaniel left 12:17 wamba left
MasterDuke SmokeMachine: yep 12:30
12:40 jmerelo left 12:42 jmerelo joined 12:48 maettu left 12:49 domidumont joined 13:06 jmerelo left 13:35 andrzejku left 13:42 Altai-man joined, frost-lab left 13:44 sena_kun left
SmokeMachine That’s a bug, right? 13:45
13:46 maettu joined 13:52 Sgeo joined 13:59 molaf joined 14:03 Doc_Holliwould joined 14:27 lucasb joined
moritz I'm not sure 14:33
is every possible Failure handled there?
you could add a 'use fatal' to see where it's coming from 14:34
SmokeMachine but that doesn't throw an error, only returns the wrong value... 14:38
14:39 Doc_Holliwould left 14:42 perryprog left, perryprog joined
SmokeMachine m: multi a($file where .f) { start { my $a = $file.relative: %*ENV<HOME>; say "wrong: file: $file, a: $a; 2nd try: { $file.relative: %*ENV<HOME> }" if $a eq "." || $a.starts-with: "../" } }; multi a($dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a %*ENV<HOME>.IO 14:47
camelia wrong: file: /home/camelia/rakudo-j-2/config.status, a: .; 2nd try: rakudo-j-2/config.status
WARNING: unhandled Failure detected in DESTROY. If you meant to ignore it, you can mark it as handled by calling .Bool, .so, .not, or .defined methods. The …
SmokeMachine trying the same file twice give different results 14:48
m: multi a($file where .f) { start { my $a = $file.relative: %*ENV<HOME>; say "wrong: file: $file, a: $a; 2nd try: { $file.relative: %*ENV<HOME> }" if $a eq "." || $a.starts-with: "../" } }; multi a($dir where .d) { start await do for $dir.dir -> $file { a $file } }; await a %*ENV<HOME>.IO
camelia wrong: file: /home/camelia/rakudo-m-2/inst-perl6-debug, a: .; 2nd try: rakudo-m-2/inst-perl6-debug
WARNING: unhandled Failure detected in DESTROY. If you meant to ignore it, you can mark it as handled by calling .Bool, .so, .not, or .defined methods…
14:55 patrickb left 14:57 Kaiepi left 14:58 Kaiepi joined 15:05 finsternis left 15:09 mowcat joined
SmokeMachine m: my $path = "/etc"; multi a($_) { start { when .d { await do for .dir -> $f { a $f } }; default { my $a = .relative: $path; say "wrong: $_\n\t$a\n\t{ .relative: $path }" if $a eq "." || $a.starts-with: "../" } } }; await a $path.IO 15:09
camelia wrong: /etc/rpm/macros.ruby-common
.
rpm/macros.ruby-common
An operation first awaited:
in block at <tmp> line 1

Died with the exception:
Failed to get the directory contents of '/etc/ppp': Failed to open dir: Permission denied…
SmokeMachine m: my $path = "/etc"; multi a($_) { start { when .d { await do for .dir -> $f { a $f } }; default { my $a = .relative: $path; say "wrong: $_\n\t$a\n\t{ .relative: $path }" if $a eq "." || $a.starts-with: "../" } } }; await a $path.IO
camelia wrong: /etc/passwd.YaST2save
../passwd.YaST2save
passwd.YaST2save
An operation first awaited:
in block at <tmp> line 1

Died with the exception:
Failed to get the directory contents of '/etc/ppp': Failed to open dir: Permission …
SmokeMachine m: my $path = "/etc"; multi a($_) { start { when .d { await do for .dir -> $f { a $f } }; default { my $a = .relative: $path; say "wrong: $_\n\t$a\n\t{ .relative: $path }" if $a eq "." || $a.starts-with: "../" } } }; await a $path.IO
camelia wrong: /etc/shadow.YaST2save
../shadow.YaST2save
shadow.YaST2save
An operation first awaited:
in block at <tmp> line 1

Died with the exception:
Failed to get the directory contents of '/etc/ppp': Failed to open dir: Permission …
15:13 jmerelo joined 15:27 skids joined, maettu left 15:30 Kaeipi joined 15:31 Kaiepi left, domidumont left 15:32 veesh left
moritz a few hours ago, I pushed something to the doc repo, but the website hasn't been updated since 15:49
can I check the build logs somewhere?
Altai-man moritz, alas, there is no auto-update anymore AFAIK. It was lost like since previous server was dead and JJ prefers to update it by hand. And nobody is free enough to contribute, I think. 15:52
moritz :-(
15:53 mowcat left 15:58 cpan-raku left, pecastro left 16:00 cpan-raku joined, cpan-raku left, cpan-raku joined 16:20 maettu joined
El_Che can't it be automated through travis and the like? 16:31
moritz I'm sure it can, it "just" needs doing 16:32
16:32 dakkar left
El_Che my question is rather "is it desired"? 16:34
(e.g. JJ preferring doing it by hand)
Altai-man El_Che, I don't think it's a nice idea to give travis push access to our server and all that. I mean, there are secret keys services or something, but still. Previously it was a script running on the server itself. 16:36
El_Che it depends on the components
e.g. if itĹ› a server you can restrict what commands it can run through ssh 16:37
eg 1 single script
16:40 maettu left
moritz or you could have the server poll for the newest build artifact on travis, and download and unpack that 16:47
16:47 Kaeipi left, Kaiepi joined 16:50 Kaiepi left, Kaiepi joined
Altreus isn't that what webhooks are for 16:50
16:50 nige_ left 16:51 nige joined
Altai-man whatever does the job 16:54
17:22 Doc_Holliwould joined, Altai-man left, sena_kun joined
El_Che repo push is better in my view 17:26
than a pull from the server
but both are ok
I proposed that because travis has support for secrets and is hookable for pushes 17:27
17:35 mowcat joined 17:39 maettu joined 18:13 Ven`` joined
[Coke] we should automate the docs build/deploy. 18:14
Having it single thread through JJ's personal setup is not sustainable.
Zero_Dogg Is there any raku lib that's roughly equivalent to perl's Mojo::DOM? Ie. HTML parser with CSS selector support 18:15
18:23 bocaneri left
Grinnz i believe DOM::Tiny is an equivalent lib 18:27
Zero_Dogg Grinnz: looks like, thanks! 18:29
18:51 jmerelo left 18:54 aluaces left 19:00 patrickb joined 19:05 Ven`` left 19:06 Ven`` joined, abraxxa left, andreoss left 19:08 Ven`` left 19:15 Ven`` joined, vrurg joined 19:17 vrurg_ left 19:18 vrurg left 19:20 vrurg joined 19:23 patrickb left 19:30 patrickb joined 19:41 rindolf left 19:47 zacts left 19:52 aluaces joined 19:59 rbt left 20:00 rbt joined 20:03 maettu left 20:07 woolfy1 joined
woolfy1 I just thought of something. That Perl 6, now Raku, is the only and single modern language that was carefully designed, painstakingly even, and even carefully and painstakingly implemented. 20:09
Therefore, anybody who claims that Raku is not properly designed, has had no proper design process, has had no proper implementation, and that it is just rubbish and full of foolish things, is not understanding stuff, not having followed history. 20:11
[Coke] I feel like that is a bold claim.
woolfy1 I know I have not contributed anything. I just feel angry about some other claims on this channel and elsewhere.
[Coke] (the first send)
woolfy1 [Coke]: anybody who claimed the opposite was also claiming boldly. 20:12
patrickb I think [Coke] is only referring to the "only" in the first statement. As in "no other language there is". 20:13
timotimo maybe the vast majority of other languages are not modern?
lizmat and/or not carefully designed :) 20:14
timotimo we know that most of the science that's slowly being implemented here and there are all from like the sixties
and of course lisp has had everything first already
woolfy1 Which other modern languages? Liz just mentioned Pascal to me, and I reacted "hahaha".
Lisp? Really?
timotimo not saying lisp is modern 20:15
i think it was a meme that lisp has done everything first?
a meme before memes were memes, so maybe a running gag / running joke?
woolfy1 timotimo: Very funny, indeed, but not a proper rebuttal to people (whoever) who claim that Raku was not properly designed. 20:19
timotimo you're right, sorry for not having anything interesting to add 20:20
[Coke] Yup, I was only saying that "only and single" was a bold claim. patrickb++ 20:21
timotimo i think i don't have enough general knowledge of other languages to comment on that 20:29
woolfy1 Ehrm, I am pretty sure I mentioned "modern". :-)
20:29 Ven`` left
woolfy1 So, languages from before Perl should really be ignored in my comparison. I did not make a comparison, I know. i just made a bold statement. 20:30
20:30 sena_kun left
timotimo so "from before perl" probably includes haskell and prolog for example? 20:30
woolfy1 I will go away soon, again, because I just wanted to vent some anger and frustration about how discussions go to idiotic ways, and I am watching from afar and doing facepalms and since I am pretty strong they hurt and now my nose is hurting really bad. Please do better and make me love you all again. 20:31
timotimo: Perl 6 -> Raku: 2000 20:32
Haskell: 1990
Prolog: 1972
Yep. Y ou are right about your assumption.
timotimo ok, and of course BCPL and C as well, probably also C++ 20:33
but i think PHP is newer than perl
(and its design process was not quite as painstaking or at the very least not as careful)
well, i'm blanking on languages now 20:34
[Coke] Modula-3! :)
timotimo java is very old, but older than perl? 20:35
ruby is newer than perl for sure
woolfy1 PHP was designed?
[Coke] Java is newer than Perl, according to my brain.
timotimo oh, huh
woolfy1 Perl Help Pages. That was the oldest explanation of PHP I encountered in my 26 years of using Perl. Before PHP became a "programming language", that was. 20:36
El_Che Oak (java's origin language) is from 1991
Raku is a beautifully designed language, but it's not the only one 20:38
timotimo ~you may say raku's a dreamer, but it's not the only one~
El_Che hehe 20:39
20:39 Black_Ribbon joined
woolfy1 El_Che: please tell me more. I mean, names, dates (or just years), design quality. I came with dates for Haskell and Prolog, and I told about PHP being a descendant of Perl Help Pages. Feel free to enlighten me, and us all. 20:42
20:44 Sgeo_ joined
El_Che woolfy1: I am very impressed by Go's design philosophy *and* implementation. 20:45
it's one of the reason I love Raku and Go, both chose a very different path 20:46
less vs more features
orthogonality vs praticallity
and so on 20:47
20:47 Sgeo left
El_Che some feature will never enter the language because they break the simplicity rule: no OO (only composition), no overloading, etc 20:52
other feature are considered only when there is a prototype that is "native" enough: generics must be the nr 1 request, but still not there. And luckily because the proposal were very complex compared to the rest of the lang 20:53
Module system als took 10 years to be reworked and even there they gave up some functionality to keep is simple 20:54
Raku took another road, but most choices were very natural to the language 20:55
it's pure magic to have a ton of built-in instead of implementing stuff all over again 20:56
so in my eyes, beautiful design does not lead to copies
it's mostly the rationale why or why not implement features 20:57
woolfy1 I am impressed by the info about Go. Less so about the thoughts behind it, and the company pushing it. But still, impressed.
El_Che oh yeah, there are certainly downsize
Google is one, but google is not really pushing go
it's pushing Java and Kotlin nowadays
Android is the moneymaker
Go is the result to giving money and time to language veterans 20:58
woolfy1 I wish Raku was going to make serious money.
El_Che Robert Griesemer, Rob Pike, and Ken Thompson are big names
woolfy1 From now on, I will think of Raku and Go as the languages with good design. And only one of them as the older language that was designed with hardly any funding. :-) 21:00
El_Che I think Go was just there when Docker popularity exploded and devops got big
coincidense mostly
the authors wanted a better (more dynamic, modern and safe) C 21:01
woolfy1 Devops got big? You know Liz and I were the first devops of The Netherlands, right? And we were big. I mean, Liz was 150+ kg, and I was 135+s.
El_Che but they ended with a lot of Perl, Python and Ruby people :)
hehe
woolfy1 :-)
El_Che maybe raku will get lucky 21:02
having a solid implementation helps
but the days of 1 popular lang to rule them all are gone 21:03
woolfy1 Sleep well. I am off to whisky. Love you all. Was nice to see my friends again. Miss you.
AFK
21:03 woolfy1 left
El_Che see you woolfy1, nice to talk to you 21:03
21:11 Kaeipi joined 21:12 Kaiepi left 21:24 pecastro joined 21:43 Merfont joined, Kaeipi left 21:49 patrickb left 21:53 vike left 21:59 patrickb joined 22:10 Black_Ribbon left 22:35 Merfont left 22:36 Merfont joined 22:41 Celelibi left 22:48 skids left 22:54 patrickb left 22:55 Celelibi joined
cpan-raku New module released to CPAN! File::Copy (0.0.2) by 03TBROWDER 22:57
tbrowder cpan rocks better than ecosystem...IMHO 22:58
22:58 ggoebel joined
tbrowder i just filed issue with cpan for Raku module searches 22:58
actually got a response very quickly 22:59
PRs are welcome of course 23:00
23:02 pecastro left 23:10 abraxxa joined 23:18 vike joined
tbrowder .ask ugexe how long should it take before zef finds just-upgraded modules on cpan? 23:22
tellable6 tbrowder, I'll pass your message to ugexe
tbrowder .ask ugexe and modules.raku.org already shows the upgraded module 23:23
tellable6 tbrowder, I'll pass your message to ugexe
23:26 BenGoldberg joined 23:32 Merfont left 23:33 Kaiepi joined 23:34 oneeggeach joined, oneeggeach left