»ö« 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:00
reportable6 left,
reportable6 joined
00:09
[particle] left,
Kaiepi left,
tilpner_ joined
00:10
Kaypie joined,
[particle] joined
00:11
riatre left,
camelCaser left,
tilpner left,
camelCas- joined
00:13
riatre joined
01:13
evalable6 left
01:14
AlexDaniel left
01:55
Xliff_ joined
01:59
Xliff left
02:01
Manifest0 left
02:02
Manifest0 joined
02:18
Cabanossi left,
Xliff_ is now known as Xliff
02:21
Cabanossi joined
|
|||
AlexDaniel` | Wow, half of the plane is empty | 02:36 | |
It's not even half full | 02:37 | ||
Xliff | de plane! de plain! | 02:48 | |
kawaii | AlexDaniel`: Blin seems to have completely stopped working even on a fresh install of Rakudo Star | 03:07 | |
not sure why, and it's 4:00 am here now so not in the mood to debug www.irccloud.com/pastebin/bq8bqd3r/ | 03:09 | ||
AlexDaniel` | Oh, that again | 03:50 | |
Alright I'll investigate | 03:52 | ||
04:00
uid9164 joined
|
|||
uid9164 | <code> my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); | 04:00 | |
<code> say @a[2]; | 04:01 | ||
<output> Partially dimensioned views of shaped arrays not yet implemented. Sorry. | |||
Are there some simple methods to copy @a[2]? | |||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[2; ^2].say | 04:19 | |
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[2][^2].say | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); | ||
camelia | ( no output ) | ||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a.say | ||
camelia | [[1 2 3] [4 5 6] [7 8 9]] | ||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][0].say | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1;0].say | ||
camelia | 4 | 04:20 | |
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1;^2].say | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1;0,1,2].say | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | :( | ||
m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][$_].say for ^2 | 04:21 | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][$_].say for ^2.eager | ||
camelia | Potential difficulties: Precedence of ^ is looser than method call; please parenthesize at <tmp>:1 ------> 3>,<4 5 6>,<7 8 9>); @a[1][$_].say for ^27⏏5.eager Partially dimensioned views of shaped arrays not yet implemented. S… |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][$_].say for ^2.Array | ||
camelia | Potential difficulties: Precedence of ^ is looser than method call; please parenthesize at <tmp>:1 ------> 3>,<4 5 6>,<7 8 9>); @a[1][$_].say for ^27⏏5.Array Partially dimensioned views of shaped arrays not yet implemented. S… |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][$_].say for 0...2 | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
04:22 | |
Xliff | WTF? | ||
m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); for ^2 { @a[1][$_].say } | |||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][0].say; @a[1][1].say @a[1][2].say; | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3 6>,<7 8 9>); @a[1][0].say; @a[1][1].say7⏏5 @a[1][2].say; expecting any of: infix infix stopper statement end … |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][0].say; @a[1][1].say; @a[1][2].say; | 04:23 | |
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
uid9164 | These codes seem too difficult for non CS students... | ||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1][0].say | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1;2].say | ||
camelia | 6 | ||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1;$_].say for ^2 | 04:24 | |
camelia | 4 5 |
||
Xliff | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[1;$_].say for ^3 | ||
camelia | 4 5 6 |
||
Xliff | :S | ||
I avoid shaped arrays for this particular reason. | |||
my @a = (<1 2 3>, <4 5 6>, <7 8 9>); @a[1][2].say; | 04:25 | ||
uid9164 | I try to write a library for my own use. | ||
Xliff | m: my @a = (<1 2 3>, <4 5 6>, <7 8 9>); @a[1][2].say; | ||
camelia | 6 | ||
Xliff | m: my @a = (<1 2 3>, <4 5 6>, <7 8 9>); @a[1][^3].say; | ||
camelia | (4 5 6) | ||
uid9164 | to let a one dimension array serve as a two dimension array... | ||
04:40
curan joined
04:45
AlexDaniel joined
04:47
chloekek joined
04:48
AlexDaniel left
04:49
AlexDaniel joined
05:01
sjm_uk joined
05:05
jaldhar_ joined
05:07
AlexDaniel left
05:12
lizmat left,
uid9164 left
05:16
jaldhar_ left
05:17
jaldhar_ joined
05:24
jaldhar_ left
05:25
jaldhar_ joined
05:26
jaldhar_ left
05:27
jaldhar_ joined
05:29
Sgeo_ left,
Sgeo_ joined
05:30
chloekek left
05:34
squashable6 left
05:36
squashable6 joined
05:52
AlexDaniel joined
05:54
jaldhar_ left
05:55
jaldhar_ joined
05:58
jaldhar_ left
05:59
jaldhar_ joined
06:00
reportable6 left
06:02
reportable6 joined
06:05
Woodi joined
06:06
jaldhar_ left
06:07
jaldhar_ joined,
[particle]1 joined
06:08
Xliff left
06:09
[particle] left,
AlexDaniel left
06:10
cpan-p6 left,
cpan-p6 joined,
cpan-p6 left,
cpan-p6 joined
06:12
[particle] joined,
[particle]1 left
06:14
uid9164 joined
06:20
jaldhar_ left
06:21
jaldhar_ joined,
AlexDaniel joined
06:22
jaldhar_ left,
jaldhar_ joined
06:30
[particle]1 joined
06:31
[particle] left
06:32
jaldhar_ left,
jaldhar_ joined
06:34
jaldhar_ left,
jaldhar_ joined
06:42
AlexDaniel left
06:43
AlexDaniel joined
|
|||
AlexDaniel | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[2; *].say | 06:44 | |
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
AlexDaniel | m: my @a[3;3] = (<1 2 3>,<4 5 6>,<7 8 9>); @a[2; ^*].say | 06:45 | |
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
06:46
dyske joined
06:47
dyske left
06:57
[particle] joined
06:59
sjm_uk left,
[particle]1 left
07:01
chloekek joined
07:04
cygx joined
|
|||
cygx | perlcon livestream is live | 07:04 | |
07:08
dolmen joined
|
|||
El_Che | twitter.com/shadow_dot_cat/status/...05696?s=20 | 07:09 | |
livestreaming perl con eu | |||
Riga is in Search Results | 07:20 | ||
Local Time | |||
Eastern European Summer Time | |||
oops | |||
last line will doe | |||
-e | |||
07:20
dolmen left
07:23
jjmerelo joined
|
|||
El_Che | jjmerelo: looking at the abstract of your talk atm | 07:23 | |
jjmerelo | El_Che a lot of documentation | ||
El_Che | it will be livestreamed, so if no catastrophes happen at work I should be able to see it :) | ||
tadzik has a talk today as well I see | 07:25 | ||
jjmerelo | The slides, just published here: jj.github.io/apocrypha/#/ | ||
El_Che | apocrypha :) | 07:26 | |
lol | |||
jjmerelo | squashable6: status 2019-09-01 | ||
squashable6 | jjmerelo, Invalid date format | ||
jjmerelo | squashable6: status 2019/09/01 | ||
squashable6 | jjmerelo, I cannot recognize this command. See wiki for some examples: github.com/perl6/whateverable/wiki/Squashable | ||
07:27
[particle] left
|
|||
jjmerelo | squashable6: status 2019-09-02 | 07:27 | |
squashable6 | jjmerelo, Invalid date format | ||
jjmerelo | squashable6: status | ||
squashable6 | jjmerelo, Next SQUASHathon in 29 days and ≈20 hours (2019-09-07 UTC-12⌁UTC+20). See github.com/rakudo/rakudo/wiki/Mont...Squash-Day | ||
jjmerelo | squashable6: status 2019-08-02 | ||
squashable6 | jjmerelo, Invalid date format | ||
AlexDaniel | squashable6: status 2019-08-03 | 07:28 | |
squashable6 | AlexDaniel, Log and stats: gist.github.com/b05a2efff50945f1d7...26f868f1e0 | ||
jjmerelo | squashable6: status 2019-08-03 | ||
El_Che | jjmerelo: I hope you end your talk with "and now, ladies and gentlemen, we're moving from pod6 to md" | ||
squashable6 | jjmerelo, Log and stats: gist.github.com/39109c1016296a6b33...7f8e7fb017 | ||
AlexDaniel | jjmerelo: look at the PRs too | ||
jjmerelo | El_Che Not really. To DocBook! | ||
AlexDaniel | El_Che: I meaaan… is it meant to be a joke or something? :) | ||
El_Che: sometimes I have thoughts… | |||
jjmerelo | AlexDaniel: coming to Riga? | 07:29 | |
07:29
reach_satori_ left
|
|||
AlexDaniel | jjmerelo: right here | 07:29 | |
jjmerelo | AlexDaniel where are you? | ||
jjmerelo sitting in the front row | |||
AlexDaniel | jjmerelo: I'm on the second row, but I can't see you xD | 07:30 | |
El_Che | AlexDaniel: touch him on the shoulder :) | 07:31 | |
is SawyerX's talk the same he gave in the USA last month? | |||
(in that case I can skip it) | |||
(pretty clear that perl 6 is no longer in the picture there) | 07:32 | ||
AlexDaniel | jjmerelo: the data from squashable6 is not representative, I think | ||
jjmerelo | AlexDaniel what else should I use? | ||
AlexDaniel | jjmerelo: the amount of PRs, I think | ||
jjmerelo: and also how many files each PR touched… | 07:33 | ||
jjmerelo | AlexDaniel that's also in Squashable6's raw data | ||
AlexDaniel that's not. | |||
AlexDaniel | jjmerelo: for example this one updates 5 files: github.com/perl6/doc/pull/2930 | ||
07:33
lizmat joined
07:34
lizmat left
|
|||
El_Che | AlexDaniel: not a fan of pod, from the perl5 times. In the meantime the world moved to md (probably due to github) | 07:34 | |
jjmerelo | AlexDaniel well, every change ties to a commit so I guess it's just a matter of digging that up | ||
El_Che zef is using pod. Can't be convinced to use anything else. | 07:35 | ||
El_Che | md is universally supported: tooling, websites, people that can contribute know it... | ||
AlexDaniel | El_Che: there's a decluttering TODO item about doc files. We have pod5, pod6, md and asciidoc files, sometimes several types in the same repo | ||
jjmerelo | AlexDaniel do we have asciidoc in perl6/doc? | ||
AlexDaniel | jjmerelo: not in the docs, but there are some in MoarVM/MoarVM | 07:36 | |
jjmerelo | AlexDaniel I think I've identified you. Black shirt, a little to the right of the center of the room? | ||
El_Che | pod made sensen when Lary introduced ages ago | ||
AlexDaniel | jjmerelo: that's correct | ||
El_Che | now? less so. An weird thing people sigh at when looking at perl 6 | ||
jjmerelo | Well, Pod6 makes a lot of sense in Perl 6. Also, AlexDaniel, should we officially call it pod6 now? | 07:37 | |
07:37
[particle] joined
|
|||
AlexDaniel | jjmerelo: umm… is there any other name? | 07:37 | |
El_Che | is it short for Pretty Old Documentation? | 07:38 | |
:) | |||
chloekek | p and d both look like 6, p6d | ||
El_Che | 666 :) | ||
jjmerelo | AlexDaniel, well, there's this issue github.com/perl6/doc/issues/1923 | 07:39 | |
uid9164 | How do you search docs about perl6? I got few useful results on global bing. | ||
Do you search "perl6" on github directly? | 07:40 | ||
chloekek | El_Che: old but gold. | ||
El_Che | oobg | 07:41 | |
chloekek | POD has the killer feature that starting and ending markup uses different characters (e.g. C< and >), so you don't run into problems with nesting. And characters that are common in everyday speech, such as _ and *, aren't special. This is why I hope it will live on. :) | ||
El_Che | obg | ||
mnemonic: Oh Bee Gees! | |||
chloekek | uid9164: for docs about core libraries I search on docs.perl6.org. For other things I usually google "perl6" but there'sn't much rendered documentation out there, but you'll find some blog posts. | 07:42 | |
jjmerelo | uid9164 bing is probably not the best place to look for perl 6 docs. Official docs anyway are at docs.perl6.org or, right now, at docs.p6c.org | ||
uid9164 in general, Google is the best place to search for Perl 6 docs. Yandex, duckduckgo and bing, unfortunately, do not give as good results. | 07:43 | ||
El_Che | jjmerelo: you want to have doc and code together again like in p5? Or happy with the separation? | 07:45 | |
jjmerelo | AlexDaniel github.com/JJ/p6-app-squashathons/...g-2019.csv | 07:49 | |
AlexDaniel From that, we can come up with a formula to make it better | 07:50 | ||
And I'm freezing, so I'm going back to my room to get some clothes | |||
07:50
jaldhar_ left
07:51
jaldhar_ joined
|
|||
AlexDaniel | jjmerelo: IIRC, uzluisf fixed more pages than anybody else, or at least a lot | 07:51 | |
El_Che | jjmerelo: the high North, close to the Wall :) | ||
AlexDaniel | jjmerelo: so if the data does not reflect that, then the data is questionable :) | ||
07:53
zakharyas joined,
marcel_ joined
07:54
jjmerelo left
07:55
dolmen joined
08:01
AlexDaniel left
08:08
jjmerelo joined
|
|||
jjmerelo | AlexDaniel you have to question data with more data... | 08:08 | |
08:08
rindolf joined
08:09
antoniogamiz joined
08:11
dolmen left
|
|||
jjmerelo | AlexDaniel` there are many levels of data we can analyze, including, as you say, number of files or number of lines... | 08:13 | |
AlexDaniel` we can also weight differently contributions... Maybe we can talk it out during coffee. | |||
08:14
AlexDaniel joined
|
|||
AlexDaniel | jjmerelo: ok, data: | 08:14 | |
antoniogamiz | jjmerelo: at what time is your talk? | 08:15 | |
jjmerelo | antoniogamiz 12:15 | ||
08:15
dolmen joined
|
|||
antoniogamiz | riga time or spain time? | 08:15 | |
jjmerelo | riga time | ||
AlexDaniel | jjmerelo: there were 28 pages marked as proofread: 101-basics about classtut community containers contexts control faq intro math nativetypes objects optut performance pod tables unicode unicode_ascii int Backtrace Backtrace::Frame ComplexStr FatRat IntStr NumStr Perl RatStr StrDistance | ||
jjmerelo | In 1 hour | ||
antoniogamiz | ok, thanks :) | 08:16 | |
AlexDaniel | jjmerelo: uzluisf did 16, so more than half 101-basics.pod6 about.pod6 classtut.pod6 community.pod6 container.pod6 contexts.pod6 control.pod6 faq.pod6 glossary.pod6 intro.pod6 newline.pod6 objects.pod6 pod.pod6 quoting.pod6 syntax.pod6 tables.pod6 | ||
am I right or am I right? :) | |||
antoniogamiz | I think you're right | ||
:D | |||
08:20
AlexDaniel left,
jjmerelo left
|
|||
SmokeMachine | there is no sound on Riga stream! | 08:25 | |
fixed! thanks! | 08:26 | ||
antoniogamiz | 10 minutes :DDD | 08:30 | |
08:32
reach_satori_ joined
08:35
ravenousmoose_ left,
ravenousmoose_ joined
08:42
noisegul joined
|
|||
antoniogamiz | room $ has started! | 08:43 | |
and @ too | |||
cygx | Hi, I'm tadzik; I'm a bad programmer ;) | 08:44 | |
antoniogamiz | haha | ||
noisegul | Good morning :) | 08:45 | |
antoniogamiz | morning! :D | ||
noisegul: check twitter.com/shadow_dot_cat/status/...05696?s=20 to see perlcon! | |||
% room is having problems or something? | 08:47 | ||
noisegul | antoniogamiz: thanks, good to see there's a stream, I was wondering about that | ||
08:48
marcel_ left
|
|||
chloekek | .oO(Use a random number generator stored in $*RNG for rand) |
08:53 | |
Would be fun to implement the Mersenne Twister in Perl 6 and see how fast it can be. | 08:57 | ||
antoniogamiz | mersenne twister? | 08:58 | |
chloekek | It's an algorithm for generating pseudorandom numbers | ||
antoniogamiz | ah :o | ||
chloekek | I wish to write a roguelike in Perl 6 but I want deterministic world generation based on given seed, so I can't rely on an unspecified RNG. | 08:59 | |
09:04
lizmat joined
09:05
|oLa| joined
|
|||
noisegul | chloekek: Of course for world seeding you might need some more features, but seeding the regular rand is possible afaik docs.perl6.org/routine/srand | 09:08 | |
chloekek | noisegul: Yeah, but different implementations of Perl 6 may give different results. And it's not thread-local AFAICT. | 09:10 | |
noisegul | chloekek: True | ||
chloekek | perl6: srand(42); say rand | 09:11 | |
perl-6: srand(42); say rand | |||
camelia | ( no output ) | ||
0.27451833236771117 | |||
09:11
huf joined
|
|||
chloekek | perl-6: srand(42); say rand | 09:12 | |
perl6: srand(42); say rand | |||
camelia | 0.27451833236771117 | ||
(timeout) |
|||
chloekek | 🤔 | 09:13 | |
noisegul | chloekek: Likely want to influence probability distribution too for a roguelike? Not sure if Perl 6 supports that by default in any way. | ||
cygx | chloekek: it should be per-thread, at least on moarvm | ||
MVMThreadContext has a rand_state mamber | 09:14 | ||
*member | |||
chloekek | noisegul: probability distributions can be built on top of a uniform RNG. | ||
cygx: Ah nice. | |||
AlexDaniel` | chloekek: camelia is just not feeling well about the jvm backend I think | 09:15 | |
chloekek | Yeah it had trouble yesterday too. | 09:16 | |
09:20
jaldhar_ left
09:21
jaldhar_ joined
09:25
lizmat left
09:27
[Sno] joined
|
|||
AlexDaniel` | I still can't find anybody who'd be able to fix it | 09:30 | |
timotimo: are you sure you can't? | |||
09:31
AlexDaniel joined
09:34
antoniogamiz left,
antoniogamzi joined,
uid9164 left
|
|||
chloekek | bisectable6: srand(42); say rand | 09:35 | |
bisectable6 | chloekek, Bisecting by output (old=2015.12 new=74f2d3f) because on both starting points the exit code is 0 | ||
chloekek, bisect log: gist.github.com/072daa6ef0a71cfeb8...0c8d2c005c | |||
chloekek, (2018-03-25) github.com/rakudo/rakudo/commit/a2...bf10bc1d11 | |||
09:36
AlexDaniel left
|
|||
chloekek | Hah, the only thing that ever changed was the number of digits in the output. | 09:36 | |
09:38
Ven`` joined
|
|||
El_Che | www.youtube.com/watch?v=ce_hu-16UJU <-- jmerelo's talk starts about -10m | 09:43 | |
antoniogamzi | docs power | ||
Ven`` | oh, it's good to know that you can watch all the talks you can't attend :) | 09:44 | |
El_Che | yeah, if you scroll on the right channel, everything is there | ||
including Larry's video message | |||
Ven`` | that one was broadcasted in the room with everyone, no need to pick a track | 09:45 | |
El_Che | TimToady: a speed recovery! | ||
speedy | 09:56 | ||
10:10
antoniogamzi left
10:12
antoniogamiz joined
10:13
cygx left,
Ven`` left
10:23
pilne left,
[Sno] left
10:27
pat_js joined
|
|||
kentnl | github.com/perl6/nqp/commit/104a5c...4f18965187 # this says you need JDK 9+ right? Maybe README is out of date | 10:43 | |
10:44
antoniogamiz left
|
|||
kentnl | github.com/perl6/nqp/issues/571 # filed a bug | 10:55 | |
11:08
jaldhar_ left
11:09
jaldhar_ joined
11:12
marcel_ joined
11:14
jaldhar_ left
11:15
jaldhar_ joined
11:16
[Sno] joined,
jaldhar_ left
11:17
jaldhar_ joined
11:20
jaldhar_ left
11:21
jaldhar_ joined
11:26
jaldhar_ left,
jaldhar_ joined
11:28
jaldhar_ left,
jaldhar_ joined
11:29
pamplemousse joined,
pat_js left,
jaldhar_ left,
jaldhar_ joined
11:36
jaldhar_ left
11:37
jaldhar_ joined,
ravenousmoose joined
11:38
dolmen left
11:39
ravenousmoose_ left,
zakharyas left
11:40
jaldhar_ left
11:41
jaldhar_ joined
11:42
jaldhar_ left
11:43
jaldhar_ joined
11:44
jaldhar_ left
11:45
jaldhar_ joined
11:46
jaldhar_ left
11:47
jaldhar_ joined
|
|||
chloekek | What's the conceptual difference between Seq and Iterable? | 11:50 | |
11:52
nwellnhof joined
|
|||
timotimo | iterable is put into a seq, seq has all the transformation methods | 11:52 | |
nwellnhof | p6: say .WHAT for *[0], *[0;0] | ||
camelia | (WhateverCode) (Whatever) |
||
nwellnhof | This is inconsistent. I'd expected *[0;0] to be WhateverCode, too. | 11:54 | |
timotimo | agreed | 11:55 | |
committable6: releases say (*[0;0]).WHAT | 11:57 | ||
committable6 | timotimo, ¦releases (39 commits): «(Whatever)» | ||
timotimo | at least it has always been this way, haha | 11:58 | |
11:58
jaldhar_ left
11:59
jaldhar_ joined
|
|||
chloekek | timotimo: why are the transformation methods not on Iterable? | 11:59 | |
12:00
reportable6 left,
jaldhar_ left
12:01
jaldhar_ joined
12:02
jaldhar_ left,
reportable6 joined
12:03
jaldhar_ joined
|
|||
timotimo | hm, so that something only has to implement one or two methods to become an iterable i guess? | 12:05 | |
12:06
pat_js joined
|
|||
cpan-p6 | New module released to CPAN! Gnome::GObject (0.13.15) by 03MARTIMM | 12:07 | |
chloekek | timotimo: role methods need not be stubbed | ||
timotimo | true, iterable also has some default implementations | 12:08 | |
oh, i have been talking about Iterator instead of Iterable | |||
12:10
jaldhar_ left,
jaldhar_ joined
12:11
pamplemousse left
12:14
jaldhar_ left
12:15
jaldhar_ joined
12:16
jaldhar_ left
12:17
jaldhar_ joined
|
|||
timotimo | many Iterable will just return the .iterator of some internal thing, i believe | 12:23 | |
kentnl | is parrot still a going concern, or has it, uh, run down the curtain and joined the choir invisible? | 12:28 | |
kentnl notes parrot.org's SSL certificate expired in 2011 | |||
12:28
jaldhar_ left
|
|||
timotimo | at least rakudo doesn't support parrot any more. nqp might? | 12:28 | |
12:29
jaldhar_ joined
|
|||
kentnl | I'm not actually using this, so I'm not sure, but its just recently cropped up on my radar of things that need a bit of love vendor side :) | 12:29 | |
kentnl desperately hopes parrot.org gets updated with something about pining for the fjords | 12:30 | ||
12:30
jaldhar_ left
12:31
jaldhar_ joined
12:32
pat_js left,
jaldhar_ left
|
|||
kentnl | trac.parrot.org/parrot/report/1 # noting to see here other than spam :/ | 12:32 | |
not even eggs or bacon or saussage. | 12:33 | ||
12:33
jaldhar_ joined
12:34
nwellnhof left
12:36
[Sno] left
12:40
jaldhar_ left
12:41
jaldhar_ joined
12:42
jaldhar_ left
12:43
jaldhar_ joined
12:44
satori__ joined
|
|||
chloekek | Some parrots are up to 95 years old. | 12:46 | |
12:47
reach_satori_ left
12:52
jaldhar_ left
12:53
jaldhar_ joined
12:54
[Sno] joined
12:55
pat_js joined,
lucasb joined
13:05
Ven`` joined
13:06
jaldhar_ left
13:07
jaldhar_ joined
13:10
ambs left
13:22
jaldhar_ left
13:23
jaldhar_ joined
13:30
jaldhar_ left
13:31
jaldhar_ joined
13:34
jaldhar_ left
13:35
jaldhar_ joined
13:38
jaldhar_ left
13:39
jaldhar_ joined
13:40
jaldhar_ left,
zakharyas joined
13:41
jaldhar_ joined
13:42
jaldhar_ left
13:43
jaldhar_ joined
13:46
jaldhar_ left
13:47
jaldhar_ joined,
pat_js left
13:49
pat_js joined
13:50
satori__ left
13:53
dolmen joined,
[Sno] left
13:54
curan left,
jaldhar_ left
13:55
jaldhar_ joined
13:56
jaldhar_ left
13:57
jaldhar_ joined
13:58
jaldhar_ left
13:59
jaldhar_ joined
14:00
[Sno] joined,
jaldhar_ left
14:01
jaldhar_ joined
14:03
Ven`` left
14:04
jaldhar_ left
14:05
jaldhar_ joined
14:07
[Sno] left
14:08
jaldhar_ left
14:09
jaldhar_ joined
14:10
jaldhar_ left
14:11
jaldhar_ joined
14:12
jaldhar_ left,
jaldhar_ joined
14:13
pamplemousse joined
14:14
jaldhar_ left
14:15
jaldhar_ joined
14:18
jaldhar_ left
14:19
jaldhar_ joined
14:20
jaldhar_ left
14:21
jaldhar_ joined
14:22
jaldhar_ left
14:23
jaldhar_ joined
14:24
jaldhar_ left
14:25
jaldhar_ joined
14:26
antoniogamiz joined,
jaldhar_ left
14:27
jaldhar_ joined
14:28
jaldhar_ left
14:29
jaldhar_ joined
14:30
jaldhar_ left
14:31
jaldhar_ joined
|
|||
moritz | I know a dead parrot when I see one! | 14:31 | |
14:32
jaldhar_ left
14:33
jaldhar_ joined
14:35
aborazmeh joined,
aborazmeh left,
aborazmeh joined
14:42
jaldhar_ left
14:43
jaldhar_ joined
14:44
jaldhar_ left
14:45
jaldhar_ joined
|
|||
Guest37021 | www.youtube.com/watch?v=vnciwwsvNcc | 14:47 | |
antoniogamiz | I have a module, called A::B, inside that, I declare a class, called A::B::C | 14:50 | |
14:50
harmil joined
|
|||
antoniogamiz | is there a way to avoid A::B::A::B::C as the name of the class? | 14:50 | |
harmil | I'm working on a spec for Perl 6 Regexes to be used by other programming languages. If you have time to review, I'd be thankful... github.com/ajs/tools/pull/3 | 14:51 | |
antoniogamiz | (without declaring the class as C) | ||
14:51
Itaipu_ joined
14:52
Itaipu left
|
|||
harmil | antoniogamiz: sure what you're asking. In file A/B/A/B.pm6 you can declare "class C {...}" | 14:52 | |
timotimo | antoniogamiz: does "is export" help? | ||
harmil | also that | 14:53 | |
jnthn | antoniogamiz: try class GLOBAL::A::B::C, alternatively :) | ||
14:53
pat_js left
|
|||
lucs | Can I trust submethod DESTROY to happen at the latest at program termination time (supposing normal termination)? | 14:53 | |
antoniogamiz | oh is export, I totally forgot lol | ||
thanks to everyone! :D | |||
timotimo | lucs, no, no gusranteed execution of DESTROY | ||
lucs | Hmm... Okay. | 14:54 | |
harmil | I want "was" adverbs that cause my attributes to be set if someone sets back the clock... ;-) | ||
14:55
ChoHag joined
|
|||
cpan-p6 | New module released to CPAN! Docker::API (0.1) by 03CTILMES | 14:56 | |
14:56
jaldhar_ left,
jaldhar_ joined
|
|||
chloekek | lucs: you can use the END phaser instead. | 14:57 | |
lucs | chloekek: Yeah, that would work, but I'm trying to figure out a way to have a resource cleaned up at exit time without needing to mention it explicitly. | 14:58 | |
Hmm... Maybe the constructor could set up the END phaser... | 15:00 | ||
But END is a compile-time thing, right? | 15:01 | ||
15:02
jaldhar_ left
|
|||
chloekek | p6: sub f { END { say 'hi' } }; f; f | 15:02 | |
camelia | hi | ||
15:02
Xliff joined
15:03
jaldhar_ joined
|
|||
chloekek | p6: sub f($x) { END { say $x } }; f(1); f(2) | 15:03 | |
camelia | 2 | ||
lucs | chloekek: In other words, that could do what I want. Thanks :) | ||
chloekek | p6: my @fs; END { .() for @fs }; @fs.push: { say 1 }; @fs.push: { say 2 } | 15:04 | |
camelia | 1 2 |
||
15:04
jaldhar_ left
15:05
jaldhar_ joined
|
|||
chloekek | p6: Code.() | 15:06 | |
camelia | Can not invoke a code type object in block <unit> at <tmp> line 1 |
||
15:10
jaldhar_ left
15:11
jaldhar_ joined
|
|||
lucs | Hmm... Not sure how each instance can get its own END. This fails (unsurprisingly): | 15:12 | |
p6: class Foo { has $.x; method TWEAK { END {say "Cleaning up $.x"} ; } ; } ; my $f1 = Foo.new: :x(42); my $f2 = Foo.new: :x(66); | |||
camelia | Cleaning up 66 | ||
15:12
jaldhar_ left
15:13
jaldhar_ joined
|
|||
timotimo | yeah, END is registered at compile time, so it's just called once | 15:13 | |
lucs | Makes sense, but no cigar for me :( | ||
timotimo | also: it'll also be called once if the spot where it's at was never reached by regular execution | 15:14 | |
github.com/colomon/Phaser-ATEXIT - maybe? | |||
ugexe | that also will keep the object from ever getting GC'd, no? | 15:15 | |
timotimo | also true | ||
lucs | ATEXIT looks like it might be what I need. I'll try it out. | 15:18 | |
ugexe | you need to store what to cleanup outside of the class, and cleanup without using the class instances. otherwise they cannot be GC'd | 15:19 | |
`my @CLEANUP; class IO::Path::Temp { method crate-temp-path($foo) { push @CLEANUP, $foo; ... } }; END { delete $_ for @CLEANUP }` | 15:20 | ||
timotimo | a code block "registered" with ATEXIT can hold on to the "self" lexically | ||
lucs | I see. Yeah, ugexe's solution looks more appropriate. | 15:21 | |
15:22
ufobat_ left,
Itaipu_ left,
marcel_ left
15:26
Itaipu joined
15:29
pat_js joined,
aborazmeh left
15:32
jaldhar_ left
15:33
jaldhar_ joined,
yqt joined
15:34
jaldhar_ left
15:35
jaldhar_ joined
|
|||
Xliff | Are the CArray initializers documented anywhere? | 15:35 | |
The NativeCall page is NOT what I am looking for...docs.perl6.org/language/nativecall#Arrays | 15:36 | ||
Can CArrays be initialized with a size? | 15:37 | ||
timotimo | don't they have an "allocate" method? | ||
Xliff | Ah! Yes they do. | 15:38 | |
Had to dig for that. | |||
15:41
chloekek left
|
|||
timotimo | Buf also offers that i believe | 15:42 | |
15:54
wildtrees joined
15:59
ChoHag left
16:00
jaldhar_ left
16:01
jaldhar_ joined
16:06
jaldhar_ left,
jaldhar_ joined
16:08
jaldhar_ left,
jaldhar_ joined
16:09
pamplemousse left
16:10
jaldhar_ left
16:11
jaldhar_ joined
16:22
jaldhar_ left
16:23
jaldhar_ joined
16:28
jaldhar_ left,
jaldhar_ joined
16:30
jaldhar_ left,
jaldhar_ joined
16:34
jaldhar_ left
|
|||
Xliff | Perl6 equivalent of: g_random_double_range (0.001f, 0.1f)? | 16:34 | |
16:35
jaldhar_ joined
|
|||
timotimo | m: (0.001e0 ..^ 0.1e0).rand | 16:36 | |
camelia | ( no output ) | ||
timotimo | m: say (0.001e0 ..^ 0.1e0).rand xx 100 | ||
camelia | (0.0020728849928354966 0.0033773072185459747 0.09621625919500143 0.0963009057744841 0.0436252729389831 0.08473158775099703 0.030079072043016106 0.052902203524269505 0.07958094518734521 0.0736889482531748 0.07583629143226973 0.06082624109461763 0.01381… | 16:37 | |
Xliff | \o/ | ||
:S I forgot Num literals. | |||
m: (-2e0 ^.. -0.1e0).rand.say | 16:39 | ||
camelia | -1.0323200837939441 | ||
16:40
jaldhar_ left
16:41
jaldhar_ joined
16:44
empee0 joined
16:48
jaldhar_ left
16:49
jaldhar_ joined
16:50
jaldhar_ left
16:51
jaldhar_ joined
16:52
chloekek joined,
jaldhar_ left
16:53
jaldhar_ joined
16:55
antoniogamiz left
16:56
jaldhar_ left
16:57
jaldhar_ joined
16:58
jaldhar_ left
16:59
jaldhar_ joined
17:00
jaldhar_ left
17:01
jaldhar_ joined
17:03
pat_js left
17:11
dolmen left
17:12
jaldhar_ left
17:13
jaldhar_ joined
17:14
jaldhar_ left
17:15
jaldhar_ joined
17:16
jaldhar_ left
17:17
jaldhar_ joined
17:18
jaldhar_ left
17:19
jaldhar_ joined
17:21
AlexDaniel joined
17:24
AlexDani` joined,
jaldhar_ left
17:25
jaldhar_ joined
17:26
AlexDaniel left,
AlexDani` is now known as AlexDaniel,
AlexDaniel left,
AlexDaniel joined,
jaldhar_ left
17:27
jaldhar_ joined
17:32
jaldhar_ left
17:33
jaldhar_ joined
17:34
jaldhar_ left
17:35
jaldhar_ joined
17:36
jaldhar_ left,
jaldhar_ joined
|
|||
chloekek | p6: my $proc := run 'nonexistent-program', :out; .say for $proc.out.lines; | 17:40 | |
camelia | ( no output ) | ||
chloekek | p6: my $proc := run 'nonexistent-program', :out; .say for $proc.out.lines; $proc.sink; | ||
camelia | The spawned command 'nonexistent-program' exited unsuccessfully (exit code: 1) in block <unit> at <tmp> line 1 |
||
17:41
marcel_ joined
|
|||
chloekek | Is it possible to sink the Proc automatically when the out seq is exhausted? | 17:41 | |
Kaypie | ugexe, from the discord: "Hi, I have a novice question. Trying to execute zef install Date::Names in Windows but get: Extracting with plugin Zef::Service::Shell::tar+{<anon|1>} aborted. No such method 'IO' for invocant of type 'Any' Any ideas how to fix it?" | ||
17:41
Kaypie is now known as Kaiepi
17:44
jaldhar_ left,
jaldhar_ joined
17:46
empee0 left,
jaldhar_ left
17:47
jaldhar_ joined
17:48
jaldhar_ left,
nepugia joined
17:49
jaldhar_ joined
|
|||
Geth | whateverable: de3270c98c | (Aleks-Daniel Jakimenko-Aleksejev)++ | xbin/Tellable.p6 Add some normalization in Tellable |
17:50 | |
17:50
jaldhar_ left,
jaldhar_ joined
17:52
jaldhar_ left,
jaldhar_ joined
17:59
|oLa| left,
harmil left
18:00
reportable6 left
18:03
reportable6 joined,
ChanServ sets mode: +v reportable6
18:04
jaldhar_ left
18:05
jaldhar_ joined
18:06
jaldhar_ left
18:07
jaldhar_ joined
18:08
jaldhar_ left
18:09
jaldhar_ joined
18:10
marcel_ left,
jaldhar_ left
18:11
jaldhar_ joined
|
|||
daxim | masak, paste.scsys.co.uk/585616?tx=on tl;dr it doesn't help to use the other operator, I remembered correctly | 18:11 | |
18:16
jaldhar_ left
18:17
jaldhar_ joined
18:19
cygx joined
|
|||
cygx | daxim: that's because token doesn't backtrack | 18:20 | |
you need regex for that | |||
masak | daxim: understood. it all sounds buggy to me. | 18:24 | |
cygx | masak: why? works as expected if you set :ratchet | 18:25 | |
(assuming I'm not missing relevant parts of the conversation) | |||
18:32
zakharyas left
18:34
jaldhar_ left
18:35
jaldhar_ joined
18:36
Woodi left,
jaldhar_ left,
cpan-p6 left
18:37
jaldhar_ joined,
cpan-p6 joined,
cpan-p6 left,
cpan-p6 joined
18:51
AlexDaniel left
18:52
jaldhar_ left,
jaldhar_ joined
18:54
jaldhar_ left,
jaldhar_ joined
19:00
lizmat joined
19:01
molaf joined,
jaldhar_ left
19:02
jaldhar_ joined
19:03
Doc_Holliwood joined
|
|||
ugexe | Kaypie: looks like they don't have a tar executable | 19:12 | |
normally the message would tell a user that, but it looks like this line github.com/ugexe/zef/blob/c44e1a60...ct.pm6#L44 needs to be `unless $extracted-to && $extracted-to.IO.e` | 19:13 | ||
i'm only guessing though | |||
or the tar client they do have doesn't act properly on windows | 19:14 | ||
(according to this comment in the code: # gnu tar on windows doesn't always work as I expect, so try another plugin if extraction fails) | 19:15 | ||
installing strawberry perl is probably the easiest fix if that is the case | |||
19:16
therealjj joined
|
|||
therealjj | m: [+] <4 8>.comb | 19:16 | |
camelia | Potential difficulties: Useless use of [+] in sink context at <tmp>:1 ------> 3<BOL>7⏏5[+] <4 8>.comb |
||
therealjj | m: [+] <4 8>.comb.say | ||
camelia | Potential difficulties: Useless use of [+] in sink context at <tmp>:1 ------> 3<BOL>7⏏5[+] <4 8>.comb.say (4 8) |
||
therealjj | m: say [+] <4 8>.comb | ||
camelia | 12 | ||
therealjj | m: say [+] <4 8>.words | ||
camelia | 12 | ||
cygx | m: say [+] <4 8> | 19:18 | |
camelia | 12 | ||
therealjj | m: say [...] <4 8>.words | 19:19 | |
camelia | (4 5 6 7 8) | ||
Doc_Holliwood | Why on earth won't IO::Socket::Async let me specify a timeout? | ||
And why does this: await IO::Socket::Async.connect( "fail.com", 22 ) | |||
19:20
Doc_Holliwood left,
Doc_Holliwood joined
|
|||
therealjj | m: say infix:<...>(<4 8>.words) | 19:20 | |
camelia | (4 8) | ||
Doc_Holliwood | I crashed | ||
ugexe | .NET doesn't let you timeout async socket operations | ||
so its not like some universal truth | 19:21 | ||
therealjj | Doc_Holliwood: this is mainly for evaluating expressions. You might want to ask that in #perl6-dev or #perl6 | ||
ugexe | this is #perl6 | ||
Doc_Holliwood | this is #perl6 | ||
therealjj | Oh. I didn't ask for that. Sorry then about all my evaluation | 19:23 | |
Doc_Holliwood | Ok, but I don't care about the timeout as much as the bug(?). If I read the docs right, IO::Socket::Async.connect( "fail.com", 22 ) returns a promise and on connect the promise should either be kept or broken, not an exception thrown | ||
19:24
therealjj left
|
|||
ugexe | m: say await IO::Socket::Async.connect( "fail.com", 22 ); | 19:26 | |
what exception? | |||
Doc_Holliwood | wait for the timeout | 19:27 | |
mmh. | 19:28 | ||
perl6: await IO::Socket::Async.connect( "fail.com", 22 ) | |||
ugexe | that is what happens when you await | ||
m: my $promise = start { die 666 }; await $promise | 19:29 | ||
poor bot is still waiting | |||
Doc_Holliwood | I think we killed her | ||
ugexe | if you don't await then it won't throw an exception | 19:30 | |
otherwise the broken promise result itself contains the exception | |||
Doc_Holliwood | See pastebin.com/GMYrLKCw | 19:32 | |
This is 6.d | |||
19:32
camelia joined
|
|||
ugexe | you are still using the result of the promises | 19:32 | |
which is an exception | |||
that you dont handle | 19:33 | ||
19:33
molaf left
|
|||
camelia | (timeout)An operation first awaited: in block <unit> at <tmp> line 1 Died with the exception: connection timed out in block <unit> at <tmp> line 1 |
19:34 | |
(timeout) |
|||
An operation first awaited: in block <unit> at <tmp> line 1 Died with the exception: 666 in block at <tmp> line 1 |
|||
19:34
ChanServ sets mode: +v camelia
|
|||
ugexe | m: my @promises = (1..10).map({ start { die 666 } }); my @answers = await @promises | 19:34 | |
camelia | An operation first awaited: in block <unit> at <tmp> line 1 Died with the exception: 666 in block at <tmp> line 1 |
||
ugexe | your expectation seems to be that that example should not throw an exception | ||
Doc_Holliwood | yes | 19:35 | |
ugexe | well, thats your problem | ||
Doc_Holliwood | i should get a list of 3 kept and one broken promise | ||
ugexe | you do | ||
and then you call `await` on them | |||
which gets the results | |||
m: my @promises = (1..10).map({ start { die 666 } }); say @promises.head; my @answers = await @promises | 19:36 | ||
camelia | Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Planned) An operation first awaited: in block <unit> at <tmp> line 1 Died with the exception:… |
||
Doc_Holliwood | how can a promise be kept or broken before you do the work, that makes no sense. | ||
ugexe | ...why do you think it hasn't done any work? | 19:37 | |
Doc_Holliwood | as i understand the promise is neither kept nor broken until it has been awaited | ||
ugexe | that is incorrect | 19:38 | |
19:38
camelCas- left
|
|||
ugexe | m: my $promise = start { say 1 }; sleep 10; say $promise; # why should this promise not be finished/Kept? | 19:38 | |
camelia | 1 Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 64, uncaught_handler => Callable), status => PromiseStatus::Kept) |
19:39 | |
ugexe | the work was done long before the sleep finished | ||
Doc_Holliwood | because it immedeatly returns. | ||
tadzik | . o O ( returns to what? :) ) | ||
ugexe | huh? | ||
Doc_Holliwood | m: IO::As | 19:41 | |
camelia | Could not find symbol '&As' in block <unit> at <tmp> line 1 |
||
ugexe | docs.perl6.org/type/Promise#method_start | ||
Doc_Holliwood | m: IO::Socket::Async.connect( 'fail.com', 22 ).status.say | ||
camelia | Planned | 19:42 | |
19:42
pamplemousse joined
|
|||
cygx | in case of exceptions, await dies a rethrow (eg ThreadPoolScheduler.pm6:57 ) | 19:43 | |
personally, I also would not have expected that | |||
Doc_Holliwood | see? it does the connect in some other thread or whatever. And once the connection has been established or not it does change the status to broken or kept | ||
ugexe | i dont see the problem. that is exactly what my mental model suggests should happen | ||
19:44
MasterDuke joined
|
|||
cygx | Doc_Holliwood: you need to await the individual promises and catch the errors they throw | 19:44 | |
Doc_Holliwood | the problem is that I don't understand why it throws an exception then? that defeats the whole purpose of not caring of the thread is doing. all i care is wether it returns successfully or not | ||
*of what | |||
19:45
dolmen joined
19:46
dolmen left
|
|||
ugexe | not caring what the thread is doing is not something any documents suggest afaik | 19:48 | |
but maybe im still missing something since things work the way i expect | 19:49 | ||
19:52
mowcat joined
|
|||
masak | daxim: what cygx said. token turns off backtracking. I had missed that. | 19:53 | |
cygx | ugexe: yeah, looks like it works as documented: docs.perl6.org/type/Promise#await | ||
"Any broken promises will rethrow their exceptions" | |||
timotimo | "await Promise.allof($the-one-promise)" will wait but not rethrow on failure | 19:54 | |
19:55
melezhik joined
|
|||
ugexe | perhaps its because the timeout exception from IO::Socket::Async itself isn't caught in CATCH or QUIT | 19:55 | |
melezhik | I am using run command to run external command and parse output - docs.perl6.org/routine/run | ||
sometimes I experience weird behavior ... look like run hangs because can't wait till external command closes stdout | 19:56 | ||
ugexe | react { whenever IO::Socket::Async.connect( "fail.com", 22 ) { say "Connected" }; CATCH { default { say "CATCH" } }; QUIT { default { say "QUIT" } } } | ||
i was expecting one of those handlers to fire but nope | |||
melezhik | it's just a question of some extra prints inside those external commands | ||
ugexe | try using Proc::Async instead | 19:57 | |
melezhik | like if consistently commented some prints and then commented them out increasing stdout size till I hit "stuck" behavior | ||
timotimo | yeah, that's just buffers filling up | 19:58 | |
ugexe | otherwise it sounds like a buffering issue (its waiting on more "output" from the process so it can continue decoding it) | ||
timotimo | the program you're running is waiting for you to consume output and cannot continue outputting | ||
ugexe | or what timotimo said | ||
melezhik | yeah, this what I wanted to mentioned - the buffering | ||
timotimo | your program is waiting for the program to finish writing its output and closing | ||
melezhik | any way to explicitly instruct run to flush buffer cache in run command? | ||
does Proc::Async deal with that? | 19:59 | ||
timotimo | it does. you'll just™ get the data as the process writes it | 20:00 | |
melezhik | ? | ||
timotimo | and if you need to buffer it, you'll just concatenate everything you read onto a buffer or string | ||
melezhik | I know in Perl5 I just set a special var telling Perl not to keep buffer | 20:01 | |
and flush it immediately | |||
timotimo | that's for discarding what the subprocess outputs? | ||
melezhik | yes | ||
ugexe | there is always a buffer if you are decoding | ||
or letting run decode rather | |||
timotimo | in that case you may want to just :!out in the run | ||
melezhik | not sure if I understand , this is what I do in Perl6 | 20:02 | |
$handler = run 'bash', $cmd, :out, :err; | |||
ugexe | if you ignore the output then use :!out and :!err to disable those handles completely | 20:03 | |
El_Che | mmm | ||
$room1 video seems to have disappeared | |||
melezhik | then `for $cmd.err.lines -> $line {} ` | ||
El_Che | I wanted to finish watching jnthn's talk | ||
melezhik | then `for $handler.err.lines -> $line {} ` | ||
ugexe | ah yeah there is some weird bugs there. i used to have to do crazy things like switch reading err before out, or closing one before the other | ||
melezhik | then `for $handler.err.lines -> $line { # do something with output here } ` | 20:04 | |
then `for $handler.out.lines -> $line { # do something with output here } ` | |||
ugexe | it went away when i changed to Proc::Async though | ||
melezhik | so both for stdout/stderr | ||
but as I said it's stdout is not being closed | 20:05 | ||
could it be rewritten on Proc::Async? | |||
I'd like to change my code minimally | |||
20:06
jaldhar_ left
|
|||
melezhik | then thing is that $handler is returned from function and used latter | 20:06 | |
20:13
[Sno] joined
20:20
khisanth_ left
20:23
pilne joined
20:26
chloekek left
20:33
khisanth_ joined
20:40
AlexDani` joined
20:41
AlexDani` is now known as AlexDaniel,
AlexDaniel left,
AlexDaniel joined
|
|||
AlexDaniel | Something I noticed today, it looks like some important people may be missing from that list: github.com/perl6/problem-solving#reviewers | 20:42 | |
if you're very involved in the perl 6 project, you should probably be on that list, please file a PR adding yourself | 20:43 | ||
20:49
pamplemousse left
|
|||
melezhik | ugexe and timotimo I just gave a Proc::Async a try. It's fantastic, because with minimal code rewriting it solves buffer issues and gives me stdout immediately. Much better! | 20:58 | |
github.com/melezhik/Sparrow6/commi...c22617eee1 | 20:59 | ||
thanks! | |||
20:59
AlexDaniel left
|
|||
Doc_Holliwood | timotimo: ah yes, thanks. | 21:02 | |
this seems to work fine now: pastebin.com/d7h43R4D | 21:03 | ||
I just wonder what happens if I throw several hundred hosts at it. In a video I just watched, jnthn says in 6.d the scheduler can handle it on its own | |||
timotimo | Doc_Holliwood: i would recommend "given $promise.result {", instead of "with $promise", then the $_ will already be the .result, making the code inside there a bunch shorter | 21:04 | |
Doc_Holliwood | fair point. tx | 21:07 | |
timotimo | yw | 21:09 | |
also important to remember that "with" is a conditional | |||
Doc_Holliwood | uuuh false friend there | 21:10 | |
thanks for pointing that out | |||
21:13
camelCaser joined
|
|||
Doc_Holliwood | I guess, I will receive a few downvotes for this one. some on PM hate it when they have to see what they can't have | 21:13 | |
timotimo | you have to pronounce "with" as "wif" :D | 21:14 | |
surely they can have the same thing by using poe or anyevent? | |||
21:15
go|dfish left
|
|||
Doc_Holliwood | I never did anything async in Perl. there are problems, esp. with windows and fork | 21:16 | |
so i never bothered | |||
21:17
go|dfish joined
21:19
MasterDuke left
21:21
melezhik left
21:26
cygx left
21:28
dolmen joined
21:29
AlexDaniel joined
21:31
pamplemousse joined
21:39
Ven`` joined,
molaf joined
|
|||
Voldenet | there's tiny problem with that code above (the pastebin one), it never closes the socket, which is very rude | 21:44 | |
21:45
AlexDaniel left
|
|||
Geth | doc/traps: 092c748aa2 | threadless-screw++ | doc/Language/traps.pod6 New regex interpolation trap section |
22:03 | |
22:06
dolmen left
22:08
dolmen joined
22:09
wildtrees left
22:10
Ven`` left
22:12
Cabanossi left
22:14
dolmen left
22:16
AlexDaniel joined
22:18
Doc_Holliwood left
22:20
molaf left
22:21
Cabanossi joined
22:26
Doc_Holliwood joined
|
|||
Doc_Holliwood | Stupid Webclient crashes all the time. | 22:26 | |
Anyway, in < say "promise got Kept" if $promise.status ~~ Kept; >, what is "Kept"? A type? | |||
m: Kept.say | 22:27 | ||
camelia | Kept | ||
Doc_Holliwood | m: Kept.perl.say | 22:28 | |
camelia | PromiseStatus::Kept | ||
Doc_Holliwood | How does this shortcutting work? | ||
22:37
satori__ joined
22:46
yqt left
22:53
dolmen joined
22:56
rindolf left
23:05
nightfrog joined
|
|||
El_Che | I wonder why the video from the first room at perlcon was removed | 23:06 | |
again a CoC conflict? | |||
who know | |||
s | |||
23:09
Doc_Holliwood left
23:29
[particle]1 joined
|
|||
cpan-p6 | New module released to CPAN! Console::Blackjack (1.0.0) by 03GDONALD | 23:30 | |
23:31
[particle] left
23:33
mowotter joined
23:34
khisanth_ left
23:35
mowcat left
23:37
cpup left
23:39
[particle]1 left
23:41
[particle] joined
23:45
[particle]1 joined
23:46
[particle] left
23:48
khisanth_ joined,
pamplemousse left,
[particle] joined
23:50
[particle]1 left,
dolmen left
23:51
dolmen joined
23:52
lucasb left
23:53
[particle]1 joined
23:55
[particle] left
|
|||
pilne | woah | 23:57 | |
i love 21 |