»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
00:02
DarthGandalf left,
skids joined
00:03
DarthGandalf joined
00:08
mulk[m] left,
Matias[m] left,
Matthew[m] left,
tadzik left,
ilmari[m] left,
M-Illandan left,
dp[m] left
00:11
DarthGandalf left,
DarthGandalf joined
00:14
wamba joined,
cpage_ left
00:15
maxp_ joined
00:20
DarthGandalf left,
DarthGandalf joined
|
|||
maxp_ | Can I ask you a question about grammars? But I must to show you some code | 00:23 | |
MasterDuke | maxp_: if it's more than one or two lines it's best to use a gist service | 00:24 | |
maxp_ | thanks! I will use it | ||
00:26
lukaramu left
|
|||
maxp_ | so... I have this program gist.github.com/anonymous/60831794...de975139b8 | 00:26 | |
the file it read is this: gist.github.com/anonymous/e5473780...42d277084d | 00:27 | ||
the grammar seems not work but the 'InsFunc' rule if I uncomment it works | 00:28 | ||
can you explain me why? | |||
MasterDuke | maxp_: i'm not great with grammars, but one thing i noticed here gist.github.com/anonymous/60831794...le1-txt-L5 is you have whitespace between the \s* and the string | 00:29 | |
when using a rule, whitespace (in the rule itself) is significant | 00:30 | ||
00:30
pyrimidine left
|
|||
maxp_ | yes but in the InsFunc rules ther is the whitespace too but it works | 00:30 | |
00:30
pyrimidine joined
|
|||
MasterDuke | oh, and when you have a grammar with a TOP, the entire input must match the TOP | 00:32 | |
it kind of has an implicit ^^ and $$ | 00:33 | ||
(or ^ and $, not exactly sure which) | 00:34 | ||
maxp_ | ok i try | ||
MasterDuke | what happens if you add .* before and after <InsertFunc> in TOP? | ||
00:35
pyrimidine left
|
|||
MasterDuke | if you haven't seen it before, docs.perl6.org/language/grammar_tutorial is a nice intro to Perl 6 grammars | 00:36 | |
babydrop | maxp_: but the TOP is also a rule. Try changing them to tokens | ||
maxp_ | yes i've seen it but it doesn't explain the implicit ^^ $$ | 00:37 | |
00:37
labster joined
|
|||
maxp_ | but... it works now i changed with this: | 00:37 | |
babydrop | oh doh | ||
maxp_ | gist.github.com/anonymous/516419b4...c92ec5acae | 00:38 | |
not it works | |||
babydrop | maxp_: right, .parse parses from start to end. It's implict ^ and $ | ||
maxp_ | thank you very much! | ||
MasterDuke | ah, docs.perl6.org/language/grammars#TOP mentions it | ||
welcome | |||
maxp_ | Ok I think I'm a bad reader | ||
so | |||
bye | 00:39 | ||
MasterDuke | it's not obvious | ||
babydrop | maxp_: if that works, then subparse will work instead of .* | ||
maxp_ | ok i will try | ||
babydrop | Though I don't see how what you pasted can work, since the token you're trying to match is not at the start of file :/ | ||
MasterDuke | "for .lines" | 00:40 | |
SmokeMachine | should I create a bug report? | ||
www.irccloud.com/pastebin/WOe90w5h/ | |||
maxp_ | because the insert new lines has whitespaces before and ';' or () characters; | ||
.+ match them | |||
MasterDuke | SmokeMachine: what's the Perl 6 code that triggered that? | 00:41 | |
SmokeMachine | its too big to post it here... | ||
Ill try to reduce that... | 00:42 | ||
maxp_ | babydrop: I've changed with | 00:44 | |
this and it works too: rule TOP { .* <InsertFunc> .* } | |||
because the whitespaces i presume | 00:45 | ||
00:48
cpage_ joined
00:49
aborazmeh joined,
aborazmeh left,
aborazmeh joined
00:54
canopus left,
bjz left
01:00
canopus joined
|
|||
AlexDaniel | SmokeMachine: of course… | 01:05 | |
SmokeMachine: no, don't create a bug report! Let's have this stinky bug there :P | |||
SmokeMachine: is it reproducible each time? | 01:06 | ||
SmokeMachine | AlexDaniel: Im not sure that its a bug... (I think it is... but im no sure...) | ||
it gives me different errors each time... | 01:07 | ||
AlexDaniel | SmokeMachine: what makes you think it's not? Are you using some NativeCall stuff? | ||
yes, that's ok | |||
01:07
lichtkind_ left
|
|||
SmokeMachine | the most common is Segmentation fault: 11 | 01:07 | |
AlexDaniel | yea, that's how most [SEGV] bugs behave | ||
SmokeMachine | no... Im using Suplies | ||
AlexDaniel | ok now that's interesting :) | 01:08 | |
SmokeMachine: can you post some code? I can try golfing it | |||
SmokeMachine | *Supplies | 01:09 | |
01:21
pmurias joined
|
|||
SmokeMachine | AlexDaniel: the code is: | 01:23 | |
www.irccloud.com/pastebin/IOFVFmBT/ | 01:24 | ||
www.irccloud.com/pastebin/6ZaHz5cx/ | |||
AlexDaniel | SmokeMachine: resources/classes ? | 01:29 | |
01:29
mr_ron left
|
|||
SmokeMachine | www.irccloud.com/pastebin/1bIasgzI/ | 01:29 | |
01:30
mr_ron joined
|
|||
babydrop | m: say "{7.2610255 / 0.578650}x faster" | 01:30 | |
camelia | rakudo-moar 5476d6: OUTPUT«12.54821654x faster» | ||
AlexDaniel | SmokeMachine: I am getting “Cannot find method 'EXISTS-KEY': no method cache and no .^find_method” | 01:31 | |
any ideas? | 01:32 | ||
SmokeMachine: somewhere in sub bla | 01:33 | ||
babydrop | Is there a trick on GitHub to view Blame for parent's commit? Right now I do parent commit -> find files -> find file -> blame again | ||
SmokeMachine | AlexDaniel: not yet... | ||
are you running with --fuzz | |||
? | |||
babydrop | Oh wow... the NaN thing wasn't my error... So I can actually claim the speed increase to my name \o/ | 01:34 | |
(it was added in 2014) | |||
AlexDaniel | SmokeMachine: oh | 01:35 | |
SmokeMachine: no, but doesn't help | |||
that's a compile time error | |||
01:36
bjz joined,
wamba left
|
|||
DrForr | Okay, finally got back online. I take it I need to get access to the advent admin access - I'm actually worried about network connectivity out here. | 01:37 | |
AlexDaniel | SmokeMachine: what rakudo version do you have? | 01:38 | |
babydrop | DrForr: what's your username? | ||
SmokeMachine | AlexDaniel:$ perl6 -v | 01:40 | |
This is Rakudo version 2016.11-172-g5476d60 built on MoarVM version 2016.11-41-gd2139b5 | |||
implementing Perl 6.c. | |||
01:40
seatek joined
|
|||
babydrop | that's HEAD | 01:41 | |
AlexDaniel | SmokeMachine: well, that's the error I'm getting: gist.github.com/AlexDaniel/903500b...861b64e9ee | 01:42 | |
it's actually somewhere in sub fuzz I think | |||
MasterDuke | babydrop: closest thing i could find in the git blame doc was one of its examples: "git blame -C -C -f $commit^! -- foo" - annotate the change between the commit and its parents | ||
babydrop | Well, I was looking for GitHub thing.... | ||
There's probably some weird shortcut key you need to press :( | 01:43 | ||
SmokeMachine | AlexDaniel: now I got this: | ||
MoarVM panic: Trying to unwind from wrong handler | |||
AlexDaniel | SmokeMachine: well that's great but how do I reproduce it if it doesn't compile :( | ||
2016.11-156-g0428b79 here, not head but still | 01:44 | ||
dalek | c: 2f8edca | samcv++ | doc/Type/Cool.pod6: Trigger doc rebuild |
01:45 | |
synopsebot6 | Link: doc.perl6.org/type/Cool | ||
01:45
Actualeyes joined
01:46
Pbv joined
|
|||
SmokeMachine | AlexDaniel: github.com/FCO/Test-Fuzz/tree/ERROR | 01:47 | |
babydrop | samcv: you around? | 01:48 | |
samcv | jyeah | ||
AlexDaniel | SmokeMachine: ok that works | 01:49 | |
SmokeMachine: segfault! Yay! | |||
SmokeMachine | \o/ | ||
babydrop | samcv: oh sorry, I misread the diff. Was gonna say L<uninames|#routine_uninames> in github.com/perl6/doc/commit/37d0646eb4f won't work on generated pages like docs.perl6.org/routine/uniname and was gonna suggest that as a reason for why the doc build is failing... But now I see that link already existed before | 01:50 | |
samcv | ah | 01:51 | |
01:54
pmurias left
|
|||
AlexDaniel | it does seem to crash without optimizations :) | 01:54 | |
ok let's see… | |||
babydrop | Travis ( travis-ci.org/perl6/doc/builds/182733730#L2191 ) says the failure is here github.com/perl6/doc/blob/master/h...fy.p6#L747 | 01:55 | |
well, somewhere in that block... | |||
We also have build logs here docs.perl6.org/build-log/ | 01:56 | ||
babydrop makes a wild guess that it's the '#' in URL L<General Category|en.wikipedia.org/wiki/Unicode_char...tegory> | 02:00 | ||
nope, there are others like it :/ | |||
02:02
travis-ci joined
|
|||
travis-ci | Doc build failed. Samantha McVey 'Trigger doc rebuild' | 02:02 | |
travis-ci.org/perl6/doc/builds/182772719 github.com/perl6/doc/compare/37d06...8edcade3d9 | |||
02:02
travis-ci left
|
|||
samcv | ugh | 02:02 | |
babydrop | Well, the error is still there somewhere :} | 02:03 | |
ohhh | |||
samcv: found it | |||
m: '|'.uniname.say | |||
camelia | rakudo-moar 5476d6: OUTPUT«VERTICAL LINE» | ||
babydrop | samcv: you got some fancy pants editor? | 02:04 | |
m: '|'.uniname.say | |||
camelia | rakudo-moar 5476d6: OUTPUT«VERTICAL LINE» | ||
babydrop | Bah | ||
Pbv | how generate html from perl6? | ||
babydrop | This is normally where I say I'm too drunk, right? :) | ||
samcv | wait where is the error though | ||
babydrop | Oh, what is it? | ||
samcv | line no? | ||
or maybe not talking to me | |||
babydrop | samcv: I was but I'm wrong :) | 02:05 | |
I had a brain fart. | |||
The error is somewhere in this commit: github.com/perl6/doc/commit/37d064...cfb942fedd | |||
The one before it got built and now the build shows this error (see bottom): docs.perl6.org/build-log/build-201...0+0000.log | 02:06 | ||
And I'm guessing that's the link generator. | |||
Pbv: that's a very vague question without an answer. | |||
Pbv | ok thank you | 02:08 | |
02:08
Pbv left
02:09
BenGoldberg joined
|
|||
babydrop | :/ | 02:09 | |
SmokeMachine | AlexDaniel: I think that's some kind of race condition... | 02:11 | |
dalek | c: 7130500 | samcv++ | doc/Type/Cool.pod6: Try and get it building again |
||
synopsebot6 | Link: doc.perl6.org/type/Cool | ||
babydrop shakes the Magic8 ball | 02:14 | ||
that'll fail :) | |||
I got a local build I'm golfing ATM | 02:15 | ||
weird AF. If I rename "routine" to "method" for uniprop it builds | 02:17 | ||
02:18
maxp_ left
|
|||
AlexDaniel | SmokeMachine: the code is kinda complex… cannot golf it past 100 lines | 02:18 | |
SmokeMachine | :( | ||
02:24
djbkd joined
02:28
pyrimidine joined
02:29
travis-ci joined
|
|||
travis-ci | Doc build failed. Samantha McVey 'Try and get it building again' | 02:29 | |
travis-ci.org/perl6/doc/builds/182775705 github.com/perl6/doc/compare/2f8ed...305006cd74 | |||
02:29
travis-ci left
|
|||
samcv | why does it hate me | 02:29 | |
babydrop is debugging it ATM | 02:30 | ||
02:32
pyrimidine left
|
|||
babydrop | oh yeah... I can smell a juicy bug.. | 02:33 | |
SmokeMachine | is this expected? | ||
www.irccloud.com/pastebin/SIvWXJRp/ | |||
babydrop | no more catfood for babydrop... tonight we dine | ||
SmokeMachine | m: loop [+] 1, 2, 3, 4 {.say} | ||
camelia | rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Missing blockat <tmp>:1------> 3loop7⏏5 [+] 1, 2, 3, 4 {.say} expecting any of: scoped block» | ||
SmokeMachine | m: loop ([+] 1, 2, 3, 4) {.say} | ||
camelia | rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Malformed loop specat <tmp>:1------> 3loop ([+] 1, 2, 3, 47⏏5) {.say}» | ||
AlexDaniel | what should it mean? :D | ||
babydrop | SmokeMachine: you meant `for` not `loop` | 02:34 | |
SmokeMachine: `loop` does a C-style loop | |||
AlexDaniel | what's the point of for if he has only one element after reduction | ||
SmokeMachine | m: loop ([+] 1, 2, 3, 4 > 0) {.say} | ||
camelia | rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Malformed loop specat <tmp>:1------> 3loop ([+] 1, 2, 3, 4 > 07⏏5) {.say}» | ||
babydrop | Ah, right | ||
AlexDaniel | so what are you trying to do? | ||
02:34
bjz left
|
|||
SmokeMachine | m: @a = 0; loop ([+] @a > 5) {@a.push: 1} | 02:35 | |
camelia | rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Variable '@a' is not declaredat <tmp>:1------> 3<BOL>7⏏5@a = 0; loop ([+] @a > 5) {@a.push: 1}» | ||
02:35
djbkd left,
lucasb joined
|
|||
AlexDaniel | just say what you want :) | 02:35 | |
babydrop | heh | ||
Where's first-code-block from? | |||
SmokeMachine | I just want to loop while the sum of all my array is less than 5 (for example) | 02:36 | |
02:36
djbkd joined
|
|||
babydrop | m: my @a = ^10; while @a.sum > 5 { "+".say; @a.shift } | 02:37 | |
camelia | rakudo-moar 5476d6: OUTPUT«++++++++++» | ||
babydrop | m: my @a = ^10; while @a.sum > 5 { @a.shift.say } | ||
camelia | rakudo-moar 5476d6: OUTPUT«0123456789» | ||
lucasb | babydrop: see the blame of the parent in github? | ||
babydrop | m: my @a = ^10; while @a.sum > 5 { @a.pop.say } | ||
camelia | rakudo-moar 5476d6: OUTPUT«9876543» | ||
lucasb | yeah, I wish it was easier than it is | ||
AlexDaniel | m: for ([\+] 1, 2, 3, 4) { last if $_ > 7; .say } | ||
camelia | rakudo-moar 5476d6: OUTPUT«136» | ||
lucasb | I do a little dance too, to get to it | ||
babydrop | star: use JSON::Tiny; say &from-json.WHO | 02:38 | |
camelia | star-m 2016.10: OUTPUT«Sub» | ||
babydrop | Man, how do I find which of the modules is sub being exported from? | ||
star: use JSON::Tiny; say &from-json.file | |||
camelia | star-m 2016.10: OUTPUT«site#sources/9B467EEF9267A777BB53BAA2F19BE2C9D756BEED (JSON::Tiny)» | ||
babydrop | good nuf I guess | ||
lucasb | blame -> wanted commit -> "View" in the desired file -> History -> second commit in the list -> find desired file and click on View again -> click on Blame again | 02:39 | |
SmokeMachine | sure! while!!! whats happening to me?!!! | ||
AlexDaniel | SmokeMachine: nothing wrong. ↑ there's example with [\+] that works just as well | 02:40 | |
SmokeMachine | :) | ||
babydrop | lucasb: well, I can save you a step there the parent commit is a link at the top of the page near commit sha | ||
AlexDaniel | still not loop though :P | ||
babydrop | or... I guess that's the parent's sha | ||
lucasb | babydrop: nope, that doesn't help :) | 02:41 | |
AlexDaniel | SmokeMachine: as for the segfault, yeah… dunno. You can try submitting a ticket | ||
but not sure if that's going to be very helpful | |||
02:41
bjz joined
|
|||
AlexDaniel | you can also run it under valgrind | 02:41 | |
but yeah even that probably won't help anything | |||
SmokeMachine | :( | ||
AlexDaniel: thank you very much! | 02:42 | ||
AlexDaniel | SmokeMachine: for example, there is stuff like this: rt.perl.org/Ticket/Display.html?id=128870 | ||
SmokeMachine: so it's hard to tell if its rakudo's fault in this case | 02:43 | ||
I mean… the code is a bit too complex to see :-/ | 02:44 | ||
babydrop | samcv: got it | ||
samcv | tell me! | ||
babydrop | samcv: for `routine` names, the build script tries to look up the sub in the referenced class. So it looks in Cool.pm and fails, because the sub is actualyl defined in Str.pm | 02:45 | |
samcv | true | 02:46 | |
babydrop | samcv: so just change `routine` to `method` in the `=head2` and I guess that'll do? | ||
02:46
ilbot3 left
|
|||
lucasb | ah, the bot always stop logging the channel at this time? then he comes back some minutes later? | 02:46 | |
dalek | c: 258c4de | samcv++ | doc/Type/Cool.pod6: Change routine to method |
02:47 | |
synopsebot6 | Link: doc.perl6.org/type/Cool | ||
02:47
ilbot3 joined
02:52
lucasb left
|
|||
dalek | c: e5ef1d0 | (Zoffix Znet)++ | htmlify.p6: Awesomify error of htmlfy.p6 script ... when routine is not found in a class's file. |
02:53 | |
02:53
kyclark joined
|
|||
babydrop | lucasb: reminds me of www.bash.org/?42196 | 02:54 | |
02:54
DarthGandalf left
|
|||
dalek | c: a3fd3f2 | (Zoffix Znet)++ | htmlify.p6: Fix typo |
02:56 | |
02:57
cdg_ joined
02:59
cdg left
03:05
RubioTerra left,
travis-ci joined
|
|||
travis-ci | Doc build passed. Samantha McVey 'Change routine to method' | 03:05 | |
travis-ci.org/perl6/doc/builds/182779578 github.com/perl6/doc/compare/71305...8c4deffaf8 | |||
03:05
travis-ci left
03:11
travis-ci joined
|
|||
travis-ci | Doc build passed. Zoffix Znet 'Awesomify error of htmlfy.p6 script | 03:12 | |
travis-ci.org/perl6/doc/builds/182780098 github.com/perl6/doc/compare/258c4...ef1d0b1e77 | |||
03:12
travis-ci left
03:14
noganex joined,
travis-ci joined
|
|||
travis-ci | Doc build passed. Zoffix Znet 'Fix typo' | 03:14 | |
travis-ci.org/perl6/doc/builds/182780328 github.com/perl6/doc/compare/e5ef1...fd3f25ad65 | |||
03:14
travis-ci left
|
|||
babydrop | go away.... | 03:14 | |
03:17
imcsk8_ joined,
noganex_ left
03:22
AlexDaniel left
03:28
xtreak joined
03:35
baest_ joined
03:36
cgfbee left,
nchambers^ joined
03:37
cgfbee joined,
zoosha joined,
KotH_ joined,
hoelzro_ joined,
jantore_ joined,
bartolin_ joined,
konobi_ joined,
hahainte1net joined,
tony-o_ joined,
cosimo_ joined,
mst_ joined,
tinita_ joined
03:38
cognominal left,
kaare_ left,
espadrine left,
espadrine joined,
avalenn joined
03:40
baest left
03:46
pyrimidine joined
03:51
pyrimidine left
03:54
kyclark left
03:55
BenGoldberg left
|
|||
samcv | ok so i got rakudo returning bools for applicable uniprops github.com/rakudo/rakudo/pull/944 | 04:08 | |
04:11
Sgeo_ joined
04:12
Sgeo left,
aborazmeh left
04:16
kyclark joined
04:18
skids left
04:19
pyrimidine joined
04:23
pyrimidine left
04:32
kyclark left
04:36
cibs left
04:38
cibs joined
04:49
khw left
04:58
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
DrForr | Anyone around to point me to the way to get the perl6advent account going?... My 'nt connection is ... pretty much cr*p. | 04:59 | |
I can't even get to my linode without stalling. | 05:02 | ||
05:09
mr_ron left
|
|||
DrForr | babydrop: (or anyone) I have no 'net connection. I can do 20th-24th because I'll be be back home. | 05:17 | |
05:21
cdg_ left
05:43
bjz left
05:44
bjz_ joined
05:52
Cabanossi left,
Cabanossi joined
05:56
nchambers^ left,
nchambers^ joined,
nchambers^ is now known as nchambers
06:00
rurban joined,
rurban left
06:01
pyrimidine joined
06:06
pyrimidine left
06:15
cpage_ left
06:17
aborazmeh left
06:18
Sgeo_ left
06:20
bjz_ left
06:25
bjz joined
06:41
cpage_ joined
06:46
telex left,
Actualeyes left
06:48
telex joined
06:52
Tonik joined
|
|||
samcv | okay so I fixed the problem with unicode short names not working properly and fixed uniprop('Name') replying 0 with this PR | 06:55 | |
github.com/rakudo/rakudo/pull/944 | |||
moritz | DrForr: /msg me an email address, and I can invite you to the blog | ||
samcv | my first substantial PR for rakudo, so hope it's already | ||
i included a script i used to test it and generate the code from the unicode txt file | 06:56 | ||
06:57
darutoko joined
06:58
hometruck joined
|
|||
hometruck | www.reddit.com/r/perl6/comments/5h...us_regexs/ how come it's so slow? | 06:58 | |
samcv | MoarVM doesn't implement any really fast string finding method like Boyer-Moore yet | 07:00 | |
sadly :( | |||
07:02
troys joined
|
|||
samcv | also can anybody direct me about who to ask if I can implement a `uniprops` function. we already have `uniprop`, and we have `uniname` and `uninames`. `uniprops` was also in the synopses (WIP), so is there | 07:03 | |
a mailing list i should ask or is here fine? | |||
geekosaur | #perl6-dev might be better. the lists are sadly useless for this kind of thing | 07:06 | |
samcv | ah ok thanks | 07:07 | |
07:12
labster left,
xtreak left
07:13
pyrimidine joined
07:15
xtreak joined
|
|||
hometruck | the boss said it would be working on it: irclog.perlgeek.de/perl6/2016-11-27#i_13637044 | 07:16 | |
seatek | Stuff like this is just so slick for doing types :) subset Email of Str where { Email::Valid.new.validate($_) }; | 07:17 | |
07:17
pyrimidine left
07:18
cognominal joined
|
|||
seatek | I've been kinda going nuts with typing everything | 07:18 | |
hometruck | also the Ulti feature above that seems extremely interesting: record based parsing of complex files | ||
don't believe the current engine can do that technically | 07:19 | ||
(without hacks) | |||
07:20
troys left
|
|||
samcv | nice seatek | 07:20 | |
seatek | yeah simple silly stuff like that has been saving SO much time and code | 07:22 | |
samcv: did you ever get your backwards parenthesis figured out? :) | 07:23 | ||
samcv | yeah i did | 07:31 | |
hah | |||
hometruck | me too: somehow those silly stuff fits perfectly my ways of doing things | ||
samcv | i wanted to do an advent but i have no clue what I would do it on | 07:32 | |
hometruck | I'm not an expert, but I have the impression that there are people payed to do things right, and people payed to do things fast | ||
samcv | that hasn't been done before | ||
07:39
sjoshi joined,
mohae left
07:43
labster joined
07:49
domidumont joined
07:50
pierre__ joined,
wamba joined
07:54
domidumont left,
bjz left,
domidumont joined
07:58
bjz joined
08:07
sjoshi left
08:08
bjz_ joined
08:09
bjz left
08:13
cibs left
08:14
CIAvash joined
08:15
cibs joined
08:18
pyrimidine joined
08:20
pyrimidine left,
pyrimidi_ joined,
bjz_ left,
djbkd__ joined,
pierre__ left
08:22
wamba left,
raiph left,
wamba joined,
dontbe^2 left
08:23
xtreak left,
djbkd left,
dontbe^2 joined
08:24
pyrimidi_ left
08:25
Sgeo joined
08:30
Actualeyes joined
08:36
kshannon joined
08:41
CIAvash left,
cibs left,
cibs joined
08:43
rurban joined
08:47
wamba left
08:49
hometruck left,
pecastro joined,
bjz joined
08:52
wamba joined
08:53
dontbe^2 left,
revdiablo left
08:54
Tonik left,
vike left,
Tonik joined
08:55
revdiablo joined
09:00
Actualeyes left,
cibs left
09:08
RabidGravy joined
09:10
cibs joined,
geraud1 joined
09:11
dontbe^2 joined,
mtj_ joined,
k-man joined,
raydiak joined,
alnewkirk joined,
charsbar______ joined
09:13
cibs left
09:14
Actualeyes joined
09:15
cibs joined,
sena_kun joined
09:16
xtreak joined
|
|||
nine | Did you know that there's a Japanese Perl 6 advent calendar? qiita.com/advent-calendar/2016/perl6 | 09:19 | |
09:22
pyrimidine joined
|
|||
nine | pyrimidine: found and reverted the MoarVM commit that broke Inline::Perl 5. Thanks for your help :) | 09:24 | |
RabidGravy | morning! | 09:28 | |
09:32
sena_kun left,
dontbe^2 left,
mtj_ left,
k-man left,
raydiak left,
alnewkirk left,
charsbar______ left
09:33
sena_kun joined,
dontbe^2 joined,
mtj_ joined,
k-man joined,
raydiak joined,
alnewkirk joined,
charsbar______ joined
09:35
lukaramu joined
09:39
setty1 left
|
|||
RabidGravy | jnthn, yeah I think I added Chronic.at because someone asked for it, and it was easy with the other scheduling stuff in there, but a Promise.at would be useful if it could be implemented efficiently | 09:41 | |
09:52
cibs left,
geraud1 left
09:58
cibs joined,
geraud1 joined
10:02
andrzejku joined,
FROGGS joined
10:10
wamba left
|
|||
RabidGravy | I think an order of the day might be for me to make a thing to periodically clear out the .precomp in my working directories | 10:27 | |
some of the older modules there are hundreds of files | |||
10:39
rindolf joined
10:49
pyrimidine left
10:52
pyrimidine joined,
xtreak left
10:55
xtreak joined
10:56
pyrimidine left
10:58
Sgeo left
10:59
TEttinger left,
xtreak left,
andrzejku left
11:00
labster left
11:02
Sgeo joined,
rurban left
11:09
pierre__ joined
11:21
CIAvash joined
11:22
lucasb joined
|
|||
RabidGravy ponders whether to perform the Fedora 25 upgrade *before* he does all the other things | 11:25 | ||
lucasb has a eternal item in his TODO list: "upgrade the distribution" | 11:27 | ||
RabidGravy | I used to be much more reluctant as about 50% of the time it would result in having to re-install the whole thing anyway, but the last several times it has just worked | 11:30 | |
lucasb | hey, very nice japanese advent calendar. I can't understand a single thing, but I'm looking at the code snippets and they are well formatted | 11:34 | |
11:37
pierre__ left
|
|||
tbrowder | .tell [Coke] Any suggestions or criticisms on my draft 12 Dec Advent blog? | 11:38 | |
titsuki | lucasb: Thanks for reading posts. Qiita currently doen't have formatter for Perl6. So I used Perl5's fomatter instead of Perl6's one. | 11:39 | |
dalek | c: c08a742 | gfldex++ | doc/Language/quoting.pod6: improve index entry |
11:43 | |
synopsebot6 | Link: doc.perl6.org/language/quoting | ||
11:49
pierre__ joined
11:51
CIAvash left
11:52
domidumont left
11:55
pierre__ left
11:56
hahainte1net is now known as hahainternet
11:58
AlexDaniel joined
|
|||
lucasb | if methods are has-scoped. does 'my method' and 'our method' makes sense? | 11:59 | |
12:02
lizmat left
|
|||
RabidGravy | I'd say not no | 12:03 | |
lucasb | yes, I agree | ||
class C { our sub foo {} }; C::foo # this works fine | 12:04 | ||
moritz | so, it seems we don't have an advent post for today yet | ||
lucasb | but 'my method' and 'our method' doesn't make sense IMO | ||
moritz | anybody know what's up? | ||
lucasb | I wish it was invalid syntax, and raised an error | 12:05 | |
moritz | or is there any article ready that could switch to today? | ||
RabidGravy | moritz, who was going to be doing it? | ||
titsuki | moritz: I can switch. | ||
moritz | titsuki: that would be awesome | ||
RabidGravy: DrForr | |||
RabidGravy | ah, he was travelling IIRC, it may be a timezone thing | 12:06 | |
where is the schedule again? | |||
sena_kun | RabidGravy, github.com/perl6/mu/blob/master/mi...6/schedule | 12:07 | |
RabidGravy | cheers | ||
good thing I looked as I thought I was doing the 12th not the 13th | 12:08 | ||
moritz | titsuki: I've published your post. Thank you very much! | 12:09 | |
sena_kun | titsuki++ | ||
dalek | c: 54f0c34 | gfldex++ | doc/Language/typesystem.pod6: correct our scoped methods and tell how to call them |
||
synopsebot6 | Link: doc.perl6.org/language/typesystem | ||
12:09
wamba joined
|
|||
titsuki | moriz: It's my pleasure. | 12:09 | |
moritz | lucasb: fwiw rakudo's setting uses 'my method...' | 12:10 | |
lucasb: it's useful for generating method to install somewhere, just not in sink context | |||
lucasb | moritz: yeah, I was confused. nevermind what i said :) | ||
'my method' and 'our method' makes sense in some contexts, yes | 12:11 | ||
moritz | .tell DrForr we've switched your advent post with titsuki's, so now you have until the 11th to write/publish yours | ||
yoleaux | moritz: I'll pass your message to DrForr. | ||
12:14
wamba left
|
|||
AlexDaniel | unicodable6: { .uniprop(‘Dash’) } | 12:17 | |
unicodable6 | AlexDaniel, U+002D HYPHEN-MINUS [Pd] (-) | ||
AlexDaniel, U+058A ARMENIAN HYPHEN [Pd] (֊) | |||
AlexDaniel, U+05BE HEBREW PUNCTUATION MAQAF [Pd] (־) | |||
AlexDaniel, gist.github.com/55af6a6d3156dddf19...1881c0dd48 | |||
sena_kun | Since github.com/perl6/doc/pull/1035 doesn't get any new comments/objections, I'll merge it at evening. | 12:19 | |
AlexDaniel | sena_kun: no need to wait, I'll review it now and merge | 12:20 | |
sena_kun | AlexDaniel, hmm, okay. | ||
RabidGravy | titsuki++ # nice | ||
AlexDaniel | sena_kun: what is “Temporary test file deletion” ? | 12:21 | |
RabidGravy | the example 3 is actually pertinent to my current interests | ||
sena_kun | AlexDaniel, it failed a build because of non-closed =table, but the enclusure is already okay in the master and merge will fix it. | ||
nine | win 13 | ||
AlexDaniel | whatever | ||
dalek | c: 1308514 | Altai-man++ | doc/Type/ (124 files): Big signature return type unification. This commit affects all signatures that exist in the type documentation: it replaces "returns " occurences with "-->" form. See github.com/perl6/doc/issues/1024#i...-264660360 for explanations. |
12:22 | |
c: f8448f2 | Altai-man++ | doc/Type/ (2 files): Two typo fixes |
|||
c: 88c2f5f | Altai-man++ | t/return-type.t: Test for return type in signatures |
|||
c: 40a97e3 | Altai-man++ | doc/Type/ (2 files): Changes need to resolve a merge conflict. |
|||
c: ae816b9 | Altai-man++ | t/return-type.t: Temporary test file deletion |
|||
c: 63d182a | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Type/ (121 files): Merge pull request #1035 from perl6/consistent-return-types Consistent return types |
|||
sena_kun | AlexDaniel, I had a conflict, because the test-file was removed in the master and edited in the branch. Git was not so smart to just delete/add, not move it, so the only solution that comes to me was to delete file in the branch and add it later in the master directly. | ||
AlexDaniel | sena_kun: 🤷 well, now everything is in master, soo ;) | 12:23 | |
sena_kun | AlexDaniel, sure, the tests will be soon then! | ||
AlexDaniel | sena_kun: so should we put them into t/ or xt/ ? | ||
sena_kun | AlexDaniel, xt/, I suppose. | 12:24 | |
AlexDaniel | okay | ||
it's not like random people contribute signatures very often | |||
but it's ok anyway | |||
as long as we have a test, there is no issue, I think | |||
sena_kun++ | 12:25 | ||
dalek | k-simple: eb2d294 | niner++ | t/01-sanity.t: Add missing use statements in test file The design of Perl 6 requires that use statements only have effect in a lexical scope. Otherwise it's impossible to use different (versions of) modules sharing a name in different parts of a program. This means essentially that we need to explicitly use all modules we need in a scope. |
||
AlexDaniel | u: { .uniprop(‘Sentence_Terminal’) } | 12:26 | |
unicodable6 | AlexDaniel, U+0021 EXCLAMATION MARK [Po] (!) | ||
AlexDaniel, U+002E FULL STOP [Po] (.) | |||
AlexDaniel, U+003F QUESTION MARK [Po] (?) | |||
AlexDaniel, gist.github.com/45c0ef96a7edff3c4b...9f28e9af1d | |||
AlexDaniel | 𑗊 – really? | 12:27 | |
12:27
mawkish joined
|
|||
RabidGravy | nine, I was think re the lexical use thing that a nice thing to go with it would be to make it possible (or easier,) to re-export types or such, | 12:30 | |
babydrop | Anyone got their Advent post ready already and can post today? | ||
" DrForr │ babydrop: (or anyone) I have no 'net connection. I can do 20th-24th because I'll be be back home." | |||
RabidGravy | babydrop, titsuki's got published already | 12:31 | |
babydrop | oh | ||
RabidGravy | so it's probably one for tomorrow | ||
12:31
pyrimidine joined,
wamba joined
|
|||
babydrop | huggable: advent | 12:32 | |
huggable | babydrop, github.com/perl6/mu/blob/master/mi...6/schedule | ||
dalek | c: 0e5ca87 | Altai-man++ | xt/return-type.t: Test for return type of signatures in type documentation |
12:33 | |
12:34
kurahaupo joined
|
|||
babydrop | Well, I was gonna write one about bug fixing for perl6.party. I can I can fudge it around a bit and make it apropo for Advent? | 12:35 | |
12:36
pyrimidine left
|
|||
moritz | babydrop: sure | 12:37 | |
babydrop | OK | ||
AlexDaniel | m: say 0x0F | ||
camelia | rakudo-moar a8ba26: OUTPUT«15» | ||
AlexDaniel | okay | ||
for those wondering | 12:38 | ||
u: { .uniprop(‘ASCII_Hex_Digit’) } | |||
unicodable6 | AlexDaniel, U+0030 DIGIT ZERO [Nd] (0) | ||
AlexDaniel, U+0031 DIGIT ONE [Nd] (1) | |||
AlexDaniel, U+0032 DIGIT TWO [Nd] (2) | |||
AlexDaniel, gist.github.com/f8f23ba69663c9a7c9...112151224b | |||
AlexDaniel | u: { .uniprop(‘Hex_Digit’) } | ||
unicodable6 | AlexDaniel, U+0030 DIGIT ZERO [Nd] (0) | ||
AlexDaniel, U+0031 DIGIT ONE [Nd] (1) | |||
AlexDaniel, U+0032 DIGIT TWO [Nd] (2) | |||
AlexDaniel, gist.github.com/982c23079e2eac7004...43a8bd031c | |||
sena_kun | Is it me or this example - docs.perl6.org/type/Str.html#method_indent looks LTA? | 12:39 | |
AlexDaniel | improve it? Perhaps a couple of extra examples won't hurt | 12:41 | |
sena_kun | Agreed. | 12:42 | |
moritz | at the Perl 6 training I gave, I tried to describe indent, and after 20s stopped myself, and simply showed it on script in the REPL | 12:44 | |
12:47
MasterDuke left
|
|||
lucasb | m: my &to = method (&c) { c(self) }; say 2.&to(* + 3).&to(* * 2) | 12:48 | |
camelia | rakudo-moar a8ba26: OUTPUT«10» | ||
sena_kun | moritz, the routine itself is simple, it is the example that makes me nervous. It looks like bad formatting at first glance and like a simple test at second. I don't say it is bad or non-descriptive, just somewhat LTA. | ||
lucasb | ^^ a generic method to chain the application of functions into a value | 12:49 | |
the name could be something like 'do', 'to', 'yield', 'tap' (but of course, these names conflicts with already existing keywords) | 12:50 | ||
sena_kun | lucasb, just use "."! :P | 12:51 | |
12:51
pecastro left,
djbkd__ left,
nchambers left,
baest_ left,
rburkholder left,
Celelibi left,
aindilis left,
Unavowed left,
cooper_ left,
zilti left
|
|||
babydrop | weeeeeeeeeee | 12:51 | |
12:52
pecastro joined,
djbkd__ joined,
nchambers joined,
baest_ joined,
rburkholder joined,
Celelibi joined,
aindilis joined,
Unavowed joined,
cooper_ joined,
zilti joined,
sivoais joined,
dg joined,
ttkp6 joined,
freeze joined,
lizmat joined
|
|||
RabidGravy | boom bang a bang | 12:52 | |
babydrop | We don't conflict with keywords, we shadow them :) | ||
lucasb | sena_kun: just "." ? but I'm not calling methods | ||
dalek | c: ea77029 | Altai-man++ | doc/Type/ (6 files): Removing of `proto` signatures. It is an internal implementation detail, it is noisy with no gain for a reader and we don't have them too many to keep. Fixes github.com/perl6/doc/issues/1033 |
||
babydrop | m: sub do {}; sub WHAT {}; sub I {}; sub say { }; do WHAT I say | ||
camelia | rakudo-moar a8ba26: OUTPUT«5===SORRY!5===Argument to "say" seems to be malformedat <tmp>:1------> 3{}; sub I {}; sub say { }; do WHAT I say7⏏5<EOL>Other potential difficulties: Unsupported use of bare "say"; in Perl 6 please use .say if you meant $_, or u…» | ||
sena_kun | lucasb, then "$" application will be good. | ||
babydrop | AAAAh | ||
My plan for world domination foiled by grammar | 12:53 | ||
12:53
tinita_ is now known as tinita
|
|||
lucasb | I wonder if anybody would think it's convenient to have such method into the base object, like Mu/Any ? | 12:53 | |
sena_kun: /j haskell | |||
RabidGravy | yeah the problem with Perl 6 is that there is such a rich set of well-chosen keywords that it's difficult to find things that don't conflict and still make sense ;-) | ||
12:53
canopus left
|
|||
babydrop | lucasb: I don't get that method at all. What's the point of it? | 12:54 | |
m: say 2.&(* + 3).&(* * 2) | |||
camelia | rakudo-moar a8ba26: OUTPUT«10» | ||
babydrop shrugs | |||
lucasb | instead of writing foo(bar(baz(x))), you can write x.to(baz).to(bar).to(foo) | 12:55 | |
babydrop | you can write x.&baz.&bar.&foo right now, so you're making it worse... | ||
lucasb | lol, my method is not needed at all. the feature is built into P6 already | ||
babydrop | \o/ | 12:56 | |
Yeah, you can use a sub as a method and the invocant will be the first arg (and you can still pass additional args) | |||
lucasb | I tried just 'say 2.(* + 3).(* * 2)' and assumed it didn't work | ||
babydrop | Ah, yeah, need the & in there | ||
AlexDaniel | and you can do it other way round too, I think | 12:57 | |
lucasb | on a related note, Ruby has a .tap method on the base Object | 12:58 | |
it yields self to the block given, but return self itself, not the return value of the block | |||
12:59
lizmat left
|
|||
lucasb | so, it's useful to apply side effects, discard the results and get self back as a return value | 12:59 | |
AlexDaniel | m: 42.base(2).chars.uniname.say | 13:01 | |
camelia | rakudo-moar a8ba26: OUTPUT«ACKNOWLEDGE» | ||
13:02
MasterDuke joined
|
|||
AlexDaniel | m: say uniname chars base 42: 2 : : : | 13:02 | |
camelia | rakudo-moar a8ba26: OUTPUT«ACKNOWLEDGE» | ||
RabidGravy | right, going to bite the bullet and apply this fedora upgrade | 13:03 | |
AlexDaniel | probably not the best example because all these things are available as subs | ||
m: say uniname chars base 42: 2 | |||
camelia | rakudo-moar a8ba26: OUTPUT«ACKNOWLEDGE» | ||
AlexDaniel | so this works too | ||
RabidGravy | so see you on the other side | ||
13:03
RabidGravy left
13:04
canopus joined,
ufobat joined
|
|||
dalek | : e4981e7 | (Zoffix Znet)++ | misc/perl6advent-2016/schedule: Claim 11th spot For "Perl 6 Core Hacking: Sometimes Things Slip Through The QASTs" DrForr as unable to do the 10th spot: "<DrForr> babydrop: (or anyone) I have no 'net connection. I can do 20th-24th because I'll be be back home" titsuki++ claimed it by moving 11th spot to 10th, so this post covers the now-empty 11th. |
13:06 | |
13:07
andrzejku joined
13:08
mawkish left,
mawkish joined,
lizmat joined
|
|||
dalek | c: 447e029 | gfldex++ | doc/Type/Callable.pod6: show relationship between .& and ∘ |
13:09 | |
synopsebot6 | Link: doc.perl6.org/type/Callable | ||
lucasb | m: 2 ==> (*+3)() ==> (* * 2)() ==> say() | 13:11 | |
camelia | rakudo-moar a8ba26: OUTPUT«10» | ||
13:12
mawkish left
|
|||
lucasb | ^^ I tried to write using fewer parentheses, but it doesn't work without them :( | 13:12 | |
13:12
mawkish joined
|
|||
moritz | m: say 10 # fewer parens, same result :-) | 13:13 | |
camelia | rakudo-moar a8ba26: OUTPUT«10» | ||
cognominal | zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz\|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| | 13:14 | |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||\|||\\\z\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ | |||
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\||||||||||||||||||||||||||||||||||||||\\\\\\\\\\\|||||||||\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\||\\||\\\\\\\\\\\\\\\\\\\\\\\\\\||||||||||\||||\\|-po7qqqp-oooppp-pppppppppppppppppoooooooooooooooooooooooooooo--p-oj o | |||
babydrop | yowser | ||
AlexDaniel | please keep calm :) | ||
lucasb | Christmas spirit is making everybody funny | ||
babydrop | That feels like a feline trying to communicate... | ||
cognominal | sorry | ||
lucasb | It surely is valid Perl 6 code | 13:15 | |
kurahaupo | cognominal: cat on keyboard? phone in pocket? scamps on your WiFi? | ||
13:17
pyrimidine joined,
Actualeyes left
13:19
aindilis left,
lizmat_ joined,
lizmat left,
aindilis joined,
lizmat_ is now known as lizmat
13:21
pyrimidine left
13:22
CIAvash[m] joined
|
|||
dalek | : 0d6d4f4 | (Mathieu Gagnon)++ | util/Text-SmartLinks/lib/Text/SmartLinks.pm: Change design to use POD title instead of syn_id At design.perl6.org, pages from p5 Pod have a syn_id for title while p6 Pod have the title section. The syn_id makes the search results more difficult. |
13:22 | |
: 41f11f0 | (Zoffix Znet)++ | util/Text-SmartLinks/lib/Text/SmartLinks.pm: Merge pull request #14 from 4d47/design-title Change design to use POD title instead of syn_id |
|||
13:30
pierre__ joined
13:31
Actualeyes joined
13:35
seatek left
|
|||
ufobat | m: "/foo" ~~ / ^ "" [$ || <?before "/"> ] /; print $/.perl; say " postmatch: { $/.postmatch }" | 13:38 | |
camelia | rakudo-moar a8ba26: OUTPUT«Match.new(ast => Any, list => (), hash => Map.new(()), orig => "/foo", to => 0, from => 0) postmatch: » | ||
ufobat | i would expect "/foo" as postmatch? am i wrong? | ||
moritz | ufobat: no, looks like a bug to me | 13:39 | |
ufobat | oh okey :/ | ||
moritz has a local patch, need to build and test | 13:40 | ||
ufobat | can i see the diff? :-) i am curious | 13:41 | |
moritz | m: say 'abc' ~~ /^/ and say $/.postmatch | ||
camelia | rakudo-moar a8ba26: OUTPUT«「」» | ||
moritz | ufobat: perlpunks.de/paste/show/584c0638.2d8e.1fc | 13:42 | |
I wonder if the nqp::if is really necessary | 13:43 | ||
I don't think we construct match objects for failed matches anymore | |||
also I wonder if $!orig wouldn't be even faster than $!CURSOR.target | 13:44 | ||
ah, $!CURSOR.target is probably always a string, $!orig not necessarily | |||
m: say 42 ~~ /.+/ && say $/.orig.^name | 13:45 | ||
camelia | rakudo-moar a8ba26: OUTPUT«IntTrue» | ||
ufobat | not sure what $!orig is- but assuming from and to is for example 2 | ||
moritz | $!orig is the thing that was matched against | ||
ufobat | then only if to == from == 0 its $!orig | 13:46 | |
moritz | ufobat: fix pushed | 13:47 | |
ufobat | thank you :-) i am happy | 13:48 | |
13:50
pyrimidine joined,
wamba left
13:58
pyrimidine left
|
|||
dalek | c: 535d70a | Altai-man++ | doc/Language/regexes.pod6: Fixes github.com/perl6/doc/issues/1030 |
13:59 | |
synopsebot6 | Link: doc.perl6.org/language/regexes | ||
c: c5d8949 | Altai-man++ | doc/Language/typesystem.pod6: We don't need external indexing if it is already a header. The whole syntax seems wrong here, which caused 404 entry. |
|||
synopsebot6 | Link: doc.perl6.org/language/typesystem | ||
14:01
rurban joined
14:05
bjz left,
bjz joined
14:08
lizmat left,
lizmat joined
|
|||
lizmat | to make things even faster, I'm thinking about creating postcircumfix:<[;]>(\SELF, \one, \two) candidates | 14:09 | |
the optimizer should then rewrite the generic code to those cases | 14:10 | ||
14:10
lizmat left
14:11
lizmat joined
|
|||
lizmat | to make things even faster, I'm thinking about creating postcircumfix:<[;]>(\SELF, \one, \two) candidates | 14:11 | |
the optimizer should then rewrite the generic code to those cases | |||
14:14
pyrimidine joined
14:16
lizmat left
14:18
pyrimidine left
|
|||
ufobat | Bailador now supports "prefix" - github.com/ufobat/Bailador/blob/pr...9-prefix.t :-) | 14:21 | |
sena_kun | ufobat++ | 14:22 | |
14:22
Sgeo left,
Sgeo_ joined
|
|||
tailgate | m: gist.github.com/ahalbert/748b49d69...3b30bf7396 | 14:27 | |
camelia | rakudo-moar b9e2ff: OUTPUT«FalseInternal error: inconsistent bind result in sub dl at <tmp> line 8 in block <unit> at <tmp> line 13» | ||
14:28
skids joined
14:32
pat_js joined
|
|||
timotimo | tailgate: instead of reducing with "and", you could .all instead | 14:36 | |
and i'd recommend using eq instead of ~~ on the LHS of that junction | |||
tailgate | thanks | 14:38 | |
AlexDaniel | what's up with this error message though? | ||
committable6: 2015.07.2 gist.githubusercontent.com/ahalber...onList.pm6 | |||
committable6 | AlexDaniel, Successfully fetched the code from the provided URL. | ||
AlexDaniel, ¦«2015.07.2»: TrueULLRRDDDLURDLUUUUD | |||
tailgate | yeah, that was the thing. I can't use @, so I was trying to figure out how to iterate over it | 14:39 | |
Is subset a "proper" way to make lists that have limited stuff in them? | |||
timotimo | "inconsistent bind result" happens when the "where" clause resolves to different values in the simple binder and the slow binder | 14:40 | |
m: sub foo(Str where { Bool.pick }) { say "yup" }; foo("hi") | |||
camelia | rakudo-moar 2bef4d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Cannot do non-typename cases of type_constraint yetat <tmp>:1------> 3sub foo(Str where { Bool.pick }7⏏5) { say "yup" }; foo("hi")» | ||
timotimo | m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi") | ||
camelia | rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
timotimo | m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi") | ||
camelia | rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
timotimo | m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi") | ||
camelia | rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
timotimo | m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi") | ||
camelia | rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
timotimo | m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi") | ||
camelia | rakudo-moar 2bef4d: OUTPUT«yup» | ||
AlexDaniel | haha | ||
alright | |||
well, that's LTA still… | 14:41 | ||
timotimo | the fast binder only generates a "fail/success" | ||
the slow binder then does it more carefully so it can actually figure out *how* things failed | |||
if we wanted to construct a more detailed account of how the fast and slow binder disagree, we'd have a slow and another slow binder instead | |||
tailgate | so, the slow one is my function, and the simple one checks if it's a List? | 14:42 | |
timotimo | no | 14:44 | |
14:44
mawkish left
|
|||
timotimo | the fast binder is a piece of code that gets compiled into the head of your function | 14:44 | |
so before the "for $d.List { ... }" bit there's actually a bunch of code to make sure the passed arguments are correct | |||
in this case it's probably just an "istype" that will then invoke your where clause for you | 14:45 | ||
tbrowder | tell [Coke] I'll be off the normal land-locked internet grid for Advent editing for a few hours while traveling. I just made some minor changes to the ending words and format. I will be monitoring IRC as well as my iPhone and cell carrier can handle it. | ||
andrzejku | hey guys | ||
timotimo | when that returns False (like the smartmatch in the line above it did), it'll say "binding failed. please generate a proper error message for me, dear slow binder" | ||
andrzejku | are sweden here? | ||
tbrowder | .tell [Coke] I'll be off the normal land-locked internet grid for Advent editing for a few hours while traveling. I just made some minor changes to the ending words and format. I will be monitoring IRC as well as my iPhone and cell carrier can handle it. | ||
yoleaux | tbrowder: I'll pass your message to [Coke]. | ||
andrzejku | swedish* | ||
tailgate | oh, the smartmatch failed | 14:47 | |
hmm | |||
timotimo | yeah, it said "False" before the error | 14:48 | |
tailgate | weird | ||
timotimo | yup, it's weird | ||
oh, well, that's easy | 14:49 | ||
ah, never mind, i'm dumb | |||
m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any(<U D L R \n>) }) | |||
camelia | rakudo-moar 2bef4d: OUTPUT«(any(True, False, False, False, False) any(False, False, True, False, False) any(False, False, True, False, False) any(False, False, False, False, False) any(False, False, False, True, False) any(False, False, False, True, False) any(False, True, False, Fa…» | ||
timotimo | m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any(<U D L R \n>) }).all | 14:50 | |
camelia | rakudo-moar 2bef4d: OUTPUT«all(any(True, False, False, False, False), any(False, False, True, False, False), any(False, False, True, False, False), any(False, False, False, False, False), any(False, False, False, True, False), any(False, False, False, True, False), any(False, True, …» | ||
timotimo | m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any(<U D L R \n>) }).all.so | ||
camelia | rakudo-moar 2bef4d: OUTPUT«False» | ||
timotimo | i didn't do \n right | ||
m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any('U', 'D', 'L', 'R', "\n") }).all.so | |||
camelia | rakudo-moar 2bef4d: OUTPUT«True» | ||
tailgate | yeah "\n" and '\n' tripped me up | ||
14:50
pierre__ left
|
|||
timotimo | yup, but it's right in your code | 14:51 | |
tailgate | lol, that's not something I hear often | ||
timotimo | ;) | 14:52 | |
m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any('U', 'D', 'L', 'R', "\n") }).reduce({ $^a and $^b }) | |||
camelia | rakudo-moar 2bef4d: OUTPUT«any(False, False, False, False, True)» | ||
timotimo | m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any('U', 'D', 'L', 'R', "\n") }) | 14:53 | |
camelia | rakudo-moar 2bef4d: OUTPUT«(any(True, False, False, False, False) any(False, False, True, False, False) any(False, False, True, False, False) any(False, False, False, False, True) any(False, False, False, True, False) any(False, False, False, True, False) any(False, True, False, Fal…» | ||
timotimo | counter-intuitive result of that reduce operation | ||
but it would give True even with reduce | |||
14:53
bjz left
|
|||
timotimo | m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any('U', 'D', 'L', 'R', "\n") }) ==> reduce({ $^a and $^b }) | 14:54 | |
camelia | rakudo-moar 2bef4d: OUTPUT«(any(True, False, False, False, False) any(False, False, True, False, False) any(False, False, True, False, False) any(False, False, False, False, True) any(False, False, False, True, False) any(False, False, False, True, False) any(False, True, False, Fal…» | ||
timotimo | m: my Str $test = qq{ULL\nRRDDD\n}; say ($test.comb.map({ $_ ~~ Str and $_ eq any('U', 'D', 'L', 'R', "\n") }) ==> reduce({ $^a and $^b })) | ||
camelia | rakudo-moar 2bef4d: OUTPUT«any(False, False, False, False, True)» | ||
timotimo | m: my Str $test = qq{ULL\nRRDDD\n}; say ($test.comb.map({ $_ ~~ Str and $_ ~~ any('U', 'D', 'L', 'R', "\n") }) ==> reduce({ $^a and $^b })) | ||
camelia | rakudo-moar 2bef4d: OUTPUT«True» | ||
14:54
bjz joined
|
|||
timotimo | i'm not sure why your code is b0rken | 14:54 | |
14:59
skids left
|
|||
tailgate | hmm. At one point the smartmatch returned true | 15:00 | |
15:00
pyrimidine joined
|
|||
tailgate | or I'm a crazy person | 15:00 | |
15:01
pat_js left
|
|||
tailgate | but hey, I've learned more about compilers here than in the class I took =) | 15:03 | |
15:04
pyrimidine left
15:07
Sgeo joined
15:08
Sgeo_ left
|
|||
dalek | c/return-ways-explanation: 3cb4189 | Altai-man++ | doc/Type/Signature.pod6: Attempt to explain ways to declare return type in signature |
15:09 | |
c/return-ways-explanation: bd83d34 | Altai-man++ | doc/Type/Signature.pod6: fill-region-as-paragraph |
15:14 | ||
ufobat | did substr() or postmatch() return a List? a while ago? | 15:15 | |
travis-ci.org/ufobat/Bailador#L2574 | |||
babydrop | ufobat: just use bisectable | 15:16 | |
bisectable6: help | |||
bisectable6 | babydrop, Like this: bisectable6: old=2015.12 new=HEAD exit 1 if (^∞).grep({ last })[5] // 0 == 4 # RT128181 | ||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128181 | ||
timotimo | or commitable | ||
15:17
pierre__ joined,
pierre__ left
15:18
Elena_Morova joined
|
|||
Elena_Morova | Helloo:3 im from Russia) does anyone want to chat with me? | 15:18 | |
timotimo | hey, how's the weather in russia? | ||
babydrop | heh | 15:19 | |
AlexDaniel | Elena_Morova: so what's your impression of Perl 6 so far? ;) | ||
babydrop smells a robot. | |||
AlexDaniel | babydrop: I don't mind. We like robots here :) | ||
15:22
Elena_Morova left
|
|||
AlexDaniel | well… | 15:23 | |
sena_kun | any LHF from rt-queue for a beginner to try? | 15:24 | |
tailgate | the important question: is it a perl6 robot | ||
ufobat | does bisectable6 use the exitcode? | 15:25 | |
15:25
RabidGravy joined
|
|||
AlexDaniel | ufobat: if it differs, yes | 15:25 | |
RabidGravy | there that all passed unremarkably | ||
AlexDaniel | ufobat: otherwise it will compare output | 15:26 | |
ufobat | bisectable6: old=2015.12 new=HEAD "/foo" ~~ /f/; exit 1 if $/.postmatch ~~ Str | ||
bisectable6 | ufobat, Bisecting by exit code (old=2015.12 new=2bef4d3). Old exit code: 1 | ||
ufobat, bisect log: gist.github.com/9bfea2f593a678bacc...8560279c5d | |||
ufobat, (2016-12-10) github.com/rakudo/rakudo/commit/2b...ae7d1f55cf | |||
ufobat | thanks :) | ||
timotimo | it created a list? o_O | 15:27 | |
that's pretty weird | 15:28 | ||
AlexDaniel | committable6: 2bef4d30a^,2bef4d30a "/foo" ~~ /f/; dd $/.postmatch | ||
committable6 | AlexDaniel, ¦«2bef4d30a^»: "oo"¦«2bef4d3»: ("oo",) | ||
AlexDaniel | timotimo: no, it creates a list now | ||
15:28
mst_ left,
mst_ joined
|
|||
MasterDuke | sena_kun: perl6.fail/t/LTA | 15:29 | |
15:30
travis-ci joined
|
|||
AlexDaniel | moritz: ↑ ping | 15:30 | |
travis-ci | Doc build passed. Altai-man 'Attempt to explain ways to declare return type in signature' | ||
travis-ci.org/perl6/doc/builds/182851925 github.com/perl6/doc/commit/3cb41891a2f1 | |||
15:30
travis-ci left
|
|||
timotimo | oh! | 15:30 | |
it has the , at the end of the line | |||
that's hilarious :D | |||
AlexDaniel | ah f | ||
MasterDuke | sena_kun: the LTA tickets are usually a bit easier | ||
AlexDaniel | can somebody fix it real quick? :-/ | ||
timotimo | sure | ||
sena_kun | MasterDuke, thanks, I'll try to dig in. | 15:31 | |
AlexDaniel | ufobat: thanks for reporting | ||
15:31
rurban left
|
|||
AlexDaniel | sena_kun: maybe even try writing some tests? github.com/perl6/roast/issues | 15:35 | |
15:35
bjz left,
mawkish joined,
travis-ci joined
|
|||
travis-ci | Doc build passed. Altai-man 'fill-region-as-paragraph' | 15:35 | |
travis-ci.org/perl6/doc/builds/182852791 github.com/perl6/doc/compare/3cb41...83d346abd0 | |||
15:35
travis-ci left
|
|||
sena_kun | AlexDaniel, if I will be unable to find appropriate ticket, I suppose. | 15:37 | |
15:38
mst_ is now known as mst
15:40
domidumont joined,
BenGoldberg joined
15:44
Khisanth left
|
|||
jnthn | sena_kun: rt.perl.org/Public/Bug/Display.html?id=130211 and rt.perl.org/Public/Bug/Display.html?id=130182 may be fairly approachable | 15:44 | |
sena_kun | jnthn, thanks! | 15:46 | |
moritz | AlexDaniel: pong | 15:51 | |
AlexDaniel | moritz: timotimo already fixed it, nvm | 15:52 | |
moritz | timotimo++ | ||
AlexDaniel | moritz: but you can still write some tests… :) | 15:53 | |
moritz | AlexDaniel: i've already done that; just waiting to push them until I'm able to run them | 15:54 | |
15:54
pmurias joined
|
|||
AlexDaniel | moritz: oh, then don't forget to close this: github.com/perl6/roast/issues/191 | 15:55 | |
masak | hm, nwc10 is not around, but I thought of him when I found www.naftaliharris.com/blog/why-mak...ython-2.8/ just now. | 15:56 | |
babydrop idly notes that were the two tests above an `is-deeply` they would've detected the regression github.com/perl6/roast/commit/99a9...86b00da63e | 15:57 | ||
15:57
Khisanth joined
16:00
raiph joined
|
|||
sena_kun | I wrote a test for rt.perl.org/Public/Bug/Display.html?id=125247 - it is about unfinished multi-line comment error message. What is the best place to put it? I'm thinking about "S02-one-pass-parsing/comment.t", but such filename looks a bit too wide. | 16:01 | |
psch | sena_kun: shouldn't that go in S02-lexical-conventions/comments.t with all the other comments tests? | 16:04 | |
babydrop | sena_kun: just stick it into integration/error-reporting.t | ||
sena_kun: in a is_run() test | |||
sena_kun | psch, babydrop, which way? :) | ||
psch | hm, right, error-reporting seems to fit better 'cause it's about an incomplete comment | 16:05 | |
and well, you're testing that it points at the right spot | |||
babydrop | sena_kun: github.com/perl6/roast/blob/master...il.pm#L237 | ||
sena_kun: what do you mean way? | |||
sena_kun | babydrop, you and psch noted two different files to put the test into. | 16:06 | |
babydrop | sena_kun: I suggested mine because the bug is about error reporting. | 16:07 | |
sena_kun | error-reporting.t seems good, thanks! | ||
16:08
RabidGravy left
|
|||
Ulti | if I wanted is it possible for me to make my own class thats like Grammar which has its own renamed methods like rule/token ? | 16:12 | |
where abouts is the implementation in Rakudo, I took a look and couldn't pin it down | |||
is it in NQP instead | 16:13 | ||
babydrop | Yeah, it's in NQP. | ||
timotimo | "renamed methods", do you mean you want "rule" to be named "sponge" instead? | ||
babydrop | Well, NQP has `grammar` | ||
m: class Foo is Cursor { token TOP {} }.parse | 16:14 | ||
camelia | rakudo-moar bfe4ab: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Null regex not allowedat <tmp>:1------> 3class Foo is Cursor { token TOP {7⏏5} }.parse» | ||
babydrop | m: class Foo { token TOP {} }.parse | ||
camelia | rakudo-moar bfe4ab: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Null regex not allowedat <tmp>:1------> 3class Foo { token TOP {7⏏5} }.parse» | ||
Ulti | no I mean I want Frinfron controllers to have get/put/post/delete | ||
babydrop | neat | ||
psch | well, you'd need a HOW for the class, and DECLARE for the class and the new Routine keyword | ||
timotimo | this is about EXPORTHOW, right? | ||
Ulti | yeah I assumed it would come down to a HOW but couldnt find one for grammars that looked like it was doing it | ||
psch | m: grammar G { }; G.HOW.^name.say | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Perl6::Metamodel::GrammarHOW» | ||
psch | that's just a ClassHOW that does DefaultParent | 16:15 | |
timotimo | well, rule, token, regex are just funny methods | ||
psch | m: grammar G { }; G.HOW.^mro.say; G.HOW.^roles.say | ||
camelia | rakudo-moar bfe4ab: OUTPUT«((GrammarHOW) (ClassHOW) (Any) (Mu))Required named parameter 'local' not passed in any roles at gen/moar/stage2/nqpmo.nqp line 1195 in block <unit> at <tmp> line 1» | ||
psch | m: grammar G { }; G.HOW.^mro.say; G.HOW.^roles(:local).say | ||
camelia | rakudo-moar bfe4ab: OUTPUT«((GrammarHOW) (ClassHOW) (Any) (Mu))No such method 'gist' for invocant of type 'Perl6::Metamodel::DefaultParent' in block <unit> at <tmp> line 1» | ||
Ulti | such reflection | 16:16 | |
psch | m: grammar G { }; G.HOW.^mro.say; G.HOW.^roles(:local).map({ $_.^name }).say | ||
camelia | rakudo-moar bfe4ab: OUTPUT«((GrammarHOW) (ClassHOW) (Any) (Mu))(Perl6::Metamodel::DefaultParent)» | ||
psch | there :P | ||
raiph | .ask TimToady `$` looks like an overlaying of `S` and `I`, a *S*ingle container containing an *I*tem. Did you invent that as a backromnemonic? | ||
yoleaux | raiph: I'll pass your message to TimToady. | ||
16:18
RabidGravy joined
|
|||
masak | raiph: I think the much easier explanation is that when `$` was chosen, it meant "scalar". | 16:19 | |
and in a way, sh and others had already made the choice of symbol. | |||
TimToady | there's always more than one reason for everything :) | 16:21 | |
yoleaux | 16:16Z <raiph> TimToady: `$` looks like an overlaying of `S` and `I`, a *S*ingle container containing an *I*tem. Did you invent that as a backromnemonic? | ||
BenGoldberg | I remember reading that the original version of $ was an overlaid 'U' and 'S', for United States currency, and the 'U' part was changed to a vertical line because people are lazy. | 16:23 | |
AlexDaniel | is there any module that allows writing € or £ instead of $? :P | 16:24 | |
sena_kun | I cannot install packages/Test/Util.pm with zef and I cannot pass this path as an argument. How can I solve "Could not find Test::Util at line 7" problem to run roast tests? | 16:30 | |
lucasb | Test::Util is inside roast repo, so I guess it's the way your are calling | 16:31 | |
*you are | |||
16:32
pyrimidine joined
|
|||
babydrop | sena_kun: how are you running the tests? | 16:33 | |
16:33
BenGoldberg left
|
|||
babydrop | sena_kun: make t/spec/integration/error-reporting.t | 16:34 | |
from rakudo's repo, with the roast checked out in t/spec | |||
sena_kun | babydrop, "perl6 integration/error-reporting.t", pwd is "/some/path/roast". Oh, wow. Thanks. | ||
16:34
khw joined
|
|||
babydrop | sena_kun: the `Test::Util` is included with `use lib <t/spec/packages>`. You could technically run it by adding `-Ipackages` but that particular file has fudge in it, so you'd get failures if you run it without the fudger | 16:35 | |
(and make does do the fudge) | |||
sena_kun | I tried roast repo firstly... | ||
16:36
pyrimidine left
|
|||
sena_kun | afk& | 16:38 | |
16:38
sena_kun left
|
|||
raiph | TimToady: Thanks. :) But I'm left None the Wiser who's really no Wiser than Socrates. My draft reply to the person who asked this question already began with "Larry likes to emphasize that there's more than one reason for everything" but I hoped you might say "partly" or "never heard that one before" or somesuch... | 16:40 | |
16:45
sena_kun joined,
M_o_C joined
16:47
mohae joined
|
|||
TimToady | if I said that on #perl6, you can probably search the logs for it; I don't happen to have any neurons dedicated to remembering that factoid | 16:52 | |
it does sound vaguely familiar... | 16:53 | ||
The big problem with mnemonics is that they're hard to remember sometimes... :) | 16:54 | ||
araujo | solved with meta-mnemonics | 16:56 | |
:) | |||
16:58
pyrimidine joined
|
|||
timotimo | metamnomics | 16:59 | |
17:00
pyrimidine left,
pyrimidi_ joined
|
|||
TimToady | Mna-mna! | 17:00 | |
mst | TimToady: do dooo de do do | 17:02 | |
timotimo | anamnomics? | ||
Xliff | do do do, do do do, do do do do do DO DO DO DO DO! | ||
Oh, I loved that. My nostalgia bone just got tickled. | 17:03 | ||
timotimo | du-du-du-du-du, du-du du-du-du-du-du, du-du du-du-du-du-du ... | ||
Xliff | www.youtube.com/watch?v=9ytei6bu7k...l=Rschris6 | 17:05 | |
Still getting this from modules in the ecosystem - "Cannot invoke this object (REPR: Null; VMNull)" | 17:06 | ||
17:07
pyrimidi_ left
|
|||
timotimo | ugh | 17:08 | |
17:09
wamba joined
|
|||
raiph | thanks for the memories #perl6 :) | 17:10 | |
dalek | c/return-ways-explanation: 8a4a26a | Altai-man++ | doc/Type/Signature.pod6: Fix grammar |
17:14 | |
pmurias | sena_kun: did you get your test to run? | ||
sena_kun | pmurias, yes, thanks. Now I'm preparing a PR. | ||
babydrop | \o/ | 17:15 | |
17:18
pierre__ joined
17:19
rurban joined
17:22
rurban1 joined,
pierre__ left
17:26
rurban left
17:27
BenGoldberg joined
17:36
andrzejku left
17:39
ufobat left
17:40
pyrimidine joined
17:45
pyrimidine left
|
|||
babydrop | sena_kun: did you run your test to see if it passes :} | 17:47 | |
sena_kun | babydrop, sure. If it didn't pass on travis... Shame on me then! | ||
babydrop | sena_kun: I don't think we run that anywhere on travis. | 17:48 | |
sena_kun | Ah, right. | ||
babydrop | But I can see why it'll fail :} | ||
sena_kun: how did you run it? Does make t/spec/integration/error-reporting.t actually pass? | |||
sena_kun: because the plan needs to be bumped: github.com/Altai-man/roast/blob/3a...rting.t#L5 | 17:49 | ||
17:49
Druui joined
|
|||
babydrop | sena_kun: also, would you change the test to look for just 'line 1'. This way the test won't fail if we change the word of the error in the future (like "begins on line 1"... "start at line 1", etc) | 17:50 | |
*the wording of the error | |||
sena_kun | babydrop, ah, right! Thanks for notice. My memory is somewhat fragile this evening. Yes, I'll correct the test. | 17:51 | |
babydrop | sena_kun++ thanks | ||
sena_kun | I always write my tests with `done-testing` and this time it betrayed me! | 17:52 | |
17:56
zakharyas joined
|
|||
pmurias | sena_kun: hint run the tests with "prove" | 17:56 | |
sena_kun | pmurias, will it work in roast repo? I'm currently doing testing with `make spectest` in rakudo repo, but it feels like injustice. | 17:58 | |
babydrop | note that that alone will fail with fudged tests. `make t/spec/blah/test.t` fudges (would create a file t/spec/blah/test.rakudo.moar) and if more detailed output is needed, I then run 6p is aliased to `prove -e './perl6' -vlr t/spec/blah/test.rakudo.moar`. There's some invocation that combines the two t/harness6 or t/fudgeall something or other. | 17:59 | |
pmurias | sena_kun: prove takes a -e flag that allows an arbitrary command | 18:00 | |
18:00
mr-foobar left,
pierre__ joined
|
|||
sena_kun | Ah, I see the error now. So this is what 255 return code means - plan wasn't updated. The phrase "All subtests passed" after it misguided me. | 18:01 | |
babydrop, done! | 18:03 | ||
18:03
rurban1 left
18:05
cibs left
|
|||
dalek | c/return-ways-explanation: 0aaff17 | Altai-man++ | doc/Type/Signature.pod6: Text tweaks |
18:05 | |
18:06
pierre__ left,
cibs joined
|
|||
AlexDaniel | sena_kun: othersd | 18:07 | |
on't | |||
:) | |||
sena_kun | Argh! | ||
emacs is too lively today, lol. | 18:08 | ||
18:09
zakharyas left
18:11
mr-foobar joined
|
|||
pmurias | should a nqp::fileislink be considered something that can be optimized out? | 18:12 | |
dalek | c/return-ways-explanation: ce8b05c | Altai-man++ | doc/Type/Signature.pod6: Fix grammar |
18:14 | |
18:22
eliasr joined
18:27
mawkish left
|
|||
pmurias | would someone do a stat system call just for the side effect? | 18:27 | |
18:35
andrzejku joined
|
|||
japhb | pmurias: Which side effect? | 18:37 | |
pmurias | the stat sytem call itself rather than it's result | 18:38 | |
japhb | pmurias: Only when interfacing with C (or maybe perl5) I would think ... because of the stat buffer caching. | 18:40 | |
18:40
mohae left
18:43
M_o_C left,
mohae joined
18:44
thundergnat joined
|
|||
japhb | Talk about random trivia that suddenly becomes vitally important in a very specific set of circumstances -- from the stat(2) manpage: "On Linux, lstat() will generally not trigger automounter action, whereas stat() will (but see fstatat(2))." | 18:44 | |
babydrop | So yesterday psch pointed out the comment in github.com/rakudo/rakudo/blob/nom/...7766-L7772 | 18:46 | |
but I still don't get what the infix:<,>($/) := blah gymnastics actually accomplish | 18:47 | ||
This one in particular: github.com/rakudo/rakudo/blob/nom/...7797-L7801 | |||
Like, why is the infix:<,>($/) needed instead of just using $/ ? | 18:48 | ||
thundergnat | Howdy #perl6 | ||
babydrop | \o | ||
thundergnat | I finally have a little free time to play around with perl 6 again. | 18:49 | |
psch | babydrop: did you try removing the infix:<,> call? | ||
babydrop: maybe that sheds some light on the necessity | |||
thundergnat | It's winter in the northern hemisphere and in celebration I wrote some perl 6 to generate some flakes. Couldn't mange snowflakes. Settled for n-flakes. \o/ | ||
github.com/thundergnat/n-flake | |||
Comments and criticisms welcome... though I would prefer something like "Maybe you should consider using this perl 6 idiom" over "Your mother was a hamster and your father smelt of elderberries!" | |||
;-) | 18:50 | ||
psch | babydrop: i'd expect e.g. '"foo" ~~ s/(.)/{.uc}/' to stop working without the infix:<,> call, at least that's what comment suggests | ||
+the | |||
err, $0.uc probably | 18:51 | ||
not $_.uc | |||
18:54
pyrimidine joined
18:56
sena_kun left
|
|||
babydrop | m: say S/(.)/{$0.uc}/ with "foo" | 18:58 | |
camelia | rakudo-moar bfe4ab: OUTPUT«Foo» | ||
babydrop | That still works, with this change: gist.github.com/zoffixznet/d13c78e...9f95685662 | ||
18:59
pyrimidine left
19:00
pyrimidine joined
|
|||
babydrop | m: my $result := Empty; use nqp; nqp::p6store($/, $result); dd $/ | 19:00 | |
camelia | rakudo-moar bfe4ab: OUTPUT«Slip $/ = slip$()» | ||
babydrop | m: my $result := Empty; use nqp; nqp::p6store(infix:<,>($/), $result); dd $/ | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Nil $/ = Nil» | ||
babydrop | m: my $result := "foo"; use nqp; nqp::p6store(infix:<,>($/), $result); dd $/ | 19:01 | |
camelia | rakudo-moar bfe4ab: OUTPUT«Str $/ = "foo"» | ||
babydrop | m: my $result := "foo"; use nqp; nqp::p6store($/, $result); dd $/ | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Str $/ = "foo"» | ||
babydrop | damn. This bit is part of my article and is the cause of a bug and I can't explain why we even have that in the first place. | ||
RabidGravy | thundergnat, looks good! Ship It! | 19:02 | |
babydrop | m: my $result := <a b c >; use nqp; nqp::p6store($/, $result); dd $/ | ||
camelia | rakudo-moar bfe4ab: OUTPUT«List $/ = $("a", "b", "c")» | ||
psch | babydrop: you still have the infix:<,> call in L7769? | ||
babydrop | m: my $result := <a b c >; use nqp; nqp::p6store(infix:<,>($/), $result); dd $/ | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Str $/ = "a"» | ||
babydrop | psch: yeah | 19:03 | |
psch | babydrop: 'cause i can imagine that that's the one that does the closure closing, while the others are cargo-culted | ||
RabidGravy | I was wondering whether the algorithm for generating the points has any other usage which would warrant the generation being separated from the rendering in a separate module | ||
psch | babydrop: mind, i'm not sure on that, and maybe all of those are superfluous or something; spectest probably would show | 19:04 | |
babydrop | spectesting now | ||
19:04
pyrimidine left
19:05
Druui left
|
|||
dalek | : b56bcc6 | (JJ Merelo)++ | examples/functional/monads.pl: Upgraded it to current version And added some stuff, too. |
19:07 | |
: b3a6b8b | moritz++ | examples/functional/monads.pl: Merge pull request #24 from JJ/master Upgraded it to current version |
|||
babydrop | no failures other than not ok 18 - .prematch for zero-width matches and .postmatch for zero-width matches which is 'cause I'm not on HEAD | 19:08 | |
And now that I stare at it... it just stores result of applied matches in $/ and Str!APPLY-MATCHES just returns a single string. | 19:11 | ||
So the second one is definitely either cargoculted or just leftover from Old Days | |||
samcv | what do you guys think if I made Atom/Github's perl 6 highlighter part of the perl 6 org. or this maybe would be non-kosher idk. MadCapJake still hasn't replied | ||
but would be cool since all p6 projects *are* on github so it affects how they show up on the web | 19:12 | ||
moritz | samcv: +1 | ||
samcv: if there's anything I need to do for that (create a repo, fork one, whatever), just tell me | 19:13 | ||
samcv | okay :) | ||
babydrop | moritz: well, I'm currently trying to read code with this glitch in it: i.imgur.com/FcMf3Ry.png | ||
So I'm all for the highlighter being easily hackable by perl6 org :) | |||
moritz | babydrop: :-) | 19:14 | |
babydrop: I'd disable syntax hilighting in that situation | |||
samcv | moritz, gonna transfer my fork to the perl6 repo | 19:15 | |
errr org right now | |||
babydrop | \o/ | ||
samcv | ok it's moving | 19:16 | |
github.com/perl6/language-perl6fe | 19:18 | ||
babydrop | great. So what's the process of using that instead of Madcapjake's version? | 19:20 | |
AlexDaniel | instead huh? | ||
babydrop | ? | 19:21 | |
AlexDaniel | I mean, just send a pull request, no? | ||
babydrop | AlexDaniel: to what? | ||
AlexDaniel | wait, you're moving it to perl6/ … what's going on here‽ | 19:22 | |
babydrop | AlexDaniel: I'll give visual aid: github.com/MadcapJake/language-per...43/commits | ||
AlexDaniel | so MadcapJake is still active but we're forking his thing huh? | ||
babydrop | AlexDaniel: I don't see him "being active". | ||
AlexDaniel | .seen MadcapJake | ||
yoleaux | I saw MadcapJake 2 Dec 2016 06:23Z in #perl6: <MadcapJake> well I'm gonna fiddle with this laptop some more and then hit the hay. Glad to be back! See you this weekend! | ||
AlexDaniel | this weekend is like today | 19:23 | |
don't you guys have a bit of patience or something? :) | |||
psch | the 2th was a friday, so it's clearly ambiguous vOv | ||
AlexDaniel does the word “guys” include all genders? | |||
psch | i think that is also ambiguous :P | ||
TimToady | it does in California, usually | 19:24 | |
well, at least in the phrase "you guys" | |||
19:24
darutoko left
|
|||
AlexDaniel | .oO( should use .oO() and /me properly too ) |
19:25 | |
samcv | babydrop, i'm going to publish 1.9 to the atom package repository, so whenever madcapjake gets back, he can depublish his one. and i will change the link that github uses for syntax highlighting as well to ours | ||
babydrop | samcv: sounds goods | ||
AlexDaniel: after 3 weeks of "soons" promised on twitter and github, there was plenty of patience dispensed. | |||
TimToady | .oO(.oO(*.oO)) |
19:26 | |
babydrop | Actually not soons but "tonights" | ||
Previous tonight was 8 days ago and one before that on Nov 22 | |||
AlexDaniel | well, if it's under perl6/, then I guess it doesn't matter | 19:27 | |
19:27
lizmat joined
|
|||
babydrop | And he promised to hang out commit bits so we could take care of stuff if he ain't got time, so I don't think he'd even mind this | 19:27 | |
TimToady: yeah, I know subparse doesn't scan.... | |||
AlexDaniel | should we keep it as a “fork” then? | ||
or just recreate the repo | 19:28 | ||
babydrop shrugs | |||
AlexDaniel | it's going to show “forked from MadcapJake/language-perl6fe” forever | ||
babydrop | As long as I get highlights on GitHub and in Atom I couldn't care less :) | ||
19:28
Tonik left
|
|||
babydrop | But so does a lot of stuff, like github.com/perl6/modules.perl6.org | 19:29 | |
AlexDaniel | “This branch is 5483 commits ahead, 2 commits behind MadcapJake:master” and stuff | ||
babydrop | well, maybe not a lot bug some. | ||
but | |||
AlexDaniel | well, seems like this issue can be resolved through GitHub support. So perhaps one day we can ask them to remove fork links for a list of repos with > 100 or so commits ahead? | 19:32 | |
anyway, doesn't matter | |||
samcv++, this is great | |||
samcv | :) | 19:33 | |
19:33
mohae left
|
|||
samcv | do you want me to recreate the repo or no? | 19:33 | |
i can do that | 19:34 | ||
psch | well, duplicating is how github suggests to solve this kinda issue | ||
samcv | ah | ||
TimToady | m: say 2.&([R∘] * + 3, * * 2) | ||
camelia | rakudo-moar bfe4ab: OUTPUT«10» | ||
TimToady | lucasb: ^^ another way | ||
babydrop | m: say (my $x = "foo") ~~ s:g/(.)/{$0.uc}/; dd $x | ||
camelia | rakudo-moar bfe4ab: OUTPUT«(「f」 0 => 「f」 「o」 0 => 「o」 「o」 0 => 「o」)Str $x = "FOO"» | ||
psch | i mean, sure, it links to the duplicating page when one wants to privatize a public fork | ||
babydrop | psch: I get the same result with the other infix:<,>($/) thing removed | ||
psch | but it's similarly applicable i'd say | ||
babydrop | So I don't get it at all :/ | ||
samcv | moritz, is there a way I can get full admin powers for this repo? | ||
psch | babydrop: that's curious. maybe FROGGS++ remembers :) | ||
AlexDaniel | samcv: :O don't you have them already if you created the repo? | 19:35 | |
psch | AlexDaniel: probably not after transfering ownership to the perl6 group | ||
samcv | i transfered it to the org | ||
i can push but that is all | |||
babydrop | samcv: done | ||
samcv | and i also probably need to setup a release branch too | ||
FROGGS | umm, what exactly? | ||
samcv | and then have people push to master | 19:36 | |
psch | FROGGS: rakudo commit 32d7b08334 | ||
FROGGS: babydrop is wondering about the infix:<,> calls | |||
samcv | and then a release branch for github/atom to source from | ||
babydrop | FROGGS: 1 sec, I'll show code | ||
FROGGS | I see it | 19:37 | |
babydrop | FROGGS: what's the point of this infix:<,> thing? github.com/rakudo/rakudo/blob/nom/...7768-L7772 | ||
There's a comment, but I don't get it | |||
FROGGS: and originally, that inquiry started with this one: github.com/rakudo/rakudo/blob/nom/...7797-L7801 | |||
But so far I came to conclusion that it's just a cargocult | 19:38 | ||
No idea about the first one tho | |||
FROGGS | it is about pulling out the first thing and assigning it to $/ | ||
guess it is about the :g modifier | |||
it most likely should prevent $/ becoming a List | |||
you can remove it an spectest to see what it affects | 19:39 | ||
19:39
mohae joined
|
|||
babydrop | Done that for the second one, no breakage | 19:39 | |
psch | which might mean we don't have a test that covers what would break | ||
samcv | ok done | ||
FROGGS | well, maybe it made a different pre-GLR | ||
psch | m: say "foo" ~~ s:g/(.)/{say $/.perl}/ | 19:40 | |
camelia | rakudo-moar bfe4ab: OUTPUT«Match.new(ast => Any, list => (Match.new(ast => Any, list => (), hash => Map.new(()), orig => "foo", to => 1, from => 0),), hash => Map.new(()), orig => "foo", to => 1, from => 0)Match.new(ast => Any, list => (Match.new(ast => Any, list => (), hash => M…» | ||
psch | m: "foo" ~~ s:g/(.)/{say $/.Str}/ | ||
babydrop | The second one receives apply-matches result and it it's always a string | ||
camelia | rakudo-moar bfe4ab: OUTPUT«fooCannot modify an immutable Str in block <unit> at <tmp> line 1» | ||
babydrop | Just removed the first one too and again no failures in spectest | ||
moritz | I guess we don't have a test for that because the semantics of $/ and mutiple matches was meant to be different | 19:41 | |
babydrop | m: s"x" = { 42 } given my $x = "foo"; dd $x | ||
camelia | rakudo-moar bfe4ab: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Variable '$x' is not declaredat <tmp>:1------> 3s"x" = { 42 } given my 7⏏5$x = "foo"; dd $x» | ||
moritz | when we've discussed that in the past, the idea seemed to have been to create a Match object that represents multiple matches, and bind that to $/ | 19:42 | |
psch | m: say so Match.new | ||
camelia | rakudo-moar bfe4ab: OUTPUT«True» | ||
psch | but that needs different truthiness | 19:43 | |
moritz | and expose the individual match objects as captures, or something | ||
psch | i mean, i had had a patch that nests Match objects somewhen last year | ||
and TimToady decided to make :g return a List of Match objects instead | |||
FROGGS | moritz: I'm almost sure that this was not the case when writing the patch | 19:44 | |
moritz | but is that list also bound to $/ ? | ||
babydrop | m: my $x = "foo"; s{.} = -> { 42 } given $x; dd $x | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Block object coerced to string (please use .gist or .perl to do that) in block at <tmp> line 1Str $x = "oo"» | ||
babydrop | What's the syntax to use a block with s/// ? | ||
psch | m: "foo" ~~ m:g/(.)/; say $/.WHAT | ||
camelia | rakudo-moar bfe4ab: OUTPUT«(List)» | ||
psch | moritz: ^^^ | ||
moritz | babydrop: s[.] = 'foo' | ||
oh | |||
m: $_ = 'foo'; s[.] = 'bar'; .say | |||
camelia | rakudo-moar bfe4ab: OUTPUT«baroo» | ||
babydrop | Well, I'm just reading the comment above the infix:<,> thing: "# ($/,) = $result - We do this so the replacement closure can close" | 19:45 | |
What replacement closure? | |||
"# over the current match." | |||
moritz | m: $_ = 'foo'; s[.] = $/.to | 19:46 | |
camelia | ( no output ) | ||
moritz | m: $_ = 'foo'; s[.] = $/.to; .say | ||
camelia | rakudo-moar bfe4ab: OUTPUT«1oo» | ||
psch | ...actually that was apparently *two* years ago that i had fiddled with :g | ||
FROGGS | m: say $_ = "foo"; $_ ~~ s[(.)] = "<$0>"; .say # babydrop: the "<$0>" is called as a closure | 19:47 | |
camelia | rakudo-moar bfe4ab: OUTPUT«foo<f>oo» | ||
FROGGS | $0 used to be Any at some point | ||
babydrop | FROGGS: hmm... but that still gives me the same result on my version without those two infixes | 19:48 | |
FROGGS | bisectable6: say $_ = "foo"; $_ ~~ s[(.)] = "<$0>"; .say | ||
bisectable6 | FROGGS, On both starting points (old=2015.12 new=bfe4abb) the exit code is 0 and the output is identical as well | ||
FROGGS, Output on both points: foo<f>oo | |||
babydrop | with these changes: gist.github.com/zoffixznet/b36be38...4a205595e1 | ||
committable6: all say $_ = "foo"; $_ ~~ s[(.)] = "<$0>"; .say | 19:49 | ||
psch | 5a06ace5c5c is 'allow $x ~~ s/// to return Match or list of Match' fwiw | ||
committable6 | babydrop, gist.github.com/767b22a455149c0eb6...668a9f3708 | ||
psch | so, yeah, that is probably decided for 6.c at least vOv | ||
FROGGS | the heck | ||
psch | we're not doing the .subst-mutate call anymore, but... | ||
FROGGS | babydrop: sorry, can't shed light on this | 19:50 | |
babydrop | :( | ||
lucasb | TimToady: thanks for the snippet! interesting way of doing it :) | ||
m: say ([Ro] *+3, * * 2, {$^a * $^a}, * + 11, * * 6)(2) | 19:53 | ||
camelia | rakudo-moar bfe4ab: OUTPUT«666» | ||
FROGGS | committable6: all say $_ = "foo"; $_ ~~ s:g[(.)] = "<$0>"; .say | 19:54 | |
TimToady | lucasb: now you just need to work "donald trump" in there somewhere | ||
committable6 | FROGGS, gist.github.com/ad67999616decb914d...7cceb0590f | ||
babydrop | bisectable6: old=2015.07 new=HEAD say $_ = "foo"; $_ ~~ s:g[(.)] = "<$0>"; .say | 19:55 | |
bisectable6 | babydrop, On both starting points (old=2015.07 new=bfe4abb) the exit code is 0 and the output is identical as well | ||
babydrop, Output on both points: foo<f><o><o> | |||
babydrop | FROGGS: well, I'm gonna toss them both then... spectest is clean. | 19:56 | |
psch | committable6: all say $_ = "foo"; $_ ~~ s:g[(.)] = "<$0>"; $/.WHAT.say | ||
committable6 | psch, gist.github.com/2b580d92f8cc929b30...0d3b7c9b4f | ||
FROGGS | babydrop: yeah, makes sense I guess | 19:57 | |
babydrop: look: rt.perl.org/Ticket/Display.html?id=126349 | 19:59 | ||
and these too: RT #125598, RT #123005 | |||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=125598 | ||
Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123005 | |||
20:00
pyrimidine joined
|
|||
FROGGS | committable6: all for 1 { my $x = 'a1'; $x ~~ s/(\d+)/<$0>/; say $x } | 20:00 | |
lucasb | github.com/rakudo/rakudo/commit/32...a25af014f0 | 20:01 | |
committable6 | FROGGS, gist.github.com/b6793aee1c9b3358bb...5340d4a8f8 | ||
babydrop | m: gist.github.com/zoffixznet/1a5cbd8...f86bfd82af | ||
camelia | rakudo-moar bfe4ab: OUTPUT«[11-22-33 44-55-66 77-88-99]» | ||
lucasb | FROGGS: ^^ not looking for that, no? | ||
babydrop | FROGGS: hm, now I finally see the difference. | ||
FROGGS: in my version without infixes, I get [11--22--33 44-55-66 77-88-99] for that one | |||
FROGGS | lucasb: that's the patch in question, yes | 20:02 | |
20:02
labster joined
|
|||
FROGGS | babydrop: sorry for the bad comments... should have linked the RTs at least | 20:03 | |
babydrop | No problem :) Glad we found something | ||
tailgate | I have a list of 3x3 matricies, and want to transpose all of them | 20:04 | |
I know I can use [Z] for one | |||
samcv | anyone know how I can create labels in github for issues? | ||
FROGGS | (found it via searching for "last changed by" and "closed at" in RT) | ||
tailgate | but I'm having trouble writing one that correctly tranposes all of them | ||
TimToady | how 'bout [Z]« or some such? | ||
babydrop | samcv: click on issues there's "Labels" button that leads to this page: github.com/perl6/language-perl6fe/labels | 20:05 | |
FROGGS | samcv: is it your repo? | ||
20:05
pyrimidine left
|
|||
samcv | oh hey | 20:05 | |
i have never seen this page before :) | |||
yes it is now that i recreated it | |||
i couldn't find it on my own projects either .thanks | |||
tailgate | should it be >>[Z]<< ? | ||
or just [Z]<< ? | 20:06 | ||
TimToady | no, you want to [Z] each array separately, so it's not an infix | ||
20:07
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg,
TEttinger joined
|
|||
TimToady | hmm, doesn't seem to parse right currently | 20:07 | |
tailgate | ah, I got it to work with .map({ [Z] @_ }); | 20:08 | |
babydrop | oh | 20:09 | |
I think it was just my terminal glitching, I get the same result for that [11-22-33] thing | |||
babydrop tests other tickets | |||
tailgate | nope | 20:10 | |
lucasb | m: $/ := 42; my $s = 'foo'; $s ~~ s/a/b/ | 20:12 | |
camelia | rakudo-moar bfe4ab: OUTPUT«Cannot modify an immutable Int in block <unit> at <tmp> line 1» | ||
lucasb | ^^ why can't $/ be rebound without touching the current value? | 20:13 | |
psch | m: my $x := 42; $x = 10; | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Cannot assign to an immutable value in block <unit> at <tmp> line 1» | ||
psch | lucasb: because it's not binding, it's assigning | ||
no, wait, modifying! | 20:14 | ||
babydrop | all those tickets have the same behaviour with my patch, so I'll push it. | ||
psch | hm | ||
i think whatever i used to know about the .match internals proobably doesn't apply anymore so yeah :) | |||
babydrop | lucasb: s/// sets the current $/ | ||
So... you're preventing it from doing so by binding $/ to an Int | 20:15 | ||
and it's crying | |||
20:15
domidumont left
|
|||
lucasb | makes sense | 20:15 | |
it assumes $/ is already bound to a scalar container... | |||
20:19
rurban joined
|
|||
lucasb | subs have a private $/ which blocks don't? | 20:23 | |
sub { $/ := 42 }(); 'a' ~~ /a/ # this works | |||
-> { $/ := 42 }(); 'a' ~~ /a/ # this fails | 20:24 | ||
20:29
BenGoldberg left
20:31
BenGoldberg joined
20:37
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
|
|||
BenGoldberg | m: -> { $/ := 42 }; say $/ | 20:39 | |
camelia | rakudo-moar bfe4ab: OUTPUT«Nil» | ||
BenGoldberg | m: (-> { $/ := 42 })(); say $/ | ||
camelia | rakudo-moar bfe4ab: OUTPUT«42» | ||
BenGoldberg | m: (sub { $/ := 42 })(); say $/ | ||
camelia | rakudo-moar bfe4ab: OUTPUT«Nil» | ||
babydrop | no need to wrap block/sub in parens | 20:43 | |
m: sub { @_.say }("weee") | |||
camelia | rakudo-moar bfe4ab: OUTPUT«[weee]» | ||
20:44
pyrimidine joined
|
|||
samcv | ok what should i name the new package on atom at least, i don't think they can have the same name as existing ones | 20:44 | |
language-perl6-fe maybe with a dash? | 20:45 | ||
instead of language-perl6fe | |||
babydrop | Something that makes it easy to tell it's best one | ||
samcv | language-perl6-FUN-EDITION | ||
babydrop | Is that what fe stands for? | ||
mst | -Ofun is always turned on | ||
samcv | yeah | ||
well there's no 'language-perl6' yet | 20:46 | ||
babydrop | that one looks good | ||
samcv | it will have a higher version number than the other package | ||
ok | |||
since it's part of perl6 org group that should prolly be fine | |||
20:48
pyrimidine left
20:53
pyrimidine joined
|
|||
samcv | atom.io/packages/search?utf8=%E2%9...mp;q=perl6 | 20:53 | |
\O/ | |||
so published. i'm going to edit a few things now that i have all the links for the package | 20:54 | ||
babydrop | woooo | ||
samcv++ great job | |||
samcv | what should i have the repo name on the perl 6 org tho | 20:55 | |
maybe atom-language-perl6? | |||
babydrop | sure | 20:57 | |
20:57
pyrimidine left
20:59
cdg joined
21:02
sena_kun joined
21:06
lizmat left
21:09
eliasr left
21:13
FROGGS left
21:15
aindilis` joined,
aindilis` left,
aindilis left
21:17
aindilis joined
21:18
thundergnat left
|
|||
samcv | ok now it's all done :) | 21:25 | |
babydrop | \o/ | ||
samcv | ok cool. have a releases branch, i set it to protected so me and other admins can push to that | 21:26 | |
and i'll have that branch be the one github points to, and anybody in the org can push to master if they wish, or make a PR for review | 21:27 | ||
babydrop | m: my $e = Empty; ($e,) = 42; say $e | 21:29 | |
camelia | rakudo-moar 772ead: OUTPUT«()» | ||
babydrop | m: my $e = 42; ($e,) = 42; say $e | ||
camelia | rakudo-moar 772ead: OUTPUT«42» | ||
babydrop | I wonder if that's a bug... | ||
psch | m: my $e = 42; ($e,) = 43; say $e | 21:30 | |
camelia | rakudo-moar 772ead: OUTPUT«43» | ||
babydrop | m: my $e = "foo"; ($e,) = 42; say $e | ||
camelia | rakudo-moar 772ead: OUTPUT«42» | ||
psch | it seems weird | ||
m: (Empty,) = "foo" | |||
camelia | ( no output ) | ||
psch | well | ||
jnthn | m: ($(Empty),) = "foo" # curious | 21:31 | |
camelia | ( no output ) | ||
psch | could maybe be fixed with an iscont somewhere in the right spot | ||
although i'm really not sure what Empty should do in an assignment LHS in the first place | |||
jnthn | m: my $a; (Empty,$a) = "foo", "bar"; say $a | 21:32 | |
camelia | rakudo-moar 164eb4: OUTPUT«foo» | ||
jnthn | Disappear :) | ||
But probably should not do that if it's in a Scalar container | |||
babydrop | m: my $e = slip 1, 2, 3; dd ($e,) = 42 | ||
camelia | rakudo-moar 164eb4: OUTPUT«Cannot modify an immutable Int in block <unit> at <tmp> line 1» | ||
psch | jnthn: do we still want a sink warning for "bar" in your example? | ||
jnthn | It's not in sink context there | 21:33 | |
It's an argument to list assignment | |||
And no, we deliberately don't worry about too many things on the right | |||
psch | m: my $x; my $y; ($x, $y) = 1, 2, 3 | ||
camelia | ( no output ) | ||
psch | ah, okay | ||
jnthn | So `my ($first, $second) = @stuff;` won't whine | ||
psch | right | ||
jnthn | Not to mention stuff like blah xx * on the right | ||
But yeah, I suspect scalar container should take precedence over Iterable | 21:34 | ||
However | |||
m: my %h; %h<a> = []; my ($a, %h<a>) = 1..10; say %h<a> | |||
camelia | rakudo-moar 164eb4: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Shape declaration is not yet implemented; please use whitespace if you meant something elseat <tmp>:1------> 3my %h; %h<a> = []; my ($a, %h7⏏5<a>) = 1..10; say %h<a> expecting any of: …» | ||
21:35
BenGoldberg left
|
|||
jnthn | oops | 21:35 | |
m: my %h; %h<a> = []; ($a, %h<a>) = 1..10; say %h<a> | |||
camelia | rakudo-moar 164eb4: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Variable '$a' is not declaredat <tmp>:1------> 3my %h; %h<a> = []; (7⏏5$a, %h<a>) = 1..10; say %h<a>» | ||
jnthn | grmbl | ||
m: my %h; %h<a> = []; my $a; ($a, %h<a>) = 1..10; say %h<a> | |||
camelia | rakudo-moar 164eb4: OUTPUT«2» | ||
jnthn | OK, that's odd | ||
psch | m: my %h; %h<a> = []; my $a; ($a, @%h<a>) = 1..10; say %h<a> | ||
camelia | rakudo-moar 164eb4: OUTPUT«Type List does not support associative indexing. in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
psch | m: my %h; %h<a> = []; my $a; ($a, @(%h<a>)) = 1..10; say %h<a> | ||
camelia | rakudo-moar 164eb4: OUTPUT«[2 3 4 5 6 7 8 9 10]» | ||
jnthn | It already *does* let the Scalar container take precednece there | ||
psch | hmm | ||
so it's probably just order of checks? | 21:36 | ||
as in, we check for Empty too early? | |||
jnthn | Well that's what I thought | ||
Unless we do check for Empty specifically | |||
psch | yeah, that's what i'm thinking | ||
jnthn | What I was trying to tease out of it there was further evidence that we check for Iterable and *then* for Scalar | ||
But I instead disproved that it's that simple | 21:37 | ||
So yeah, Empty treated specially is a good next hypothesis | |||
m: say Empty.^mro | |||
camelia | rakudo-moar 164eb4: OUTPUT«((Slip) (List) (Cool) (Any) (Mu))» | ||
jnthn | Possible that Slip is the thing that's treated ahead of Scalar cont too | ||
Oh, which you tested earlier | 21:38 | ||
Well, babydrop did | |||
Yeah, I suspect that's it | |||
Probably should check iscont ahead of Slip | |||
21:41
lukiramu joined
|
|||
babydrop | m: $/ = 'foo' | 21:43 | |
camelia | rakudo-moar 164eb4: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unsupported use of $/ variable; in Perl 6 please use the filehandle's .nl-in attributeat <tmp>:1------> 3$/7⏏5 = 'foo'» | ||
babydrop | This is the first time I realize how nonsensical these errors look for someone who doesn't know Perl 5 | ||
psch | m: $/ = 5 # the worse part is that it's only Str literals | ||
camelia | ( no output ) | ||
psch | so yeah, it's confusing | 21:44 | |
but 'use perl5-warnings' would be weird, and just not having them is kind of weird too | |||
we have a pragma that turns some of them off iirc | |||
21:45
lukaramu left
|
|||
psch | well, the warnings anyway, don't think it turns of exceptions | 21:45 | |
m: $/ = Str.new(value => "foo") | 21:49 | ||
camelia | ( no output ) | ||
psch | vOv | ||
21:49
BenGoldberg joined
21:53
rurban1 joined
21:54
pyrimidine joined
21:55
rurban left,
kaare_ joined
21:58
ufobat joined,
ufobat left,
pyrimidine left
22:05
kaare_ left
22:08
kaare_ joined
22:16
cdg left,
RabidGravy left
22:30
bjz joined
|
|||
babydrop | .oO( it's weird how writing about fixing a bug made want to play Far Cry: Primal) |
22:32 | |
Coming next year. Far Cry: Programmer's Edition | |||
22:36
zakharyas joined
22:40
pmurias left
|
|||
dogbert17 | is it worth reporting (RT) things that break when running MoarVM with a smaller than normal nursery? | 22:40 | |
jnthn | dogbert17: Better file them as MoarVM issues | 22:41 | |
dogbert17 | jnthn: and how do I do that? | ||
jnthn | GitHub | ||
TEttinger | now that colombia's FARC is a political party instead of a rebel group, they could probably work a deal with the Far Cry publishers and make a colombia-tourism shooter, FARC Cry | ||
dogbert17 | ah, too simple | ||
jnthn | If only GCs were :P | ||
TEttinger | shoot poachers with a camera | 22:42 | |
dogbert17 | jnthn: if you're bored, can you glean anything from this gist? So that I can possibly add more 'meat' to the issue: gist.github.com/dogbert17/a73858a3...21585ef345 | 22:43 | |
22:44
andrzejku left
22:46
pierre_ joined
|
|||
jnthn | dogbert17: I suspect ASAN or Valgrind might be able to add something | 22:46 | |
psch | huh, what's the last frame pointing at? | 22:47 | |
an MVMFrame? | |||
jnthn | psch: Last as in #0 or #18? :) | ||
psch | err, lowest :) | ||
so #0 | |||
jnthn | oh | ||
I dunno, but something inside of the malloc lib or whatever it called to abort the program, I guess | 22:48 | ||
My guess is that it's corruption rather than double-free | |||
timotimo | an MVMFrame would never appear in the C stack, fwiw | ||
jnthn | Or at least, if it's a double free inside of congblockingqueue then that's scary. | ||
(And I'd expect us to have uncovered/fixed it my now, given it's the basis of all scheduling) | 22:49 | ||
Maybe try MVM_GC_DEBUG | |||
psch | right, the '??' just confused me cause it's somewhat out of place with everything else pointing at some lib somewhere | ||
timotimo | yeah, it is strange, indeed | 22:50 | |
psch | s/confused me/made me curious/ | ||
jnthn | The ?? really just means, afaik, the debugger couldn't match it up to something it has symbols available for. | ||
22:50
pierre_ left
|
|||
timotimo | are those addresses actually stack pointers? or are they instruction pointers? | 22:50 | |
psch | hm, but malloc.c is libc isn't it? | ||
what could that call into that doesn't have symbols at that point..? | |||
jnthn | psch: I dunno, some kernel abort handler, maybe? | 22:51 | |
timotimo | well, since it got sigabrt, it's probably abort() | ||
psch | oh, right, that probably wouldn't have symbols | ||
timotimo | it should :\ | ||
we could try "break abort<tab tab> | |||
jnthn | timotimo: Given they are not monotonic, surely not stack addresses... | ||
timotimo | " in the gdb shell | ||
jnthn: right, that makes sense | |||
psch | timotimo: stock kernels have debug symbols? | 22:52 | |
timotimo | why would you be able to get a breakpoint inside kernel space with a user space debugger? | ||
without elevated rights, i mean | |||
jnthn | Whatever it is, I don't think it's significant for this bug :) | ||
Once you're inside malloc_printerr it's pretty clear you're hosed. | |||
timotimo | that's true | 22:53 | |
psch | right | ||
as i said, just wondering | |||
jnthn | Yeah, I don't know what it is, but some abort() or equivalent is a good guess. | ||
timotimo | could also have something to do with threading weirdness | 22:54 | |
22:54
rurban joined
|
|||
jnthn | It's the only address that starts 7f, which suggests it's from a different library than anything else we see there | 22:54 | |
timotimo | because of how processes decide which thread receives what signals | ||
psch | abort() is in stdlib according to man | ||
same as malloc | |||
anyway | 22:55 | ||
timotimo | you could nativecall into malloc_printerr without having threads active | ||
and see if that makes a difference | |||
22:56
rurban1 left
|
|||
dogbert17 | valgrind doesn't want to play ball, i.e. the code 'works' | 22:56 | |
jnthn | If you really want to know, I guess something under /proc there's a memory map | ||
That can tell you what lib that instruction pointer is into | |||
dogbert17: Did you try it a few times? :) | |||
dogbert17: ASAN imposes less of a slow-down and may show it up better | 22:57 | ||
psch shudders at "try a few times with valgrind" | |||
timotimo | right you have /proc/maps i believe | ||
jnthn is still a /proc noob :) | |||
timotimo | don't forget ASLR will give you different pointers each time, most likely | ||
jnthn | Sure, I was assuming you're in GDB and have the PID of the still-living thing ;) | 22:58 | |
dogbert17: I guess MVM_GC_DEBUG didn't show up anything incriminating? | 22:59 | ||
timotimo | TIL about "man numa" | 23:00 | |
dogbert17 | jnthn: that I haven't used, oops | ||
23:01
pyrimidine joined
|
|||
timotimo | oh, that's funny | 23:01 | |
cat /proc/self/stack | |||
dogbert17 | will 'export MVM_GC_DEBUG=1' suffice? | ||
timotimo | no, it's a define in moarvm's source code | 23:02 | |
dogbert17 | in collect.h perhaps | ||
jnthn | dogbert17: No, you have to edit src/gc/debug.h | ||
dogbert17 | will do | ||
jnthn | And re-compile | ||
dogbert17 | yup | 23:03 | |
23:03
wisti joined
23:04
rurban left
23:05
pyrimidine left
|
|||
dogbert17 | nothing extra is written to stdout before the crash | 23:06 | |
would a 'bt full' be more useful to you | |||
timotimo | and nothing to stderr either? | ||
dogbert17 | nope | ||
timotimo | the thing is that a backtrace will likely not tell us what caused the corruption. just at what place malloc stumbled upon it | ||
dogbert17 | well, in that case I'll tease valgrind a few more times :) | 23:07 | |
timotimo: btw did you figure something out with that frame problem you were looking at the other day? | 23:08 | ||
timotimo | no, i'm afraid not | 23:09 | |
i haven't put much more time into it | |||
tuits keep slipping through between my fingers | |||
dogbert17 | maybe it's time for you to hold a beer between your fingers instead :) | 23:10 | |
jnthn | Mmm :) | 23:13 | |
jnthn tracked down some Innis & Gunn Rum Finish for the first time in a while :) | 23:14 | ||
dogbert17: Did you try MVM_GC_DEBUG set to 2, as well as 1? | |||
dogbert17 | nope; i'm at 1 but valgrind finally have something to say ... | 23:16 | |
jnthn | ooh :) | ||
2 can catch a bunch more but in return slows stuff down | |||
Though, to my surprise, not as much as I might have imagined | |||
I guess if the linked list it traverses is kept cache hot it isn't so bad... | 23:17 | ||
dogbert17 | ok, same gist a bit farther down: gist.github.com/dogbert17/a73858a3...21585ef345 | 23:18 | |
dalek | c: b7e4d53 | ronaldxs++ | doc/Language/syntax.pod6: Examples and reference to further explanation for Unicode in Perl 6 syntax |
||
c: c277111 | ronaldxs++ | doc/Language/syntax.pod6: Simplification to address reasonable objection to vagueness about other Unicode refs |
|||
synopsebot6 | Link: doc.perl6.org/language/syntax | ||
c: d14eea5 | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/syntax.pod6: Merge pull request #1042 from ronaldxs/master Examples and ref. to further explanation for Unicode in Perl 6 syntax |
|||
synopsebot6 | Link: doc.perl6.org/language/syntax | ||
23:18
zakharyas left
|
|||
jnthn | Wow. | 23:18 | |
That is incriminating indeed. | |||
psch kind of wants to assume architecture as the culprit | 23:20 | ||
buuut that's really just 4 vs 8 | |||
which, honestly, doesn't quite make sense | |||
...also, i don't even really know C nor moar so yeah, i'll shut up :P | |||
23:21
kurahaupo left
|
|||
dogbert17 sips on a 15 y o Springbank | 23:21 | ||
jnthn | Learn about memory barriers and GC safepoints while wokring on those two, since at least one of the two will probably be dragged in to explain the problem also... | ||
psch | uhm, i have heaps of bring-jvm-to-moar-standard tyvm :) | 23:22 | |
+to do | |||
(also of course not the jvm itself but nqp-j but yeah) | |||
jnthn | dogbert17: I never tried that one yet...recommendable? | ||
psch: Aye, that's quite a handful already... :) | 23:24 | ||
dogbert17 | jnthn: indeed, it's very good, picked it up 12 years ago while visiting Islay | ||
babydrop | oh, for dog's sake... | 23:25 | |
Apparently Wordpress turns gist URLs into some sort of widgets that inline that gist ~_~ | |||
jnthn has an unopened bottle of Hammer Head that he'll treat himself to a bit of around Christmas :) | 23:26 | ||
dogbert17 | now that I haven't tried | ||
babydrop | Why yes, I do won't 177 lines of code inserted right in the middle of my article... I mean, why else would I have a URL to it! | ||
dogbert17 wonders if Singleton si the programmers whisky of choice :) | 23:27 | ||
23:27
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
|
|||
jnthn | Surely most programmers won't drink it because it's an anti-pattern? :P | 23:28 | |
babydrop | :) | ||
babydrop doesn't drink | |||
oh, misread | 23:29 | ||
Never mind me... | |||
jnthn | You typed won't instead of want a few moments ago too. You sure you don't drink? ;-) | 23:30 | |
dogbert17 | perhaps this Zoffix guy would appreciate it | ||
psch | honestly, what is with that anyway | ||
babydrop | With what? | ||
psch | i mean, what, 8 different nicks in a year | ||
? | |||
jnthn | I guess anger at wordpress is probably a stronger drug than drink anyway :P | ||
babydrop | Just 8? | ||
psch | actually i've scaled up from those i remember, which is i think 3 :P | 23:31 | |
jnthn | I host 6guts at wordpress. I tend to author stuff by writing Markdown, using gist to turn it into HTML, and pasting it into wordpress | ||
AlexDaniel | by the way, I see no meaningful pattern in these nicks | ||
psch | i'll just assume it's some hiding-a-shady-past kinda deal | ||
jnthn | Amazingly, this *still* screw up whitespace occasionally. | ||
(A `foo` bar sometimes comes out as if I'd writen `foo`bar) | 23:32 | ||
babydrop | heh, that's actually what I'm doing too :) | 23:33 | |
AlexDaniel: there's no pattern | |||
jnthn | Did you figure out why it screws up whitespace occasionally? :) | ||
babydrop | Never noticed that :P | ||
jnthn | Oddness. | ||
Wonder what I'm doing that you're not :) | 23:34 | ||
psch senses a confusion caused by lack of recipients in messages | |||
23:35
sena_kun left,
lizmat joined
|
|||
AlexDaniel | babydrop: Why not? What about “malepregnancy” ? | 23:35 | |
dogbert17 | heh, valgrinding the other suspicious test, i.e. /perl6-ugga t/spec/S17-supply/syntax.t resulted in the terse comment: MoarVM panic: Collectable 0xbccdbd8 in fromspace accessed | 23:36 | |
jnthn | dogbert17: ohh...that's really useful | ||
dogbert17: That's produced by MVM_GC_DEBUG | |||
dogbert17 | aha | ||
jnthn | dogbert17: If you run it in GDB and | ||
break MVM_panic | |||
r | |||
dogbert17 | will do | 23:37 | |
jnthn | Then it'll breakpoint MVM_panic and run it again | ||
And then you can get a stack trace | |||
Sometimes they point right at the bug | |||
Thanks for doing the grunt work of uncovering/filing these by the way | |||
dogbert17 | np, if it is of any help at all I'm glad | 23:38 | |
jnthn | It is; it's pretty much the first bunch of steps I take when hunting these things. | ||
dogbert17 | gdb strangeness: ok 67 - No react guts crash in case that once spat out two done messages either | 23:39 | |
moar: src/6model/sc.h:163: MVM_SC_WB_OBJ: Assertion `!(obj->header.flags & MVM_CF_GEN2_LIVE)' failed. | |||
jnthn | That's...also very interesting :) | ||
dogbert17 | bt soesn't say much, it did not break in MVM_panic this time | 23:40 | |
jnthn | Can always hit r to try it again :) | ||
dogbert17 | got it hang on | 23:41 | |
gist.github.com/dogbert17/5b275221...6ac94433a9 | 23:42 | ||
[Coke] | is FQN here supposed to mean "fully qualified name"? (because it doesn | 23:44 | |
yoleaux | 14:45Z <tbrowder> [Coke]: I'll be off the normal land-locked internet grid for Advent editing for a few hours while traveling. I just made some minor changes to the ending words and format. I will be monitoring IRC as well as my iPhone and cell carrier can handle it. | ||
jnthn | dogbert17: Hmmm | 23:45 | |
dogbert17: Can you also | |||
frame 1 | |||
p MVM_dump_backtrace(tc) | |||
dogbert17 | jnthn: gist updated | 23:47 | |
jnthn | o.O | 23:49 | |
Please file that in a MoarVM issue :) | |||
dogbert17 | will do | 23:50 | |
jnthn | I'm way too tired to dig into it now | ||
23:50
kyclark joined,
kyclark left
|
|||
dogbert17 | no digging, just beer :) | 23:50 | |
I'll write it up tomorrow, eh later today, at the latest | 23:51 | ||
jnthn | :) | 23:52 | |
Thanks | |||
It's not so much beer that's the problem as just being plain tired :) | |||
dogbert17 | maybe time for some sleep | 23:54 | |
jnthn | Indeed :) | ||
Was just thinking that | |||
'night | |||
dogbert17 | night |