»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋
Set by Zoffix on 25 July 2018.
00:13 w_richard_w joined, p6bannerbot sets mode: +v w_richard_w 00:14 w_richard_w left 00:15 cydf left 00:42 kurahaupo left 00:43 kurahaupo joined, kurahaupo left, kurahaupo joined 00:44 p6bannerbot sets mode: +v kurahaupo 00:59 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke 01:00 MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke 01:01 kurahaupo_ joined 01:02 p6bannerbot sets mode: +v kurahaupo_ 01:04 kurahaupo left 01:14 phogg left 01:23 p6noob left 01:24 kurahaupo_ left, kurahaupo joined 01:25 p6bannerbot sets mode: +v kurahaupo 01:31 CindyLinz left 02:04 kurahaupo_ joined, p6bannerbot sets mode: +v kurahaupo_ 02:08 kurahaupo left 02:15 CindyLinz joined 02:16 p6bannerbot sets mode: +v CindyLinz 02:46 molaf left 02:56 phogg joined, p6bannerbot sets mode: +v phogg 02:59 molaf joined, p6bannerbot sets mode: +v molaf 03:00 leont left 03:01 leah2 left 03:08 ufobat_ joined 03:09 p6bannerbot sets mode: +v ufobat_ 03:12 ufobat___ left 03:13 gumnos3 joined, gumnos3 left 03:16 kdr23 joined, kdr22 left 03:17 p6bannerbot sets mode: +v kdr23 03:19 kurahaupo_ left, kurahaupo joined 03:20 p6bannerbot sets mode: +v kurahaupo, kurahaupo_ joined 03:21 p6bannerbot sets mode: +v kurahaupo_ 03:23 kurahaupo left 03:33 hamhu3 joined 03:34 p6bannerbot sets mode: +v hamhu3 03:36 hamhu3_ left 03:40 ferreira left 04:01 bolangi left 04:02 bolangi joined 04:03 p6bannerbot sets mode: +v bolangi 04:06 Cabanossi left 04:07 Cabanossi joined, p6bannerbot sets mode: +v Cabanossi 04:25 kurahaupo_ left 04:26 kurahaupo joined 04:27 p6bannerbot sets mode: +v kurahaupo 04:35 MasterDuke left 04:40 w_richard_w joined, p6bannerbot sets mode: +v w_richard_w 05:03 molaf left 05:16 bolangi left 05:18 bolangi joined 05:19 p6bannerbot sets mode: +v bolangi 05:23 w_richard_w left 05:47 blackberry9900 joined 05:48 p6bannerbot sets mode: +v blackberry9900 05:54 blackberry9900 left 05:58 molaf joined 05:59 p6bannerbot sets mode: +v molaf 06:01 curan joined, p6bannerbot sets mode: +v curan 06:04 molaf left 06:10 molaf joined 06:11 p6bannerbot sets mode: +v molaf 06:25 molaf left 06:33 hamhu3_ joined 06:34 p6bannerbot sets mode: +v hamhu3_ 06:36 hamhu3 left 06:38 kurahaupo_ joined 06:39 p6bannerbot sets mode: +v kurahaupo_ 06:41 kurahaupo left 07:09 silug left 07:11 domidumont joined 07:12 p6bannerbot sets mode: +v domidumont 07:15 kurahaupo_ left 07:16 kurahaupo joined 07:17 p6bannerbot sets mode: +v kurahaupo 07:28 rindolf joined, p6bannerbot sets mode: +v rindolf 07:31 silug joined 07:32 p6bannerbot sets mode: +v silug 07:43 kensanata joined, p6bannerbot sets mode: +v kensanata 07:55 ZZZzz_ left 07:57 lookatme_q joined 07:58 p6bannerbot sets mode: +v lookatme_q 08:06 abraxxa joined 08:07 p6bannerbot sets mode: +v abraxxa, leont joined 08:08 p6bannerbot sets mode: +v leont 08:16 lichtkind left 08:23 leont left 08:24 zakharyas joined 08:25 p6bannerbot sets mode: +v zakharyas 08:50 dakkar joined 08:51 p6bannerbot sets mode: +v dakkar
andrzejku Hey 08:58
As I understand passing :out parameter will capture standard output
$proc = run $svn_info_cmd, :cwd($trunk), :out, :err;
say $proc.out.get;
but when I am trying to print it
I receive just Nil
ahh I think I know 09:00
srry
jast normally that would indicate that there was no output on stdout
andrzejku jast Yeah I found problem :) do you know how to wait until proc finish its work? 09:01
it indicate -1 until result is not return
ahh I see 09:02
it waits until finish I used shell
:D
09:07 Skarsnik joined 09:08 p6bannerbot sets mode: +v Skarsnik
Skarsnik Hello 09:13
09:16 jeek left 09:17 cydf joined 09:18 p6bannerbot sets mode: +v cydf
AlexDaniel Skarsnik: hi! 09:22
seeing you around more often nowadays :) 09:23
Skarsnik I even have a small patch xD
m: my buf8 $foo; $foo.append("foo".encode("latin1")); 09:24
camelia Cannot resolve caller append(Buf[uint8]: Blob[uint8]); none of these signatures match:
(Buf:D: int $got, *%_)
(Buf:D: Int:D $got, *%_)
(Buf:D: Mu:D $got, *%_)
(Buf:D: Blob:D $buf, *%_)
(Buf:D: int @values, *%_)
(Buf…
Skarsnik This show this on my rakudo x) Cannot resolve caller append(Buf[uint8]:U: Blob[uint8]:D);
09:32 kurahaupo left, kurahaupo joined 09:33 p6bannerbot sets mode: +v kurahaupo 09:46 leah2 joined 09:47 p6bannerbot sets mode: +v leah2
timotimo m: my buf8 $foo; $foo.append("foo".encode("latin1").list); 09:53
camelia Cannot resolve caller append(Buf[uint8]: List); none of these signatures match:
(Buf:D: int $got, *%_)
(Buf:D: Int:D $got, *%_)
(Buf:D: Mu:D $got, *%_)
(Buf:D: Blob:D $buf, *%_)
(Buf:D: int @values, *%_)
(Buf:D: @va…
timotimo m: my buf8 $foo; $foo.append("foo".encode("latin1").Array);
camelia Cannot resolve caller append(Buf[uint8]: Array); none of these signatures match:
(Buf:D: int $got, *%_)
(Buf:D: Int:D $got, *%_)
(Buf:D: Mu:D $got, *%_)
(Buf:D: Blob:D $buf, *%_)
(Buf:D: int @values, *%_)
(Buf:D: @v…
timotimo weird 09:54
m: my buf8 $foo; $foo ~= "foo".encode("latin1"); say $foo
camelia Cannot use a Buf as a string, but you called the Stringy method on it
in block <unit> at <tmp> line 1
09:55 scimon joined 09:56 p6bannerbot sets mode: +v scimon
scimon Look on the bright side. At least we're not having an argument about using GGI (bloody) pm 09:56
(Bit of Englishness slipped out there) 09:57
timotimo i'm not sure what that's an answer to
09:59 kirisame joined
Skarsnik m: my buf8 $foo = buf8.new; $foo.append("foo".encode("latin1")); 09:59
camelia ( no output )
09:59 kirisame left, w_richard_w joined, w_richard_w left 10:00 pmurias joined, p6bannerbot sets mode: +v pmurias, statisfiable6 left 10:02 iviv left, iviv joined, p6bannerbot sets mode: +v iviv
timotimo ooh, the buf wasn't defined 10:03
of course
in that case your patch seems quite useful
Skarsnik it's not obvious since there a sign that seems to match
timotimo aye
it could even go further and say "this signature would match if the invocant were defined:"
like we already have for cases when a type matches, but isn't rw 10:04
Skarsnik I am not sure to understand all branch on this code
so I did not try fancy stuff ^^
I did 3h of Perl 6 and found 2 lta bugs xD 10:05
I should stop touching Perl 6
10:06 telex left, pmurias left, pmurias joined, p6bannerbot sets mode: +v pmurias
timotimo OK :) 10:06
no
please don't stop :D
Skarsnik The other one was related to my bug about incorrect statement line pointed. this time in a grammar rule 10:07
10:08 telex joined 10:09 p6bannerbot sets mode: +v telex 10:10 lizmat left
timotimo a backtrace in a run-time error? 10:10
10:11 tobs` joined 10:12 p6bannerbot sets mode: +v tobs`
Skarsnik I think? it's somewhere on the 4h vod xD 10:13
timotimo Skarsnik: your patch fails a test %) 10:25
Skarsnik yep I watching this
timotimo how long is the message? :D 10:26
Skarsnik wtf this test xD
10:28 lizmat joined, p6bannerbot sets mode: +v lizmat
timotimo it's there to make sure the message doesn't dump out the entire contents of an array 10:29
Skarsnik hm somehow that add a lot of space 10:33
Cannot resolve caller z([1 2 3 4 5 6 7 8 9 1..., 1, :x([1 2 3 4 5 6 7 8 9 1...)); none of these signatures match: (regular p6) 10:34
Cannot resolve caller z([1 2 3 4 5 6 7 8 9 1..., 1, :x([1 2 3 4 5 6 7 8 9 1...:D
)); none of these signatures match:
my patched thing
timotimo that looks rather wrong :D
the placement of the :D
Skarsnik sadly I have to go to work soon
10:35 pmurias left, pmurias joined, p6bannerbot sets mode: +v pmurias, pmurias left
Skarsnik I wish I did not have tor ebuild everything x) 10:36
timotimo well, you can have a short script that augments the exception class in question
Skarsnik I just need to remove what I added in the for $.capture.hash wicth I don't get why xD 10:39
10:39 kurahaupo left, kurahaupo_ joined
tobs` Can I redispatch (with nextsame) to a method implementation from a role, when I reimplemented that method in my class? I just want a small wrapper around that role's implementation. 10:39
I mean, "as with nextsame" because nextsame doesn't do the trick. 10:40
10:40 p6bannerbot sets mode: +v kurahaupo_
Skarsnik well, eat + work xà 10:41
10:42 scimon left
timotimo you can refer to the role's method like self.RoleName::methodname() 10:46
tobs` oh great. I had a hunch there was something like this, but tried self.RoleName.methodname(). Thanks! 10:49
10:49 pmurias joined, p6bannerbot sets mode: +v pmurias
timotimo yeah, that simply calls a method named RoleName 10:50
though methods with a name like that are by convention coercer methods
10:52 zakharyas left 10:56 TeamBlast left 10:57 pmurias left 10:58 TeamBlast joined, p6bannerbot sets mode: +v TeamBlast 11:03 statisfiable6 joined, ChanServ sets mode: +v statisfiable6 11:04 p6bannerbot sets mode: +v statisfiable6 11:06 leont joined 11:07 famra joined, p6bannerbot sets mode: +v famra, p6bannerbot sets mode: +v leont, scimon joined 11:08 blackberry9900 joined, p6bannerbot sets mode: +v scimon 11:09 p6bannerbot sets mode: +v blackberry9900 11:10 poohman left 11:13 pmurias joined, p6bannerbot sets mode: +v pmurias, blackberry9900 left, blackberry9900 joined 11:14 p6bannerbot sets mode: +v blackberry9900
scimon timotimo: That was mostly my morning greeting. And a comment on the community :) 11:18
andrzejku Could you help me I had something similar like <23 23-24 25>.grep: Int 11:21
(23 25)
but it is not working 11:22
ahh
that' string array
what I hav e:D
Xliff_ m: .fmt('%2d').say for ^10 11:23
camelia 0
1
2
3
4
5
6
7
8
9
andrzejku <"23" "23-25" "24">.grep: /\d+/ 11:24
("23" "23-25" "24")
now I am suprosed why 23-25 are numbers
I expect only digit here 11:25
jnthn Because the string "23-25" matches \d+; you'd need /^\d+$/ to mean "the whole thing is digits"
andrzejku jnthn ahh 11:26
jnthn right :D it matches part of string
11:26 pmurias left
andrzejku jnthn thnks jnthn! 11:26
nice to see you
11:27 pmurias joined, p6bannerbot sets mode: +v pmurias, pmurias left
andrzejku m: <"23" "23-25" "26">.grep: /\d+$/ 11:28
camelia ( no output )
andrzejku m: <"23" "23-25" "26">.grep: /^\d+$/
camelia ( no output )
andrzejku m: <"23" "23-25" "26">.grep: m/ ^\d+$ / 11:29
camelia Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at <tmp> line 1
andrzejku :<
jnthn Remember to "say" or "dd" the result 11:30
m: say <"23" "23-25" "26">.grep: /^\d+$/ 11:31
camelia ()
11:31 domidumont left
jnthn m: say <<"23" "23-25" "26">>.grep: /^\d+$/ 11:31
camelia (23 26)
lizmat jnthn: would you offhand know of a way to re-initialize a n-dimensional array with the same dimensions? 11:32
jnthn: preferably using nqp ops :-)
11:32 lucasb joined 11:33 p6bannerbot sets mode: +v lucasb
andrzejku doesn't it tell that method grep(Mu $matcher, :$k, :$kv, :$p, :$v --> Seq) it returns Seq 11:33
ahh now I understand
camelia need say or debug
sorry I didn't write Perl6 much :D 11:34
just trying to day to create one script at my work
xD
jnthn lizmat: Depends what you mean be reinitialize; I think there's an NQP op that lets you query the dimensions though 11:35
lizmat yes, there is...
so, basically go through the motions of creating a whole new one, and then bind reified to that
jnthn: alternately, do you think this is acceptable behaviour: 11:36
m: my @a[2;2] = (0,1),(2,3); dd @a; @a = (5,6),(); dd @a
camelia Array element = Array.new(:shape(2, 2), [0, 1], [2, 3])
Array element = Array.new(:shape(2, 2), [5, 6], [2, 3])
jnthn m: my @a[2;2] = (0,1),() 11:37
camelia ( no output )
jnthn ah, right, we're quiet about that
m: my @a[2;2] = (0,1),(); dd @a
camelia Array element = Array.new(:shape(2, 2), [0, 1], [Any, Any])
11:37 pmurias joined, p6bannerbot sets mode: +v pmurias
jnthn I guess we could just null out the unfilled slots on a non-initial store 11:37
lizmat that's basically my question :-) 11:39
11:39 statisfiable6 left
lizmat how can we quickly do that apart from iterating over the whole thing 11:39
jnthn There's no quicker way to do it than that, I don't think 11:50
11:53 dotdotdot left 11:55 dotdotdot joined
lucasb I put a dist here: gist.github.com/lucasbuchala/64267...61334c3cd5 11:55
lizmat jnthn: ok, than we're on the same page :-)
11:55 p6bannerbot sets mode: +v dotdotdot
lucasb I wonder if I put the gist url of META6.json into the ecosystem META.list, then zef will grab it :) 11:56
IOW, install from gists
gist repos can't have subdirs, so I got rid of the lib dir. Zef installs locally ok 11:57
11:57 Skarsnik left
Geth ecosystem: c70ffb759b | (Lucas Buchala)++ (committed using GitHub Web editor) | META.list
Add a Gist distribution as an experiment
12:00
lucasb hmm, when does the file ecosystem-api.p6c.org/projects1.json is regenerated? 12:04
anyway, dunno if zef supports gist dists already 12:05
12:07 sergot joined 12:08 p6bannerbot sets mode: +v sergot
timotimo can you "provides": "../../../../../etc/passwd"? :D 12:08
12:20 sena_kun joined 12:21 p6bannerbot sets mode: +v sena_kun
lucasb hehe, it works, out of the box :) 12:27
zef install Foo::Gist
perl6 -MFoo::Gist -e hello
I'll add a test
timotimo that's cool 12:28
lucasb "use Foo::Gist", but there's no Foo/ subdir :-| 12:31
well, it works if the module is already installed 12:32
12:37 statisfiable6 joined, ChanServ sets mode: +v statisfiable6
lucasb nope 12:37
anyway to say that the test file is "test.t" in the rootdir, not "t/" ?
12:37 p6bannerbot sets mode: +v statisfiable6
timotimo i don't think we have anything for that, actually 12:38
tobs` m: role X { method f { say "X.f" } }; role Y { method f { say "Y.f"; self.X::f } }; class C does Y {}.new.f 12:40
camelia Y.f
Cannot dispatch to method f on X because it is not inherited or done by C
in method f at <tmp> line 1
in block <unit> at <tmp> line 1
tobs` m: role X { method f { say "X.f" } }; role Y does X { method f { say "Y.f"; self.X::f } }; class C does Y {}.new.f
camelia Y.f
No concretization found for X
in method f at <tmp> line 1
in block <unit> at <tmp> line 1
tobs` now, is there a way to get *this* situation to work?
12:41 blackberry9900 left
tobs` (the latter, the former was my error) 12:41
timotimo m: role X { method f { say "X.f" } }; role Y is X { method f { say "Y.f"; self.X::f } }; class C does Y {}.new.f
camelia Y.f
No concretization found for X
in method f at <tmp> line 1
in block <unit> at <tmp> line 1
tobs` m: role X { method f { say "X.f" } }; role Y does X { method f { say "Y.f"; self.X::f } }; class C does X does Y {}.new.f 12:42
camelia 5===SORRY!5=== Error while compiling <tmp>
Method 'f' must be resolved by class C because it exists in multiple roles (Y, X)
at <tmp>:1
12:46 gregf_ joined, p6bannerbot sets mode: +v gregf_ 12:47 khisanth_ left 12:54 domidumont joined 12:55 p6bannerbot sets mode: +v domidumont 12:58 pmurias left, pmurias joined, p6bannerbot sets mode: +v pmurias, pmurias left 13:00 khisanth_ joined 13:01 p6bannerbot sets mode: +v khisanth_
tobs` timotimo: I created R#2496. 13:03
synopsebot_ R#2496 [open]: github.com/rakudo/rakudo/issues/2496 No concretization found with role-qualified method call when doing a role from another role
13:03 pmurias joined, p6bannerbot sets mode: +v pmurias
timotimo then we can find out if this is perhaps by design 13:04
just how roles mixing into roles overwrite things
13:09 kerframil joined, p6bannerbot sets mode: +v kerframil 13:21 scimon_ joined 13:22 scimon_ left 13:23 lucasb left 13:24 scimon left 13:31 kurahaupo_ is now known as kurahaupo 13:35 famra left 13:46 scimon joined 13:47 p6bannerbot sets mode: +v scimon 13:54 MikeyG left 13:55 MikeyG joined 13:56 p6bannerbot sets mode: +v MikeyG 14:14 Sgeo_ left 14:17 kdr23 left
Geth ecosystem: 93ab4521a7 | (Lucas Buchala)++ (committed using GitHub Web editor) | META.list
Update Acme::Gistribution META6.json location
14:26
14:36 pmurias left 14:39 [Sno] left, reportable6 left, reportable6 joined 14:40 p6bannerbot sets mode: +v reportable6 14:45 pmurias joined, p6bannerbot sets mode: +v pmurias 14:47 cydf left 14:53 pmurias left, ferreira joined, p6bannerbot sets mode: +v ferreira 14:54 pmurias joined, p6bannerbot sets mode: +v pmurias 14:59 dogbert2_ joined 15:00 p6bannerbot sets mode: +v dogbert2_ 15:01 pmurias left 15:02 sno joined 15:03 p6bannerbot sets mode: +v sno 15:06 pmurias joined, p6bannerbot sets mode: +v pmurias 15:08 pmurias left 15:11 yqt joined 15:12 p6bannerbot sets mode: +v yqt 15:18 curan left 15:19 sno left, pmurias joined, p6bannerbot sets mode: +v pmurias
Geth Blin: 8b8329f0eb | (Aleks-Daniel Jakimenko-Aleksejev)++ | bin/blin.p6
Use https link

There is a redirect now.
15:20
15:25 zakharyas joined, p6bannerbot sets mode: +v zakharyas 15:27 kurahaupo_ joined 15:28 p6bannerbot sets mode: +v kurahaupo_, kurahaupo_ left 15:29 kurahaupo_ joined, kurahaupo left, p6bannerbot sets mode: +v kurahaupo_ 15:39 scimon_ joined 15:40 p6bannerbot sets mode: +v scimon_ 15:41 scimon left 15:44 pmurias left 15:45 sno joined 15:46 p6bannerbot sets mode: +v sno
samebchase Hi, Is there any tool that generates simple Perl6 project skeletons? 15:52
e.g. something like `cargo new` or `lein new` and then I can just start writing code instead of creating files and writing the standard boilerplate 15:54
sena_kun I sometimes use `Ddt` module, though I remember there were some issues with failing tests on installation, but at the end of the day it works just fine for me.
eco: Ddt
buggable sena_kun, Ddt 'Distribution Development Tool': github.com/kalkin/Ddt 3 other matching results: modules.perl6.org/s/Ddt
sena_kun samebchase, ^
samebchase ah nice, I'll check it out
kensanata cro also has the stub subcommand, if I remember correctly. 15:55
sena_kun yes, but it's Cro-centric. also Comma can create stuff for you, but that's a bit of an overkill. :) 15:56
samebchase Thanks a lot sena_kun, kensanata 15:58
hmm some tests are failing 16:00
sena_kun hmm, saw that coming. :S 16:01
you can still install it with `--force-test` iirc.
samebchase sena_kun: or is there any documentation which deals with project structure? I could just do that instead of relying it on a tool
yeah, noticed that option
sena_kun tests failing are not always because of broken code, it might be must broken test or an outdated one... Didn't really dig into it, as it works just fine in my case. As for docs... 16:02
docs.perl6.org/language/modules.html or more specifically docs.perl6.org/language/modules.ht...the_module
I think
s/must/just a/ 16:03
samebchase alrighty, I'll take a look at those thanks!
excellent. that is exactly what I need
sena_kun \o/ 16:04
rindolf samebchase: there is mi6 too
16:04 kdr23 joined, p6bannerbot sets mode: +v kdr23
samebchase rindolf: thanks I'll install that too 16:06
rindolf samebchase: you're welcome
16:10 pmurias joined, p6bannerbot sets mode: +v pmurias 16:12 pmurias left 16:18 avar left, avar joined, avar left, avar joined, p6bannerbot sets mode: +v avar 16:19 p6bannerbot sets mode: +v avar 16:21 zakharyas left 16:27 lucasb joined 16:28 p6bannerbot sets mode: +v lucasb 16:29 robertle joined, pmurias joined, p6bannerbot sets mode: +v pmurias, p6bannerbot sets mode: +v robertle 16:31 kdr23 left 16:36 pmurias left 16:42 pmurias joined, p6bannerbot sets mode: +v pmurias
lucasb should doing 'zef uninstall Foo' clean everything? 16:46
the installation seems to still remember the association I put in the 'provides' section in the META file, after uninstalling 16:47
16:51 jmerelo joined, pmurias left, p6bannerbot sets mode: +v jmerelo 16:52 pmurias joined, p6bannerbot sets mode: +v pmurias, domidumont left, pmurias left 16:57 pmurias joined, p6bannerbot sets mode: +v pmurias, molaf joined 16:58 p6bannerbot sets mode: +v molaf 16:59 vrurg left 17:00 vrurg joined, pmurias left 17:01 p6bannerbot sets mode: +v vrurg 17:03 robertle left 17:06 domidumont joined, p6bannerbot sets mode: +v domidumont 17:10 molaf left 17:21 domidumont left 17:33 scimon_ left, pmurias joined, p6bannerbot sets mode: +v pmurias, dakkar left 17:47 pmurias left 17:57 domidumont joined 17:58 p6bannerbot sets mode: +v domidumont 18:02 kensanata left 18:05 pmurias joined, p6bannerbot sets mode: +v pmurias 18:08 tobs` left
lucasb m: grammar { token TOP { <line>+ }; token line { .* } }.parse('') 18:20
camelia (timeout)
lucasb I shouldn't be combining quantifiers in this way? what's wrong?
hm, /(.*)+/ 18:22
m: '' ~~ /(.*)+/ 18:23
camelia MoarVM panic: Memory allocation failed; could not allocate 144128 bytes
sena_kun well, you shouldn't, I think. `<line>` will grab everything from its input and `+` on it will try to match `line` at least once... that's kind of useless regex if you ask me. 18:28
what do you want to achieve?
leont line is fine matching 0 characters
It turns out you can match 0 characters a lot of times ;-) 18:29
sena_kun `+` on it tries to match 0 characters infinitely, I think, hence a panic.
m: say '' ~~ /(.*)+?/ 18:30
camelia 「」
0 => 「」
sena_kun m: say '' ~~ /(.*?)+?/
camelia 「」
0 => 「」
sena_kun to make it non-greedy(i.e. working)
18:32 pmurias left
lucasb ok, makes sense. thanks sena_kun, leont 18:33
sena_kun: just learning grammars. trying to match a list of lines :) 18:34
I was gonna write 'token line { ^^ (.*) $$ }'
or something like that, but then starting testing other ways 18:35
*started
sena_kun m: say "a\nb\nc" ~~ / [ .*? "\n" | .+ ] + / 18:36
camelia 「a
b
c」
18:37 pmurias joined, p6bannerbot sets mode: +v pmurias 18:38 rindolf left 18:43 gregf_ left 18:47 pecastro joined 18:48 p6bannerbot sets mode: +v pecastro
jmerelo Just a reminder that we still have a lot of free slots in the perl 6 advent calendar github.com/perl6/mu/blob/master/mi...8/schedule 19:08
Please claim a day (or two)
Or I'll start to randomly make assignments to everyone who's present on the channel 19:09
Anyone with privs for adding authors please add all those who are not authorized in the Wordpress channel. 19:10
19:26 squashable6 left, sauvin left 19:28 squashable6 joined, ChanServ sets mode: +v squashable6 19:29 p6bannerbot sets mode: +v squashable6 19:30 |oLa| joined 19:31 emerson left, p6bannerbot sets mode: +v |oLa| 19:33 molaf joined 19:34 p6bannerbot sets mode: +v molaf 19:39 rindolf joined 19:40 p6bannerbot sets mode: +v rindolf 19:46 jmerelo left, pmurias left 19:47 pmurias joined, p6bannerbot sets mode: +v pmurias 19:48 pmurias left 19:49 Skarsnik joined 19:50 p6bannerbot sets mode: +v Skarsnik, domidumont left 19:52 pmurias joined, p6bannerbot sets mode: +v pmurias
Skarsnik Hello again ^^ 19:52
19:54 pmurias left 19:58 pmurias joined, p6bannerbot sets mode: +v pmurias
Skarsnik How much time take the Parse for people here? (just curious) 20:00
*Stage parse
sena_kun tries out 20:01
54 seconds. 20:04
Skarsnik it said 40 for me, not sure what is best for this core speed or core numbers 20:05
sena_kun not too bad, I think, assuming a desktop CPU(I am using a laptop one). 20:06
Skarsnik i7 7700k 4.5Ghz x) (4 cores) 20:07
sena_kun i7-7500U CPU @ 2.70GHz 20:08
Skarsnik 4 cores also I think?
sena_kun well, hyper-threading. 20:09
let me check again...
timotimo stage parse in rakudo's core setting isn't able to use more than two cores, really
one for all the code, one for spesh
sena_kun >2 Cores, 4 Threads
Skarsnik it's fun that the clock speed it not that much of a factor. you should have almost the double of my time 20:10
I should check if the MB game boosted the cores to 4.8ghz for this
timotimo, go fix it! (but I guess dispatching the parsing is not really doable) 20:12
timotimo you mean multithreading it?
jnthn Given the amount of memory that CORE.setting compilation uses, I suspect cache size and memory bandwidth are the limits
Skarsnik hm 20:13
timotimo, yes, and also use the cuda core of the GPU!
leont Yeah that makes sense
timotimo oof.
Skarsnik I am curious
timotimo i think the individual bits are quite fast, so memory transfer overhead to the gpu would more than outweigh any benefits you might get 20:14
Skarsnik let's try building on the m2 ssd instead of the classic HDD
timotimo maybe going through the speshlog (or some custom diagnostic) and seeing where rakudo is currently using nums instead of ints in the compiler could win us half a percent or so
the core setting itself is only 2.2 megabytes of code 20:15
and i'd think we pull it out all at once?
Skarsnik I saved nothing switching to the ssd 20:17
make sense ^^
timotimo perhaps if you completely clean out all caches and buffers first
20:17 trademark joined, p6bannerbot sets mode: +v trademark
Skarsnik I am testing on WSL so I am not sure if that change something or not 20:18
20:19 rindolf left
Geth modules.perl6.org: f7112f69b6 | (Lucas Buchala)++ (committed using GitHub Web editor) | lib/ModulesPerl6/DbBuilder/Dist/Source/CPAN.pm
Remove stray regex quantifier (cpan?)
20:21
20:22 dct joined, p6bannerbot sets mode: +v dct
trademark I'm having some trouble with NativeCall::cglobal and wondering if someone might be able to help. 20:26
The problem seems to be with global pointers. cglobal(library,symbol,Pointer) seems to give an erroneous value 20:27
on the other hand, Pointer.new(cglobal(library,symbol,int64)) seems to work fine
lizmat And yet another weekly hits the Net: p6weekly.wordpress.com/2018/11/19/...en-perl-6/ 20:33
20:36 dct left 20:41 kurahaupo joined 20:42 p6bannerbot sets mode: +v kurahaupo 20:43 kurahaupo_ left
SmokeMachine does anyone here knows the apple swift playground for iPad? I've been helping my niece to learn how to program with that. That's so fun that my niece didn't stop playing with that the last 3 days! So I was wandering: does anyone have any plan to make something like that for perl6? 20:44
lizmat SmokeMachine: as soon as 6pad works on Safari, that should work out, no ? 20:45
SmokeMachine lizmat: not the exercises and the code executor monster 20:46
lizmat ah... ok, well 6pad would be a prerequisite, I assume ?
SmokeMachine lizmat: this is what I mean: www.lifewire.com/apples-swift-play...de-4053170 20:47
Skarsnik trademark, what are you trying to map exactly? 20:48
nativecallable6, extern int errno;
nativecallable6 Skarsnik, constant __NSConstantString is export := __NSConstantString_tag;␤our $errno is export = cglobal(LIB, "errno", int32);
SmokeMachine lizmat: no... that don't need to run on the browser (the original doesn't...)
*doesn't 20:49
lucasb SmokeMachine: you mean for mobile, iOS? Android?
20:49 |oLa| left
trademark this came up because I was trying to figure out why wrefresh(stdscr) didn't work correctly in NCurses. 20:49
SmokeMachine lucasb: no... I mean a "game" that teaches how to code...
I mean: a "game" that "visually" teaches how to code 20:51
lucasb ah, ok. I thought you meant mobile. 20:52
this Swift Playground looks interesting, but I've never used
SmokeMachine lucasb: the iPad swift playground is different from the mac swift playground... the mac one is a place to you try some code, the iPad one is a game to teach how to program... 20:53
lucasb understood, thanks. I have zero experience with Apple things :) 20:54
Skarsnik trademark, give more context, what is the signature of the variable, and do you need to alloc it? 20:55
trademark stdscr is declared as 'extern WINDOW *' where WINDOW is some struct. 20:57
the NCurses module declares 'class WINDOW is repr<CPointer> {}'
SmokeMachine lucasb: take a look: www.youtube.com/watch?v=IoMudbI_CMc 20:58
trademark and then the stdscr function returns a the contents of a variable bound to cglobal(library,'stdscr',WINDOW)
stdscr should be initialized by the library when initscr() is called
from playing around with it, it seems that stdscr is correctly set by the library (subsequent calls to other functions which use the value work correctly) 20:59
but the pointer value returned by stdscr seems to be erroneous.
Skarsnik hm
This is weird. is stdscr also in ncurse? 21:00
trademark there's a stdscr function in the NCurses module which indirectly exposes the stdscr extern variable 21:01
I was playing around trying to make a minimal example (I don't know how to write C shared libraries, so I may have made a mistake) and it seems that the problem comes up when you have an extern pointer type 21:02
Skarsnik yeah but I mean in ncurse, not the module?
external pointer are fine 21:03
it's probably the binding that cause issue
trademark There are three stdscrs there's the variable $stdscr in the NCurses module which is just a cglobal proxy pointing to the stdscr variable in the ncurses module
and then the stdscr() function in the NCurses module jut exposes that $stdscr variable. 21:04
Skarsnik try doing my $stdscr = cglobal(stuff, "stdscr", Pointer);
trademark Same problem
that was the first thing I tried
Skarsnik nativecallable6, extern WINDOW *stdscr; 21:05
nativecallable6 Skarsnik, gist.github.com/ef673c60f38bae306e...d82b624bb7
Skarsnik of course it does not know the WINDOW type xD
nativecallable6, extern void *stdscr;
nativecallable6 Skarsnik, constant __NSConstantString is export := __NSConstantString_tag;␤our $stdscr is export = cglobal(LIB, "stdscr", Pointer);
pmurias SmokeMachine: the cool looking game part seems the hard part in the Camelia's Perl 6 Playgrounds 21:09
yoleaux 13:29Z <lizmat> pmurias: github.com/perl6/marketing/issues/22
SmokeMachine pmurias: yes...
pmurias: it would be great if some one had made the cool looking game part as a rest api so any language could use... 21:11
21:12 yqt left
Skarsnik trademark, it's kinda to late for me to think much, but try to contact NCurse p6 module author maybe? 21:14
pmurias doubts writing the game part in NCurses will attract kids 21:16
21:17 Kaiepi left 21:18 Kaiepi joined 21:19 p6bannerbot sets mode: +v Kaiepi
trademark I can try that, but I'm still not sure what I'm missing about how this is supposed to work (it still doesn't look like it's an NCurses problem to me). 21:19
pmurias lizmat: re github issue I saw that but it seems to be targeted at the most commonly used js technologies 21:22
lizmat ok, I thought you might want to know about it... :-) 21:29
Skarsnik .tell Zoffix is that possible to have your marketing stuff source for 6.d so we can do translated one? 21:38
yoleaux Skarsnik: I'll pass your message to Zoffix.
21:39 random_yanek left
AlexDaniel Skarsnik: I think it's here: github.com/perl6/marketing/tree/ma...1541379592 21:40
lucasb m: my $x = 0; my \p = Proxy.new(STORE=>{...},FETCH=>{$x++;True}); p.gist; say $x 21:43
camelia 7
21:43 Celelibi left
pmurias lizmat: guess, it's a goal to be on the survery one day ;) 21:43
* survey
lizmat indeed :-)
Skarsnik 7 wow
lucasb, this look weird ^^
lucasb ^^ Q: does my eval means that it takes 7 fetchs to .gist a Bool value?
trademark OK, here's a simpler example that might make my issue more clear: 21:44
in the c code: "int a; extern int *pos = &a; void setpos() { a = 3; }; int getx(int *t) { return *t; }" 21:45
and in perl6: 'my $pos := cglobal(LIB,"pos",Pointer); sub setpos is native{LIB} {*}(); sub getx(Pointer) returns int32 is native{LIB} {*}($pos).say;' 21:46
Skarsnik why getx get a parameter ? ^^
lizmat lucasb: p.gist goes through a lot of methods, and each time "self" is needed, that's a FETCH
trademark because the problem shows up on the round-trip through perl. 21:47
lucasb lizmat: I tried other values, they reach 5. does it means bool values takes more fetchs to .gist than others? 21:48
m: my $x = 0; my \p = Proxy.new(STORE=>{...},FETCH=>{$x++;42}); p.gist; say $x
camelia 5
lucasb *most* other common types (didn't tried all :)
optimization opportunity? I wouldn't expect Bool values to need more :) 21:49
I mean, 5 vs 7. ok. But if I print a 100-elem list, that's 500 vs 700, right? Ok, maybe it doesn't make difference :) 21:50
lizmat lucasb: benchmark :-)
lucasb where is benchmarkable? :) 21:51
Skarsnik I think there is a bot for that
21:51 random_yanek joined
Skarsnik benchable6 21:52
lucasb ah
21:52 p6bannerbot sets mode: +v random_yanek 21:53 thundergnat left 21:55 Celelibi joined 21:56 p6bannerbot sets mode: +v Celelibi 22:06 rindolf joined 22:07 p6bannerbot sets mode: +v rindolf 22:11 trademark left 22:23 kerframil left 22:26 holyghost joined 22:27 p6bannerbot sets mode: +v holyghost
holyghost . 22:28
22:29 lucasb left
holyghost hi, BTW 22:34
22:35 jargan joined 22:36 andrzejku_ joined, p6bannerbot sets mode: +v jargan, p6bannerbot sets mode: +v andrzejku_ 22:37 sergot_ joined, p6bannerbot sets mode: +v sergot_ 22:38 CindyLin1 joined, TimToady_ joined, pmurias_ joined, p6bannerbot sets mode: +v pmurias_, p6bannerbot sets mode: +v CindyLin1 22:39 bolangi_ joined, movl_ joined, p6bannerbot sets mode: +v TimToady_, p6bannerbot sets mode: +v bolangi_, abraxxa left, pmurias left, sena_kun left, sergot left, telex left, CindyLinz left, Bucciarati left, andrzejku left, jast left, TimToady left, tobs left, Celelibi left, bolangi left, movl left, mattp_ left, tharkun left, BucciaratiVEVO joined, jargan is now known as jast, p6bannerbot sets mode: +v movl_ 22:40 mattp_ joined, tobs joined, p6bannerbot sets mode: +v tobs, andrzejku_ is now known as andrzejku, p6bannerbot sets mode: +v BucciaratiVEVO, Celelibi joined, p6bannerbot sets mode: +v mattp_ 22:41 p6bannerbot sets mode: +v Celelibi, pmurias_ left 22:42 discoD joined, abraxxa joined, p6bannerbot sets mode: +v discoD, p6bannerbot sets mode: +v abraxxa 22:43 telex joined, tharkun joined 22:44 p6bannerbot sets mode: +v telex, p6bannerbot sets mode: +v tharkun 22:51 rindolf left 23:05 huf left 23:08 random_yanek left 23:15 huf joined
holyghost I think I have Mathx-Stat all 9 tests working 23:15
23:16 p6bannerbot sets mode: +v huf 23:19 lichtkind joined 23:20 huf left, p6bannerbot sets mode: +v lichtkind
AlexDaniel .tell lucasb yeah, that's probably the case 23:22
yoleaux AlexDaniel: I'll pass your message to lucasb.
lichtkind is there a clue when rakudo will be released in december? thanks 23:25
El_Che releasable6: status 23:26
releasable6: status
releasable6 El_Che, Next release will happen when it's ready. 3 blockers. 79 out of 163 commits logged (⚠ 1 warnings)
El_Che, Details: gist.github.com/aeb0aa8d4bc4b00605...85521462a5
AlexDaniel lichtkind: December?! Where's your optimism? :) 23:27
23:27 huf joined
lichtkind AlexDaniel so its next week? 23:27
AlexDaniel lichtkind: so 2018.11 will be released this week or so 23:28
23:28 p6bannerbot sets mode: +v huf
AlexDaniel hopefully soon, but the switch to v6.d is a bit difficult 23:28
lichtkind thanks
AlexDaniel samcv: by the way, currently it looks like we don't have any moar blockers 23:30
samcv: so I hope you have time this week 23:31
Skarsnik You should choose each month 5-10 bugs randomly to be blocker x) 23:32
AlexDaniel Skarsnik: yeah, with R#131003 randomly selected in the first month, then a year or two without releases :P
RT#131003
synopsebot_ RT#131003 [open]: rt.perl.org/Ticket/Display.html?id=131003 [SEVERE][SEGV] Heap corruption when using Gumbo
Skarsnik lol 23:33
The goal is (in my mind) will be to avoid "Oh it's lta I will do this later" then 2-3 years you still have these lta bugs
AlexDaniel, did you retest this with last version of Gumbo? 23:34
I removed lot of nativecast call, maybe it's the culprit? xD 23:35
AlexDaniel Skarsnik: yeah, still happens
Skarsnik Nooo
AlexDaniel we have Squashathons for these LTA things :)
oh also you meant LHF I think 23:36
Skarsnik yeah too
I know it's not very 0fun to force people to look at bug instead of working on new stuff, but it's probably better overall 23:39
timotimo oh, it is 0fun 23:40
AlexDaniel hahaha
timotimo but we strive towards -Ofun :P
AlexDaniel
.oO( -0fun ? Can't be worse than negative zero fun, right? )
Skarsnik now work on 131003 ! 23:41
timotimo RT#131003
AlexDaniel m: say -0e0 # \o/
camelia -0
synopsebot_ RT#131003 [open]: rt.perl.org/Ticket/Display.html?id=131003 [SEVERE][SEGV] Heap corruption when using Gumbo
timotimo oh lord
Skarsnik does not always crash the same, for more fun! 23:42
AlexDaniel oh, just noticed that it was bisected 23:43
Geth: ver github.com/rakudo/rakudo/commit/40...2d348a2000
Geth AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2016....7-gbdb13a2
AlexDaniel Geth: ver github.com/perl6/nqp/commit/bdb13a...9fc25a411d
Geth AlexDaniel, version bump brought in these changes: github.com/MoarVM/MoarVM/compare/2...4-g10d3971
AlexDaniel so it was bisected to the rakudo commit, but not to a change in moar 23:44
it won't necessarily help, in fact usually it doesn't… 23:45
but maybe it's worth a try
Skarsnik I think you bisected it for moar too? 23:46
23:46 pecastro left
Skarsnik but it was like a huge commit with lot of change 23:46
buggable New CPAN upload: Mathx-Stat-0.2.1.tar.gz by HOLYGHOST modules.perl6.org/dist/Mathx::Stat:...:HOLYGHOST 23:47
AlexDaniel which one?
23:48 Sgeo joined
AlexDaniel I mean, right, it wouldn't be me if I didn't bisect the crap out of it 23:48
and I recall doing so, but there's no comment?
23:49 p6bannerbot sets mode: +v Sgeo 23:53 Skarsnik left
buggable New CPAN upload: Mathx-Stat-0.2.2.tar.gz by HOLYGHOST modules.perl6.org/dist/Mathx::Stat:...:HOLYGHOST 23:57
holyghost ^-- all tests work (8 of then with Bayes, conditionale prob etc) 23:59