Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-12-29

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 Ven .oO( [Z] @a is actually a precircumfix )
00:02 makapa joined #perl6
00:07 skids joined #perl6
00:40 makapa joined #perl6
00:53 dayangkun joined #perl6
00:56 makapa left #perl6
01:05 mickcy_ca joined #perl6
01:06 yeahnoob joined #perl6
01:09 mickcy_ca Hello Perl 6, I wonder if there is a way to do a negative match similarly to a negative character class.  Specifically, I want to do something like <-[*/]> where */ always is in that order.
01:12 vike joined #perl6
01:13 pmichaud mickcy_ca: you're wanting to match any pair of characters that aren't "*/"  ?
01:14 mickcy_ca pmichaud: Pretty much.
01:15 pmichaud well, the obvious is     <!before '*/'> ..
01:15 mickcy_ca pmichaud: More like any character that is not * that is followed by /
01:15 pmichaud but I suspect that's not exactly what you're trying to do
01:15 moritz <-[*]> <!before '/'>
01:16 pmichaud uhhhh. no?
01:16 pmichaud that looks very wrong to me
01:16 moritz it's equivalnt to  / <!before '*/'> . /
01:16 pmichaud no it isn't.
01:17 pmichaud r:  say '*a' ~~ / <!before '*/'> ./
01:17 camelia rakudo-{parrot,moar} ce1e74: OUTPUT«「*」␤␤»
01:17 moritz oh, right, sorry
01:19 pmichaud mickcy_ca: I do have to ask, though, if you're trying to match everything up to '*/' as a closing delimiter.
01:19 mickcy_ca pmichaud: that is actually the purpose of my question.
01:19 pmichaud If so, you can do something like    .*? '*/'
01:21 moritz ... and make sure nothing backtracks into it
01:21 mickcy_ca pmichaud: my original thought was that ...
01:22 mickcy_ca Would be part of a token.
01:22 mickcy_ca No backtracking problem there.
01:22 pmichaud r:  say " everything before */ and other stuff after" ~~ / .*? '*/' /
01:22 camelia rakudo-{parrot,moar} ce1e74: OUTPUT«「 everything before */」␤␤»
01:22 telex joined #perl6
01:22 moritz [:!r .*? '*/']
01:23 pmichaud why would backtracking be a problem there, other than possible performance?
01:23 pmichaud well, other than backtracking has to be turned on.
01:23 pmichaud So...:
01:24 mickcy_ca I am still getting used to all the new things in Perl 6
01:25 yeahnoob joined #perl6
01:32 mickcy_ca If I continue with with the C header parse ... is it really worth picking out all conditional defines, enum, and the like?  End goal toward building a wrapper class around the library.
01:38 adu joined #perl6
01:48 FROGGS jnthn: awesome, thank you
01:48 yoleaux 28 Dec 2014 22:11Z <jnthn> FROGGS: doing that at QAST level is absolutely wrong, I think. It will pessimize every loop that doesn't care for the rsults, and worse it'd be useless for Perl 6 which needs lazy execution. This ties into GLR's proposed LoopIter, and I think we likely want to leave it for that.
01:53 Ven joined #perl6
01:54 mickcy_ca I think I have found a bug ... not sure how reproduceable it is ... but you see my gist for it on http://pastebin.com/chjgKfg5
01:55 mickcy_ca Line 21 is the offender.
01:59 mickcy_ca And just in case anybody is looking at it ... enum and comment don't parse properly yet.
02:08 skids No compile failures with that here.
02:10 xiaomiao joined #perl6
02:19 mickcy_ca skids:  Not sure why not ... it blows up on my machine.
02:19 skids Any error message?
02:20 mickcy_ca Too many positionals passed; expected 1 argument but got 2
02:20 Timbus thats a runtime error :I
02:20 mickcy_ca And that error refers to the last line of my script.
02:20 rmgk_ joined #perl6
02:20 skids Probably that is a runtime error
02:21 mickcy_ca That ONLY happens when {\s*} is used at the offending line.
02:21 Timbus yes but, we need to know how its being used, not just what it is
02:22 mickcy_ca Timbus:  Granted, but would one not expect a runtime error to raise it's ugly head if {\s+) was used?
02:22 mickcy_ca And that being the ONLY change in the code.
02:22 skids That depends.  Got any sample input?
02:23 Timbus that change will cause the match to work completely differently
02:23 mickcy_ca Just a moment ...
02:23 mickcy_ca See http://pastebin.com/JjMJMhhV for the input.
02:24 skids OK, that gets me the same error.
02:24 mickcy_ca Ergo repeatable error.
02:27 mickcy_ca Timbus:  Granted, the match would be different between {\s+} and {\s*}, but if ran without error I believe that type of change should not cause a runtime error.  Is this reasonable?
02:27 mickcy_ca I really need to read my posts prior to hitting <enter>
02:28 mickcy_ca That should be "...but if one ran without ..."
02:29 skids I wouldn't say that's a reasonable expectation, no.
02:29 Timbus ^
02:33 skids Any expression that can match on 0 characters seems to present the same error message.
02:33 Timbus i was looking into that too
02:33 mickcy_ca OK, maybe I did not phrase that correctly ... If I am doing nothing but parsing some text, I can see matches failing due to the difference one-or-more or zero-or-more  tests ... but honestly, if the parse runs without error on one, how could it crash with a runtime error on the other?
02:36 mickcy_ca My gist has MANY places where it could match on 0 characters, the only place that I have found that causes the issue is that one instance.
02:37 skids I do agree the error message is not fully awesome.
02:39 Timbus it matches infinitely on \s*
02:39 Timbus but it crashes specifically because the rule is called 'item'
02:39 lue mickcy_ca: if I change all of your "rule"s to "token"s, it goes from a runtime error to a failed match ( say $/ prints "(Any)" ). I think something about using rules is causing the error.
02:39 Timbus well okay
02:40 Timbus because 'item' is a methopd name, probably present in the grammar class?
02:40 Timbus at a guess?
02:40 mickcy_ca OK.
02:41 mickcy_ca Never would have guessed that one off of the error ... especially since the error is triggered elsewhere with a seemingly unrelated change.
02:41 Timbus haha. just a quick reminder :P   <masakq> right. those tokens there probably want to be rules.
02:41 lue Yeah, seems calling it "item" causes the error, and then the use of \s* within "rule" regexes gets you a hanging program.
02:42 Timbus i hate that hanging error
02:45 mickcy_ca Not worried about a hang on that one at the moment ... it is just an example of the error I noticed.
02:45 Timbus mickcy_ca, thats cool. i just needed to know how you were causing it. theres thousands of ways to do use a broken function without ever tripping the runtime error.
02:46 Timbus to use*
02:47 mickcy_ca Glad I could be of service.
02:50 mickcy_ca And about the rule/token debate ... I have been doing some reading and the only difference noted in my reading is that rules match whitespace, tokens do not.  I am pretty sure that any  rule in there could unmodified, be a token, but not vice versa.  Am I correct in this?
02:51 mickcy_ca Or am I missing something of a deeper difference between them.
02:52 Timbus m: grammar test { rule TOP { <item> };  rule item { \s* }; }; say test.parse("foo")
02:52 camelia rakudo-moar ce1e74: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in method item at src/gen/m-CORE.setting:1148␤  in any !reduce at gen/moar/stage2/QRegex.nqp:1241␤  in any !cursor_pass at gen/moar/stage2/QRegex.nqp:1202␤  in regex item at /tmp/cqzQMqnz…»
02:53 Timbus how do you even test that..   "correct behaviour: should hang indefinitely"
02:53 Timbus expected output: heat death of universe
02:53 TimToady a rule used instad of a token would admit whitespace in places the grammar might not want
02:54 mickcy_ca TimToady, is that what I said, or opposite to what I said?
02:56 lue mickcy_ca: in general, if you change what kind of rule it is (a "regex", "token", or "rule"), you'll have to make some changes to the regex within if you want it to work the same as before.
02:57 mickcy_ca That is my general understanding ... but I was referring only to the grammar which I posted.
02:59 chenryn joined #perl6
03:00 * TimToady has not had a chance to see what "in there" refers to
03:01 mickcy_ca Timbus:  Curious, why would "correct" behaviour be to hang on that example?  I would expect just that the match would fail, even with backtracking enabled.  There should be some fundamental limit on how many times a regex would be allowed to backtrack based on some complexity and length of string.
03:02 mickcy_ca TimToady: "in there" is a reference to the gist that I posted earlier.
03:02 Timbus how many times can you match a zero width char
03:03 mickcy_ca Infinite times ... but the engine should be smart enough to not do that.
03:03 Timbus yeaaaaah. thats what i said
03:04 TimToady well, in some cases, but in general you're talking about solving the halting problem
03:04 TimToady the engine could certainly do better in the obvious cases
03:04 Timbus how does perl 5 do it
03:04 mickcy_ca ^
03:05 mickcy_ca Do what? Not hang on a zero width char test?
03:07 TimToady I think p5 catches that one at compile time
03:07 Timbus yea. but it's probably  to do with perl 5 not having subrules, or grammars like this in general
03:07 Timbus or.. it catches it at compile time. okay
03:07 TimToady it's easy to detect when something must be zero-width, but harder when something *might* be zerowidth
03:08 TimToady m: '' ~~ / ''* /
03:08 camelia rakudo-moar ce1e74: OUTPUT«Memory allocation failed; could not allocate 933298176 bytes␤»
03:08 TimToady that should be easy to detect, but just NYI
03:09 Timbus i thought it just p5 moved along after matching a zero width space. i remember lizmat saying we should not-match a zw char more than once or something. and then jnthn wrote an essay while i nodded and pretended to understand, and here we still are
03:10 mickcy_ca I am curious about the reasoning that jnthn had used.
03:11 Mso150 joined #perl6
03:12 Timbus parsers are hard! thats the extent of my expert knowledge on the subject
03:12 * Timbus puts a sippy cup lid on his coffee and sits at the baby table
03:13 mickcy_ca I may have found the IRC log for that.  Although it dates back to 2011-11-18
03:17 Timbus eesh. nah it was this year, maybe last
03:18 TimToady well, the subject comes up periodically
03:18 Timbus but perhaps it is an infinitely recurring subject :>
03:18 TimToady there are several bits to the argument
03:18 mickcy_ca I noticed that ...  and hopefully not infinitely recurring.
03:18 TimToady one is that the general case isn't possible to solve, of course
03:19 mickcy_ca I have been reading many logs ...
03:19 TimToady the next is that we don't prevent infinite loops elsewhere...
03:19 TimToady m: loop {}
03:19 TimToady but mainly it hasn't bubbled up to anyone's level of attention yet
03:19 Timbus one is slightly-more-accidental
03:19 camelia rakudo-moar ce1e74: OUTPUT«(timeout)»
03:19 TimToady it's not that we don't point out obvious errors elsewhere
03:20 TimToady though in this case, the boundary between obvious and not-so-obvious is kinda squishy
03:21 skids r: perl6-m -e 'say "a#" ~~ m/a \#/;   # LTA error IMO.  The message for the 'a\#' (unspace) suggests using '#' or \x23 this case might benefit from that too.
03:21 camelia rakudo-{parrot,moar} ce1e74: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Two terms in a rowâ�¤at /tmp/tmpfile:1â�¤------> [32mperl6-m -e [33mâ��[31m'say "a#" ~~ m/a \#/;   # LTA error IMO.[0mâ�¤    expecting any of:â�¤        infix stopperâ�¤      â€¦Â»
03:21 skids oops
03:21 skids r: say "a#" ~~ m/a \#/
03:21 camelia rakudo-{parrot,moar} ce1e74: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Regex not terminated.â�¤at /tmp/tmpfile:1â�¤------> [32msay "a#" ~~ m/a \#/[33mâ��[31m<EOL>[0mâ�¤Couldn't find terminator /â�¤at /tmp/tmpfile:1â�¤------> [32msay "a#" ~~ m/a \#/[33mâ��[31m<EOL>[0mâ�¤    exp…»
03:23 mickcy_ca I too have noticed that the \ operator doesn't always escape the expected way ... so I have switched to direct quotes instead. That said, '#' and \# should produce the same results.
03:24 mickcy_ca m: say "a#" ~~ m/a '#'/
03:24 camelia rakudo-moar ce1e74: OUTPUT«「a#」␤␤»
03:24 TimToady std: say "a#" ~~ m/a \#/
03:24 camelia std f9b7f55: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Regex not terminated at /tmp/IZIxCK9Jb2 line 1 (EOF):â�¤------> [32msay "a#" ~~ m/a \#/[33mâ��[31m<EOL>[0mâ�¤    expecting quantifierâ�¤Parse failedâ�¤FAILED 00:00 138mâ�¤Â»
03:24 TimToady std: say "a#" ~~ m/a \# b/
03:24 camelia std f9b7f55: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Regex not terminated at /tmp/HBpZdfjt4a line 1 (EOF):â�¤------> [32msay "a#" ~~ m/a \# b/[33mâ��[31m<EOL>[0mâ�¤    expecting quantifierâ�¤Parse failedâ�¤FAILED 00:00 138mâ�¤Â»
03:25 TimToady hmm
03:25 TimToady std: say "a#" ~~ m/a \ # b/
03:25 camelia std f9b7f55: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Regex not terminated at /tmp/sJ1XLvgos5 line 1 (EOF):â�¤------> [32msay "a#" ~~ m/a \ # b/[33mâ��[31m<EOL>[0mâ�¤    expecting quantifierâ�¤Parse failedâ�¤FAILED 00:01 138mâ�¤Â»
03:25 TimToady std: say "a#" ~~ m/a\ # b/
03:25 camelia std f9b7f55: OUTPUT«[31m===[0mSORRY![31m===[0m�No unspace allowed in regex; if you meant to match the literal character, please enclose in single quotes (' ') or use a backslashed form like \x20 at /tmp/FnrllZpuSU line 1:�------> [32msay "a#" ~~ m/a\[33m�[31m # b/[0m…»
03:25 TimToady std: say "a#" ~~ m/a\# b/
03:25 camelia std f9b7f55: OUTPUT«[31m===[0mSORRY![31m===[0m�No unspace allowed in regex; if you meant to match the literal character, please enclose in single quotes ('#') or use a backslashed form like \x23 at /tmp/UKnYD0sEGM line 1:�------> [32msay "a#" ~~ m/a\[33m�[31m# b/[0m�…»
03:25 mickcy_ca Only way that works at this time is quoting
03:25 TimToady there's some interaction with unquoting, which \# can start
03:26 skids (well \x23 works too)
03:26 TimToady std: / <[ \# ]> /
03:26 camelia std f9b7f55: OUTPUT«ok 00:00 136m␤»
03:26 TimToady std: / <[ \ ]> /
03:26 camelia std f9b7f55: OUTPUT«ok 00:00 136m␤»
03:26 TimToady hmm, not how I remembered it...
03:27 * TimToady is a bit distracted by relatives at the moment, sorry
03:28 mickcy_ca std: say 'a#' ~~ /<[\#]>
03:28 camelia std f9b7f55: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Regex not terminated at /tmp/6RvSKst4oy line 1 (EOF):â�¤------> [32msay 'a#' ~~ /<[\#]>[33mâ��[31m<EOL>[0mâ�¤    expecting quantifierâ�¤Parse failedâ�¤FAILED 00:00 139mâ�¤Â»
03:28 Timbus m: grammar test { rule TOP { <item> };  rule item { a }; }; say test.parse("a")
03:28 camelia rakudo-moar ce1e74: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in method item at src/gen/m-CORE.setting:1148␤  in any !reduce at gen/moar/stage2/QRegex.nqp:1241␤  in any !cursor_pass at gen/moar/stage2/QRegex.nqp:1202␤  in regex item at /tmp/mPpD7YH5…»
03:29 Timbus could someone ticket that? i cant even remember how :/
03:29 Timbus unless we use github tickets now
03:31 mickcy_ca See http://rakudo.org/tickets/
03:38 tinyblak joined #perl6
03:46 noganex_ joined #perl6
03:50 ugexe_ any tricks to getting libicu-dev detected by rakudo's Configure.PL for the latest rakudo commit referencing parrot?
03:51 ugexe_ apt-get install libdev-icu && perl Configure.pl --backends=parrot --gen-parrot --gen-nqp: ... Parrot without ICU is not supported anymore. Failed running perl Configure.pl
03:51 ugexe_ (libdev-icu install was successfull)
03:55 mickcy_ca Going for a movie ... ta ta 4 now.
03:55 mickcy_ca left #perl6
03:58 tinyblak_ joined #perl6
04:10 kaare_ joined #perl6
04:12 gfldex joined #perl6
04:18 adu joined #perl6
04:21 hoelzro is it unusual to add named params to Str implementations?
04:22 hoelzro ex. $xmly-type.Str(:pretty)
04:39 sirdancealot joined #perl6
04:53 skids joined #perl6
04:53 chenryn joined #perl6
04:56 adu joined #perl6
04:58 kaiserpathos joined #perl6
05:02 Akagi201 joined #perl6
05:05 yeahnoob joined #perl6
05:08 tinyblak joined #perl6
05:16 tinyblak_ joined #perl6
05:21 tinyblak joined #perl6
05:32 kaare_ joined #perl6
05:41 tinyblak_ joined #perl6
06:05 eternaleye joined #perl6
06:24 jack_rabbit joined #perl6
06:24 xfix joined #perl6
06:25 dayangkun joined #perl6
06:33 kaleem joined #perl6
06:39 yeahnoob joined #perl6
07:16 jluis joined #perl6
07:18 rindolf joined #perl6
07:21 gfldex joined #perl6
07:29 virtualsue joined #perl6
07:56 ggoebel111111116 joined #perl6
07:58 colomon_ joined #perl6
07:58 chenryn_ joined #perl6
08:00 btyler joined #perl6
08:01 dagurval joined #perl6
08:01 ruoso joined #perl6
08:02 Sqirrel joined #perl6
08:02 salv0 joined #perl6
08:13 darutoko joined #perl6
08:19 skids joined #perl6
08:19 rurban joined #perl6
08:28 Woodi joined #perl6
08:32 Guest68514 joined #perl6
09:05 sqirrel_ joined #perl6
09:09 Mso150 joined #perl6
09:12 hekmek joined #perl6
09:13 hekmek left #perl6
09:14 denis_boyun_ joined #perl6
09:32 grondilu joined #perl6
09:34 [Sno] joined #perl6
09:36 xinming joined #perl6
09:48 andreoss joined #perl6
09:48 andreoss is there a decreasing range operator? Inf..0
09:49 mvuets joined #perl6
09:50 andreoss m: (100..1).elems
09:50 camelia rakudo-moar ce1e74: ( no output )
09:50 andreoss m: say (100..1).elems
09:50 camelia rakudo-moar ce1e74: OUTPUT«0␤»
09:51 orfjackal joined #perl6
09:52 moritz m: .say for 10 ... 1
09:52 camelia rakudo-moar ce1e74: OUTPUT«10␤9␤8␤7␤6␤5␤4␤3␤2␤1␤»
09:54 andreoss moritz: is it still a range?
09:55 moritz andreoss: no, just a lazy list
09:56 FROGGS joined #perl6
09:56 andreoss ok. why Inf..0 works but 100..0 not?
09:57 moritz work? how does it work?
09:57 moritz m: say (Inf...0).perl
09:57 moritz m: say (Inf..0).perl
09:57 camelia rakudo-moar ce1e74: OUTPUT«(timeout)»
09:57 camelia rakudo-moar ce1e74: OUTPUT«Inf..0␤»
09:57 moritz m: say (100..0).perl
09:57 camelia rakudo-moar ce1e74: OUTPUT«100..0␤»
09:58 andreoss oh.. its actually -Inf..0, so it's not decreasing
09:58 FROGGS andreoss: -Inf..0 does not make that much sense
09:58 FROGGS it can only be used in a range check and that is identical to * < 0
10:00 andreoss Inf itself does not make much sense
10:01 JimmyZ well, X ... * does make sense
10:02 andreoss ranges can be compared fast, lazy list should be evaluated for this
10:02 andreoss m: say (1..1_000_000) == (1..1_000_000)
10:02 camelia rakudo-moar ce1e74: OUTPUT«True␤»
10:02 andreoss m: say (1...1_000_000) == (1...1_000_000)
10:02 moritz that only compares number
10:02 camelia rakudo-moar ce1e74: OUTPUT«(timeout)»
10:03 moritz m: say (1..1_000_000) eqv (1..1_000_000)
10:03 camelia rakudo-moar ce1e74: OUTPUT«(timeout)»
10:04 andreoss moritz: what smartmatch operator does here?
10:04 andreoss m: say (1..1_000_000) ~~ (1..1_000_000)
10:04 camelia rakudo-moar ce1e74: OUTPUT«True␤»
10:04 andreoss still compares only size?
10:05 andreoss m: 1...10 ~~ 1...10
10:06 camelia rakudo-moar ce1e74: OUTPUT«(timeout)»
10:06 andreoss forgot parens
10:11 spider-mario joined #perl6
10:14 TuxCM joined #perl6
10:19 andreoss left #perl6
10:31 Ven joined #perl6
10:34 Alina-malina joined #perl6
10:34 Alina-malina joined #perl6
10:43 bjz joined #perl6
10:48 telex joined #perl6
10:50 pecastro joined #perl6
10:51 andreoss joined #perl6
10:52 andreoss which chained method calls where do i put new line?
10:52 andreoss it gives a error about "." using to concatenate strings.
11:08 nine moritz: Sorry for the inconvenience. It seems like the default route for IPv6 does not get set automatically after a reboot and I tend to forget that. I hope the upgrade to openSUSE 13.2 will fix that.
11:15 denis_boyun joined #perl6
11:17 andreoss left #perl6
11:18 moritz nine: I manged with ssh -4, so no worries
11:23 azawawi joined #perl6
11:23 azawawi hi
11:24 azawawi i have been looking at https://github.com/perl6/roast/blob/master/S32-io/io-spec-win.t#L92
11:25 azawawi $*SPEC.catdir('C:', 'rakudo') should return C:\rakudo not C:rakudo on windows
11:25 bjz joined #perl6
11:27 moritz sounds vaguely sane
11:28 azawawi \ is the volume/directory separator on windows
11:28 azawawi moritz: Happy new year in advance btw :)
11:28 moritz azawawi: thanks :-)
11:28 azawawi moritz: and thanks for updating rakudo on win32
11:29 moritz azawawi: I did no such thing
11:29 azawawi moritz: been trying to get farabi6 working again
11:29 azawawi moritz: you blogged about it :)
11:29 moritz azawawi: FROGGS++ has built an r-star .msi
11:29 azawawi FROGGS++ indeed
11:31 azawawi i wonder if the MSI installer should add C:\rakudo\bin and C:\rakudo\languages\perl6\site\bin in local or system %PATH%
11:31 azawawi that way panda-installed scripts can work out of the box
11:31 azawawi could you please point me to MSI installer code?
11:31 abraxxa joined #perl6
11:35 moritz azawawi: in the rakudo/star repo, the Makefile template in tools/build/Makefile.in contains an 'msi' target
11:37 Mouq joined #perl6
11:38 Ven joined #perl6
11:42 xiaomiao joined #perl6
11:44 rindolf joined #perl6
11:47 FROGGS there are xml files that specify what the installer should do
11:49 chenryn_ joined #perl6
12:06 cosimo joined #perl6
12:11 a3gis joined #perl6
12:12 a3gis lizmat: hi! I heard you wrote https://github.com/rakudo/rakudo/blob/nom/src/core/Set.pm ?
12:12 lizmat well, I ported it from the Niecza implementation and then added to it
12:13 a3gis oh ok; I was just wondering why Set isn't type-parameterised
12:13 lizmat you mean, why isn't it using typed hashes ?
12:14 a3gis I mean, being able to create a Set over elements of a specific type. e.g. Set[Int]
12:16 azawawi FROGGS: you mean https://github.com/rakudo/star/blob/master/tools/build/star-product.wxs, right?
12:16 lizmat well, perhaps because it doesn't say anything about that in the spec
12:16 lizmat and because we don't do constraints just yet ?
12:16 a3gis alright, then maybe I should read the spec :p
12:16 a3gis thanks
12:16 azawawi moritz: thanks
12:17 lizmat a3gis: that's not saying it doesn't make sense
12:18 lizmat but I know that the way typed hashes are currently implemented may well change in the future
12:18 lizmat it's a bit of an adhoc implementation atm
12:18 lizmat make it work and all that  :-)
12:22 Ven joined #perl6
12:24 Mouq masak: https://github.com/masak/007/pull/1
12:29 Ven joined #perl6
12:37 moritz Mouq++
12:44 BenGoldberg joined #perl6
12:57 Alina-malina joined #perl6
13:08 hahainternet joined #perl6
13:12 ugexe joined #perl6
13:23 Alina-malina joined #perl6
13:33 dalek doc: edef417 | Mouq++ | lib/Language/ (2 files):
13:33 dalek doc: Discuss :sigspace in a bit more depth.
13:33 dalek doc: review: https://github.com/perl6/doc/commit/edef417db8
13:38 [Sno] joined #perl6
13:52 Woodi joined #perl6
14:07 sqirrel_ joined #perl6
14:08 rjbs Heh, while doing moderation:
14:08 rjbs To:       perl6-announce@perl.org
14:08 rjbs Subject:  Parking Violation Notice
14:12 ugexe_ joined #perl6
14:17 FROGGS *g*
14:18 xfix rjbs, clearly spam
14:18 rjbs xfix: I know.
14:19 rjbs Sometimes, spam subjects are funny.
14:22 jdv79 rjbs: haven't you worked at an an "email" company for a while?
14:22 rjbs Coming up on ten years.
14:23 jdv79 how can you find that funny?  have you not seen it all byt now? ;)
14:23 xfix I saw spam with [SPAM] tag.
14:23 FROGGS I guess it is the combination of subject and recipient this time :o)
14:23 jdv79 ugh, i've been at this gig for 6 and its been quite enough.  i can't imagine doing 10.
14:24 rjbs If I was the kind of person who got burned out and cynical after setting it all, I wouldn't be working working with perl5 and email for so long. ;)
14:24 rjbs s/setting/seeing
14:24 FROGGS xfix: that's what your provider adds... mine are tagged ***SPAM***
14:24 xfix My provider doesn't add tags to spam.
14:24 xfix It's just in spam directory.
14:25 FROGGS my spam mails are also often funny, because my address is email@froggs.de and so they talk to me as if my name is 'email' :o)
14:25 rjbs Yeah, I get that sort of thing, too.  "Dear cpan:"
14:25 FROGGS yeah
14:25 jdv79 i just meant tired and/or uninterested; not necessarily cynical.
14:26 xfix Like CPAN is a real person.
14:26 rjbs "Dear cpan, you won't believe these embarrassing photos of you!"
14:26 xfix rjbs, sure, under Acme::CPANPhotos
14:26 jdv79 as someone that "does email" do you think the spam war will ever be won?  i still get tons of it.
14:26 xfix (not a real module)
14:26 rjbs jdv79: Not on SMTP, no.
14:27 rjbs Or: not without a few more significant policy cahnges.
14:27 xfix I checked spam directory. Hm, apparently I have won 2,500 million pounds. Sounds legit.
14:27 FROGGS click it!
14:27 xfix It has a footer: This email is free from viruses and malware because avast! Antivirus protection is active.
14:27 xfix (and link to antivirus)
14:27 rjbs Ha, somebody just clicked the link in the "you won £2,500mn pounds" scam I sent out!
14:28 xfix I didn't.
14:28 FROGGS :P
14:28 xfix "You Have Won £2,500,000.00 Pounds Sterling. Get back for claim."
14:28 xfix Hm, no attachments...
14:28 xfix That's the entire mail.
14:29 jdv79 i found the discovery and use of my "contacts" lately the creepiest yet.  i get spam from people that are probably connected to me on the net somewhere...
14:29 rjbs "Want 300 free e-gold for speeding up crops?  Let us connect to your contacts!"
14:30 xfix Hm, I wonder what this e-gold is.
14:30 xfix (probably not useful for anything)
14:31 xfix Why Rakudo Star compilation freezes for me on '/home/xfix/Projects/Packages/rakudo-star/pkg/rakudo-star/usr/bin/perl6-p --target=pir --output=/home/xfix/Projects/Packages/rakudo-star/pkg/rakudo-star/usr/lib/parrot/6.11.0/languages/perl6/lib/Pod/To/HTML.pm.pir /home/xfix/Projects/Packages/rakudo-star/pkg/rakudo-star/usr/lib/parrot/6.11.0/languages/perl6/lib/Pod/To/HTML.pm'
14:31 xfix (100% of CPU used, and doesn't continue)
14:35 xfix Hm, I guess it's because I already had not working Perl 6. Removed it, and restarted the compilation. Perhaps it will work.
15:10 b2gills Write a program that makes 2 + 2 = 5 : https://codegolf.stackexchange.com/a/28887/1147
15:12 xfix b2gills, yes, I totally don't have an idea how it works.
15:12 b2gills Well then don't click the `edited Jun 6 at 12:06` text
15:13 b2gills ... If you want to stay in the dark.
15:13 muraiki_ joined #perl6
15:18 Mouq joined #perl6
15:27 kaare_ joined #perl6
15:34 rurban joined #perl6
15:44 itz_ joined #perl6
15:54 kjs_ joined #perl6
15:58 andreoss joined #perl6
16:01 mr-foobar joined #perl6
16:05 a3gis joined #perl6
16:05 a3gis hello again! could someone help me out as to why "True & False ~~ Bool" returns False?
16:06 a3gis or all(True) ~~ Bool
16:07 Mouq m: say True & False ~~ Junction
16:07 camelia rakudo-moar ce1e74: OUTPUT«True␤»
16:07 a3gis oh
16:08 a3gis so it doesn't distribute ~~ over the junction or something?
16:11 Mouq It depends on the right hand side. foo ~~ bar is just sugar for bar.ACCEPTS(foo)
16:11 a3gis oh ok
16:11 Mouq If ACCEPTS takes Mu, it'll take the Junction itself, instead of the individual values.
16:12 a3gis what would be the best way to translate all($xs) ~~ T ?
16:12 beastd joined #perl6
16:12 rindolf joined #perl6
16:13 Mouq I'm trying to figure that out myself :/
16:15 Mouq You might try all(map &WHAT, @$xs) ~~ T
16:15 Mouq Err
16:15 Mouq === T
16:16 a3gis mh
16:16 Mouq But at that point you may as well just do all map {.WHAT ~~ T}, @$xs
16:22 psch joined #perl6
16:22 psch hi #perl6 \o
16:22 Rounin joined #perl6
16:22 psch m: say so (True, False) >>~~>> Bool
16:22 camelia rakudo-moar ce1e74: OUTPUT«True␤»
16:23 a3gis ooh
16:23 psch the "silly fish" operator \o/
16:23 psch ...except of course not really :)
16:23 a3gis great, thanks :)
16:24 a3gis I tried "if all($prod.factors.map(* ~~ BNF::NonTerminal)) {"
16:24 a3gis but was getting "No such method 'count' for invocant of type 'Bool'"
16:26 Mouq a3gis: * doesn't become code with ~~
16:27 Mouq Probably needs a warning, I know I've fallen into the same trap...
16:28 bjz joined #perl6
16:29 Mouq m: say * min 4 # same thing; useful, but potentially confusing
16:29 camelia rakudo-moar ce1e74: OUTPUT«4␤»
16:29 psch there's bug for WhateverCode not priming everything iirc
16:30 psch #122708
16:30 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=122708
16:30 psch .tell Timbus the issue with .item in a grammar is already ticketed, #77350.  the example is with .any, but .item is a method on Mu as well
16:30 yoleaux psch: I'll pass your message to Timbus.
16:30 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=77350
16:32 a3gis Mouq: oh
16:32 a3gis would someone mind to take a look at l108-135 and tell me if I can simplify anything? https://gist.github.com/a3gis/d1ed877a269bbea6b473
16:36 jdv79 NativeCall's tests don't seem to pass on my version here.  perl6 version 2014.10-104-g209674f built on MoarVM version 2014.10-31-geba41f9.
16:39 jdv79 i guess i'll update and see if that helps
16:44 profan joined #perl6
16:47 jack_rabbit joined #perl6
16:50 skids joined #perl6
16:50 xfix_ joined #perl6
16:50 adu joined #perl6
16:59 jdv79 nope.  NativeCall tests still fail on newest moar-jit brew
17:01 jdv79 http://nopaste.info/ab25d417f9.html
17:03 dalek perl6-roast-data: 0218abb | coke++ | / (5 files):
17:03 dalek perl6-roast-data: today (automated commit)
17:03 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/0218abb97c
17:09 TimToady hmm, I have libicu52 and libicu-dev installed, but when I config I get "===SORRY=== Parrot without ICU is not supported anymore."
17:09 raydiak joined #perl6
17:09 raydiak hey #perl6 o/
17:10 TimToady moritz: ^^^
17:10 TimToady raydiak: \o
17:10 jdv79 hmm.  i just tried to write the simplest of web scrapers and its not happy.
17:11 raydiak good morning TimToady
17:12 zakharyas joined #perl6
17:12 jdv79 http://nopaste.info/2bda1ebe10.html should be no problem, right?  i'm not sure how to debug that.
17:13 jdv79 seems to hang fetching after fetching google eating 90-100% cpu.
17:15 rurban joined #perl6
17:19 raydiak jdv79: yeah I don't think you're doing anything wrong...if you wanted to debug it, I wonder if yahoo redirecting to https has anything to do with it...problem might be in IO::Socket::SSL instead of HTTP::UserAgent
17:21 raydiak (I partly suspect IO::Socket::SSL because I had to --notests to get it to install)
17:24 virtualsue joined #perl6
17:28 jdv79 i had to use --notests to install NativeCall and HTTP::UserAgent but not IO::Socket::SSL
17:31 raydiak jdv79: sounds like maybe we both have some issues to report :)  but only the yahoo one fails for me, what about on your end?
17:32 jdv79 yeah, google and ddg are ok
17:33 raydiak jdv79: probably is a problem with the https redirect then, in one module or another
17:34 jdv79 seems to be https related - https://www.google.com hangs
17:41 sqirrel_ joined #perl6
17:43 raydiak darn you github, quit mangling my issue reports with markdown...
17:43 Ven joined #perl6
17:43 FROGGS TimToady: perhaps it's checking for the existence of /usr/include/unicode/something.h
17:44 FROGGS TimToady: IIRC it is meant to use pkg-config instead of icu-config, but I dunno if it does use the former nowadays or not
17:45 TimToady blowing away parrot and install/bin is not sufficient, despite the new parrot finding ICU
17:45 mvuets joined #perl6
17:45 TimToady so the test is bogus somehow
17:47 ugexe i opened an issue on the icu thing last night on NQP fwiw
17:47 TimToady hmm, it's actually looking in nqp_config
17:47 ugexe parrot actually sees ICU as installed too (as seen here: https://travis-ci.org/ugexe/P6TCI/jobs/45332054#L278)
17:58 TimToady moritz: basically, it looks like nom requires nqp to supply ICU, but nqp does not require parrot to supply ICU, so any old parrot makes nqp happy but not nom
17:58 [Coke] parrot build died today on OS X, digging.
18:00 [Coke] I think the icu failure might be too eager.
18:00 [Coke] it's not even building parrot first.
18:00 TimToady [Coke]: see what I just said
18:01 itz_ hmm I just had panda seg fault with moar (deleting and rebuilding everything)
18:01 [Coke] danke.
18:01 * TimToady is attempting a rebuild after blowing away nqp to see if that is a workaround
18:01 [Coke] (and I lied, it did build parrot, I didn't do this in a clean dir). I have icu installed, so parrot -should- have enabled it.
18:02 [Coke] ... and my parrot does.
18:04 TimToady blowing away nqp also does not help
18:06 [Coke] However it's checking for icu seems wrong, since the parrot I'm building does have it.
18:06 ugexe not the checking, but setting it in the config
18:06 ugexe $impls{parrot}{config}{has_icu} doesnt seem to get set
18:11 TimToady maybe we should revert until we figure out what's happening
18:11 TimToady unless someone feels like they'll have a fix soon
18:14 ugexe i spent a few hours last night track it down with no success :(
18:15 grondilu_ joined #perl6
18:25 raydiak rakudo's Configure.pl on L179 is checking $nqp_config{'has_icu'}, but %nqp_config's keys are named like 'parrot::has_icu'
18:26 dalek rakudo/nom: 49dac31 | hoelzro++ | src/core/asyncops.pm:
18:26 dalek rakudo/nom: Don't use busy waiting if you don't have to with earliest
18:26 dalek rakudo/nom:
18:26 dalek rakudo/nom: If we have a single channel and we're not using a wait block,
18:26 dalek rakudo/nom: we can simply call $c.receive.  This addresses RT #123515,
18:26 dalek rakudo/nom: but a facility (probably VM-level) should be added to prevent
18:26 dalek rakudo/nom: busy waiting, even in the multi-channel case
18:26 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=123515
18:26 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/49dac31a63
18:27 sirdancealot joined #perl6
18:28 telex joined #perl6
18:31 dalek rakudo/nom: 80b9123 | TimToady++ | Configure.pl:
18:31 dalek rakudo/nom: Revert "Require ICU support on the Parrot backend"
18:31 dalek rakudo/nom:
18:31 dalek rakudo/nom: This reverts commit 7fca9456786ed5e39d28d37d74b445fc2e60c8c8.
18:31 dalek rakudo/nom: It's falsely reporting the absence of ICU.
18:31 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/80b9123b62
18:31 psch joined #perl6
18:34 simcop2387 joined #perl6
18:35 raydiak TimToady: I think changing that key I just mentioned fixes it; testing...
18:35 TimToady oh, didn't see your note
18:36 raydiak y'all could probably have that tested and fixed before my build finishes :)
18:36 * TimToady has to take the maternal uncle of Perl to the doctor
18:36 TimToady afk &
18:36 raydiak \o
18:39 grettis joined #perl6
18:40 moritz TimToady: IMHO it's fine for nqp to not need ICU
18:41 moritz TimToady: though one might argue that nqp's Configure.pl should have a flag --requires-icu which makes it reject a parrot without icu
18:41 * raydiak should have tried this out on hack instead of his own laptop
18:45 Mso150 joined #perl6
18:46 denis_boyun_ joined #perl6
18:47 raydiak yep, think that fixed it for me...someone w/more git experience and a rakudo commit bit want to un-revert and fix?
18:49 raydiak (of course you'll need to quote the key when you add the ::, or p5 changes its mind and thinks you're calling a sub instead of literally naming a key)
18:53 * raydiak guesses you unrevert by reverting a revert commit
18:54 denis_boyun_ joined #perl6
18:57 zakharyas joined #perl6
18:57 b2gills raydiak: I actually like that GitHub supports Markdown, I would like it if mail readers would support it as well
18:59 raydiak b2gills: when I want to indicate typed commands with a leading >, and insert my own commentary as comments with leading #, I don't like the result
18:59 raydiak just wish I could optionally switch it off, at least
19:00 bartolin FWIW: s/has_icu/'parrot::has_icu'/ in 7fca945 fixed the parrot build for me as well (on freebsd). (but I don't have a rakudo commit bit)
19:00 jdv79 where are the smoke tests again?  i'm surprised that https breakage wasn't flagged
19:00 zakharyas1 joined #perl6
19:01 b2gills Just indent by four spaces
19:02 Ven joined #perl6
19:03 b2gills It also helps to set code apart from normal written text
19:03 jdv79 so there aren't any automated smokings?  just end users reporting at install/upgrade time?
19:04 jdv79 last linux HTTP::UserAgent smoke looks like its from last month.
19:05 raydiak https://github.com/rakudo/rakudo/pull/342 <- parrot fix
19:06 bartolin raydiak++
19:06 raydiak jdv79: there are, but I don't think they run unless the module's version changes...our testing infrastructure is quite new
19:07 jdv79 i would smoke stuff myself but last i tried rakudo couldn't build on a mem constrainted machine:(
19:07 jdv79 *constrained
19:07 raydiak some backends build easier than other
19:07 raydiak *others
19:08 raydiak jvm for example used to give me a ton of problems before I switched to moar for everything
19:08 jdv79 i personally only care about moar since slow startup and no async are not what i am interested in
19:08 bartolin jdv79: I'm planning to add panda smoke to my daily compiler builds.
19:08 jdv79 nice
19:08 raydiak is the jvm async broken?
19:09 jdv79 no idea.  but jvm startup is slow.
19:09 raydiak for sure
19:09 jdv79 i was just enumarating the reasons i don't care about parrot and jvm
19:09 raydiak (I used to have minute+ startup times for Pray on jvm)
19:09 jdv79 plenty of time for naps i guess
19:10 raydiak well, I'd have to let the rendering go overnight half the time anyway, so...
19:10 * raydiak should work on that one again in the next few months, people seemed to enjoy it
19:12 raydiak well, enjoy looking at it...nobody else ever committed (heh pun intended I guess)
19:13 dalek rakudo/nom: dd01c45 | raydiak++ | Configure.pl:
19:13 dalek rakudo/nom: Revert "Revert "Require ICU support on the Parrot backend""
19:13 dalek rakudo/nom:
19:13 dalek rakudo/nom: This reverts commit 80b9123b6239914a4ccc7680175f201d7d9d6bb0.
19:13 dalek rakudo/nom: A fix was found.
19:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dd01c45b67
19:13 dalek rakudo/nom: d555811 | raydiak++ | Configure.pl:
19:13 dalek rakudo/nom: Fix parrot ICU support detection
19:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d555811846
19:13 [Coke] raydiak: merged.
19:13 dalek rakudo/nom: e646d8b | (Will Coleda)++ | Configure.pl:
19:13 dalek rakudo/nom: Merge pull request #342 from raydiak/nom
19:13 dalek rakudo/nom:
19:13 dalek rakudo/nom: Fix and re-enable parrot ICU check
19:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e646d8b0ed
19:14 [Coke] double checking post-merge. :)
19:14 mathw Is there a convenient way provided to get a Supply of characters read from $*IN?
19:14 [Coke] that seems better, thanks.
19:16 raydiak glad to help...don't think I've contrib'd actual code to rakudo before, so...yay me :)
19:17 [Coke] raydiak++
19:19 bjz joined #perl6
19:26 moritz [Coke]: re Supply from $*IN, I'd only know how to do it manually
19:27 moritz [Coke]: my $s = Supply.new; while !$*IN.eof { $s.emit($*IN.getc) }; $s.done
19:28 darutoko joined #perl6
19:33 Sqirrel joined #perl6
19:38 dalek rakudo/nom: 7787a19 | peschwa++ | src/vm/jvm/runtime/org/perl6/rakudo/RakOps.java:
19:38 dalek rakudo/nom: Add a fix for RT #121622.
19:38 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121622
19:38 dalek rakudo/nom:
19:38 dalek rakudo/nom: This is strongly inspired by the corresponding bit in moar.
19:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7787a1996b
19:38 dalek rakudo/nom: 8f2f215 | (Will Coleda)++ | src/vm/jvm/runtime/org/perl6/rakudo/RakOps.java:
19:38 dalek rakudo/nom: Merge pull request #341 from peschwa/rt121622
19:38 dalek rakudo/nom:
19:38 dalek rakudo/nom: Add a fix for RT #121622.
19:38 synopsebot Link: https://rt.perl.org/rt3//Public/Bug/Display.html?id=121622
19:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8f2f215a8e
19:40 dalek roast: 9dc11e3 | coke++ | integration/advent2013-day12.t:
19:40 dalek roast: this is fixed by rakudo #341
19:40 dalek roast: review: https://github.com/perl6/roast/commit/9dc11e3ceb
19:40 nyuszika7h joined #perl6
19:41 nyuszika7h I like the nicks of the bots
19:41 bcode hi nyuszika7h o/
19:41 raiph joined #perl6
19:41 bcode nyuszika7h, i'm actually mostly lurking. so "hugme" is a coincidence, i swear :D
19:42 fwilson joined #perl6
19:43 nyuszika7h lol
19:43 nyuszika7h I wonder if this does anything
19:43 * nyuszika7h hugs hugme
19:43 nyuszika7h :(
19:43 bcode hugme, hug nyuszika7h
19:43 * hugme hugs nyuszika7h
19:43 bcode i mostly lurk but i do know about that feature <_<
19:44 bcode but yeah, this is a quite friendly community. what other programming language has a hugme bot in their channel to greet you :D
19:47 fwilson :D
19:48 raiph Sinan says 'I still have no idea what should be fixed and where — except that I am uncomfortable with what seems to be a "everything is Unix" assumption in perl 6.'
19:48 raiph (from http://blog.nu42.com/2014/12/utf-8-output-in-cmdexe-perl-5-vs-perl-6.html)
19:49 raiph reddited at http://www.reddit.com/r/perl/comments/2qpeaj/%CE%BD42_utf8_output_in_cmdexe_perl_5_vs_perl_6/
19:51 raiph er, weird URL...
19:52 raiph corrected reddit URL: http://www.reddit.com/r/perl/comments/2qpeaj/v42_utf8_output_in_cmdexe_perl_5_vs_perl_6/
19:52 virtualsue joined #perl6
19:54 raiph re Sinan's comment, aiui:
19:54 raiph 1. P6 doesn't have an everything is Unix assumption.
19:54 [Coke] whoever wanted supply from $*in, check my backlog. :)
19:55 raydiak anyone taking the advice in that reddit comment might want to try "\r\n" instead of "\n\r", unless you're on pre-X MacOS
19:55 raiph 2. The current workaround is to manually add an explicit CR if printing on Windows
19:57 lizmat .tell hoelzro wrt to earliest on a single channel: what would be the value of a wait time then?
19:57 yoleaux lizmat: I'll pass your message to hoelzro.
19:58 gtodd joined #perl6
19:59 gtodd tge 2014.12 ChangeLog says   $str ~~ s///  now returns a Match or list of Matches
20:00 gtodd what did it return previously?
20:00 gtodd was it always a just a Match  object?
20:01 psch gtodd: the fake Match object was never fully implemented.  iirc $str ~~ s/// returned a list of Matches for some time, but infix:<~~> didn't consider that True
20:02 gtodd ah ok
20:02 gtodd so it's more consistent now
20:03 psch the actual change is more that we now consider List.Bool as valid truthy semantic for smartmatch, which we previously didn't
20:04 psch i.e. before TimToady++'s patch for infix:<~~> $str ~~ s:g/// was always False
20:04 psch at least that's the part concerning smart match semantics that i know and remember, there might have been more involved
20:06 raydiak I think s/// w/o ~~ was returning the modified string, and ~~ s/// was returning True or False
20:07 gtodd hmm  well the naive user benchmark http://www.perlmonks.org/?node_id=1099617  continues to get marginally faster (not a real test and I don't have a serious test/benchmark environment but ...)  so I'm happy :-D
20:12 dalek rakudo/nom: 32af9f5 | lizmat++ | src/core/asyncops.pm:
20:12 dalek rakudo/nom: Eradicate winner some more
20:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/32af9f516f
20:14 psch m: $_ = "abc"; say (s/./z/).WHAT
20:14 camelia rakudo-moar 80b912: OUTPUT«(Match)␤»
20:15 psch raydiak: s/// always returns Match now, but $str ~~ s/// used to be special-cased in make_smartmatch in Perl6/Actions.nqp to check the Match object for truthiness
20:16 psch raydiak: but that broke when s:g/// returned a List of Match objects, so now Lists are also allowed in smart matching
20:24 FROGGS_ joined #perl6
20:24 raydiak m: say "foo" ~~ List.new(1,2,3) # I see...
20:24 camelia rakudo-moar 80b912: OUTPUT«1 2 3␤»
20:25 raydiak m: say so "foo" ~~ List.new(1,2,3) # I see, but I don't like...
20:25 camelia rakudo-moar 80b912: OUTPUT«True␤»
20:25 psch m: say "bar" ~~ List.new()
20:25 camelia rakudo-moar 80b912: OUTPUT«␤»
20:25 psch m: say so "bar" ~~ List.new()
20:25 camelia rakudo-moar 80b912: OUTPUT«False␤»
20:26 psch it's pretty much the same as putting True or False on the RHS, which False corresponding to the empty List
20:26 psch which is the same as normal Bool coercion without smart match around
20:28 Sqirrel joined #perl6
20:30 andreoss` joined #perl6
20:31 psch i'm not sure what else a List on the RHS should do.  i think the apocalypse had mention of "check if LHS is contained in the RHS" somewhere as a proposal, but that seems overly smart
20:31 raydiak m: say "foo" ~~ Array.new(1); say "foo" ~~ List.new(1); # this just feels kinda WAT...
20:31 camelia rakudo-moar 80b912: OUTPUT«False␤1␤»
20:32 raydiak other positionals do eqv, methinks
20:32 Ven joined #perl6
20:32 psch m: say so Array.new(1) ~~ Array.new(1)
20:32 camelia rakudo-moar 80b912: OUTPUT«True␤»
20:33 raydiak anyway, don't mean to be complaining, the s/// and s:g/// cases certainly feel *less* WAT
20:33 psch well, there is some waterbedding.  implementing the fake Match object was rather WAT in other cases
20:33 hoelzro lizmat: sorry, what do you mean?
20:33 yoleaux 19:57Z <lizmat> hoelzro: wrt to earliest on a single channel: what would be the value of a wait time then?
20:34 hoelzro do you mean the value as in the point?
20:34 lizmat if +%distinct-channels == 1 && !$wait
20:34 lizmat if you're just doing a receive, what's the use of doing a wait at all then?
20:34 psch raydiak: i.e. for m:g/$pat/ { } didn't iterate over the contained Match objects, but only the outer most Match.  as in for m:g/(.)/ { #`( only here once ) }
20:35 lizmat I mean: with a single channel, why not just disregard the "wait" ?
20:35 psch and "if you use :g you have to wrap the m// in @( )" is kind of annoying
20:37 raydiak psch: well that's certainly no good either
20:37 hoelzro lizmat: because if you $c.receive, it will block who knows how long
20:37 raydiak psch: my thoughts are not well-formed on this issue atm, but something vaguely in this area feels like we're trying to squeeze too much meaning into/out of one value
20:38 hoelzro whereas wait tells it to only block up to a certain amount of time, right?
20:38 lizmat hoelzro: you're right, must not have my thinking cap on
20:38 moritz hoelzro: $supply.wait waits until the supply is .done
20:38 hoelzro well, the other pair of eyes on the code is appreciated =)
20:39 lizmat moritz: this is more about Channel.list, which is what Supply.list really is
20:39 psch raydiak: well, there's still the OKness proposal.  i'm fairly sure that would reduce squeezing, but it'd also be quite a big change iiuc
20:42 raydiak psch: not familiar with it, but sounds like someone has already been barking up this tree (with better-defined ideas, no doubt)
20:44 psch raydiak: https://gist.github.com/TimToady/1828667 if you're interested
20:45 nyuszika7h m: ('⚀' .. '⚅').roll(5).sort
20:45 camelia rakudo-moar 80b912: ( no output )
20:45 * nyuszika7h looks at bcode
20:45 nyuszika7h m: ('⚀' .. '⚅').roll(5).sort.say
20:45 camelia rakudo-moar 80b912: OUTPUT«⚀ ⚀ ⚁ ⚂ ⚂␤»
20:46 flussence r: await Promise.anyof( start({ sleep 2*3; say 3 }), Promise.in(2*1).then({ say 1 }) ); sleep 2*2; say 2; # why this order?
20:46 camelia rakudo-parrot 80b912: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Undeclared name:â�¤    Promise used at line 1â�¤Undeclared routines:â�¤    await used at line 1â�¤    start used at line 1. Did you mean 'spurt', 'sqrt', 'sort'?â�¤â�¤Â»
20:46 camelia ..rakudo-moar 80b912: OUTPUT«3␤1␤2␤»
20:48 raydiak psch: thanks...yeah something along those lines is where I was heading, I think
20:48 lizmat flussence: that feels wrong, indeed
20:48 lizmat even rakudobuggable on first sight
20:49 flussence r-j: await Promise.anyof( start({ sleep 2*3; say 3 }), Promise.in(2*1).then({ say 1 }) ); sleep 2*2; say 2;
20:49 camelia rakudo-jvm 80b912: OUTPUT«Can't open perl script "/home/camelia/jvm-rakudo/eval-client.pl": No such file or directory␤»
20:50 flussence bah...
20:50 flussence same result on perl6-j here...
20:50 lizmat flussence: same here
20:52 flussence this is something that's been confusing me for a while, it just took me this long to golf it down properly :)
20:52 lizmat please rakudobug it
20:52 * flussence does! (first one I'll have sent myself, too)
20:54 Rounin joined #perl6
20:57 dalek rakudo/nom: eb78b78 | lizmat++ | src/core/asyncops.pm:
20:57 dalek rakudo/nom: Poor man's typed hash and a small opt
20:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/eb78b78d3d
20:58 perturbation joined #perl6
20:58 perturbation left #perl6
21:02 Mso150 joined #perl6
21:09 dalek roast: 3f8907e | usev6++ | S0 (2 files):
21:09 dalek roast: Extend tests for dotted form of postfix operator after unary postfix hyper operator
21:09 dalek roast: review: https://github.com/perl6/roast/commit/3f8907e3f4
21:29 rurban joined #perl6
21:34 * flussence makes a mental note to use a real wysiwyg mail client for sending plaintext mail next time and not gmail's icky webapp stuff...
21:47 Ven m: Bool::Tue # LTA?
21:47 camelia rakudo-moar 80b912: OUTPUT«Could not find symbol '&Tue'␤  in method <anon> at src/gen/m-CORE.setting:13871␤  in any find_method_fallback at src/gen/m-Metamodel.nqp:2737␤  in any find_method at src/gen/m-Metamodel.nqp:988␤  in block <unit> at /tmp/ciHWYvXV62:1␤␤»
21:47 Ven m: Bool::Tre # LTA? uh
21:47 camelia rakudo-moar 80b912: OUTPUT«Could not find symbol '&Tre'␤  in method <anon> at src/gen/m-CORE.setting:13871␤  in any find_method_fallback at src/gen/m-Metamodel.nqp:2737␤  in any find_method at src/gen/m-Metamodel.nqp:988␤  in block <unit> at /tmp/uMCcBeFhLw:1␤␤»
21:47 Ven well, I get "cannot find method 'Any'" on yesterday's rakudo
21:47 Mso150 joined #perl6
21:49 Ven m: given (1, 2, 3) { when :(Int $a, Int, Bool) { say "hey $a" } } # is that by design?
21:49 camelia rakudo-moar 80b912: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/aXUflWEUovâ�¤Variable '$a' is not declaredâ�¤at /tmp/aXUflWEUov:1â�¤------> [32m when :(Int $a, Int, Bool) { say "hey $a[33mâ��[31m" } } # is that by design?[0mâ�¤    expecting any of:â�¤       …»
21:50 Ven whoops
21:50 Ven m: given (1, 2, 3) { when :(Int $foo, Int, Int) { say "hey $foo" } } # is that intended?
21:50 camelia rakudo-moar 80b912: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/dbqbCiD0f0â�¤Variable '$foo' is not declaredâ�¤at /tmp/dbqbCiD0f0:1â�¤------> [32men :(Int $foo, Int, Int) { say "hey $foo[33mâ��[31m" } } # is that intended?[0mâ�¤    expecting any of:â�¤      â€¦Â»
21:51 TimToady :() will not declare anything without a declarator
21:51 Ven TimToady: where should the declarator be put?
21:52 TimToady m: given (1, 2, 3) { when * -> Int $a, Int, Bool { say "hey $a" } } # this is specced
21:52 camelia rakudo-moar 80b912: OUTPUT«Too few positionals passed; expected 3 arguments but got 0␤  in block  at /tmp/og2uZ0vrtO:1␤  in block <unit> at /tmp/og2uZ0vrtO:1␤␤»
21:52 TimToady but NYI obviously
21:52 Ven (also, the error message is not the same locally)
21:53 TimToady m: my $a; given (1, 2, 3) { when :(Int $a, Int, Bool) { say "hey $a" } }
21:53 camelia rakudo-moar 80b912: ( no output )
21:53 TimToady that should conceivably work
21:53 TimToady m: my $a; given (1, 2, True) { when :(Int $a, Int, Bool) { say "hey $a" } }
21:53 camelia rakudo-moar 80b912: OUTPUT«use of uninitialized value $a of type Any in string context  in block <unit> at /tmp/NYp6f7ZmJY:1␤␤hey ␤»
21:59 timotimo http://media.ccc.de/browse/congress/2014/ ← in the near future (no clue when exactly) a recording of the "omg most dangerous perl exploit ever!" talk will appear; allegedly it's good
21:59 Ven TimToady: ah, amazing!
21:59 Alula joined #perl6
22:00 timotimo (there are other interesting talks there, too, surely.)
22:02 Ven m: sub id(::T $val --> T)  $val }; id(1); # TimToady : this looks to me like it's a NYI, correct?
22:02 camelia rakudo-moar 80b912: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/dcDMj1lgUzâ�¤Missing blockâ�¤at /tmp/dcDMj1lgUz:1â�¤------> [32msub id(::T $val --> T)  [33mâ��[31m$val }; id(1); # TimToady : this looks t[0mâ�¤Â»
22:02 Ven m: sub id(::T $val --> T) { $val }; id(1); # TimToady : this looks to me like it's a NYI, correct?
22:02 camelia rakudo-moar 80b912: OUTPUT«No such method 'item' for invocant of type 'T'␤  in method message at src/gen/m-CORE.setting:13542␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in sub id at /tmp/IRJ2av1dTZ:1␤  in block <unit> at /tmp/IRJ2av1dTZ:1␤␤»
22:06 mickcy_ca joined #perl6
22:07 psch timotimo: i didn't particularly like the talk, too much "omg stop writing perl" for my taste
22:08 mickcy_ca left #perl6
22:08 psch timotimo: but then, i did enjoy the WAT talk, so i'm probably just biased because i do like perl5 :)
22:08 psch (in contrast to javascript)
22:09 Ven psch: the WAT talk is really, really biased ;)
22:10 timotimo psch: did you see it on the stream or were you actually at congress?
22:10 psch timotimo: just on the stream, no budget for c3 sadly
22:10 timotimo OK
22:12 psch Ven: it sure is.  the difference is that the speaker in the WAT talk says "this is really weird", but the perl talk just now says "this is really weird, no one ever does it right and there exist vulnerabilities to prove it"
22:12 psch ...which is true
22:13 psch which is why i'm saying i'm probably just biased towards perl, away from js, which explains my "it's not that great" impression of the perl talk
22:13 telex joined #perl6
22:13 sergot good evening o/
22:13 psch o/ sergot
22:14 sergot hi psch !
22:27 kjs_ joined #perl6
22:37 raiph joined #perl6
23:15 virtualsue joined #perl6
23:23 pnu LWP::Simple tests have been failing for a while, this fixes it: https://github.com/cosimo/perl6-lwp-simple/pull/39  ... however, I'm wondering would there be a more "stable" URL to test?
23:24 tadzik perhaps an URL to soemthing inside LWP::Simple's github repo? :)
23:25 tadzik that could be easily controlled
23:25 leedo_ spin up a local http server? :P
23:26 raydiak is there an easy way to install p6 modules on windows w/o installing other heavy stuff like cygwin?
23:29 raydiak (iow panda requires git)
23:29 tadzik oh, hmmmm
23:29 tadzik I think there's a ticket for panda to make it download .tar.dz from github rather than cloning, not sure
23:31 raydiak a friend likes to mock me when I say "I wrote cool thing X" and he cannot easily download and install it :P
23:32 adu joined #perl6
23:32 xiaomiao joined #perl6
23:32 raydiak so I tried the R* msi on our media box here, and noticed rakudo/bin doesn't get put in the path, and panda install doesn't work
23:38 raydiak tadzik: how hard would that be?  is git used for anything besides clone, like version stuff?
23:39 tadzik raydiak: nah, just cloning
23:39 tadzik another issue is that if you download a tarball you still need to unpack it
23:40 raydiak good point
23:42 BenGoldberg joined #perl6
23:45 skids joined #perl6
23:59 raydiak is a pure perl 'git clone' implementation out of the question? idk anything about the git protocol
23:59 raydiak gotta run, back in a little while

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

Perl 6 | Reference Documentation | Rakudo