Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-12-10

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:02 skids joined #perl6
00:03 DarthGandalf joined #perl6
00:11 DarthGandalf joined #perl6
00:14 wamba joined #perl6
00:15 maxp_ joined #perl6
00:20 DarthGandalf joined #perl6
00:23 maxp_ Can I ask you a question about grammars? But I must to show you some code
00:24 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 maxp_ so... I have this program https://gist.github.com/anonymous/60831794599431708de947de975139b8
00:27 maxp_ the file it read is this: https://gist.github.com/anonymous/e54737801af6411d1dd8f442d277084d
00:28 maxp_ the grammar seems not work but the 'InsFunc' rule if I uncomment it works
00:28 maxp_ can you explain me why?
00:29 MasterDuke maxp_: i'm not great with grammars, but one thing i noticed here https://gist.github.com/anonymous/60831794599431708de947de975139b8#file-gistfile1-txt-L5 is you have whitespace between the \s* and the string
00:30 MasterDuke when using a rule, whitespace (in the rule itself) is significant
00:30 maxp_ yes but in the InsFunc rules ther is the whitespace too but it works
00:30 pyrimidine joined #perl6
00:32 MasterDuke oh, and when you have a grammar with a TOP, the entire input must match the TOP
00:33 MasterDuke it kind of has an implicit ^^ and $$
00:34 MasterDuke (or ^ and $, not exactly sure which)
00:34 maxp_ ok i try
00:34 MasterDuke what happens if you add .* before and after <InsertFunc> in TOP?
00:36 MasterDuke if you haven't seen it before, https://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
00:37 maxp_ yes i've seen it but it doesn't explain the implicit ^^ $$
00:37 labster joined #perl6
00:37 maxp_ but... it works now i changed with this:
00:37 babydrop oh doh
00:38 maxp_ https://gist.github.com/anonymous/516419b49436856c2b11aec92ec5acae
00:38 maxp_ not it works
00:38 babydrop maxp_: right, .parse parses from start to end. It's implict ^ and $
00:38 maxp_ thank you very much!
00:38 MasterDuke ah, https://docs.perl6.org/language/grammars#TOP mentions it
00:38 MasterDuke welcome
00:38 maxp_ Ok I think I'm a bad reader
00:38 maxp_ so
00:39 maxp_ bye
00:39 MasterDuke it's not obvious
00:39 babydrop maxp_: if that works, then subparse will work instead of .*
00:39 maxp_ ok i will try
00:39 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 :/
00:40 MasterDuke "for .lines"
00:40 SmokeMachine should I create a bug report?
00:40 SmokeMachine https://www.irccloud.com/pastebin/WOe90w5h/
00:40 maxp_ because the insert new lines has whitespaces before and ';' or () characters;
00:40 maxp_ .+ match them
00:41 MasterDuke SmokeMachine: what's the Perl 6 code that triggered that?
00:41 SmokeMachine its too big to post it here...
00:42 SmokeMachine Ill try to reduce that...
00:44 maxp_ babydrop: I've changed with
00:44 maxp_ this and it works too: rule TOP { .* <InsertFunc> .* }
00:45 maxp_ because the whitespaces i presume
00:48 cpage_ joined #perl6
00:49 aborazmeh joined #perl6
00:49 aborazmeh joined #perl6
01:00 canopus joined #perl6
01:05 AlexDaniel SmokeMachine: of course…
01:05 AlexDaniel SmokeMachine: no, don't create a bug report! Let's have this stinky bug there :P
01:06 AlexDaniel 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...)
01:07 SmokeMachine it gives me different errors each time...
01:07 AlexDaniel SmokeMachine: what makes you think it's not? Are you using some NativeCall stuff?
01:07 AlexDaniel yes, that's ok
01:07 SmokeMachine the most common is Segmentation fault: 11
01:07 AlexDaniel yea, that's how most [SEGV] bugs behave
01:07 SmokeMachine no... Im using Suplies
01:08 AlexDaniel ok now that's interesting :)
01:08 AlexDaniel SmokeMachine: can you post some code? I can try golfing it
01:09 SmokeMachine *Supplies
01:21 pmurias joined #perl6
01:23 SmokeMachine AlexDaniel: the code is:
01:24 SmokeMachine https://www.irccloud.com/pastebin/IOFVFmBT/
01:24 SmokeMachine https://www.irccloud.com/pastebin/6ZaHz5cx/
01:29 AlexDaniel SmokeMachine: resources/classes ?
01:29 SmokeMachine https://www.irccloud.com/pastebin/1bIasgzI/
01:30 mr_ron joined #perl6
01:30 babydrop m: say "{7.2610255 / 0.578650}x faster"
01:30 camelia rakudo-moar 5476d6: OUTPUT«12.54821654x faster␤»
01:31 AlexDaniel SmokeMachine: I am getting “Cannot find method 'EXISTS-KEY': no method cache and no .^find_method”
01:32 AlexDaniel any ideas?
01:33 AlexDaniel 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
01:33 SmokeMachine AlexDaniel: not yet...
01:33 SmokeMachine are you running with --fuzz
01:33 SmokeMachine ?
01:34 babydrop Oh wow... the NaN thing wasn't my error... So I can actually claim the speed increase to my name \o/
01:34 babydrop (it was added in 2014)
01:35 AlexDaniel SmokeMachine: oh
01:35 AlexDaniel SmokeMachine: no, but doesn't help
01:35 AlexDaniel that's a compile time error
01:36 bjz joined #perl6
01:37 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:38 AlexDaniel SmokeMachine: what rakudo version do you have?
01:38 babydrop DrForr: what's your username?
01:40 SmokeMachine AlexDaniel:$ perl6 -v
01:40 SmokeMachine This is Rakudo version 2016.11-172-g5476d60 built on MoarVM version 2016.11-41-gd2139b5
01:40 SmokeMachine implementing Perl 6.c.
01:40 seatek joined #perl6
01:41 babydrop that's HEAD
01:42 AlexDaniel SmokeMachine: well, that's the error I'm getting: https://gist.github.com/AlexDaniel/903500b8a8534601d2a144861b64e9ee
01:42 AlexDaniel it's actually somewhere in sub fuzz I think
01:42 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
01:42 babydrop Well, I was looking for GitHub thing....
01:43 babydrop There's probably some weird shortcut key you need to press :(
01:43 SmokeMachine AlexDaniel: now I got this:
01:43 SmokeMachine MoarVM panic: Trying to unwind from wrong handler
01:43 AlexDaniel SmokeMachine: well that's great but how do I reproduce it if it doesn't compile :(
01:44 AlexDaniel 2016.11-156-g0428b79 here, not head but still
01:45 dalek doc: 2f8edca | samcv++ | doc/Type/Cool.pod6:
01:45 synopsebot6 Link: http://doc.perl6.org/type/Cool
01:45 dalek doc: Trigger doc rebuild
01:45 dalek doc: review: https://github.com/perl6/doc/commit/2f8edcade3
01:45 Actualeyes joined #perl6
01:46 Pbv joined #perl6
01:47 SmokeMachine AlexDaniel:  https://github.com/FCO/Test-Fuzz/tree/ERROR
01:48 babydrop samcv: you around?
01:48 samcv jyeah
01:49 AlexDaniel SmokeMachine: ok that works
01:49 AlexDaniel SmokeMachine: segfault! Yay!
01:49 SmokeMachine \o/
01:50 babydrop samcv: oh sorry, I misread the diff. Was gonna say L<uninames|#routine_uninames> in https://github.com/perl6/doc/commit/37d0646eb4f won't work on generated pages like https://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:51 samcv ah
01:54 AlexDaniel it does seem to crash without optimizations :)
01:54 AlexDaniel ok let's see…
01:55 babydrop Travis ( https://travis-ci.org/perl6/doc/builds/182733730#L2191 ) says the failure is here https://github.com/perl6/doc/blob/master/htmlify.p6#L747
01:55 babydrop well, somewhere in that block...
01:56 babydrop We also have build logs here https://docs.perl6.org/build-log/
02:00 * babydrop makes a wild guess that it's the '#' in URL L<General Category|https://en.wikipedia.org/wiki/Unicode_character_property#General_Category>
02:00 babydrop nope, there are others like it :/
02:02 travis-ci joined #perl6
02:02 travis-ci Doc build failed. Samantha McVey 'Trigger doc rebuild'
02:02 travis-ci https://travis-ci.org/perl6/doc/builds/182772719 https://github.com/perl6/doc/compare/37d0646eb4f3...2f8edcade3d9
02:02 travis-ci left #perl6
02:02 samcv ugh
02:03 babydrop Well, the error is still there somewhere :}
02:03 babydrop ohhh
02:03 babydrop samcv: found it
02:03 babydrop m: '|'.uniname.say
02:03 camelia rakudo-moar 5476d6: OUTPUT«VERTICAL LINE␤»
02:04 babydrop samcv: you got some fancy pants editor?
02:04 babydrop m: '|'.uniname.say
02:04 camelia rakudo-moar 5476d6: OUTPUT«VERTICAL LINE␤»
02:04 babydrop Bah
02:04 Pbv how generate  html from perl6?
02:04 babydrop This is normally where I say I'm too drunk, right? :)
02:04 samcv wait where is the error though
02:04 babydrop Oh, what is it?
02:04 samcv line no?
02:04 samcv or maybe not talking to me
02:05 babydrop samcv: I was but I'm wrong :)
02:05 babydrop I had a brain fart.
02:05 babydrop The error is somewhere in this commit: https://github.com/perl6/doc/commit/37d0646eb4f349b2d3958cf3130417cfb942fedd
02:06 babydrop The one before it got built and now the build shows this error (see bottom): https://docs.perl6.org/build-log/build-2016-12-10T01:50+0000.log
02:06 babydrop And I'm guessing that's the link generator.
02:06 babydrop Pbv: that's a very vague question without an answer.
02:08 Pbv ok thank you
02:09 BenGoldberg joined #perl6
02:09 babydrop :/
02:11 SmokeMachine AlexDaniel: I think that's some kind of race condition...
02:11 dalek doc: 7130500 | samcv++ | doc/Type/Cool.pod6:
02:11 synopsebot6 Link: http://doc.perl6.org/type/Cool
02:11 dalek doc: Try and get it building again
02:11 dalek doc: review: https://github.com/perl6/doc/commit/71305006cd
02:14 * babydrop shakes the Magic8 ball
02:14 babydrop that'll fail :)
02:15 babydrop I got a local build I'm golfing ATM
02:17 babydrop weird AF. If I rename "routine" to "method" for uniprop it builds
02:18 AlexDaniel SmokeMachine: the code is kinda complex… cannot golf it past 100 lines
02:18 SmokeMachine :(
02:24 djbkd joined #perl6
02:28 pyrimidine joined #perl6
02:29 travis-ci joined #perl6
02:29 travis-ci Doc build failed. Samantha McVey 'Try and get it building again'
02:29 travis-ci https://travis-ci.org/perl6/doc/builds/182775705 https://github.com/perl6/doc/compare/2f8edcade3d9...71305006cd74
02:29 travis-ci left #perl6
02:29 samcv why does it hate me
02:30 * babydrop is debugging it ATM
02:33 babydrop oh yeah... I can smell a juicy bug..
02:33 SmokeMachine is this expected?
02:33 SmokeMachine https://www.irccloud.com/pastebin/SIvWXJRp/
02:33 babydrop no more catfood for babydrop... tonight we dine
02:33 SmokeMachine m: loop [+] 1, 2, 3, 4 {.say}
02:33 camelia rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3loop7⏏5 [+] 1, 2, 3, 4 {.say}␤    expecting any of:␤        scoped block␤»
02:33 SmokeMachine m: loop ([+] 1, 2, 3, 4) {.say}
02:33 camelia rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed loop spec␤at <tmp>:1␤------> 3loop ([+] 1, 2, 3, 47⏏5) {.say}␤»
02:33 AlexDaniel what should it mean? :D
02:34 babydrop SmokeMachine: you meant `for` not `loop`
02:34 babydrop SmokeMachine: `loop` does a C-style loop
02:34 AlexDaniel what's the point of for if he has only one element after reduction
02:34 SmokeMachine m: loop ([+] 1, 2, 3, 4 > 0) {.say}
02:34 camelia rakudo-moar 5476d6: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed loop spec␤at <tmp>:1␤------> 3loop ([+] 1, 2, 3, 4 > 07⏏5) {.say}␤»
02:34 babydrop Ah, right
02:34 AlexDaniel so what are you trying to do?
02:35 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 declared␤at <tmp>:1␤------> 3<BOL>7⏏5@a = 0; loop ([+] @a > 5) {@a.push: 1}␤»
02:35 lucasb joined #perl6
02:35 AlexDaniel just say what you want :)
02:35 babydrop heh
02:35 babydrop Where's first-code-block from?
02:36 SmokeMachine I just want to loop while the sum of all my array is less than 5 (for example)
02:36 djbkd joined #perl6
02:37 babydrop m: my @a = ^10; while @a.sum > 5 { "+".say; @a.shift }
02:37 camelia rakudo-moar 5476d6: OUTPUT«+␤+␤+␤+␤+␤+␤+␤+␤+␤+␤»
02:37 babydrop m: my @a = ^10; while @a.sum > 5 { @a.shift.say }
02:37 camelia rakudo-moar 5476d6: OUTPUT«0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤»
02:37 lucasb babydrop: see the blame of the parent in github?
02:37 babydrop m: my @a = ^10; while @a.sum > 5 { @a.pop.say }
02:37 camelia rakudo-moar 5476d6: OUTPUT«9␤8␤7␤6␤5␤4␤3␤»
02:37 lucasb yeah, I wish it was easier than it is
02:37 AlexDaniel m: for ([\+] 1, 2, 3, 4) { last if $_ > 7; .say }
02:37 camelia rakudo-moar 5476d6: OUTPUT«1␤3␤6␤»
02:37 lucasb I do a little dance too, to get to it
02:38 babydrop star: use JSON::Tiny; say &from-json.WHO
02:38 camelia star-m 2016.10: OUTPUT«Sub␤»
02:38 babydrop Man, how do I find which of the modules is sub being exported from?
02:38 babydrop star: use JSON::Tiny; say &from-json.file
02:38 camelia star-m 2016.10: OUTPUT«site#sources/9B467EEF9267A777BB53BAA2F19BE2C9D756BEED (JSON::Tiny)␤»
02:38 babydrop good nuf I guess
02:39 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?!!!
02:40 AlexDaniel SmokeMachine: nothing wrong. ↑ there's example with [\+] that works just as well
02:40 SmokeMachine :)
02:40 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
02:40 AlexDaniel still not loop though :P
02:40 babydrop or... I guess that's the parent's sha
02:41 lucasb babydrop: nope, that doesn't help :)
02:41 AlexDaniel SmokeMachine: as for the segfault, yeah… dunno. You can try submitting a ticket
02:41 AlexDaniel but not sure if that's going to be very helpful
02:41 bjz joined #perl6
02:41 AlexDaniel you can also run it under valgrind
02:41 AlexDaniel but yeah even that probably won't help anything
02:41 SmokeMachine :(
02:42 SmokeMachine AlexDaniel: thank you very much!
02:46 AlexDaniel SmokeMachine: for example, there is stuff like this: https://rt.perl.org/Ticket/Display.html?id=128870
02:46 AlexDaniel SmokeMachine: so it's hard to tell if its rakudo's fault in this case
02:46 AlexDaniel I mean… the code is a bit too complex to see :-/
02:46 babydrop samcv: got it
02:46 samcv tell me!
02:46 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:46 samcv true
02:46 babydrop samcv: so just change `routine` to `method` in the `=head2` and I guess that'll do?
02:47 ilbot3 joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:53 dalek doc: e5ef1d0 | (Zoffix Znet)++ | htmlify.p6:
02:53 dalek doc: Awesomify error of htmlfy.p6 script
02:53 dalek doc:
02:53 dalek doc: ... when routine is not found in a class's file.
02:53 dalek doc: review: https://github.com/perl6/doc/commit/e5ef1d0b1e
02:53 kyclark joined #perl6
02:54 babydrop lucasb: reminds me of http://www.bash.org/?42196
02:56 dalek doc: a3fd3f2 | (Zoffix Znet)++ | htmlify.p6:
02:56 dalek doc: Fix typo
02:56 dalek doc: review: https://github.com/perl6/doc/commit/a3fd3f25ad
02:57 cdg_ joined #perl6
03:05 travis-ci joined #perl6
03:05 travis-ci Doc build passed. Samantha McVey 'Change routine to method'
03:05 travis-ci https://travis-ci.org/perl6/doc/builds/182779578 https://github.com/perl6/doc/compare/71305006cd74...258c4deffaf8
03:05 travis-ci left #perl6
03:11 travis-ci joined #perl6
03:11 travis-ci Doc build passed. Zoffix Znet 'Awesomify error of htmlfy.p6 script
03:12 travis-ci https://travis-ci.org/perl6/doc/builds/182780098 https://github.com/perl6/doc/compare/258c4deffaf8...e5ef1d0b1e77
03:12 travis-ci left #perl6
03:14 noganex joined #perl6
03:14 travis-ci joined #perl6
03:14 travis-ci Doc build passed. Zoffix Znet 'Fix typo'
03:14 travis-ci https://travis-ci.org/perl6/doc/builds/182780328 https://github.com/perl6/doc/compare/e5ef1d0b1e77...a3fd3f25ad65
03:14 travis-ci left #perl6
03:14 babydrop go away....
03:17 imcsk8_ joined #perl6
03:28 xtreak joined #perl6
03:34 baest_ joined #perl6
03:36 nchambers^ joined #perl6
03:37 cgfbee joined #perl6
03:37 zoosha joined #perl6
03:37 KotH_ joined #perl6
03:37 hoelzro_ joined #perl6
03:37 jantore_ joined #perl6
03:37 bartolin_ joined #perl6
03:37 konobi_ joined #perl6
03:37 hahainte1net joined #perl6
03:37 tony-o_ joined #perl6
03:37 cosimo_ joined #perl6
03:37 mst_ joined #perl6
03:37 tinita_ joined #perl6
03:38 espadrine joined #perl6
03:38 avalenn joined #perl6
03:46 pyrimidine joined #perl6
04:08 samcv ok so i got rakudo returning bools for applicable uniprops https://github.com/rakudo/rakudo/pull/944
04:11 Sgeo_ joined #perl6
04:16 kyclark joined #perl6
04:19 pyrimidine joined #perl6
04:38 cibs joined #perl6
04:58 aborazmeh joined #perl6
04:58 aborazmeh joined #perl6
04:59 DrForr Anyone around to point me to the way to get the perl6advent account going?... My 'nt connection is ... pretty much cr*p.
05:02 DrForr I can't even get to my linode without stalling.
05:17 DrForr babydrop: (or anyone) I have no 'net connection. I can do 20th-24th because I'll be be back home.
05:44 bjz_ joined #perl6
05:52 Cabanossi joined #perl6
05:56 nchambers^ joined #perl6
06:00 rurban joined #perl6
06:01 pyrimidine joined #perl6
06:25 bjz joined #perl6
06:41 cpage_ joined #perl6
06:48 telex joined #perl6
06:52 Tonik joined #perl6
06:55 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 samcv https://github.com/rakudo/rakudo/pull/944
06:55 moritz DrForr: /msg me an email address, and I can invite you to the blog
06:55 samcv my first substantial PR for rakudo, so hope it's already
06:56 samcv i included a script i used to test it and generate the code from the unicode txt file
06:57 darutoko joined #perl6
06:58 hometruck joined #perl6
06:58 hometruck https://www.reddit.com/r/perl6/comments/5hio6c/capturing_groups_in_anonymous_regexs/ how come it's so slow?
07:00 samcv MoarVM doesn't implement any really fast string finding method like Boyer-Moore yet
07:00 samcv sadly :(
07:02 troys joined #perl6
07:03 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 samcv a mailing list i should ask or is here fine?
07:06 geekosaur #perl6-dev might be better. the lists are sadly useless for this kind of thing
07:07 samcv ah ok thanks
07:13 pyrimidine joined #perl6
07:15 xtreak joined #perl6
07:16 hometruck the boss said it would be working on it: http://irclog.perlgeek.de/perl6/2016-11-27#i_13637044
07:17 seatek Stuff like this is just so slick for doing types :)  subset Email of Str where { Email::Valid.new.validate($_) };
07:18 cognominal joined #perl6
07:18 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
07:19 hometruck don't believe the current engine can do that technically
07:19 hometruck (without hacks)
07:20 samcv nice seatek
07:22 seatek yeah simple silly stuff like that has been saving SO much time and code
07:23 seatek samcv: did you ever get your backwards parenthesis figured out? :)
07:31 samcv yeah i did
07:31 samcv hah
07:31 hometruck me too: somehow those silly stuff fits perfectly my ways of doing things
07:32 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
07:32 samcv that hasn't been done before
07:39 sjoshi joined #perl6
07:43 labster joined #perl6
07:49 domidumont joined #perl6
07:50 pierre__ joined #perl6
07:50 wamba joined #perl6
07:54 domidumont joined #perl6
07:58 bjz joined #perl6
08:08 bjz_ joined #perl6
08:14 CIAvash joined #perl6
08:15 cibs joined #perl6
08:18 pyrimidine joined #perl6
08:20 pyrimidi_ joined #perl6
08:20 djbkd__ joined #perl6
08:22 wamba joined #perl6
08:23 dontbe^2 joined #perl6
08:25 Sgeo joined #perl6
08:30 Actualeyes joined #perl6
08:36 kshannon joined #perl6
08:41 cibs joined #perl6
08:43 rurban joined #perl6
08:49 pecastro joined #perl6
08:49 bjz joined #perl6
08:52 wamba joined #perl6
08:54 Tonik joined #perl6
08:55 revdiablo joined #perl6
09:08 RabidGravy joined #perl6
09:10 cibs joined #perl6
09:10 geraud1 joined #perl6
09:11 dontbe^2 joined #perl6
09:11 mtj_ joined #perl6
09:11 k-man joined #perl6
09:11 raydiak joined #perl6
09:11 alnewkirk joined #perl6
09:11 charsbar______ joined #perl6
09:14 Actualeyes joined #perl6
09:15 cibs joined #perl6
09:15 sena_kun joined #perl6
09:16 xtreak joined #perl6
09:19 nine Did you know that there's a Japanese Perl 6 advent calendar? http://qiita.com/advent-calendar/2016/perl6
09:22 pyrimidine joined #perl6
09:23 nine pyrimidine: found and reverted the MoarVM commit that broke Inline::Perl 5. Thanks for your help :)
09:28 RabidGravy morning!
09:33 sena_kun joined #perl6
09:33 dontbe^2 joined #perl6
09:33 mtj_ joined #perl6
09:33 k-man joined #perl6
09:33 raydiak joined #perl6
09:33 alnewkirk joined #perl6
09:33 charsbar______ joined #perl6
09:35 lukaramu joined #perl6
09:41 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:58 cibs joined #perl6
09:58 geraud1 joined #perl6
10:02 andrzejku joined #perl6
10:02 FROGGS joined #perl6
10:27 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 RabidGravy some of the older modules there are hundreds of files
10:39 rindolf joined #perl6
10:52 pyrimidine joined #perl6
10:55 xtreak joined #perl6
11:02 Sgeo joined #perl6
11:02 rurban left #perl6
11:09 pierre__ joined #perl6
11:20 CIAvash joined #perl6
11:22 lucasb joined #perl6
11:25 * RabidGravy ponders whether to perform the Fedora 25 upgrade *before* he does all the other things
11:27 * lucasb has a eternal item in his TODO list: "upgrade the distribution"
11:30 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:33 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:38 tbrowder .tell [Coke] Any suggestions or criticisms on my draft 12 Dec Advent blog?
11:39 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:43 dalek doc: c08a742 | gfldex++ | doc/Language/quoting.pod6:
11:43 synopsebot6 Link: http://doc.perl6.org/language/quoting
11:43 dalek doc: improve index entry
11:43 dalek doc: review: https://github.com/perl6/doc/commit/c08a742bd4
11:49 pierre__ joined #perl6
11:58 AlexDaniel joined #perl6
11:59 lucasb if methods are has-scoped. does 'my method' and 'our method' makes sense?
12:03 RabidGravy I'd say not no
12:03 lucasb yes, I agree
12:04 lucasb 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
12:04 lucasb but 'my method' and 'our method' doesn't make sense IMO
12:04 moritz anybody know what's up?
12:05 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?
12:05 RabidGravy moritz, who was going to be doing it?
12:05 titsuki moritz: I can switch.
12:05 moritz titsuki: that would be awesome
12:05 moritz RabidGravy: DrForr
12:06 RabidGravy ah, he was travelling IIRC, it may be a timezone thing
12:06 RabidGravy where is the schedule again?
12:07 sena_kun RabidGravy, https://github.com/perl6/mu/blob/master/misc/perl6advent-2016/schedule
12:07 RabidGravy cheers
12:08 RabidGravy good thing I looked as I thought I was doing the 12th not the 13th
12:09 moritz titsuki: I've published your post. Thank you very much!
12:09 sena_kun titsuki++
12:09 dalek doc: 54f0c34 | gfldex++ | doc/Language/typesystem.pod6:
12:09 synopsebot6 Link: http://doc.perl6.org/language/typesystem
12:09 dalek doc: correct our scoped methods and tell how to call them
12:09 dalek doc: review: https://github.com/perl6/doc/commit/54f0c347fc
12:09 wamba joined #perl6
12:09 titsuki moriz: It's my pleasure.
12:10 moritz lucasb: fwiw rakudo's setting uses 'my method...'
12:10 moritz lucasb: it's useful for generating method to install somewhere, just not in sink context
12:10 lucasb moritz: yeah, I was confused. nevermind what i said :)
12:11 lucasb '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
12:11 yoleaux moritz: I'll pass your message to DrForr.
12:17 AlexDaniel unicodable6: { .uniprop(‘Dash’) }
12:17 unicodable6 AlexDaniel, U+002D HYPHEN-MINUS [Pd] (-)
12:17 unicodable6 AlexDaniel, U+058A ARMENIAN HYPHEN [Pd] (֊)
12:17 unicodable6 AlexDaniel, U+05BE HEBREW PUNCTUATION MAQAF [Pd] (־)
12:17 unicodable6 AlexDaniel, https://gist.github.com/55af6a6d3156dddf19dcc71881c0dd48
12:19 sena_kun Since https://github.com/perl6/doc/pull/1035 doesn't get any new comments/objections, I'll merge it at evening.
12:20 AlexDaniel sena_kun: no need to wait, I'll review it now and merge
12:20 sena_kun AlexDaniel, hmm, okay.
12:20 RabidGravy titsuki++ # nice
12:21 AlexDaniel sena_kun: what is “Temporary test file deletion” ?
12:21 RabidGravy the example 3 is actually pertinent to my current interests
12:21 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.
12:21 nine win 13
12:21 AlexDaniel whatever
12:22 dalek doc: 1308514 | Altai-man++ | doc/Type/ (124 files):
12:22 dalek doc: Big signature return type unification.
12:22 dalek doc:
12:22 dalek doc: This commit affects all signatures that exist in the type documentation: it replaces "returns " occurences with "-->" form.
12:22 dalek doc:
12:22 dalek doc: See https://github.com/perl6/doc/issues/1024#issuecomment-264660360 for explanations.
12:22 dalek doc: review: https://github.com/perl6/doc/commit/13085149e0
12:22 dalek doc: f8448f2 | Altai-man++ | doc/Type/ (2 files):
12:22 dalek doc: Two typo fixes
12:22 dalek doc: review: https://github.com/perl6/doc/commit/f8448f2013
12:22 dalek doc: 88c2f5f | Altai-man++ | t/return-type.t:
12:22 dalek doc: Test for return type in signatures
12:22 dalek doc: review: https://github.com/perl6/doc/commit/88c2f5fcfd
12:22 dalek doc: 40a97e3 | Altai-man++ | doc/Type/ (2 files):
12:22 dalek doc: Changes need to resolve a merge conflict.
12:22 dalek doc: review: https://github.com/perl6/doc/commit/40a97e39d7
12:22 dalek doc: ae816b9 | Altai-man++ | t/return-type.t:
12:22 dalek doc: Temporary test file deletion
12:22 dalek doc: review: https://github.com/perl6/doc/commit/ae816b9600
12:22 dalek doc: 63d182a | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Type/ (121 files):
12:22 dalek doc: Merge pull request #1035 from perl6/consistent-return-types
12:22 dalek doc:
12:22 dalek doc: Consistent return types
12:22 dalek doc: review: https://github.com/perl6/doc/commit/63d182ac64
12:22 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.
12:23 AlexDaniel sena_kun: 🤷 well, now everything is in master, soo ;)
12:23 sena_kun AlexDaniel, sure, the tests will be soon then!
12:23 AlexDaniel sena_kun: so should we put them into t/ or xt/ ?
12:24 sena_kun AlexDaniel, xt/, I suppose.
12:24 AlexDaniel okay
12:24 AlexDaniel it's not like random people contribute signatures very often
12:24 AlexDaniel but it's ok anyway
12:24 AlexDaniel as long as we have a test, there is no issue, I think
12:25 AlexDaniel sena_kun++
12:25 dalek gtk-simple: eb2d294 | niner++ | t/01-sanity.t:
12:25 dalek gtk-simple: Add missing use statements in test file
12:25 dalek gtk-simple:
12:25 dalek gtk-simple: The design of Perl 6 requires that use statements only have effect in a
12:25 dalek gtk-simple: lexical scope. Otherwise it's impossible to use different (versions of)
12:25 dalek gtk-simple: modules sharing a name in different parts of a program.
12:25 dalek gtk-simple:
12:25 dalek gtk-simple: This means essentially that we need to explicitly use all modules we need
12:25 dalek gtk-simple: in a scope.
12:25 dalek gtk-simple: review: https://github.com/perl6/gtk-simple/commit/eb2d2940e2
12:26 AlexDaniel u: { .uniprop(‘Sentence_Terminal’) }
12:26 unicodable6 AlexDaniel, U+0021 EXCLAMATION MARK [Po] (!)
12:26 unicodable6 AlexDaniel, U+002E FULL STOP [Po] (.)
12:26 unicodable6 AlexDaniel, U+003F QUESTION MARK [Po] (?)
12:26 unicodable6 AlexDaniel, https://gist.github.com/45c0ef96a7edff3c4b967e9f28e9af1d
12:27 AlexDaniel 𑗊 – really?
12:27 mawkish joined #perl6
12:30 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?
12:30 babydrop " DrForr │ babydrop: (or anyone) I have no 'net connection. I can do 20th-24th because I'll be be back home."
12:31 RabidGravy babydrop, titsuki's got published already
12:31 babydrop oh
12:31 RabidGravy so it's probably one for tomorrow
12:31 pyrimidine joined #perl6
12:31 wamba joined #perl6
12:32 babydrop huggable: advent
12:32 huggable babydrop, https://github.com/perl6/mu/blob/master/misc/perl6advent-2016/schedule
12:33 dalek doc: 0e5ca87 | Altai-man++ | xt/return-type.t:
12:33 dalek doc: Test for return type of signatures in type documentation
12:33 dalek doc: review: https://github.com/perl6/doc/commit/0e5ca8764b
12:34 kurahaupo joined #perl6
12:35 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:37 moritz babydrop: sure
12:37 babydrop OK
12:37 AlexDaniel m: say 0x0F
12:37 camelia rakudo-moar a8ba26: OUTPUT«15␤»
12:37 AlexDaniel okay
12:38 AlexDaniel for those wondering
12:38 AlexDaniel u: { .uniprop(‘ASCII_Hex_Digit’) }
12:38 unicodable6 AlexDaniel, U+0030 DIGIT ZERO [Nd] (0)
12:38 unicodable6 AlexDaniel, U+0031 DIGIT ONE [Nd] (1)
12:38 unicodable6 AlexDaniel, U+0032 DIGIT TWO [Nd] (2)
12:38 unicodable6 AlexDaniel, https://gist.github.com/f8f23ba69663c9a7c9cc38112151224b
12:38 AlexDaniel u: { .uniprop(‘Hex_Digit’) }
12:38 unicodable6 AlexDaniel, U+0030 DIGIT ZERO [Nd] (0)
12:38 unicodable6 AlexDaniel, U+0031 DIGIT ONE [Nd] (1)
12:38 unicodable6 AlexDaniel, U+0032 DIGIT TWO [Nd] (2)
12:38 unicodable6 AlexDaniel, https://gist.github.com/982c23079e2eac700452c743a8bd031c
12:39 sena_kun Is it me or this example - https://docs.perl6.org/type/Str.html#method_indent looks LTA?
12:41 AlexDaniel improve it? Perhaps a couple of extra examples won't hurt
12:42 sena_kun Agreed.
12:44 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:48 lucasb m: my &to = method (&c) { c(self) }; say 2.&to(* + 3).&to(* * 2)
12:48 camelia rakudo-moar a8ba26: OUTPUT«10␤»
12:48 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.
12:49 lucasb ^^ a generic method to chain the application of functions into a value
12:50 lucasb the name could be something like 'do', 'to', 'yield', 'tap' (but of course, these names conflicts with already existing keywords)
12:51 sena_kun lucasb, just use "."! :P
12:51 babydrop weeeeeeeeeee
12:52 pecastro joined #perl6
12:52 djbkd__ joined #perl6
12:52 nchambers joined #perl6
12:52 baest_ joined #perl6
12:52 rburkholder joined #perl6
12:52 Celelibi joined #perl6
12:52 aindilis joined #perl6
12:52 Unavowed joined #perl6
12:52 cooper_ joined #perl6
12:52 zilti joined #perl6
12:52 sivoais joined #perl6
12:52 dg joined #perl6
12:52 ttkp6 joined #perl6
12:52 freeze joined #perl6
12:52 lizmat joined #perl6
12:52 RabidGravy boom bang a bang
12:52 babydrop We don't conflict with keywords, we shadow them :)
12:52 lucasb sena_kun: just "." ? but I'm not calling methods
12:52 dalek doc: ea77029 | Altai-man++ | doc/Type/ (6 files):
12:52 dalek doc: 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.
12:52 dalek doc:
12:52 dalek doc: Fixes https://github.com/perl6/doc/issues/1033
12:52 dalek doc: review: https://github.com/perl6/doc/commit/ea770293a8
12:52 babydrop m: sub do {}; sub WHAT {}; sub I {}; sub say { }; do WHAT I say
12:52 camelia rakudo-moar a8ba26: OUTPUT«5===SORRY!5===␤Argument to "say" seems to be malformed␤at <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…»
12:52 sena_kun lucasb, then "$" application will be good.
12:52 babydrop AAAAh
12:53 babydrop My plan for world domination foiled by grammar
12:53 lucasb I wonder if anybody would think it's convenient to have such method into the base object, like Mu/Any ?
12:53 lucasb sena_kun: /j haskell
12:53 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:54 babydrop lucasb: I don't get that method at all. What's the point of it?
12:54 babydrop m: say 2.&(* + 3).&(* * 2)
12:54 camelia rakudo-moar a8ba26: OUTPUT«10␤»
12:54 * babydrop shrugs
12:55 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...
12:55 lucasb lol, my method is not needed at all. the feature is built into P6 already
12:56 babydrop \o/
12:56 babydrop Yeah, you can use a sub as a method and the invocant will be the first arg (and you can still pass additional args)
12:56 lucasb I tried just 'say 2.(* + 3).(* * 2)' and assumed it didn't work
12:56 babydrop Ah, yeah, need the & in there
12:57 AlexDaniel and you can do it other way round too, I think
12:58 lucasb on a related note, Ruby has a .tap method on the base Object
12:58 lucasb it yields self to the block given, but return self itself, not the return value of the block
12:59 lucasb so, it's useful to apply side effects, discard the results and get self back as a return value
13:01 AlexDaniel m: 42.base(2).chars.uniname.say
13:01 camelia rakudo-moar a8ba26: OUTPUT«ACKNOWLEDGE␤»
13:02 MasterDuke joined #perl6
13:02 AlexDaniel m: say uniname chars base 42: 2 : : :
13:02 camelia rakudo-moar a8ba26: OUTPUT«ACKNOWLEDGE␤»
13:03 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
13:03 AlexDaniel m: say uniname chars base 42: 2
13:03 camelia rakudo-moar a8ba26: OUTPUT«ACKNOWLEDGE␤»
13:03 AlexDaniel so this works too
13:03 RabidGravy so see you on the other side
13:04 canopus joined #perl6
13:04 ufobat joined #perl6
13:06 dalek mu: e4981e7 | (Zoffix Znet)++ | misc/perl6advent-2016/schedule:
13:06 dalek mu: Claim 11th spot
13:06 dalek mu:
13:06 dalek mu: For "Perl 6 Core Hacking: Sometimes Things Slip Through The QASTs"
13:06 dalek mu:
13:06 dalek mu: 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"
13:06 dalek mu: titsuki++ claimed it by moving 11th spot to 10th, so this post covers the now-empty 11th.
13:06 dalek mu: review: https://github.com/perl6/mu/commit/e4981e7306
13:07 andrzejku joined #perl6
13:08 mawkish joined #perl6
13:08 lizmat joined #perl6
13:09 dalek doc: 447e029 | gfldex++ | doc/Type/Callable.pod6:
13:09 synopsebot6 Link: http://doc.perl6.org/type/Callable
13:09 dalek doc: show relationship between .& and ∘
13:09 dalek doc: review: https://github.com/perl6/doc/commit/447e029365
13:11 lucasb m: 2 ==> (*+3)() ==> (* * 2)() ==> say()
13:11 camelia rakudo-moar a8ba26: OUTPUT«10␤»
13:12 lucasb ^^ I tried to write using fewer parentheses, but it doesn't work without them :(
13:12 mawkish joined #perl6
13:13 moritz m: say 10 # fewer parens, same result :-)
13:13 camelia rakudo-moar a8ba26: OUTPUT«10␤»
13:14 cognominal zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz\||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
13:14 cognominal ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||\|||\\\z\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
13:14 cognominal \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\||||||||||||||||||||||||||||||||||||||\\\\\\\\\\\|||||||||\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\||\\||\\\\\\\\\\\\\\\\\\\\\\\\\\||||||||||\||||\\|-po7qqqp-oooppp-pppppppppppppppppoooooooooooooooooooooooooooo--p-oj                o
13:14 babydrop yowser
13:14 AlexDaniel please keep calm :)
13:14 lucasb Christmas spirit is making everybody funny
13:14 babydrop That feels like a feline trying to communicate...
13:14 cognominal sorry
13:15 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 #perl6
13:19 lizmat_ joined #perl6
13:19 aindilis joined #perl6
13:22 CIAvash[m] joined #perl6
13:22 dalek mu: 0d6d4f4 | (Mathieu Gagnon)++ | util/Text-SmartLinks/lib/Text/SmartLinks.pm:
13:22 dalek mu: Change design to use POD title instead of syn_id
13:22 dalek mu:
13:22 dalek mu: At design.perl6.org, pages from p5 Pod have a syn_id for title
13:22 dalek mu: while p6 Pod have the title section.
13:22 dalek mu:
13:22 dalek mu: The syn_id makes the search results more difficult.
13:22 dalek mu: review: https://github.com/perl6/mu/commit/0d6d4f47e9
13:22 dalek mu: 41f11f0 | (Zoffix Znet)++ | util/Text-SmartLinks/lib/Text/SmartLinks.pm:
13:22 dalek mu: Merge pull request #14 from 4d47/design-title
13:22 dalek mu:
13:22 dalek mu: Change design to use POD title instead of syn_id
13:22 dalek mu: review: https://github.com/perl6/mu/commit/41f11f0c31
13:30 pierre__ joined #perl6
13:31 Actualeyes joined #perl6
13:38 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: ␤»
13:38 ufobat i would expect "/foo" as postmatch? am i wrong?
13:39 moritz ufobat: no, looks like a bug to me
13:39 ufobat oh okey :/
13:40 * moritz has a local patch, need to build and test
13:41 ufobat can i see the diff? :-) i am curious
13:41 moritz m: say 'abc' ~~ /^/ and say $/.postmatch
13:41 camelia rakudo-moar a8ba26: OUTPUT«「」␤␤»
13:42 moritz ufobat: http://perlpunks.de/paste/show/584c0638.2d8e.1fc
13:43 moritz I wonder if the nqp::if is really necessary
13:43 moritz I don't think we construct match objects for failed matches anymore
13:44 moritz also I wonder if $!orig wouldn't be even faster than $!CURSOR.target
13:44 moritz ah, $!CURSOR.target is probably always a string, $!orig not necessarily
13:45 moritz m: say 42 ~~ /.+/ && say $/.orig.^name
13:45 camelia rakudo-moar a8ba26: OUTPUT«Int␤True␤»
13:45 ufobat not sure what $!orig is- but assuming from and to is for example 2
13:45 moritz $!orig is the thing that was matched against
13:46 ufobat then only if to == from == 0 its $!orig
13:47 moritz ufobat: fix pushed
13:47 ufobat thank you :-) i am happy
13:50 pyrimidine joined #perl6
13:59 dalek doc: 535d70a | Altai-man++ | doc/Language/regexes.pod6:
13:59 synopsebot6 Link: http://doc.perl6.org/language/regexes
13:59 dalek doc: Fixes https://github.com/perl6/doc/issues/1030
13:59 dalek doc: review: https://github.com/perl6/doc/commit/535d70abd6
13:59 dalek doc: c5d8949 | Altai-man++ | doc/Language/typesystem.pod6:
13:59 dalek doc: We don't need external indexing if it is already a header. The whole syntax seems wrong here, which caused 404 entry.
13:59 synopsebot6 Link: http://doc.perl6.org/language/typesystem
13:59 dalek doc: Fixes https://github.com/perl6/doc/issues/1014
13:59 dalek doc: review: https://github.com/perl6/doc/commit/c5d8949a4a
14:01 rurban joined #perl6
14:05 bjz joined #perl6
14:08 lizmat joined #perl6
14:09 lizmat to make things even faster, I'm thinking about creating postcircumfix:<[;]>(\SELF, \one, \two) candidates
14:10 lizmat the optimizer should then rewrite the generic code to those cases
14:11 lizmat joined #perl6
14:11 lizmat to make things even faster, I'm thinking about creating postcircumfix:<[;]>(\SELF, \one, \two) candidates
14:11 lizmat the optimizer should then rewrite the generic code to those cases
14:14 pyrimidine joined #perl6
14:21 ufobat Bailador now supports "prefix" - https://github.com/ufobat/Bailador/blob/prefix_draft/t/09-prefix.t :-)
14:22 sena_kun ufobat++
14:22 Sgeo_ joined #perl6
14:27 tailgate m: https://gist.github.com/ahalbert/748b49d697062a834057a03b30bf7396
14:27 camelia rakudo-moar b9e2ff: OUTPUT«False␤Internal error: inconsistent bind result␤  in sub dl at <tmp> line 8␤  in block <unit> at <tmp> line 13␤␤»
14:28 skids joined #perl6
14:31 pat_js joined #perl6
14:36 timotimo tailgate: instead of reducing with "and", you could .all instead
14:36 timotimo and i'd recommend using eq instead of ~~ on the LHS of that junction
14:38 tailgate thanks
14:38 AlexDaniel what's up with this error message though?
14:38 AlexDaniel committable6: 2015.07.2 https://gist.githubusercontent.com/ahalbert/748b49d697062a834057a03b30bf7396/raw/e82f38a35234cc3aad7b1e257798b59548e7bf39/DirectionList.pm6
14:38 committable6 AlexDaniel, Successfully fetched the code from the provided URL.
14:38 committable6 AlexDaniel, ¦«2015.07.2»: True␤U␤L␤L␤␤␤R␤R␤D␤D␤D␤␤␤L␤U␤R␤D␤L␤␤␤U␤U␤U␤U␤D␤␤
14:39 tailgate yeah, that was the thing. I can't use @, so I was trying to figure out how to iterate over it
14:39 tailgate Is subset a "proper" way to make lists that have limited stuff in them?
14:40 timotimo "inconsistent bind result" happens when the "where" clause resolves to different values in the simple binder and the slow binder
14:40 timotimo m: sub foo(Str where { Bool.pick }) { say "yup" }; foo("hi")
14:40 camelia rakudo-moar 2bef4d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Cannot do non-typename cases of type_constraint yet␤at <tmp>:1␤------> 3sub foo(Str where { Bool.pick }7⏏5) { say "yup" }; foo("hi")␤»
14:40 timotimo m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi")
14:40 camelia rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
14:40 timotimo m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi")
14:40 camelia rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
14:40 timotimo m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi")
14:40 camelia rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
14:40 timotimo m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi")
14:40 camelia rakudo-moar 2bef4d: OUTPUT«Internal error: inconsistent bind result␤  in sub foo at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
14:40 timotimo m: sub foo(Str $foo where { Bool.pick }) { say "yup" }; foo("hi")
14:40 camelia rakudo-moar 2bef4d: OUTPUT«yup␤»
14:40 AlexDaniel haha
14:40 AlexDaniel alright
14:41 AlexDaniel well, that's LTA still…
14:41 timotimo the fast binder only generates a "fail/success"
14:41 timotimo the slow binder then does it more carefully so it can actually figure out *how* things failed
14:41 timotimo 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
14:42 tailgate so, the slow one is my function, and the simple one checks if it's a List?
14:44 timotimo no
14:44 timotimo the fast binder is a piece of code that gets compiled into the head of your function
14:44 timotimo so before the "for $d.List { ... }" bit there's actually a bunch of code to make sure the passed arguments are correct
14:45 timotimo 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.
14:45 andrzejku hey guys
14:45 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"
14:45 andrzejku are sweden here?
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.
14:45 yoleaux tbrowder: I'll pass your message to [Coke].
14:45 andrzejku swedish*
14:47 tailgate oh, the smartmatch failed
14:47 tailgate hmm
14:48 timotimo yeah, it said "False" before the error
14:48 tailgate weird
14:48 timotimo yup, it's weird
14:49 timotimo oh, well, that's easy
14:49 timotimo ah, never mind, i'm dumb
14:49 timotimo m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any(<U D L R \n>) })
14:49 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…»
14:50 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, …»
14:50 timotimo m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any(<U D L R \n>) }).all.so
14:50 camelia rakudo-moar 2bef4d: OUTPUT«False␤»
14:50 timotimo i didn't do \n right
14:50 timotimo m: my Str $test = qq{ULL\nRRDDD\n}; say $test.comb.map({ $_ ~~ Str and $_ eq any('U', 'D', 'L', 'R', "\n") }).all.so
14:50 camelia rakudo-moar 2bef4d: OUTPUT«True␤»
14:50 tailgate yeah "\n" and '\n' tripped me up
14:51 timotimo yup, but it's right in your code
14:51 tailgate lol, that's not something I hear often
14:52 timotimo ;)
14:52 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:52 camelia rakudo-moar 2bef4d: OUTPUT«any(False, False, False, False, True)␤»
14:53 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…»
14:53 timotimo counter-intuitive result of that reduce operation
14:53 timotimo but it would give True even with reduce
14:53 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…»
14:54 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(False, False, False, False, True)␤»
14:54 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 }))
14:54 camelia rakudo-moar 2bef4d: OUTPUT«True␤»
14:54 bjz joined #perl6
14:54 timotimo i'm not sure why your code is b0rken
15:00 tailgate hmm. At one point the smartmatch returned true
15:00 pyrimidine joined #perl6
15:00 tailgate or I'm a crazy person
15:03 tailgate but hey, I've learned more about compilers here than in the class I took =)
15:07 Sgeo joined #perl6
15:09 dalek doc/return-ways-explanation: 3cb4189 | Altai-man++ | doc/Type/Signature.pod6:
15:09 dalek doc/return-ways-explanation: Attempt to explain ways to declare return type in signature
15:09 dalek doc/return-ways-explanation: review: https://github.com/perl6/doc/commit/3cb41891a2
15:14 dalek doc/return-ways-explanation: bd83d34 | Altai-man++ | doc/Type/Signature.pod6:
15:14 dalek doc/return-ways-explanation: fill-region-as-paragraph
15:14 dalek doc/return-ways-explanation: review: https://github.com/perl6/doc/commit/bd83d346ab
15:15 ufobat did substr() or postmatch() return a List? a while ago?
15:15 ufobat https://travis-ci.org/ufobat/Bailador#L2574
15:16 babydrop ufobat: just use bisectable
15:16 babydrop bisectable6: help
15:16 bisectable6 babydrop, Like this: bisectable6: old=2015.12 new=HEAD exit 1 if (^∞).grep({ last })[5] // 0 == 4 # RT128181
15:16 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128181
15:16 timotimo or commitable
15:17 pierre__ joined #perl6
15:18 Elena_Morova joined #perl6
15:18 Elena_Morova Helloo:3 im from Russia) does anyone want to chat with me?
15:18 timotimo hey, how's the weather in russia?
15:19 babydrop heh
15:19 AlexDaniel Elena_Morova: so what's your impression of Perl 6 so far? ;)
15:19 * babydrop smells a robot.
15:19 AlexDaniel babydrop: I don't mind. We like robots here :)
15:23 AlexDaniel well…
15:24 sena_kun any LHF from rt-queue for a beginner to try?
15:24 tailgate the important question: is it a perl6 robot
15:25 ufobat does bisectable6 use the exitcode?
15:25 RabidGravy joined #perl6
15:25 AlexDaniel ufobat: if it differs, yes
15:25 RabidGravy there that all passed unremarkably
15:26 AlexDaniel ufobat: otherwise it will compare output
15:26 ufobat bisectable6: old=2015.12 new=HEAD "/foo" ~~ /f/; exit 1 if $/.postmatch ~~ Str
15:26 bisectable6 ufobat, Bisecting by exit code (old=2015.12 new=2bef4d3). Old exit code: 1
15:26 bisectable6 ufobat, bisect log: https://gist.github.com/9bfea2f593a678bacc1caf8560279c5d
15:26 bisectable6 ufobat, (2016-12-10) https://github.com/rakudo/rakudo/commit/2bef4d30a09340aaa50362c137a05eae7d1f55cf
15:26 ufobat thanks :)
15:27 timotimo it created a list? o_O
15:28 timotimo that's pretty weird
15:28 AlexDaniel committable6: 2bef4d30a^,2bef4d30a "/foo" ~~ /f/; dd $/.postmatch
15:28 committable6 AlexDaniel, ¦«2bef4d30a^»: "oo"␤¦«2bef4d3»: ("oo",)
15:28 AlexDaniel timotimo: no, it creates a list now
15:28 mst_ joined #perl6
15:29 MasterDuke sena_kun: http://perl6.fail/t/LTA
15:29 travis-ci joined #perl6
15:30 AlexDaniel moritz: ↑ ping
15:30 travis-ci Doc build passed. Altai-man 'Attempt to explain ways to declare return type in signature'
15:30 travis-ci https://travis-ci.org/perl6/doc/builds/182851925 https://github.com/perl6/doc/commit/3cb41891a2f1
15:30 travis-ci left #perl6
15:30 timotimo oh!
15:30 timotimo it has the , at the end of the line
15:30 timotimo that's hilarious :D
15:30 AlexDaniel ah f
15:30 MasterDuke sena_kun: the LTA tickets are usually a bit easier
15:30 AlexDaniel can somebody fix it real quick? :-/
15:30 timotimo sure
15:31 sena_kun MasterDuke, thanks, I'll try to dig in.
15:31 AlexDaniel ufobat: thanks for reporting
15:35 AlexDaniel sena_kun: maybe even try writing some tests? https://github.com/perl6/roast/issues
15:35 mawkish joined #perl6
15:35 travis-ci joined #perl6
15:35 travis-ci Doc build passed. Altai-man 'fill-region-as-paragraph'
15:35 travis-ci https://travis-ci.org/perl6/doc/builds/182852791 https://github.com/perl6/doc/compare/3cb41891a2f1...bd83d346abd0
15:35 travis-ci left #perl6
15:37 sena_kun AlexDaniel, if I will be unable to find appropriate ticket, I suppose.
15:40 domidumont joined #perl6
15:40 BenGoldberg joined #perl6
15:44 jnthn sena_kun: https://rt.perl.org/Public/Bug/Display.html?id=130211 and https://rt.perl.org/Public/Bug/Display.html?id=130182 may be fairly approachable
15:46 sena_kun jnthn, thanks!
15:51 moritz AlexDaniel: pong
15:51 AlexDaniel moritz: timotimo already fixed it, nvm
15:52 moritz timotimo++
15:53 AlexDaniel moritz: but you can still write some tests… :)
15:54 moritz AlexDaniel: i've already done that; just waiting to push them until I'm able to run them
15:54 pmurias joined #perl6
15:55 AlexDaniel moritz: oh, then don't forget to close this: https://github.com/perl6/roast/issues/191
15:56 masak hm, nwc10 is not around, but I thought of him when I found https://www.naftaliharris.com/blog/why-making-python-2.8/ just now.
15:57 * babydrop idly notes that were the two tests above an `is-deeply` they would've detected the regression https://github.com/perl6/roast/commit/99a9bd8774a5af8d089f59616ea55c86b00da63e
15:57 Khisanth joined #perl6
16:00 raiph joined #perl6
16:01 sena_kun I wrote a test for https://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:04 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
16:04 babydrop sena_kun: in a is_run() test
16:04 sena_kun psch, babydrop, which way? :)
16:05 psch hm, right, error-reporting seems to fit better 'cause it's about an incomplete comment
16:05 psch and well, you're testing that it points at the right spot
16:05 babydrop sena_kun: https://github.com/perl6/roast/blob/master/packages/Test/Util.pm#L237
16:05 babydrop sena_kun: what do you mean way?
16:06 sena_kun babydrop, you and psch noted two different files to put the test into.
16:07 babydrop sena_kun: I suggested mine because the bug is about error reporting.
16:07 sena_kun error-reporting.t seems good, thanks!
16:12 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 Ulti where abouts is the implementation in Rakudo, I took a look and couldn't pin it down
16:12 Ulti is it in NQP instead
16:13 babydrop Yeah, it's in NQP.
16:13 timotimo "renamed methods", do you mean you want "rule" to be named "sponge" instead?
16:13 babydrop Well, NQP has `grammar`
16:14 babydrop 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 allowed␤at <tmp>:1␤------> 3class Foo is Cursor { token TOP {7⏏5} }.parse␤»
16:14 babydrop m: class Foo { token TOP {} }.parse
16:14 camelia rakudo-moar bfe4ab: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Null regex not allowed␤at <tmp>:1␤------> 3class Foo { token TOP {7⏏5} }.parse␤»
16:14 Ulti no I mean I want Frinfron controllers to have get/put/post/delete
16:14 babydrop neat
16:14 psch well, you'd need a HOW for the class, and DECLARE for the class and the new Routine keyword
16:14 timotimo this is about EXPORTHOW, right?
16:14 Ulti yeah I assumed it would come down to a HOW but couldnt find one for grammars that looked like it was doing it
16:14 psch m: grammar G { }; G.HOW.^name.say
16:14 camelia rakudo-moar bfe4ab: OUTPUT«Perl6::Metamodel::GrammarHOW␤»
16:15 psch that's just a ClassHOW that does DefaultParent
16:15 timotimo well, rule, token, regex are just funny methods
16:15 psch m: grammar G { }; G.HOW.^mro.say; G.HOW.^roles.say
16:15 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␤␤»
16:15 psch m: grammar G { }; G.HOW.^mro.say; G.HOW.^roles(:local).say
16:15 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␤␤»
16:16 Ulti such reflection
16:16 psch m: grammar G { }; G.HOW.^mro.say; G.HOW.^roles(:local).map({ $_.^name }).say
16:16 camelia rakudo-moar bfe4ab: OUTPUT«((GrammarHOW) (ClassHOW) (Any) (Mu))␤(Perl6::Metamodel::DefaultParent)␤»
16:16 psch there :P
16:16 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?
16:16 yoleaux raiph: I'll pass your message to TimToady.
16:18 RabidGravy joined #perl6
16:19 masak raiph: I think the much easier explanation is that when `$` was chosen, it meant "scalar".
16:19 masak and in a way, sh and others had already made the choice of symbol.
16:21 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?
16:23 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:24 AlexDaniel is there any module that allows writing € or £ instead of $? :P
16:30 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:31 lucasb Test::Util is inside roast repo, so I guess it's the way your are calling
16:31 lucasb *you are
16:31 pyrimidine joined #perl6
16:33 babydrop sena_kun: how are you running the tests?
16:34 babydrop sena_kun: make t/spec/integration/error-reporting.t
16:34 babydrop from rakudo's repo, with the roast checked out in t/spec
16:34 sena_kun babydrop, "perl6 integration/error-reporting.t", pwd is "/some/path/roast". Oh, wow. Thanks.
16:34 khw joined #perl6
16:35 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 babydrop (and make does do the fudge)
16:35 sena_kun I tried roast repo firstly...
16:37 sena_kun afk&
16:40 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:45 sena_kun joined #perl6
16:45 M_o_C joined #perl6
16:47 mohae joined #perl6
16:52 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:53 TimToady it does sound vaguely familiar...
16:54 TimToady The big problem with mnemonics is that they're hard to remember sometimes...  :)
16:56 araujo solved with meta-mnemonics
16:56 araujo :)
16:58 pyrimidine joined #perl6
16:59 timotimo metamnomics
17:00 pyrimidi_ joined #perl6
17:00 TimToady Mna-mna!
17:02 mst TimToady: do dooo de do do
17:02 timotimo anamnomics?
17:02 Xliff do do do, do do do, do do do do do DO DO DO DO DO!
17:03 Xliff 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 ...
17:05 Xliff https://www.youtube.com/watch?v=9ytei6bu7kQ&amp;ab_channel=Rschris6
17:06 Xliff Still getting this from modules in the ecosystem - "Cannot invoke this object (REPR: Null; VMNull)"
17:08 timotimo ugh
17:09 wamba joined #perl6
17:10 raiph thanks for the memories #perl6 :)
17:14 dalek doc/return-ways-explanation: 8a4a26a | Altai-man++ | doc/Type/Signature.pod6:
17:14 dalek doc/return-ways-explanation: Fix grammar
17:14 dalek doc/return-ways-explanation: review: https://github.com/perl6/doc/commit/8a4a26aff7
17:14 pmurias sena_kun: did you get your test to run?
17:14 sena_kun pmurias, yes, thanks. Now I'm preparing a PR.
17:15 babydrop \o/
17:18 pierre__ joined #perl6
17:19 rurban joined #perl6
17:22 rurban1 joined #perl6
17:27 BenGoldberg joined #perl6
17:40 pyrimidine joined #perl6
17:47 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!
17:48 babydrop sena_kun: I don't think we run that anywhere on travis.
17:48 sena_kun Ah, right.
17:48 babydrop But I can see why it'll fail :}
17:48 babydrop sena_kun: how did you run it? Does make t/spec/integration/error-reporting.t actually pass?
17:49 babydrop sena_kun: because the plan needs to be bumped: https://github.com/Altai-man/roast/blob/3a45898d3320a19843b83b0ee0841133cfd488e6/integration/error-reporting.t#L5
17:49 Druui joined #perl6
17:50 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 babydrop *the wording of the error
17:51 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
17:52 sena_kun I always write my tests with `done-testing` and this time it betrayed me!
17:56 zakharyas joined #perl6
17:56 pmurias sena_kun: hint run the tests with "prove"
17:58 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:59 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.
18:00 pmurias sena_kun: prove takes a -e flag that allows an arbitrary command
18:00 pierre__ joined #perl6
18:00 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:03 sena_kun babydrop, done!
18:05 dalek doc/return-ways-explanation: 0aaff17 | Altai-man++ | doc/Type/Signature.pod6:
18:05 dalek doc/return-ways-explanation: Text tweaks
18:05 dalek doc/return-ways-explanation: review: https://github.com/perl6/doc/commit/0aaff172b0
18:06 cibs joined #perl6
18:07 AlexDaniel sena_kun: othersd
18:07 AlexDaniel on't
18:07 AlexDaniel :)
18:07 sena_kun Argh!
18:08 sena_kun emacs is too lively today, lol.
18:11 mr-foobar joined #perl6
18:12 pmurias should a nqp::fileislink be considered something that can be optimized out?
18:14 dalek doc/return-ways-explanation: ce8b05c | Altai-man++ | doc/Type/Signature.pod6:
18:14 dalek doc/return-ways-explanation: Fix grammar
18:14 dalek doc/return-ways-explanation: review: https://github.com/perl6/doc/commit/ce8b05c313
18:22 eliasr joined #perl6
18:27 pmurias would someone do a stat system call just for the side effect?
18:35 andrzejku joined #perl6
18:37 japhb pmurias: Which side effect?
18:38 pmurias the stat sytem call itself rather than it's result
18:40 japhb pmurias: Only when interfacing with C (or maybe perl5) I would think ... because of the stat buffer caching.
18:43 mohae joined #perl6
18:44 thundergnat joined #perl6
18:44 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:46 babydrop So yesterday psch pointed out the comment in https://github.com/rakudo/rakudo/blob/nom/src/Perl6/Actions.nqp#L7766-L7772
18:47 babydrop but I still don't get what the infix:<,>($/) := blah gymnastics actually accomplish
18:47 babydrop This one in particular: https://github.com/rakudo/rakudo/blob/nom/src/Perl6/Actions.nqp#L7797-L7801
18:48 babydrop Like, why is the infix:<,>($/) needed instead of just using $/ ?
18:48 thundergnat Howdy #perl6
18:48 babydrop \o
18:48 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?
18:49 psch babydrop: maybe that sheds some light on the necessity
18:49 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/
18:49 thundergnat https://github.com/thundergnat/n-flake
18:49 thundergnat 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 thundergnat ;-)
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
18:50 psch +the
18:51 psch err, $0.uc probably
18:51 psch not $_.uc
18:54 pyrimidine joined #perl6
18:58 babydrop m: say S/(.)/{$0.uc}/ with "foo"
18:58 camelia rakudo-moar bfe4ab: OUTPUT«Foo␤»
18:58 babydrop That still works, with this change: https://gist.github.com/zoffixznet/d13c78e736389d88b5c57c9f95685662
19:00 pyrimidine joined #perl6
19:00 babydrop m: my $result := Empty; use nqp; nqp::p6store($/, $result); dd $/
19:00 camelia rakudo-moar bfe4ab: OUTPUT«Slip $/ = slip$()␤»
19:00 babydrop m: my $result := Empty; use nqp; nqp::p6store(infix:<,>($/), $result); dd $/
19:00 camelia rakudo-moar bfe4ab: OUTPUT«Nil $/ = Nil␤»
19:01 babydrop m: my $result := "foo"; use nqp; nqp::p6store(infix:<,>($/), $result); dd $/
19:01 camelia rakudo-moar bfe4ab: OUTPUT«Str $/ = "foo"␤»
19:01 babydrop m: my $result := "foo"; use nqp; nqp::p6store($/, $result); dd $/
19:01 camelia rakudo-moar bfe4ab: OUTPUT«Str $/ = "foo"␤»
19:01 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.
19:02 RabidGravy thundergnat, looks good! Ship It!
19:02 babydrop m: my $result := <a b c >; use nqp; nqp::p6store($/, $result); dd $/
19:02 camelia rakudo-moar bfe4ab: OUTPUT«List $/ = $("a", "b", "c")␤»
19:02 psch babydrop: you still have the infix:<,> call in L7769?
19:02 babydrop m: my $result := <a b c >; use nqp; nqp::p6store(infix:<,>($/), $result); dd $/
19:02 camelia rakudo-moar bfe4ab: OUTPUT«Str $/ = "a"␤»
19:03 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
19:03 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
19:04 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:07 dalek mu: b56bcc6 | (JJ Merelo)++ | examples/functional/monads.pl:
19:07 dalek mu: Upgraded it to current version
19:07 dalek mu:
19:07 dalek mu: And added some stuff, too.
19:07 dalek mu: review: https://github.com/perl6/mu/commit/b56bcc6399
19:07 dalek mu: b3a6b8b | moritz++ | examples/functional/monads.pl:
19:07 dalek mu: Merge pull request #24 from JJ/master
19:07 dalek mu:
19:07 dalek mu: Upgraded it to current version
19:07 dalek mu: review: https://github.com/perl6/mu/commit/b3a6b8bf7d
19:08 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:11 babydrop 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 babydrop So the second one is definitely either cargoculted or just leftover from Old Days
19:11 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
19:12 samcv 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
19:13 moritz samcv: if there's anything I need to do for that (create a repo, fork one, whatever), just tell me
19:13 samcv okay :)
19:13 babydrop moritz: well, I'm currently trying to read code with this glitch in it: http://i.imgur.com/FcMf3Ry.png
19:13 babydrop So I'm all for the highlighter being easily hackable by perl6 org :)
19:14 moritz babydrop: :-)
19:14 moritz babydrop: I'd disable syntax hilighting in that situation
19:15 samcv moritz, gonna transfer my fork to the perl6 repo
19:15 samcv errr org right now
19:15 babydrop \o/
19:16 samcv ok it's moving
19:18 samcv https://github.com/perl6/language-perl6fe
19:20 babydrop great. So what's the process of using that instead of Madcapjake's version?
19:20 AlexDaniel instead huh?
19:21 babydrop ?
19:21 AlexDaniel I mean, just send a pull request, no?
19:21 babydrop AlexDaniel: to what?
19:22 AlexDaniel wait, you're moving it to perl6/ … what's going on here‽
19:22 babydrop AlexDaniel: I'll give visual aid: https://github.com/MadcapJake/language-perl6fe/pull/43/commits
19:22 AlexDaniel so MadcapJake is still active but we're forking his thing huh?
19:22 babydrop AlexDaniel: I don't see him "being active".
19:22 AlexDaniel .seen MadcapJake
19:22 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!
19:22 AlexDaniel this weekend is like today
19:23 AlexDaniel don't you guys have a bit of patience or something? :)
19:23 psch the 2th was a friday, so it's clearly ambiguous vOv
19:23 * AlexDaniel does the word “guys” include all genders?
19:23 psch i think that is also ambiguous :P
19:23 TimToady it does in California, usually
19:24 TimToady well, at least in the phrase "you guys"
19:25 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
19:25 babydrop samcv: sounds goods
19:25 babydrop AlexDaniel: after 3 weeks of "soons" promised on twitter and github, there was plenty of patience dispensed.
19:26 TimToady .oO(.oO(*.oO))
19:26 babydrop Actually not soons but "tonights"
19:26 babydrop Previous tonight was 8 days ago and one before that on Nov 22
19:27 AlexDaniel well, if it's under perl6/, then I guess it doesn't matter
19:27 lizmat joined #perl6
19:27 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 babydrop TimToady: yeah, I know subparse doesn't scan....
19:27 AlexDaniel should we keep it as a “fork” then?
19:28 AlexDaniel or just recreate the repo
19:28 * babydrop shrugs
19:28 AlexDaniel it's going to show “forked from MadcapJake/language-perl6fe” forever
19:28 AlexDaniel
19:28 babydrop As long as I get highlights on GitHub and in Atom I couldn't care less :)
19:29 babydrop But so does a lot of stuff, like https://github.com/perl6/modules.perl6.org
19:29 AlexDaniel “This branch is 5483 commits ahead, 2 commits behind MadcapJake:master” and stuff
19:29 babydrop well, maybe not a lot bug some.
19:29 babydrop but
19:32 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 AlexDaniel anyway, doesn't matter
19:32 AlexDaniel samcv++, this is great
19:33 samcv :)
19:33 samcv do you want me to recreate the repo or no?
19:34 samcv i can do that
19:34 psch well, duplicating is how github suggests to solve this kinda issue
19:34 samcv ah
19:34 TimToady m: say 2.&([R∘] * + 3, * * 2)
19:34 camelia rakudo-moar bfe4ab: OUTPUT«10␤»
19:34 TimToady lucasb: ^^ another way
19:34 babydrop m: say (my $x = "foo") ~~ s:g/(.)/{$0.uc}/; dd $x
19:34 camelia rakudo-moar bfe4ab: OUTPUT«(「f」␤ 0 => 「f」 「o」␤ 0 => 「o」 「o」␤ 0 => 「o」)␤Str $x = "FOO"␤»
19:34 psch i mean, sure, it links to the duplicating page when one wants to privatize a public fork
19:34 babydrop psch: I get the same result with the other infix:<,>($/) thing removed
19:34 psch but it's similarly applicable i'd say
19:34 babydrop So I don't get it at all :/
19:34 samcv moritz, is there a way I can get full admin powers for this repo?
19:34 psch babydrop: that's curious.  maybe FROGGS++ remembers :)
19:35 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
19:35 samcv i transfered it to the org
19:35 samcv i can push but that is all
19:35 babydrop samcv: done
19:35 samcv and i also probably need to setup a release branch too
19:35 FROGGS umm, what exactly?
19:36 samcv and then have people push to master
19:36 psch FROGGS: rakudo commit 32d7b08334
19:36 psch FROGGS: babydrop is wondering about the infix:<,> calls
19:36 samcv and then a release branch for github/atom to source from
19:36 babydrop FROGGS: 1 sec, I'll show code
19:37 FROGGS I see it
19:37 babydrop FROGGS: what's the point of this infix:<,> thing? https://github.com/rakudo/rakudo/blob/nom/src/Perl6/Actions.nqp#L7768-L7772
19:37 babydrop There's a comment, but I don't get it
19:37 babydrop FROGGS: and originally, that inquiry started with this one: https://github.com/rakudo/rakudo/blob/nom/src/Perl6/Actions.nqp#L7797-L7801
19:38 babydrop But so far I came to conclusion that it's just a cargocult
19:38 babydrop No idea about the first one tho
19:38 FROGGS it is about pulling out the first thing and assigning it to $/
19:38 FROGGS guess it is about the :g modifier
19:38 FROGGS it most likely should prevent $/ becoming a List
19:39 FROGGS you can remove it an spectest to see what it affects
19:39 mohae joined #perl6
19:39 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
19:39 samcv ok done
19:39 FROGGS well, maybe it made a different pre-GLR
19:40 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…»
19:40 psch m: "foo" ~~ s:g/(.)/{say $/.Str}/
19:40 babydrop The second one receives apply-matches result and it it's always a string
19:40 camelia rakudo-moar bfe4ab: OUTPUT«f␤o␤o␤Cannot modify an immutable Str␤  in block <unit> at <tmp> line 1␤␤»
19:40 babydrop Just removed the first one too and again no failures in spectest
19:41 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
19:41 camelia rakudo-moar bfe4ab: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$x' is not declared␤at <tmp>:1␤------> 3s"x" = { 42 } given my 7⏏5$x = "foo"; dd $x␤»
19:42 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
19:42 camelia rakudo-moar bfe4ab: OUTPUT«True␤»
19:43 psch but that needs different truthiness
19:43 moritz and expose the individual match objects as captures, or something
19:43 psch i mean, i had had a patch that nests Match objects somewhen last year
19:43 psch and TimToady decided to make :g return a List of Match objects instead
19:44 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 $/ ?
19:44 babydrop m: my $x = "foo"; s{.} = -> { 42 } given $x; dd $x
19:44 camelia rakudo-moar bfe4ab: OUTPUT«Block object coerced to string (please use .gist or .perl to do that)␤  in block  at <tmp> line 1␤Str $x = "oo"␤»
19:44 babydrop What's the syntax to use a block with s/// ?
19:44 psch m: "foo" ~~ m:g/(.)/; say $/.WHAT
19:44 camelia rakudo-moar bfe4ab: OUTPUT«(List)␤»
19:44 psch moritz: ^^^
19:44 moritz babydrop: s[.] = 'foo'
19:44 moritz oh
19:44 moritz m: $_ = 'foo'; s[.] = 'bar'; .say
19:44 camelia rakudo-moar bfe4ab: OUTPUT«baroo␤»
19:45 babydrop Well, I'm just reading the comment above the infix:<,> thing: "# ($/,) = $result - We do this so the replacement closure can close"
19:45 babydrop What replacement closure?
19:45 babydrop "# over the current match."
19:46 moritz m: $_ = 'foo'; s[.] = $/.to
19:46 camelia rakudo-moar bfe4ab: ( no output )
19:46 moritz m: $_ = 'foo'; s[.] = $/.to; .say
19:46 camelia rakudo-moar bfe4ab: OUTPUT«1oo␤»
19:46 psch ...actually that was apparently *two* years ago that i had fiddled with :g
19:47 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␤»
19:47 FROGGS $0 used to be Any at some point
19:48 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
19:48 bisectable6 FROGGS, On both starting points (old=2015.12 new=bfe4abb) the exit code is 0 and the output is identical as well
19:48 bisectable6 FROGGS, Output on both points: foo␤<f>oo
19:48 babydrop with these changes: https://gist.github.com/zoffixznet/b36be388bb44b5e67dc9f94a205595e1
19:49 babydrop committable6: all say $_ = "foo"; $_ ~~ s[(.)] = "<$0>"; .say
19:49 psch 5a06ace5c5c is 'allow $x ~~ s/// to return Match or list of Match' fwiw
19:49 committable6 babydrop, https://gist.github.com/767b22a455149c0eb640f1668a9f3708
19:49 psch so, yeah, that is probably decided for 6.c at least vOv
19:49 FROGGS the heck
19:49 psch we're not doing the .subst-mutate call anymore, but...
19:50 FROGGS babydrop: sorry, can't shed light on this
19:50 babydrop :(
19:50 lucasb TimToady: thanks for the snippet! interesting way of doing it :)
19:53 lucasb m: say ([Ro] *+3, * * 2, {$^a * $^a}, * + 11, * * 6)(2)
19:53 camelia rakudo-moar bfe4ab: OUTPUT«666␤»
19:54 FROGGS committable6: all say $_ = "foo"; $_ ~~ s:g[(.)] = "<$0>"; .say
19:54 TimToady lucasb: now you just need to work "donald trump" in there somewhere
19:54 committable6 FROGGS, https://gist.github.com/ad67999616decb914d7b247cceb0590f
19:55 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
19:55 bisectable6 babydrop, Output on both points: foo␤<f><o><o>
19:56 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
19:56 committable6 psch, https://gist.github.com/2b580d92f8cc929b30ac5e0d3b7c9b4f
19:57 FROGGS babydrop: yeah, makes sense I guess
19:59 FROGGS babydrop: look: https://rt.perl.org/Ticket/Display.html?id=126349
19:59 FROGGS and these too: RT #125598, RT #123005
19:59 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=125598
19:59 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=123005
20:00 pyrimidine joined #perl6
20:00 FROGGS committable6: all for 1 { my $x = 'a1'; $x ~~ s/(\d+)/<$0>/; say $x }
20:01 lucasb https://github.com/rakudo/rakudo/commit/32d7b083348bd6bd3cf8e006a5223da25af014f0
20:01 committable6 FROGGS, https://gist.github.com/b6793aee1c9b3358bbde415340d4a8f8
20:01 babydrop m: https://gist.github.com/zoffixznet/1a5cbd80f68d87955a031cf86bfd82af
20:01 camelia rakudo-moar bfe4ab: OUTPUT«[11-22-33 44-55-66 77-88-99]␤»
20:01 lucasb FROGGS: ^^ not looking for that, no?
20:01 babydrop FROGGS: hm, now I finally see the difference.
20:01 babydrop FROGGS: in my version without infixes, I get [11--22--33 44-55-66 77-88-99] for that one
20:02 FROGGS lucasb: that's the patch in question, yes
20:02 labster joined #perl6
20:03 FROGGS babydrop: sorry for the bad comments... should have linked the RTs at least
20:03 babydrop No problem :) Glad we found something
20:04 tailgate I have a list of 3x3 matricies, and want to transpose all of them
20:04 tailgate I know I can use [Z] for one
20:04 samcv anyone know how I can create labels in github for issues?
20:04 FROGGS (found it via searching for "last changed by" and "closed at" in RT)
20:04 tailgate but I'm having trouble writing one that correctly tranposes all of them
20:04 TimToady how 'bout [Z]« or some such?
20:05 babydrop samcv: click on issues there's "Labels" button that leads to this page: https://github.com/perl6/language-perl6fe/labels
20:05 FROGGS samcv: is it your repo?
20:05 samcv oh hey
20:05 samcv i have never seen this page before :)
20:05 samcv yes it is now that i recreated it
20:05 samcv i couldn't find it on my own projects either .thanks
20:05 tailgate should it be >>[Z]<< ?
20:06 tailgate 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 #perl6
20:07 TEttinger joined #perl6
20:07 TimToady hmm, doesn't seem to parse right currently
20:08 tailgate ah, I got it to work with .map({ [Z] @_ });
20:09 babydrop oh
20:09 babydrop I think it was just my terminal glitching, I get the same result for that [11-22-33] thing
20:09 * babydrop tests other tickets
20:10 tailgate nope
20:12 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␤␤»
20:13 lucasb ^^ why can't $/ be rebound without touching the current value?
20:13 psch m: my $x := 42; $x = 10;
20:13 camelia rakudo-moar bfe4ab: OUTPUT«Cannot assign to an immutable value␤  in block <unit> at <tmp> line 1␤␤»
20:13 psch lucasb: because it's not binding, it's assigning
20:14 psch no, wait, modifying!
20:14 babydrop all those tickets have the same behaviour with my patch, so I'll push it.
20:14 psch hm
20:14 psch i think whatever i used to know about the .match internals proobably doesn't apply anymore so yeah :)
20:14 babydrop lucasb: s/// sets the current $/
20:15 babydrop So... you're preventing it from doing so by binding $/ to an Int
20:15 babydrop and it's crying
20:15 lucasb makes sense
20:15 lucasb it assumes $/ is already bound to a scalar container...
20:19 rurban joined #perl6
20:23 lucasb subs have a private $/ which blocks don't?
20:23 lucasb sub { $/ := 42 }(); 'a' ~~ /a/  # this works
20:23 lucasb -> { $/ := 42 }(); 'a' ~~ /a/  # this fails
20:31 BenGoldberg joined #perl6
20:36 Ben_Goldberg joined #perl6
20:39 BenGoldberg m: -> { $/ := 42 }; say $/
20:39 camelia rakudo-moar bfe4ab: OUTPUT«Nil␤»
20:39 BenGoldberg m: (-> { $/ := 42 })(); say $/
20:39 camelia rakudo-moar bfe4ab: OUTPUT«42␤»
20:39 BenGoldberg m: (sub { $/ := 42 })(); say $/
20:39 camelia rakudo-moar bfe4ab: OUTPUT«Nil␤»
20:43 babydrop no need to wrap block/sub in parens
20:43 babydrop m: sub { @_.say }("weee")
20:43 camelia rakudo-moar bfe4ab: OUTPUT«[weee]␤»
20:44 pyrimidine joined #perl6
20:44 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:45 samcv language-perl6-fe maybe with a dash?
20:45 samcv instead of language-perl6fe
20:45 babydrop Something that makes it easy to tell it's best one
20:45 samcv language-perl6-FUN-EDITION
20:45 babydrop Is that what fe stands for?
20:45 mst -Ofun is always turned on
20:45 samcv yeah
20:46 samcv well there's no 'language-perl6' yet
20:46 babydrop that one looks good
20:46 samcv it will have a higher version number than the other package
20:46 samcv ok
20:46 samcv since it's part of perl6 org group that should prolly be fine
20:53 pyrimidine joined #perl6
20:53 samcv https://atom.io/packages/search?utf8=%E2%9C%93&amp;q=perl6
20:53 samcv \O/
20:54 samcv so published. i'm going to edit a few things now that i have all the links for the package
20:54 babydrop woooo
20:54 babydrop samcv++ great job
20:55 samcv what should i have the repo name on the perl 6 org tho
20:55 samcv maybe atom-language-perl6?
20:57 babydrop sure
20:59 cdg joined #perl6
21:02 sena_kun joined #perl6
21:15 aindilis` joined #perl6
21:17 aindilis joined #perl6
21:25 samcv ok now it's all done :)
21:25 babydrop \o/
21:26 samcv ok cool. have a releases branch, i set it to protected so me and other admins can push to that
21:27 samcv 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:29 babydrop m: my $e = Empty; ($e,) = 42; say $e
21:29 camelia rakudo-moar 772ead: OUTPUT«()␤»
21:29 babydrop m: my $e = 42; ($e,) = 42; say $e
21:29 camelia rakudo-moar 772ead: OUTPUT«42␤»
21:29 babydrop I wonder if that's a bug...
21:30 psch m: my $e = 42; ($e,) = 43; say $e
21:30 camelia rakudo-moar 772ead: OUTPUT«43␤»
21:30 babydrop m: my $e = "foo"; ($e,) = 42; say $e
21:30 camelia rakudo-moar 772ead: OUTPUT«42␤»
21:30 psch it seems weird
21:30 psch m: (Empty,) = "foo"
21:30 camelia rakudo-moar 772ead: ( no output )
21:30 psch well
21:31 jnthn m: ($(Empty),) = "foo" # curious
21:31 camelia rakudo-moar 772ead: ( no output )
21:31 psch could maybe be fixed with an iscont somewhere in the right spot
21:31 psch although i'm really not sure what Empty should do in an assignment LHS in the first place
21:32 jnthn m: my $a; (Empty,$a) = "foo", "bar"; say $a
21:32 camelia rakudo-moar 164eb4: OUTPUT«foo␤»
21:32 jnthn Disappear :)
21:32 jnthn But probably should not do that if it's in a Scalar container
21:32 babydrop m: my $e = slip 1, 2, 3; dd ($e,) = 42
21:32 camelia rakudo-moar 164eb4: OUTPUT«Cannot modify an immutable Int␤  in block <unit> at <tmp> line 1␤␤»
21:32 psch jnthn: do we still want a sink warning for "bar" in your example?
21:33 jnthn It's not in sink context there
21:33 jnthn It's an argument to list assignment
21:33 jnthn And no, we deliberately don't worry about too many things on the right
21:33 psch m: my $x; my $y; ($x, $y) = 1, 2, 3
21:33 camelia rakudo-moar 164eb4: ( no output )
21:33 psch ah, okay
21:33 jnthn So `my ($first, $second) = @stuff;` won't whine
21:33 psch right
21:33 jnthn Not to mention stuff like blah xx * on the right
21:34 jnthn But yeah, I suspect scalar container should take precedence over Iterable
21:34 jnthn However
21:34 jnthn m: my %h; %h<a> = []; my ($a, %h<a>) = 1..10; say %h<a>
21:34 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 else␤at <tmp>:1␤------> 3my %h; %h<a> = []; my ($a, %h7⏏5<a>) = 1..10; say %h<a>␤    expecting any of:␤   …»
21:35 jnthn oops
21:35 jnthn m: my %h; %h<a> = []; ($a, %h<a>) = 1..10; say %h<a>
21:35 camelia rakudo-moar 164eb4: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '$a' is not declared␤at <tmp>:1␤------> 3my %h; %h<a> = []; (7⏏5$a, %h<a>) = 1..10; say %h<a>␤»
21:35 jnthn grmbl
21:35 jnthn m: my %h; %h<a> = []; my $a; ($a, %h<a>) = 1..10; say %h<a>
21:35 camelia rakudo-moar 164eb4: OUTPUT«2␤»
21:35 jnthn OK, that's odd
21:35 psch m: my %h; %h<a> = []; my $a; ($a, @%h<a>) = 1..10; say %h<a>
21:35 camelia rakudo-moar 164eb4: OUTPUT«Type List does not support associative indexing.␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
21:35 psch m: my %h; %h<a> = []; my $a; ($a, @(%h<a>)) = 1..10; say %h<a>
21:35 camelia rakudo-moar 164eb4: OUTPUT«[2 3 4 5 6 7 8 9 10]␤»
21:35 jnthn It already *does* let the Scalar container take precednece there
21:35 psch hmm
21:36 psch so it's probably just order of checks?
21:36 psch as in, we check for Empty too early?
21:36 jnthn Well that's what I thought
21:36 jnthn Unless we do check for Empty specifically
21:36 psch yeah, that's what i'm thinking
21:36 jnthn What I was trying to tease out of it there was further evidence that we check for Iterable and *then* for Scalar
21:37 jnthn But I instead disproved that it's that simple
21:37 jnthn So yeah, Empty treated specially is a good next hypothesis
21:37 jnthn m: say Empty.^mro
21:37 camelia rakudo-moar 164eb4: OUTPUT«((Slip) (List) (Cool) (Any) (Mu))␤»
21:37 jnthn Possible that Slip is the thing that's treated ahead of Scalar cont too
21:38 jnthn Oh, which you tested earlier
21:38 jnthn Well, babydrop did
21:38 jnthn Yeah, I suspect that's it
21:38 jnthn Probably should check iscont ahead of Slip
21:41 lukiramu joined #perl6
21:43 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 attribute␤at <tmp>:1␤------> 3$/7⏏5 = 'foo'␤»
21:43 babydrop This is the first time I realize how nonsensical these errors look for someone who doesn't know Perl 5
21:43 psch m: $/ = 5 # the worse part is that it's only Str literals
21:43 camelia rakudo-moar 164eb4: ( no output )
21:44 psch so yeah, it's confusing
21:44 psch but 'use perl5-warnings' would be weird, and just not having them is kind of weird too
21:44 psch we have a pragma that turns some of them off iirc
21:45 psch well, the warnings anyway, don't think it turns of exceptions
21:49 psch m: $/ = Str.new(value => "foo")
21:49 camelia rakudo-moar 164eb4: ( no output )
21:49 psch vOv
21:49 BenGoldberg joined #perl6
21:53 rurban1 joined #perl6
21:54 pyrimidine joined #perl6
21:55 kaare_ joined #perl6
21:58 ufobat joined #perl6
22:08 kaare_ joined #perl6
22:30 bjz joined #perl6
22:32 babydrop .oO( it's weird how writing about fixing a bug made want to play Far Cry: Primal)
22:32 babydrop Coming next year. Far Cry: Programmer's Edition
22:36 zakharyas joined #perl6
22:40 dogbert17 is it worth reporting (RT) things that break when running MoarVM with a smaller than normal nursery?
22:41 jnthn dogbert17: Better file them as MoarVM issues
22:41 dogbert17 jnthn: and how do I do that?
22:41 jnthn GitHub
22:41 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
22:41 dogbert17 ah, too simple
22:41 jnthn If only GCs were :P
22:42 TEttinger shoot poachers with a camera
22:43 dogbert17 jnthn: if you're bored, can you glean anything from this gist? So that I can possibly add more 'meat' to the issue: https://gist.github.com/dogbert17/a73858a3b218df8bd967d921585ef345
22:46 pierre_ joined #perl6
22:46 jnthn dogbert17: I suspect ASAN or Valgrind might be able to add something
22:47 psch huh, what's the last frame pointing at?
22:47 psch an MVMFrame?
22:47 jnthn psch: Last as in #0 or #18? :)
22:47 psch err, lowest :)
22:47 psch so #0
22:47 jnthn oh
22:48 jnthn I dunno, but something inside of the malloc lib or whatever it called to abort the program, I guess
22:48 jnthn My guess is that it's corruption rather than double-free
22:48 timotimo an MVMFrame would never appear in the C stack, fwiw
22:48 jnthn Or at least, if it's a double free inside of congblockingqueue then that's scary.
22:49 jnthn (And I'd expect us to have uncovered/fixed it my now, given it's the basis of all scheduling)
22:49 jnthn Maybe try MVM_GC_DEBUG
22:49 psch right, the '??' just confused me cause it's somewhat out of place with everything else pointing at some lib somewhere
22:50 timotimo yeah, it is strange, indeed
22:50 psch s/confused me/made me curious/
22:50 jnthn The ?? really just means, afaik, the debugger couldn't match it up to something it has symbols available for.
22:50 timotimo are those addresses actually stack pointers? or are they instruction pointers?
22:50 psch hm, but malloc.c is libc isn't it?
22:50 psch what could that call into that doesn't have symbols at that point..?
22:51 jnthn psch: I dunno, some kernel abort handler, maybe?
22:51 timotimo well, since it got sigabrt, it's probably abort()
22:51 psch oh, right, that probably wouldn't have symbols
22:51 timotimo it should :\
22:51 timotimo we could try "break abort<tab tab>
22:51 jnthn timotimo: Given they are not monotonic, surely not stack addresses...
22:51 timotimo " in the gdb shell
22:51 timotimo jnthn: right, that makes sense
22:52 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?
22:52 timotimo without elevated rights, i mean
22:52 jnthn Whatever it is, I don't think it's significant for this bug :)
22:52 jnthn Once you're inside malloc_printerr it's pretty clear you're hosed.
22:53 timotimo that's true
22:53 psch right
22:53 psch as i said, just wondering
22:53 jnthn Yeah, I don't know what it is, but some abort() or equivalent is a good guess.
22:54 timotimo could also have something to do with threading weirdness
22:54 rurban joined #perl6
22:54 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
22:54 psch abort() is in stdlib according to man
22:54 psch same as malloc
22:55 psch anyway
22:55 timotimo you could nativecall into malloc_printerr without having threads active
22:55 timotimo and see if that makes a difference
22:56 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
22:56 jnthn That can tell you what lib that instruction pointer is into
22:56 jnthn dogbert17: Did you try it a few times? :)
22:57 jnthn 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"
22:57 timotimo right you have /proc/maps i believe
22:57 * jnthn is still a /proc noob :)
22:57 timotimo don't forget ASLR will give you different pointers each time, most likely
22:58 jnthn Sure, I was assuming you're in GDB and have the PID of the still-living thing ;)
22:59 jnthn dogbert17: I guess MVM_GC_DEBUG didn't show up anything incriminating?
23:00 timotimo TIL about "man numa"
23:00 dogbert17 jnthn: that I haven't used, oops
23:01 pyrimidine joined #perl6
23:01 timotimo oh, that's funny
23:01 timotimo cat /proc/self/stack
23:01 dogbert17 will 'export MVM_GC_DEBUG=1' suffice?
23:02 timotimo no, it's a define in moarvm's source code
23:02 dogbert17 in collect.h perhaps
23:02 jnthn dogbert17: No, you have to edit src/gc/debug.h
23:02 dogbert17 will do
23:02 jnthn And re-compile
23:03 dogbert17 yup
23:03 wisti joined #perl6
23:06 dogbert17 nothing extra is written to stdout before the crash
23:06 dogbert17 would a 'bt full' be more useful to you
23:06 timotimo and nothing to stderr either?
23:06 dogbert17 nope
23:06 timotimo the thing is that a backtrace will likely not tell us what caused the corruption. just at what place malloc stumbled upon it
23:07 dogbert17 well, in that case I'll tease valgrind a few more times :)
23:08 dogbert17 timotimo: btw did you figure something out with that frame problem you were looking at the other day?
23:09 timotimo no, i'm afraid not
23:09 timotimo i haven't put much more time into it
23:09 timotimo tuits keep slipping through between my fingers
23:10 dogbert17 maybe it's time for you to hold a beer between your fingers instead :)
23:13 jnthn Mmm :)
23:14 * jnthn tracked down some Innis & Gunn Rum Finish for the first time in a while :)
23:14 jnthn dogbert17: Did you try MVM_GC_DEBUG set to 2, as well as 1?
23:16 dogbert17 nope; i'm at 1 but valgrind finally have something to say ...
23:16 jnthn ooh :)
23:16 jnthn 2 can catch a bunch more but in return slows stuff down
23:16 jnthn Though, to my surprise, not as much as I might have imagined
23:17 jnthn I guess if the linked list it traverses is kept cache hot it isn't so bad...
23:18 dogbert17 ok, same gist a bit farther down: https://gist.github.com/dogbert17/a73858a3b218df8bd967d921585ef345
23:18 dalek doc: b7e4d53 | ronaldxs++ | doc/Language/syntax.pod6:
23:18 dalek doc: Examples and reference to further explanation for Unicode in Perl 6 syntax
23:18 dalek doc: review: https://github.com/perl6/doc/commit/b7e4d5354c
23:18 dalek doc: c277111 | ronaldxs++ | doc/Language/syntax.pod6:
23:18 dalek doc: Simplification to address reasonable objection to vagueness about other Unicode refs
23:18 synopsebot6 Link: http://doc.perl6.org/language/syntax
23:18 dalek doc: review: https://github.com/perl6/doc/commit/c2771115bf
23:18 dalek doc: d14eea5 | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/syntax.pod6:
23:18 synopsebot6 Link: http://doc.perl6.org/language/syntax
23:18 synopsebot6 Link: http://doc.perl6.org/language/syntax
23:18 dalek doc: Merge pull request #1042 from ronaldxs/master
23:18 dalek doc:
23:18 dalek doc: Examples and ref. to further explanation for Unicode in Perl 6 syntax
23:18 dalek doc: review: https://github.com/perl6/doc/commit/d14eea5adc
23:18 jnthn Wow.
23:18 jnthn That is incriminating indeed.
23:20 * psch kind of wants to assume architecture as the culprit
23:20 psch buuut that's really just 4 vs 8
23:20 psch which, honestly, doesn't quite make sense
23:20 psch ...also, i don't even really know C nor moar so yeah, i'll shut up :P
23:21 * 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...
23:22 psch uhm, i have heaps of bring-jvm-to-moar-standard tyvm :)
23:22 psch +to do
23:22 psch (also of course not the jvm itself but nqp-j but yeah)
23:22 jnthn dogbert17: I never tried that one yet...recommendable?
23:24 jnthn 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
23:25 babydrop oh, for dog's sake...
23:25 babydrop Apparently Wordpress turns gist URLs into some sort of widgets that inline that gist ~_~
23:26 * 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
23:26 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!
23:27 * dogbert17 wonders if Singleton si the programmers whisky of choice :)
23:27 Ben_Goldberg joined #perl6
23:28 jnthn Surely most programmers won't drink it because it's an anti-pattern? :P
23:28 babydrop :)
23:28 * babydrop doesn't drink
23:29 babydrop oh, misread
23:29 babydrop Never mind me...
23:30 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
23:30 psch honestly, what is with that anyway
23:30 babydrop With what?
23:30 psch i mean, what, 8 different nicks in a year
23:30 psch ?
23:30 jnthn I guess anger at wordpress is probably a stronger drug than drink anyway :P
23:30 babydrop Just 8?
23:31 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
23:31 AlexDaniel by the way, I see no meaningful pattern in these nicks
23:31 psch i'll just assume it's some hiding-a-shady-past kinda deal
23:31 jnthn Amazingly, this *still* screw up whitespace occasionally.
23:32 jnthn (A `foo` bar sometimes comes out as if I'd writen `foo`bar)
23:33 babydrop heh, that's actually what I'm doing too :)
23:33 babydrop AlexDaniel: there's no pattern
23:33 jnthn Did you figure out why it screws up whitespace occasionally? :)
23:33 babydrop Never noticed that :P
23:33 jnthn Oddness.
23:34 jnthn Wonder what I'm doing that you're not :)
23:34 * psch senses a confusion caused by lack of recipients in messages
23:35 lizmat joined #perl6
23:35 AlexDaniel babydrop: Why not? What about “malepregnancy” ?
23:36 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
23:36 jnthn dogbert17: That's produced by MVM_GC_DEBUG
23:36 dogbert17 aha
23:36 jnthn dogbert17: If you run it in GDB and
23:36 jnthn break MVM_panic
23:36 jnthn r
23:37 dogbert17 will do
23:37 jnthn Then it'll breakpoint MVM_panic and run it again
23:37 jnthn And then you can get a stack trace
23:37 jnthn Sometimes they point right at the bug
23:37 jnthn Thanks for doing the grunt work of uncovering/filing these by the way
23:38 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.
23:39 dogbert17 gdb strangeness: ok 67 - No react guts crash in case that once spat out two done messages either
23:39 dogbert17 moar: src/6model/sc.h:163: MVM_SC_WB_OBJ: Assertion `!(obj->header.flags & MVM_CF_GEN2_LIVE)' failed.
23:39 jnthn That's...also very interesting :)
23:40 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 :)
23:41 dogbert17 got it hang on
23:42 dogbert17 https://gist.github.com/dogbert17/5b2752214ee7987802f74b6ac94433a9
23:44 [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.
23:45 jnthn dogbert17: Hmmm
23:45 jnthn dogbert17: Can you also
23:45 jnthn frame 1
23:45 jnthn p MVM_dump_backtrace(tc)
23:47 dogbert17 jnthn: gist updated
23:49 jnthn o.O
23:49 jnthn Please file that in a MoarVM issue :)
23:50 dogbert17 will do
23:50 jnthn I'm way too tired to dig into it now
23:50 kyclark joined #perl6
23:50 dogbert17 no digging, just beer :)
23:51 dogbert17 I'll write it up tomorrow, eh later today, at the latest
23:52 jnthn :)
23:52 jnthn Thanks
23:52 jnthn It's not so much beer that's the problem as just being plain tired :)
23:54 dogbert17 maybe time for some sleep
23:54 jnthn Indeed :)
23:54 jnthn Was just thinking that
23:54 jnthn 'night
23:54 dogbert17 night

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo