Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-04-17

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:07 raiph joined #perl6
00:12 BenGoldberg joined #perl6
00:16 nbdsp Thanks, will try to look what contains Str and how it can be transferred to Buf.
00:21 cognominal joined #perl6
00:38 cognominal m: my token a { a };  say "a" ~~ /<a>/
00:38 camelia rakudo-moar dd77b7: OUTPUT«「a」␤ a => 「a」␤»
00:39 cognominal m: my token a { a };  say "a" ~~ /<.a>/
00:39 camelia rakudo-moar dd77b7: OUTPUT«Method 'a' not found for invocant of class 'Cursor'␤  in method ACCEPTS at src/gen/m-CORE.setting:16681␤  in block <unit> at /tmp/ElZWD8xjwn:1␤␤»
00:40 cognominal sounds inconsistant
00:51 TimToady Inconsistency is our strength!  Er, and our weakness!
00:51 TimToady m: my token a { a };  say "a" ~~ /<&a>/
00:51 camelia rakudo-moar dd77b7: OUTPUT«「a」␤»
00:51 TimToady that is the "opposite" of <.a>
00:52 TimToady <a> is a bit dwimmy
00:52 TimToady that is the "opposite" of <&nonesuch>
00:52 TimToady erp
00:53 TimToady m: my token a { a };  say "a" ~~ /<&nonesuch>/
00:53 camelia rakudo-moar dd77b7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GIifNbCMLQ␤Undeclared routine:␤    &nonesuch used at line 1␤␤»
00:53 TimToady and that is the "opposite" error
00:54 cognominal ok, I guess I need a serious reread of S05
00:55 cognominal an apposite opposite?
00:56 cognominal ...for the apostat
01:01 nbdsp The following: my Buf $b = $s.encode('latin-1') ; (where $s is native Str) produces an error "$b expected Buf, but got Blob[uint8]". Is there a way to convert that Blob to Buf?
01:01 retupmoca timotimo: just opened a couple of PR's for you
01:02 retupmoca timotimo: your recent changes broke panda on windows (due to / vs \ confusion)
01:02 retupmoca err
01:02 retupmoca tadzik: ^
01:02 retupmoca (sorry)
01:07 tinyblak joined #perl6
01:12 Ben_Goldberg joined #perl6
01:13 aborazmeh joined #perl6
01:13 aborazmeh joined #perl6
01:14 raiph joined #perl6
01:16 Akagi201 joined #perl6
01:51 nbdsp Does the impossibility to fetch binary fields from MySQL mean that Perl 6 is not yet ready to be used with MySQL except with hacks with native memcpy? Maybe later this functionality will be added to Perl 6?
01:53 Hyer joined #perl6
01:53 Hyer m: 1+1
01:53 camelia rakudo-moar dd77b7: ( no output )
01:53 Hyer m: say "hi"
01:53 camelia rakudo-moar dd77b7: OUTPUT«hi␤»
01:54 ugexe 13:03 < nine> ashleydev: perl6 -e 'use DBI:from<Perl5>; my $dbh = DBI.connect(...);'
01:54 davido_ joined #perl6
01:55 ugexe otherwise yes, i think its safe to assume that one day you will be able to use mysql binary data in the future with perl6
01:57 ugexe sounds like a good open source project to contribute to ;)
02:00 timotimo nbdsp: you do know of DBIish though, right?
02:01 ugexe it doesnt work with the binary data he needs to use
02:01 ugexe because it uses mysql_query
02:02 timotimo mhm
02:02 timotimo well, that seems like something we ought to fix
02:02 timotimo wait
02:03 timotimo wasn't that putting in binary data, not pulling it out?
02:03 ugexe yeah
02:04 ugexe or rather, thats what his previous problem was and the reason he discovered
02:06 sftp joined #perl6
02:07 ugexe maybe he could use mysql_fetch_* somehow. but .do uses mysql_query from what i remember
02:08 ugexe or .execute does
02:08 noganex joined #perl6
02:12 BenGoldberg_ joined #perl6
02:34 chenryn joined #perl6
02:39 chenryn joined #perl6
02:41 yeahnoob joined #perl6
03:12 raiph joined #perl6
03:13 araujo_ joined #perl6
03:25 skids m: my $*f = "."; say Proxy.new(FETCH => { $*f ~= "." }) X~ 1,2,3; # Things along these lines might make for an interesting set of tests/benchmarks.
03:25 camelia rakudo-moar dd77b7: OUTPUT«.................1 .............................2 .........................................3␤»
03:49 PerlJam joined #perl6
03:56 skids m: ({ 42.say }) # I think this disagrees with spec.
03:56 camelia rakudo-moar dd77b7: ( no output )
04:12 raiph joined #perl6
04:14 BenGoldberg_ joined #perl6
04:19 kaare_ joined #perl6
04:33 dalek doc: 279e719 | skids++ | lib/Language/control.pod:
04:33 dalek doc: Document blocks and do
04:33 dalek doc: review: https://github.com/perl6/doc/commit/279e7198a8
04:50 dalek doc: dd04158 | skids++ | lib/Language/control.pod:
04:50 dalek doc: Fix a few small things in block/do documentation
04:50 dalek doc: review: https://github.com/perl6/doc/commit/dd04158ea5
05:01 aborazmeh joined #perl6
05:01 aborazmeh joined #perl6
05:06 telex joined #perl6
05:11 chenryn joined #perl6
05:21 lolisa joined #perl6
05:23 konsolebox joined #perl6
05:23 KCL joined #perl6
05:24 anaeem1 joined #perl6
05:35 masak morning, #perl6
05:35 yoleaux 16 Apr 2015 20:52Z <DrForr> masak: #124321 - The minimal criminal appears to be monkeypatching of Pointer.parameterize.
05:35 synbot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=124321
05:35 masak ooh
05:35 masak DrForr++
05:45 anaeem1 joined #perl6
05:45 Patterner joined #perl6
06:01 dolmen joined #perl6
06:03 vendethiel o/, #perl6
06:08 diana_olhovik_ joined #perl6
06:08 masak \o
06:08 masak commute &
06:16 dalek rakudo/nom: 5bc3954 | labster++ | src/core/Str (2 files):
06:16 dalek rakudo/nom: add infix:<ne>(Str,Str) subs, skip metaop for ne(Any, Any)
06:16 dalek rakudo/nom:
06:16 dalek rakudo/nom: Makes string ne much closer in speed to eq by using nqp::isne_s().
06:16 dalek rakudo/nom: 28-47% faster, depending on how many of the args are strings.
06:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5bc3954a34
06:16 dalek rakudo/nom: 1e08477 | labster++ | src/core/Str (2 files):
06:16 dalek rakudo/nom: Merge pull request #408 from labster/nequals
06:16 dalek rakudo/nom:
06:16 dalek rakudo/nom: add infix:<ne>(Str,Str) subs, skip metaop for ne(Any, Any)
06:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1e0847701e
06:17 lolisa joined #perl6
06:18 gfldex joined #perl6
06:20 jnthn morning, #perl6
06:20 chenryn joined #perl6
06:21 labster morning jnthn
06:29 labster I was just wondering, S02:915 says that there is no native str type, but we seem to have str in Rakudo's internals.  Is str NQP's string type or something?
06:29 synbot6 Link: http://design.perl6.org/S02.html#line_915
06:30 brrt joined #perl6
06:31 jnthn No, it's the type that inlines a VM-level idea of string into a Str, which has to have a P6oaque REPR so you can mix into it.
06:31 FROGGS[mobile] joined #perl6
06:31 jnthn I *think* once I explained the representational nature of it, TimToady may have come around to us having a str. :)
06:35 * brrt has rakudo test failure on os x
06:35 brrt not spectest, just test
06:37 brrt ah, unsupported serialization format
06:37 brrt nm :-)
06:38 FROGGS[mobile] gist or it did not... ahh
06:38 * brrt wonders why
06:39 FROGGS[mobile] you need to upgrade all the things
06:41 RabidGravy joined #perl6
06:42 _mg_ joined #perl6
06:42 labster m: my $???? = ":D";
06:42 camelia rakudo-moar dd77b7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/olY5QpTVg_␤Two terms in a row␤at /tmp/olY5QpTVg_:1␤------> 3my $7⏏5???? = ":D";␤    expecting any of:␤        constraint␤        infix␤        infix stopper␤        postfix␤        state…»
06:42 labster # more like my $????
06:43 masak TimToady: if infix:<✕> is a macro, will it work to write `$a ✕= $b;` ?
06:44 masak more generally, can you metaop macro ops?
06:46 masak nwc10: have you seen https://lists.debian.org/debian-devel-announce/2015/04/msg00005.html ?
06:47 masak "I plan on creating a Python 3 porting team."
06:49 nwc10 masak: no, I hadn't
06:49 nwc10 it's on the queue after "make tea"
06:49 moritz we should suggesting porting the code to Perl 5, which takes backwards compatibility serious
06:51 masak moritz: because what the Perl/Python relations need is more snark :P
06:51 nwc10 just switch to stackless and keep playing Eve Online
06:51 brrt that would be such an epic trolling
06:52 nwc10 (this is like my co-worker reporting back from a whisky tasting session that many of the nicest whiskys are aged in sherry casks, and there aren't enough sherry casks. So everyone, please keep drinking sherry)
06:52 arnsholt masak: Yeah, it's starting to look like the 2 to 3 transition is finally starting to gather some real momentum
06:53 masak arnsholt: fingers crossed.
06:53 nwc10 what's the state of Fedora's transition from yum to dnf?
06:53 brrt what is dnf
06:53 nwc10 the yum replacement/rewrite/fork
06:53 nwc10 yum (proper) is Python 2 only
06:53 brrt ah
06:53 nwc10 no, I didn't know any of this until a few months ago
06:54 brrt well, i didn't know it until just now
06:54 brrt i was rather happy with yum
06:54 brrt but i guess change is what we get
06:54 nwc10 I liked yum
06:54 xiaomiao I wonder if dnf has removed the massive stupid that yum carried around
06:54 xiaomiao so much singlethread. many exlusive lock. wow.
06:54 brrt what stupid was that?
06:54 brrt oh
06:54 brrt well, if it's still python....
06:55 xiaomiao no, just bad design
06:55 xiaomiao run "yum update" in one terminal, try "yum search apple" in another
06:55 xiaomiao NO CAN DO
06:55 Ven joined #perl6
06:55 xiaomiao especially fun as the fedora auto-updater would easily get in the way and make me very triggerhappy
06:55 Ven \o
06:56 brrt oh that part.
06:56 * xiaomiao has mostly given up on these amateurish tools :)
06:56 brrt in their defence, conservatism is c.p. a desirable property in a package manager
06:57 xiaomiao brrt: python 2.4
06:57 xiaomiao your move.
06:57 brrt i wouldn't care if they wrote it in tcl
06:57 xiaomiao that'd be quite awesome
06:58 masak no, it would be the other thing
06:59 xiaomiao ObjectiveTCL would be ... objectionable
07:04 brrt now that we are on the topic of python. who else thinks the 'new string formatting' is not an improvement
07:05 masak brrt: I'm a fan of it. I think the old sprintf syntax is arbitrary and weird.
07:05 masak brrt: I think the '{}' things have visual-pillness going for them.
07:06 masak but other than that, see my latest macro post: "All templating syntax sucks." http://strangelyconsistent.org/blog/macros-placeholdeeers
07:06 brrt i thought i read that, yes
07:07 masak (masak's Deplorable Truth About Templating Syntax)
07:07 nine .tell nbdsp Inline::Perl5 is passing binary strings from Perl 5 to Perl 6 as CArray[int8] followed by manually copying to a Buf element by element. Sounds horrible but at least it works until NativeCall gets improved.
07:07 yoleaux nine: I'll pass your message to nbdsp.
07:07 brrt that is true, but i'm very much used to sprintf syntax :-)
07:08 arnsholt I'm in a similar spot. I'm pretty sure that the new syntax is better, it's just that I know the printf directives too darn well! =)
07:08 masak brrt: there you go then :) you've abstracted away the pain.
07:09 brrt it does work really well for mapping dict-like things to strings, that i grant
07:09 brrt (the new syntax)
07:10 masak and objects are dict-like :)
07:10 masak in that sense
07:10 brrt sufficiently dict-like? i'd have to test
07:10 arnsholt Python objects are very dict-like, though =)
07:10 arnsholt Extremely dict-like, even =)
07:11 brrt not enough to automagically map 'm
07:12 arnsholt object.__dict__ =)
07:12 nwc10 masak: interesting. I'd not considered the relative timescales of debian release versus Python 2 EOL
07:13 arnsholt Is the object namespace as a dict. You can turn that functionality off, though; but by default, all Python objects are just dicts
07:14 masak nwc10: thought you might like that one.
07:14 nwc10 I did
07:14 nwc10 thanks
07:15 [TuxCM] joined #perl6
07:15 Rounin joined #perl6
07:19 RabidGravy joined #perl6
07:22 nine masak: I wonder what you think about Petal's solution to sucky templating syntax: https://metacpan.org/pod/Petal
07:22 nine masak: since out of band signalling sucks, it avoids it altogether.
07:22 mohij joined #perl6
07:23 lizmat joined #perl6
07:23 masak nine: yeah, I had that same thought when I was re-reading my templating blog post just now.
07:24 masak nine: I personally consider XML namespaces/attributes to be one of the cleanest solutions to templating.
07:24 masak it *is* still out-of-band, but more on a semantic level instead of a syntactic one.
07:25 nine Maybe there's something to learn there? Though of course, this solution limits the things you can do to a somewhat sane subset which may not always be enough.
07:25 RabidGravy yeah it's a nice style and plays well with the tools the web developers use
07:25 masak nine: yeah, the horror of being limited to a somewhat sane subset! :P
07:26 masak nine: my go-to example of this is Genshi. http://genshi.edgewall.org/ -- but it's the same basic idea.
07:26 masak nine: little known fact is that AngularJS can be used in the same way, with XML namespaces.
07:27 RabidGravy I was just about to mention that
07:29 masak I know of no-one who uses it in practice, but I don't doubt someone is.
07:29 masak that seems to be the way to placate angry HTML validators, for example.
07:29 RabidGravy I think I have somewhere
07:31 RabidGravy maybe not
07:31 RabidGravy thought it was in https://github.com/jonathanstowe/example-angular-cornercouch/blob/master/_attachments/guestbook.html
07:31 nine masak: little known is also that even Petal does allow $variable substitution. I hate that this feature is there, but I don't dare to remove it. Maybe there's a learning opportunity here, too. Have a sort-of-out-in-band sane subset limited solution that looks nice and additionally provide some neccessarily ugly way to do all the really nasty things?
07:32 nwc10 masak: the other person who sent me that link then suggested https://news.ycombinator.com/item?id=9388502
07:33 nwc10 only part way though, but most interesting thing I learn so far is PYTHONIOENCODING=utf-8:surrogateesca
07:33 nwc10 er
07:33 nwc10 PYTHONIOENCODING=utf-8:surrogateescape
07:36 leont joined #perl6
07:36 Ven joined #perl6
07:38 masak nwc10: yeah, I was on the verge of attaching the HN discussion too.
07:38 masak the encoding discussion in the middle was mildly interesting.
07:38 FROGGS joined #perl6
07:39 yvan1 joined #perl6
07:39 mohij joined #perl6
07:40 rindolf joined #perl6
07:42 nwc10 this amused me: ... I don't know HOW they managed to get newlines into filenames, but our editors are creative people. I wouldn't be surprised if they managed to embed fonts and colours next.
07:42 lizmat .oO( but only if they're british )
07:43 FROGGS nine: try RAKUDO_MODULE_DEBUG=1 panda install ...
07:43 FROGGS but redirect it to a file because it will spit out a lot
07:44 nwc10 lizmat: maybe. Or maybe Australian, New Zealand, Canada (but all the evidence is that Canada is just confused)
07:47 nine Maybe instead of trying to fix my Inline::Perl5 test issues, I should attack it from the other end and try to make sure Inline::Perl5 is _really_ precomp safe.
07:48 nine How would I go on about that? Is there some precomp guide, list of things to look out for or similiar?
07:48 FROGGS nine++
07:50 Ven joined #perl6
07:51 moritz nine: not really a guide, but iirc we've had problems with 'our'-variables being assigned to from the mainline of a precompiled module
07:51 cschwenz joined #perl6
07:55 dolmen joined #perl6
07:59 zakharyas joined #perl6
08:05 nine New one: STable conflict detected during deserialization.
08:07 Ugator joined #perl6
08:07 Ugator left #perl6
08:13 DrForr masak: I seem to have narrowed it down to monkeypatching in the Pointer augmentation. Or at least commenting out the make_pun line causes the problem to go away, probably to be replaced by "no longer does anything."
08:15 darutoko joined #perl6
08:22 tadzik retupmoca: uhh
08:22 tadzik that's bad. Which change exactly?
08:24 lizmat m: sub a(\b?) { say b }   # LTA error for \b? arguments
08:24 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_DfhmNGR9b␤Missing block␤at /tmp/_DfhmNGR9b:1␤------> 3sub a(\b7⏏5?) { say b }   # LTA error for \b? argum␤»
08:34 FROGGS m: sub a(\b) { say b }
08:34 camelia rakudo-moar 1e0847: ( no output )
08:34 FROGGS weird
08:35 FROGGS std: sub a(\b?) { say b }
08:35 camelia std 28329a7: OUTPUT«5===SORRY!5===␤Unable to parse signature at /tmp/NAreoPDf17 line 1:␤------> 3sub a7⏏5(\b?) { say b }␤Couldn't find final ')'; gave up at /tmp/NAreoPDf17 line 1:␤------> 3sub a(\b7⏏5?) { say b }␤    expecting any of:␤        constraint␤     new …»
08:35 FROGGS nice
08:36 nine Please merge :) https://github.com/perl6/roast/pull/58 Fudge S01-perl-5-integration tests for rakudo
08:38 Ven joined #perl6
08:38 moritz nine: huh, can't you do it?
08:39 moritz nine: if not, what's your github ID?
08:39 moritz invitation sent to 'niner' (hope that's right :-)
08:39 bjz joined #perl6
08:40 nine The final piece is to add the new spec test files to t/spectest.data. But obvioulsy these tests can only pass if Inline::Perl5 is installed.
08:40 nine moritz: thanks :)
08:40 dalek roast: e5fe4c4 | (Stefan Seifert)++ | S01-perl-5-integration/ (8 files):
08:40 dalek roast: Fudge S01-perl-5-integration tests for rakudo
08:40 dalek roast: review: https://github.com/perl6/roast/commit/e5fe4c4a26
08:43 bjz joined #perl6
08:43 Rounin joined #perl6
08:46 masak new concept: many popular scripting languages have a "piñata", another language adherents tend to regularly ridicule or hate on a little.
08:47 masak Python's piñata is Perl. Perl's piñata is PHP.
08:47 masak Perl 6 has largely avoided making Perl 5 a piñata, thankfully.
08:47 nwc10 is PHP grown up enough not to need one?
08:48 nwc10 (unlike Python and Perl)
08:48 DrForr It's not the language's maturity, it's the user's :/
08:48 moritz maybe PHP developers don't know enough about other languages to hate them? SCNR
08:49 nwc10 I like masak's idea. It's just that it seems to have a curious implication
08:49 nwc10 also, seems to be
08:49 Ven PHP developers mock perl and JS developers a lot :)
08:49 nwc10 The punchline of English jokes is "the Irishman". I'm told that in Ireland it's "the Kerryman"
08:49 nwc10 France => Belgium, I'm told
08:50 osfameron nwc10: I've not heard an Englishman, Irishman, Scotsman joke for *years*.  This is a good thing.
08:50 DrForr And in County Kerry it's one poor sot.
08:50 nwc10 Austria => Burgenland probably because of http://en.wikipedia.org/wiki/Burgenland#Ninth_state_of_Austria
08:50 tadzik in Poland we have A Pole, a German and a Russian
08:50 moritz in Germany "Ostfriese"
08:50 nwc10 osfameron: yes, and probably for a couple of reasons
08:51 osfameron I heard that if 2 scandiwegians meet, the butt of the jokes is the 3rd nation.  That seems quite democratic, as they each take it in turns :D
08:52 moritz and I thought the Swedish always made fun of the Norwegians?
08:53 xiaomiao every country with enough north-south distance has this kind of joke, afaict
08:54 nine nwc10: no that's not really Austria, more like Vienna. In Upper Austria it's the Mühlviertel :)
08:54 masak moritz: yes, mostly kids of course.
08:54 xiaomiao and for everyone else Tirol ;)
08:54 masak moritz: but it's still sad, because I've had to de-program a lot of that when I actually started visiting Norway a lot and doing business there.
08:55 masak moritz: in reality, Norwegians are not silly and stupid like in the jokes, but well-educated, intelligent, and generally good company. :)
08:55 moritz masak: yes, I've met my fair share of Norwegians :-)
08:55 masak :)
08:55 moritz in fact, I'm married to one
08:56 nwc10 nine: ah OK. I also don't have an answer for whom the Burganlanders make fun of, but it's been suggested that it's the Viennese
08:56 nine nwc10: because of course, Vienna is no part of Austria :)
08:57 RabidGravy I tend to mock people from Essex a lot
08:58 bobkare it's only fair that swedes make fun of norwegians, we have our fair share of jokes about swedes too
09:00 xiaomiao nine: I object!
09:00 xiaomiao nine: the rest of austria is just not awesome enough to keep up ;)
09:03 FROGGS sjn: ftp://ftp.cpan.org/pub/CPAN/authors/p6binaries.json.gz ftp://ftp.cpan.org/pub/CPAN/authors/p6dists.json.gz ftp://ftp.cpan.org/pub/CPAN/authors/p6provides.json.gz
09:07 espadrine joined #perl6
09:16 EdwardElric joined #perl6
09:17 sjn nine: http://pad.hackeriet.no/p/p6-deploy (tadzik and I've been working on that; WIP)
09:18 bjz joined #perl6
09:19 diana_olhovik_ joined #perl6
09:21 FROGGS is there no '<=' or '>=' from strings?
09:21 nine le and ge?
09:21 FROGGS ahh, stupid me, I did that and thought it was lt/gt
09:23 Akagi201 joined #perl6
09:23 [TuxCM] How to confuse people :) :
09:23 [TuxCM] $ p6 -MText::CSV -e'csv(in=>[[1,2]],out=>Str,eol=>"0").say'
09:23 [TuxCM] 1,20
09:24 FROGGS :o)
09:44 * masak .oO( "Warning: you just set the property 'eol' to '0'. This is likely to confuse everybody, including you." )
09:44 araujo joined #perl6
09:44 araujo joined #perl6
09:45 moritz and then there's a :sudo option for suppressing that warning
09:48 * FROGGS .oO( "Notice: when passing numeric values in pairs you might want to use the :0eol syntax instead" )
09:48 nwc10 will there be a :void-warranty option?
09:49 laouji joined #perl6
09:51 masak FROGGS: but it's not a numeric value. it's the string "0".
09:51 nine New fun fact: S01 spec tests fail when run with TEST_JOBS > 1 but work ok with TEST_JOBS=1
09:52 FROGGS masak: but is looks numericish...
09:52 masak m: say (:0eol).perl; say (eol => "0").perl
09:52 camelia rakudo-moar 1e0847: OUTPUT«:eol(0)␤:eol("0")␤»
09:56 FROGGS yes yes, I know
09:58 lizmat m: my @a = ^10; say @a ?? @a[^10]:kv !! "hello"
09:58 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/jAJJQEZ6Sx␤Please use !! rather than :␤at /tmp/jAJJQEZ6Sx:1␤------> 3my @a = ^10; say @a ?? @a[^10]:kv7⏏5 !! "hello"␤    expecting any of:␤        pair value␤»
09:59 lizmat but I *am* using !!   :-)
09:59 FROGGS TimToady: can you please judge on RT #116012? I'd like to disallow {pre,post,postcircum}fixes with a precedence not tighter than w=
09:59 synbot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=116012
09:59 FROGGS m: my @a = ^10; say @a ?? @a[^10]:kv() !! "hello"
09:59 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MyrgtkL0ld␤Please use !! rather than :␤at /tmp/MyrgtkL0ld:1␤------> 3my @a = ^10; say @a ?? @a[^10]:kv(7⏏5) !! "hello"␤»
10:00 lizmat m: my @a = ^10; say @a ?? @a[^10]:
10:00 nine camelia: my @a = ^10; say @a ?? (@a[^10]:kv) !! "hello"
10:00 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XkY7GQEF2H␤Confused: Found ?? but no !!␤at /tmp/XkY7GQEF2H:1␤------> 3my @a = ^10; say @a ?? @a[^10]:7⏏5<EOL>␤    expecting any of:␤        colon pair␤»
10:01 masak m: say :0eol eqv :0eol; say :0eol eqv (eol => "0")
10:01 camelia rakudo-moar 1e0847: OUTPUT«True␤False␤»
10:01 lizmat m: my @a = ^10; say @a ?? @a[^10]:k
10:01 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/qW4jV84AuS␤Please use !! rather than :␤at /tmp/qW4jV84AuS:1␤------> 3my @a = ^10; say @a ?? @a[^10]:k7⏏5<EOL>␤    expecting any of:␤        pair value␤»
10:01 lizmat m: my @a = ^10; say @a ?? @a[^10]:k !! "hello"
10:01 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/aU5B8xrAMv␤Please use !! rather than :␤at /tmp/aU5B8xrAMv:1␤------> 3my @a = ^10; say @a ?? @a[^10]:k7⏏5 !! "hello"␤    expecting any of:␤        pair value␤»
10:01 FROGGS m: class Foo::Bar { }; say 42 ?? Foo::Bar !! 21
10:01 camelia rakudo-moar 1e0847: OUTPUT«(Foo::Bar)␤»
10:01 nine m: my @a = ^10; say @a ?? (@a[^10]:kv) !! "hello"
10:01 camelia rakudo-moar 1e0847: OUTPUT«0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9␤»
10:01 bartolin see http://irclog.perlgeek.de/perl6/2015-04-01#i_10375048 and below
10:04 DrForr Hrm, I've got an unrepeatable 'Internal error: invalid thread ID in GC work pass' error...
10:04 bartolin star-m: my @a = ^10; say @a ?? @a[^10]:kv !! "hello"
10:04 camelia star-m 2013.03: OUTPUT«0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9␤»
10:04 FROGGS ó.ò
10:05 FROGGS "star-m 2013.03" ??
10:05 FROGGS hehe
10:06 nine FROGGS: if I disable the merge option of TAP::Harness I still get the parallel failures
10:07 FROGGS :S
10:07 FROGGS yeah, I thought it would not be that easy
10:07 bartolin the error regarding ?? !! happens since rakudo commit 225a7e3939, I think
10:08 FROGGS star-m: say $*PERL.compiler.version
10:08 camelia star-m 2013.03: OUTPUT«v2015.3␤»
10:09 dalek roast: 06412b7 | usev6++ | t/04-combinations. (3 files):
10:09 dalek roast: Test that '#?DOES' is not seen in subsequent blocks
10:09 dalek roast: review: https://github.com/perl6/roast/commit/06412b71f5
10:13 cschwenz1 joined #perl6
10:13 FROGGS star-m: say .WHAT
10:13 camelia star-m 2015.03: OUTPUT«Nil␤»
10:13 FROGGS \o/
10:13 FROGGS nine++
10:14 nine FROGGS: spec test errors reproducable by: t (nom *>)> prove6 -j8 spec/S01-perl-5-integration/*.moar spec/S01-perl-5-integration/basic.t
10:14 * FROGGS .oO( now we have 10 problems )
10:14 grondilu joined #perl6
10:15 dalek roast: 6edb64e | usev6++ | fudge:
10:15 dalek roast: Clear $DOES flag when leaving top level block
10:15 dalek roast: review: https://github.com/perl6/roast/commit/6edb64e78b
10:15 lolisa joined #perl6
10:18 alini joined #perl6
10:18 rurban_ joined #perl6
10:19 masak TimToady: wow, isn't https://github.com/rakudo/rakudo/commit/225a7e39398e91befae1c0b595192192d7cfeb1d#diff-d3980092fdbde9a1dd4a30438f8dba19R4208 a kind of two-pass parsing?
10:20 masak also, wouldn't it throw up false positives sometimes?
10:22 anaeem1_ joined #perl6
10:24 masak m: say 42 ?? "OH HAI"
10:24 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sPoY3N7i6Y␤Confused: Found ?? but no !!␤at /tmp/sPoY3N7i6Y:1␤------> 3say 42 ?? "OH HAI"7⏏5<EOL>␤»
10:24 masak m: say 42 ?? "OH !! HAI"
10:24 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gdFzvhslRr␤Your !! was gobbled by the expression in the middle; please parenthesize␤at /tmp/gdFzvhslRr:1␤------> 3say 42 ?? "OH !! HAI"7⏏5<EOL>␤»
10:25 nine FROGGS: interesting: ls spec/S01-perl-5-integration/*.rakudo.moar | xargs -n 1 -P 4 perl6
10:25 masak m: sub postfix:<!!+>($t) { $t.uc }; say 42 ?? "oh hai"!!+ !! 7
10:25 camelia rakudo-moar 1e0847: OUTPUT«OH HAI␤»
10:25 masak m: sub postfix:<!!+>($t) { $t.uc }; say 42 ?? "oh hai"!!+
10:25 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Y7IAIyyPAM␤Your !! was gobbled by the expression in the middle; please parenthesize␤at /tmp/Y7IAIyyPAM:1␤------> 3!+>($t) { $t.uc }; say 42 ?? "oh hai"!!+7⏏5<EOL>␤»
10:25 nine FROGGS: may lead to xargs: perl6: terminated by signal 11
10:26 nine FROGGS: so it may not be the shared STDOUT after all
10:30 nine May be the source of my failures: Program received signal SIGSEGV, Segmentation fault. 0x00007ffff7de4ab0 in check_match () from /lib64/ld-linux-x86-64.so.2
10:31 FROGGS nine: maybe we need to take a look at TAP::Harness
10:31 nine No TAP::Harness involved there
10:32 Foxcool joined #perl6
10:36 lizmat m: my @a = ^10; say @a ?? @a[^10]:kv !! "hello"   # I think this parse error predates having :adverbs
10:36 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Paowvt0Abm␤Please use !! rather than :␤at /tmp/Paowvt0Abm:1␤------> 3my @a = ^10; say @a ?? @a[^10]:kv7⏏5 !! "hello"   # I think this parse error␤    expecting any of:␤        pair value␤»
10:36 lizmat it feels to me, it should simple be removed
10:37 [particle]1 joined #perl6
10:37 nine m: say 1 ? "foo" : "bar"
10:37 camelia rakudo-moar 1e0847: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VK5AiGH9tS␤Unsupported use of ? and : for the ternary conditional operator; in Perl 6 please use ?? and !!␤at /tmp/VK5AiGH9tS:1␤------> 3say 1 ?7⏏5 "foo" : "bar"␤»
10:37 nine ^^^ that one is definitely worth keeping though
10:38 nine Once you know about ??, you probably also know about !!
10:38 nine I learned it from this error message :)
10:40 tinyblak joined #perl6
10:44 FROGGS m: class Foo::Bar { }; say 42 ?? Foo::Bar !! 21
10:44 camelia rakudo-moar 1e0847: OUTPUT«(Foo::Bar)␤»
10:46 DrForr Hrm, I got the 'invalid thread ID' 4 times in a row, then #5 worked.
10:48 tinyblak joined #perl6
10:50 dalek roast: 6f2fc2d | usev6++ | S05-substitution/subst.t:
10:50 dalek roast: Separate failing test for RT #114388
10:50 dalek roast: review: https://github.com/perl6/roast/commit/6f2fc2de9a
10:50 synbot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=114388
10:51 dalek rakudo/nom: c30f235 | lizmat++ | src/Perl6/Grammar.nqp:
10:51 dalek rakudo/nom: Allow adverbs inside the first part of a ternary
10:51 dalek rakudo/nom:
10:51 dalek rakudo/nom: You will probably still need to parenthesize the expression to avoid:
10:51 dalek rakudo/nom:   Precedence of :v is too loose to use inside ?? !!; please parenthesize
10:51 dalek rakudo/nom: but now you can at least make it work.
10:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c30f235d35
11:00 brrt joined #perl6
11:08 konsolebox joined #perl6
11:13 nine FROGGS: I collected some backtraces: https://gist.github.com/niner/e4c0fad201c8af500524
11:23 dalek roast: e0741e9 | lizmat++ | S03-operators/ternary.t:
11:23 dalek roast: Also test ?? foo : bar
11:23 dalek roast: review: https://github.com/perl6/roast/commit/e0741e94b7
11:25 Ven joined #perl6
11:32 dalek roast: 4cc5663 | lizmat++ | S32-str/numeric.t:
11:32 dalek roast: Unfudge passing :37<8> test
11:32 dalek roast: review: https://github.com/perl6/roast/commit/4cc56631bb
11:40 cognominal joined #perl6
11:40 dalek rakudo/nom: 420a9b5 | lizmat++ | src/core/array_slice.pm:
11:40 dalek rakudo/nom: Slices on auto-extending arrays now work as lvalue
11:40 dalek rakudo/nom:
11:40 dalek rakudo/nom: As per my interpretation of S09:217
11:40 dalek rakudo/nom:
11:40 synbot6 Link: http://design.perl6.org/S09.html#line_217
11:40 dalek rakudo/nom: my @a;
11:40 dalek rakudo/nom: @a[^Inf] = ^4;    # 0,1,2,3
11:40 dalek rakudo/nom: @a[^4] = ^Inf;    # 0,1,2,3
11:40 dalek rakudo/nom: @a[^Inf] = ^Inf;  # noop
11:40 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/420a9b5a64
11:44 arnsholt [A
11:44 arnsholt #
11:44 arnsholt Whoops
11:45 timotimo you can say that twice!
11:45 arnsholt My wireless connection dropped for a bit
11:53 FROGGS ohh, you are at a perl workshop?
11:53 arnsholt Nope, I'm at $work
12:04 muraiki joined #perl6
12:05 aborazmeh joined #perl6
12:05 aborazmeh joined #perl6
12:13 dalek rakudo-star-daily: d64b0c4 | coke++ | log/ (2 files):
12:13 dalek rakudo-star-daily: today (automated commit)
12:13 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/d64b0c4746
12:13 dalek perl6-roast-data: 26b7bc8 | coke++ | / (9 files):
12:13 dalek perl6-roast-data: today (automated commit)
12:13 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/26b7bc86fe
12:19 rmgk_ joined #perl6
12:35 tinyblak joined #perl6
12:36 lizmat m: say "foo" xx -42   # should this be silent ?
12:36 camelia rakudo-moar 420a9b: OUTPUT«␤»
12:36 lizmat FROGGS: ^^ ??
12:39 FROGGS lizmat: well, it did print a newline
12:40 FROGGS do you want an exception?
12:41 dalek rakudo/nom: 4e8a163 | lizmat++ | src/core/List.pm:
12:41 dalek rakudo/nom: Make xx about 1.8 times faster (for xx 1024)
12:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4e8a163ced
12:41 Ven lizmat: is the list preallocated at $n elements?
12:41 lizmat FROGGS: well, I accidentally made it an exception, and t/spec/S03-operators/buf.t, test 5 failed
12:41 lizmat yes
12:42 dalek rakudo/nom: e55c80b | FROGGS++ | src/ (2 files):
12:42 dalek rakudo/nom: throw typed ex for "You cant adverb that"
12:42 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e55c80b656
12:42 dalek rakudo/nom: a95107d | FROGGS++ | src/Perl6/Grammar.nqp:
12:42 dalek rakudo/nom: throw for P5ish use of "?? :" without upsetting adverbs
12:42 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a95107d614
12:42 lizmat but instead of setting elements back to 0 and pushing, I'm just indexing into it
12:42 lizmat FROGGS++
12:42 Ven ah, setelems indeed.
12:43 dalek roast: 874a8ba | FROGGS++ | S03-operators/ternary.t:
12:43 dalek roast: more tests for adverbed things in ternaries
12:43 dalek roast: review: https://github.com/perl6/roast/commit/874a8ba898
12:43 FROGGS well, +1 to an exception...
12:43 lizmat yeah, I feel that way too
12:43 FROGGS m: say "foo" xx *-42
12:43 camelia rakudo-moar 420a9b: OUTPUT«Method 'Int' not found for invocant of class 'WhateverCode'␤  in sub infix:<xx> at src/gen/m-CORE.setting:10776␤  in block <unit> at /tmp/pfA7FU8NGA:1␤␤»
12:43 FROGGS well, that does not make sense anyway ^^
12:57 RabidGravy joined #perl6
13:03 molaf joined #perl6
13:05 Hyer joined #perl6
13:10 Hyer m: my @a = (2,3,5); my $s = set(@a);  say so 2 ∈ $s;
13:10 camelia rakudo-moar 420a9b: OUTPUT«True␤»
13:11 Hyer Can anyone tell me how to do this with ASCII characters?  "set" is Google-proof
13:11 Hyer and the Rosetta-code example, obnoxiously enough, shows only the unicode way
13:12 DrForr I'm going to patch that so § is also a set sigil :)
13:12 Hyer <golf clap for DrForr>
13:13 colomon Hyer: (elem)
13:13 arnsholt Hyer: http://doc.perl6.org/language/setbagmix has the full list for sets
13:13 Hyer ahh, thank you both
13:13 colomon (is the Texas version of ∈)
13:13 pullphinger joined #perl6
13:14 colomon arnsholt++ # that’ll be handy for me.  :)
13:14 Hyer m: my @a = (2,3,5); my $s = set(@a);  say so 2 (elem) $s;
13:14 camelia rakudo-moar 420a9b: OUTPUT«True␤»
13:14 Hyer m: my @a = (2,3,5); my $s = set(@a);  say so 2 elem $s;
13:14 camelia rakudo-moar 420a9b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/pxU1mWpckO␤Two terms in a row␤at /tmp/pxU1mWpckO:1␤------> 3@a = (2,3,5); my $s = set(@a);  say so 27⏏5 elem $s;␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤ …»
13:14 psch (elem), not elem
13:14 grondilu Hyer: you don't need parens btw
13:15 psch oh, it was the line before :)
13:15 Hyer grondilu:  I thought my second chat establishes that I do need parens
13:15 Hyer leaving them out produces the "two terms in a row" error
13:15 grondilu no I meant around 2,3,5
13:15 colomon Hyer: you do for (elem), I think he meant… right
13:16 Hyer gotcha, thanks
13:16 psch m: my @a = 2,3,5; my $s = set @a;  say so 2 elem $s;
13:16 camelia rakudo-moar 420a9b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/2OKdKhQWlr␤Two terms in a row␤at /tmp/2OKdKhQWlr:1␤------> 3my @a = 2,3,5; my $s = set @a;  say so 27⏏5 elem $s;␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤ …»
13:16 psch m: my @a = 2,3,5; my $s = set @a;  say so 2 (elem) $s;
13:16 camelia rakudo-moar 420a9b: OUTPUT«True␤»
13:17 grondilu std: say so 2 ∈ set(2,3,5);
13:17 camelia std 28329a7: OUTPUT«5===SORRY!5===␤Confused at /tmp/dZX9Y8p69p line 1:␤------> 3say so 2 7⏏5∈ set(2,3,5);␤    expecting any of:␤        feed_separator␤ infix or meta-infix␤    infixed function␤       statement modifier loop␤Parse failed␤FAILED 00:00 137m␤»
13:19 anaeem1_ joined #perl6
13:27 btyler nifty paper/overview for the async/parallelized future: http://blog.acolyer.org/2015/04/17/asynchronized-concurrency-the-secret-to-scaling-concurrent-search-data-structures/
13:27 rararara_ joined #perl6
13:28 [Coke] [ptc]++
13:31 andreoss joined #perl6
13:31 andreoss m: my $x = Str: 0x10 ; $x.say;
13:31 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dTZZnWeKGw␤Confused␤at /tmp/dTZZnWeKGw:1␤------> 3my $x = Str:7⏏5 0x10 ; $x.say;␤    expecting any of:␤        colon pair␤»
13:32 andreoss m: my $x = Str: 0 ; $x.say;
13:32 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/e9IihnADGZ␤Confused␤at /tmp/e9IihnADGZ:1␤------> 3my $x = Str:7⏏5 0 ; $x.say;␤    expecting any of:␤        colon pair␤»
13:32 andreoss m: my $x = Str(0) ; $x.say;
13:32 camelia rakudo-moar a95107: OUTPUT«0␤»
13:32 [Coke] nine - t/spectest.data has a few markers that cause files to be included or not depending on what flag is passed to the fudger. Could probably add a # perl5 marker there without much pain.
13:33 andreoss are Str:, Int: meant to be used?
13:33 grondilu not really
13:33 nine FROGGS: this must be it! #4  0x00007ffff7dee33b in _dl_open (file=0x3b0dec0 "/tmp/p5helper.so",
13:33 nine [Coke]: thanks, that may be very helpful indeed!
13:34 grondilu the function: arg syntax exists with a method.
13:34 [Coke] I wonder how hard it would be to start adding those to the daily runs, also.
13:34 grondilu m: say Int.new: 4;
13:34 camelia rakudo-moar a95107: OUTPUT«Default constructor for 'Int' only takes named arguments␤  in method new at src/gen/m-CORE.setting:988␤  in block <unit> at /tmp/dWg2hOilrp:1␤␤»
13:34 grondilu ah bad example
13:35 sivoais joined #perl6
13:35 Ven joined #perl6
13:35 grondilu class Foo { method duh($) { rand } }; say Foo.duh: 7;
13:35 grondilu m: class Foo { method duh($) { rand } }; say Foo.duh: 7;
13:35 camelia rakudo-moar a95107: OUTPUT«0.760936420834028␤»
13:36 andreoss is there haskell's $ operator?
13:36 raiph joined #perl6
13:36 andreoss : is nice for reducing parentesis, but works in strange way with type classes.
13:37 timotimo where did you find that syntax?
13:38 timotimo the something colon argumentlist is only for methods
13:38 timotimo either direct or indirect method call notation
13:38 timotimo subs are already like list prefixes
13:38 timotimo m: say Str 0
13:38 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/unpoCDpRS8␤Two terms in a row␤at /tmp/unpoCDpRS8:1␤------> 3say Str7⏏5 0␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤        statement…»
13:38 timotimo m: my $x = Str 0; say $x
13:38 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/V3tIbpzcXh␤Two terms in a row␤at /tmp/V3tIbpzcXh:1␤------> 3my $x = Str7⏏5 0; say $x␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤     …»
13:38 timotimo m: my $x = Str(0); say $x
13:38 camelia rakudo-moar a95107: OUTPUT«0␤»
13:39 timotimo m: Str 4
13:39 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0uQhTPj36n␤Two terms in a row␤at /tmp/0uQhTPj36n:1␤------> 3Str7⏏5 4␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤        st…»
13:39 timotimo those aren't registered as &Str, though
13:39 timotimo so you can't just type "Str"
13:39 timotimo m: my &Str := Str; say Str 5
13:39 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/m0ST969k1i␤Two terms in a row␤at /tmp/m0ST969k1i:1␤------> 3my &Str := Str; say Str7⏏5 5␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement end␤ …»
13:39 timotimo m: my &Str := Str; say say 5
13:39 camelia rakudo-moar a95107: OUTPUT«Type check failed in binding; expected 'Callable' but got 'Str'␤  in any bind_error at src/vm/moar/Perl6/Ops.nqp:224␤  in block <unit> at /tmp/SQyJgV4Qmh:1␤␤»
13:39 timotimo interesting
13:39 andreoss m: say: 123;
13:39 camelia rakudo-moar a95107: ( no output )
13:39 timotimo that's just a label
13:40 grondilu m: my &Str : { Str $_ }; say Str 5
13:40 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xBPoVe353E␤Confused␤at /tmp/xBPoVe353E:1␤------> 3my &Str :7⏏5 { Str $_ }; say Str 5␤    expecting any of:␤        colon pair␤»
13:40 * timotimo is AFK for a bit
13:40 grondilu m: my &Str := { Str $_ }; say Str 5
13:40 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ktw5ZVPWYi␤Two terms in a row␤at /tmp/ktw5ZVPWYi:1␤------> 3my &Str := { Str7⏏5 $_ }; say Str 5␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        stat…»
13:40 skids joined #perl6
13:40 grondilu m: my &Str := { Str($_) }; say Str 5
13:40 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/vaOJpMMhCU␤Two terms in a row␤at /tmp/vaOJpMMhCU:1␤------> 3my &Str := { Str($_) }; say Str7⏏5 5␤    expecting any of:␤        infix␤        infix stopper␤        postfix␤        statement…»
13:40 grondilu meh
13:40 timotimo interesting
13:40 timotimo it probably finds Str first before even looking for &Str
13:42 * timotimo is AFK for a bit
13:42 dayangkun joined #perl6
13:43 grondilu 27.Na4!  # the comp did not see that but gives it a better eval than what it suggested.
13:43 dayangkun joined #perl6
13:44 tinyblak joined #perl6
13:45 dayangkun joined #perl6
13:45 [Coke] m: say ?NaN # slightly surprising.
13:45 camelia rakudo-moar a95107: OUTPUT«True␤»
13:46 moritz m: say NaN == 0
13:46 camelia rakudo-moar a95107: OUTPUT«False␤»
13:50 raiph joined #perl6
13:56 tadzik look #perl6, I did a thing: http://imgur.com/V8dn2Ir
13:57 tadzik takes less than a second to load a 10-meg profiling data, and virtually zero time to search it with regexes
13:57 tadzik take that, angular :)
13:58 Ven joined #perl6
14:01 dalek Inline-Perl5: 4ebc31e | (Stefan Seifert)++ | lib/Inline/Perl5.pm6:
14:01 dalek Inline-Perl5: Fix random test failures during parallel test runs
14:01 dalek Inline-Perl5:
14:01 dalek Inline-Perl5: Since commit 257614503a76a188401aca7ad59f4c693498fbe9 we copy
14:01 dalek Inline-Perl5: p5helper.so to /tmp on load. When several processes try to do that at
14:01 dalek Inline-Perl5: the same time, some may end up loading a half written library leading to
14:01 dalek Inline-Perl5: all kinds of interesting and very confusing error messages.
14:01 dalek Inline-Perl5:
14:01 dalek Inline-Perl5: Fix for now by prepending the process id to the file name. Real fix will
14:01 dalek Inline-Perl5: be to store files by their original name in the
14:01 dalek Inline-Perl5: CompUnitRepo::Local::Installation
14:01 dalek Inline-Perl5: review: https://github.com/niner/Inline-Perl5/commit/4ebc31e72f
14:02 dalek roast: 51e1489 | usev6++ | S12-introspection/methods.t:
14:02 dalek roast: Fix fudging (and number of tests)
14:02 dalek roast: review: https://github.com/perl6/roast/commit/51e148974e
14:03 gtodd thing++
14:05 [TuxCM] lizmat, strange?
14:05 [TuxCM] m: my@x=^3;my@y=1;@x[@y]:v.perl.say
14:05 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/knXCpSMdUq␤Two terms in a row␤at /tmp/knXCpSMdUq:1␤------> 3my@x=^3;my@y=1;@x[@y]:v7⏏5.perl.say␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        stat…»
14:05 tadzik https://github.com/tadzik/p6profiler-qt here it is, if anyone wants to improve on it
14:05 dalek Inline-Perl5: 1de865a | (Stefan Seifert)++ | t/ (4 files):
14:05 dalek Inline-Perl5: Remove unneeded use NativeCall in tests
14:05 dalek Inline-Perl5: review: https://github.com/niner/Inline-Perl5/commit/1de865add6
14:08 dalek specs: 0a559da | lizmat++ | S22-package-format.pod:
14:08 dalek specs: Elaborate a bit more on %?RESOURCE
14:08 dalek specs: review: https://github.com/perl6/specs/commit/0a559da028
14:11 tinyblak joined #perl6
14:12 retupmoca tadzik: https://github.com/tadzik/File-Find/pull/5 please :)
14:13 fhelmberger joined #perl6
14:16 tadzik retupmoca: oh, yes. I saw that, and had mixed feelings
14:16 tadzik because of .relative
14:17 tadzik I mean, I know that the original path is also relative, but it feels like this line is doing something else than it looks like it's doing
14:17 adu joined #perl6
14:18 colomon m: my $today???? = “Does this work?”; say $today????
14:18 camelia rakudo-moar a95107: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sZa9TslUQU␤Two terms in a row␤at /tmp/sZa9TslUQU:1␤------> 3my $today7⏏5???? = “Does this work?”; say $today????␤    expecting any of:␤        constraint␤        infix␤        infix stop…»
14:18 colomon darn.
14:19 tadzik 3> sees that the channel accepts colored text
14:19 tadzik 3> wonders if his plugin works
14:19 mohij joined #perl6
14:20 * grondilu sees green
14:20 cschwenz1 @colomon: i see someone else reads xkcd.com  :-)
14:20 colomon cschwenz1: just now, yup.  :)_
14:20 PerlJam cschwenz1: who doesn't?  :)
14:20 cschwenz1 :-D
14:21 colomon cschwenz1: not just xkcd.com, but the mouse-overs, too.  :)
14:22 tadzik emoji in variable names?
14:22 telex joined #perl6
14:23 nine Oh I read xkcd. I just didn't realize it was Friday :)
14:23 cschwenz1 :-P
14:24 cschwenz1 it's okay, it has been a long week.
14:25 mohij joined #perl6
14:26 tadzik retupmoca: also, it feels like it should be fixed in Panda::Fetcher, since it uses a slash
14:27 tadzik retupmoca: if you put 'exclude => "$from/.git".IO.path' in Fetcher instead, would that fix the problem?
14:32 colomon tadzik: ???? is, as far as I know, an emoji.
14:32 tadzik oh, my font doesn't like it
14:32 colomon wondered if that might be the case.
14:36 dalek roast: 4c4de48 | usev6++ | integration/advent2009-day23.t:
14:36 dalek roast: Fix fudging
14:36 dalek roast: review: https://github.com/perl6/roast/commit/4c4de48a2c
14:46 [TuxCM] lizmat, FROGGS, tadzik for review: https://gist.github.com/Tux/587e5914afda17e1b1ee <= that hangs in the second iteration
14:47 tadzik not here it doesn't :)
14:48 psch star-m: https://gist.github.com/Tux/587e5914afda17e1b1ee
14:48 camelia star-m 2015.03: OUTPUT«(0, 1e0)␤(3, 3e0)␤(5, Inf)␤Array.new(11, 12, 14, 16, 17, 18, 19)␤Array.new(21, 22, 24, 26, 27, 28, 29)␤Array.new(31, 32, 34, 36, 37, 38, 39)␤Array.new(41, 42, 44, 46, 47, 48, 49)␤Array.new(51, 52, 54, 56, 57, 58, 59)␤Array.new(61, 62, 64, 66, 6…»
14:48 psch m: https://gist.github.com/Tux/587e5914afda17e1b1ee
14:49 camelia rakudo-moar a95107: OUTPUT«(timeout)(0, 1e0)␤(3, 3e0)␤(5, Inf)␤[11, 12, 14, 16, 17, 18, 19]<>␤»
14:49 [TuxCM] This is perl6 version 2015.03-305-ga95107d built on MoarVM version 2015.03-108-g2bad607
14:50 anaeem1__ joined #perl6
14:50 psch m: say $*VM.version
14:50 camelia rakudo-moar a95107: OUTPUT«v2015.3.108.g.2.bad.607␤»
14:57 molaf_ joined #perl6
15:02 grondilu damned when I have to write some P5 code, I feel so confused.  Like, how do I write the equivalent of for ^Inf -> $n {...} ??
15:02 grondilu for my $n ($something_here) {...}
15:03 colomon I don’t think that works at all in p5
15:03 colomon maybe for (my $n = 0; ; $n++)  ?
15:03 colomon disclaimer: I’ve tried to avoid p5 for the last 5 years....
15:04 psch what colomon said.  i had 1; as condition, which looks a bit more explicit
15:04 psch but empty expr works too
15:04 grondilu yes I guess C-style for it is.
15:05 psch tadzik: how far behind HEAD are you locally?  'cause [TuxCM]'s hang seems to be between star and now
15:05 psch (and git log immediately shows changes to ..., not ..)
15:06 tadzik I'm on eadbae09a32333373a14072e2c8c17d1764455e9
15:07 psch ah, i was behind that locally, that's why i didnt see anything
15:07 psch i'd suspect 54fbdfe, but i'll look closer
15:07 psch s/behind/before/
15:08 psch hm, that points at something i encountered yesterday, iirc
15:09 psch m: class A { has Str $.a; submethod BUILD(:$a) { $!a = $a.Str } }; say A.new(:a(42)).perl; class B { has Str $.b; submethod BUILD (Str() :$b) { } }; say B.new(:b(42)).perl
15:09 camelia rakudo-moar a95107: OUTPUT«A.new(a => "42")␤B.new(b => Str)␤»
15:10 psch coercer in signatures of BUILD seem wonky
15:10 dalek roast: 2d371de | FROGGS++ | S32-io/pipe.t:
15:10 dalek roast: add test for pipe()
15:10 dalek roast: review: https://github.com/perl6/roast/commit/2d371de2c7
15:10 mr-foobar joined #perl6
15:10 psch (i might be misremembering what an empty BUILD does, but seeing that lizmat++ expected the same behavior as i did makes me less confident in my misunderstanding)
15:12 * grondilu solved https://projecteuler.net/problem=44 with Perl 5 because brute force in Perl 6 was too slow.
15:12 grondilu ^Perl 5 still is much faster for a few things.
15:13 dalek roast: bc9f52e | usev6++ | fudge:
15:13 dalek roast: Fix fudging for 'skip'
15:13 dalek roast: ... until now it could happen that plain code
15:13 dalek roast: lines were commented out by 'fudge'
15:13 dalek roast: review: https://github.com/perl6/roast/commit/bc9f52e2d4
15:17 dalek roast: 347b68e | usev6++ | t/ (3 files):
15:17 dalek roast: Test that fudging 'skip' does not hit lines with plain code
15:17 dalek roast: review: https://github.com/perl6/roast/commit/347b68e757
15:20 psch grondilu: my implementation runs in ~2.5 seconds locally?
15:20 psch maybe you're forcing bruter
15:20 psch eh, not 2.5, 0.5
15:21 psch ah
15:21 psch no
15:21 psch i missed looking for the sum :)
15:22 chenryn joined #perl6
15:22 * psch is still curious about runtime and has to go get groceries anyway &
15:22 psch +the
15:23 grondilu psch: ok then your solution is better than mine I suppose.
15:24 grondilu psch: "i missed looking for the sum :)"  missed that.
15:24 dalek rakudo/nom: 039d27b | lizmat++ | src/core/Any.pm:
15:24 dalek rakudo/nom: Make dd() handle infinite lists
15:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/039d27bf04
15:25 grondilu std: dd
15:25 camelia std 28329a7: OUTPUT«5===SORRY!5===␤Undeclared routine:␤     'dd' used at line 1␤Check failed␤FAILED 00:00 134m␤»
15:25 grondilu what's dd?
15:25 flussence data::dumper, it looks like
15:26 gtodd perl5 thing that liz "ported"
15:26 gtodd :-)
15:26 grondilu m: say dd my $ = pi
15:26 camelia rakudo-moar a95107: OUTPUT«$ = 3.14159265358979e0␤Nil␤»
15:27 gtodd m: say dd my $_ = pi
15:27 camelia rakudo-moar a95107: OUTPUT«Potential difficulties:␤    Redeclaration of symbol $_␤    at /tmp/mRF202dtFB:1␤    ------> 3say dd my $_7⏏5 = pi␤$_ = 3.14159265358979e0␤Nil␤»
15:27 gtodd hahah
15:27 gtodd m: say my $_ = pi
15:27 camelia rakudo-moar a95107: OUTPUT«Potential difficulties:␤    Redeclaration of symbol $_␤    at /tmp/SkN583Fa0S:1␤    ------> 3say my $_7⏏5 = pi␤3.14159265358979␤»
15:27 gtodd oh I thought the output would be different
15:28 lizmat m: my $a = 42; my $b = 666; dd $a, $b
15:28 camelia rakudo-moar a95107: OUTPUT«$a = 42␤$b = 666␤»
15:28 gtodd lizmat:  did it show at one pint where the error message came from ?
15:28 flussence lizmat++ # I can't remember how many times I've tried to hand-code that kinda output and got it wrong
15:29 gtodd Ithought there was some way to sort of "trace" where ==>   "«Potential difficulties:␤    Redeclaration of symbol $_" would come from
15:29 gtodd but I guess not with dd :-)
15:29 lizmat gtodd: I'm not aware of that
15:30 gtodd lizmat: I could be mixing it up with some perl5 thing :-D
15:33 gfldex joined #perl6
15:34 flussence stuff that comes from the grammar itself generally doesn't have backtraces
15:35 mjreed joined #perl6
15:35 retupmoca tadzik: I think that would fix the problem, but the File::Find tests would need to be tweaked as well
15:36 retupmoca ("that" being: 'exclude => "$from/.git".IO.path' in Panda::Fetcher)
15:36 mjreed How can I declare a constant array in r*?
15:37 moritz m: constant @a = 1, 2, 3; @a = 4, 5
15:37 camelia rakudo-moar a95107: OUTPUT«Cannot modify an immutable Int␤  in method STORE at src/gen/m-CORE.setting:9361␤  in block <unit> at /tmp/PA6MxW7Gfd:1␤␤»
15:37 moritz m: constant @a = 1, 2, 3; say @a
15:37 camelia rakudo-moar a95107: OUTPUT«1 2 3␤»
15:38 * moritz wonders why it sid "immutable Int" in that error message
15:38 mjreed m: constant @foo = 1,2,3; say @foo.WHAT
15:38 camelia rakudo-moar a95107: OUTPUT«(Parcel)␤»
15:39 sjn lizmat: https://www.debian.org/doc/debian-policy/ch-relationships.html
15:39 mjreed m: constant @foo = 1,2,3; push @foo, 4; say @foo
15:39 camelia rakudo-moar a95107: OUTPUT«Cannot call push(Int: Int, Int, Int); none of these signatures match:␤    (Any:U \SELF: *@values, *%_)␤  in sub push at src/gen/m-CORE.setting:10803␤  in block <unit> at /tmp/cvKnxiVFSy:1␤␤»
15:39 mjreed m: constant @foo = [1,2,3]; push @foo, 4; say @foo
15:39 camelia rakudo-moar a95107: OUTPUT«1 2 3 4␤»
15:40 tadzik retupmoca: do they not pass on windows currently?
15:40 nebuchadnezzar joined #perl6
15:44 * [Coke] wonders how dd is different than .perl
15:46 Ven joined #perl6
15:51 psch ho humm
15:51 psch 5.5g ram and growing
15:51 psch i think i'll kill this script :)
15:52 LonelyGM joined #perl6
15:53 japhb [Coke]: For one thing, dd's output shows you the variable names, and puts each variable on a separate line
15:55 isBEKaml joined #perl6
15:56 nine The power of a single line of code in the right place: https://gist.github.com/niner/d278b67ec573b3a801fe
15:57 tadzik nine++
15:57 psch nine++
15:58 psch the 5/6 integration is definitely amazing
15:59 eternaleye joined #perl6
16:00 bartolin \o/ nine++
16:04 hahainternet nine: raiph posted you using DBI to the subreddit yesterday too
16:04 hahainternet pretty ridic
16:04 nine hahainternet: do you have a URI for me?
16:05 hahainternet nine: https://www.reddit.com/r/perl6/comments/32vuvj/use_dbifromperl5_my_dbh_dbiconnect/
16:05 hahainternet very very low traffic subreddit unfortunately
16:06 isBEKaml yeah, /r/perl6 isn't well subscribed at the moment - only ~350 readers
16:07 hahainternet it's a shame, but i prefer it this way
16:07 hahainternet that way there's less drama and noise
16:07 hahainternet and the people who focus on working on cool stuff, ie nine, jnthn and i'm sure many others i'm ignorant of
16:07 hahainternet get heard
16:12 eli-se joined #perl6
16:13 psch hm, ~500k more I refs without special casing for tr/// in make_smartmatch
16:14 psch FROGGS / nwc10: i think that means it actually is slower?
16:14 psch (and my bench scripts before were just noisy)
16:15 lucasb joined #perl6
16:15 nwc10 more I refs means more CPU work. But more CPU work can pay off if there are fewer cache misses
16:15 psch for reference, this is about PR #299, https://github.com/rakudo/rakudo/pull/299
16:15 nwc10 (D refs, and particularly D misses)
16:15 psch aah
16:15 psch that's about 22k less
16:16 psch m: say "that's { 8126799 / 8148478 }"
16:16 camelia rakudo-moar 039d27: OUTPUT«that's 0.99733950␤»
16:17 psch D misses that is, D refs is 300k more
16:17 psch i guess the lower misses explain the ~.15 seconds less runtime then
16:17 psch i hazily remember reading hundreds of times that cache misses are expensive... :)
16:18 psch well, i guess i can take that as "it's probably worth it"
16:21 raiph joined #perl6
16:21 nine nwc10: did you look at this? https://gist.github.com/niner/d278b67ec573b3a801fe
16:22 nwc10 no
16:23 nwc10 does no v6; turn it off again? :-)
16:23 nine I also got a nice little prototype for https://gist.github.com/niner/785dd2158ed1d79dbdfb
16:24 nine nwc10: I guess that would be v5's job to support.
16:24 lucasb Hey o/
16:24 lucasb In Cool's subst-mutate, does it make sense to only coerce self to string if the match was successful or it should do it always, unconditionally? If the former, then a line like "$self = $str if $match" would do the job?
16:24 lucasb m: my $x = 42; $x.subst-mutate('a','b'); say $x.WHAT
16:24 camelia rakudo-moar 039d27: OUTPUT«(Str)␤»
16:25 nine nwc10: I just added an execvpe("perl6", PL_origargv, PL_origenviron); in pp_ctl.c right before it would print "Perl 6.0.0 required"
16:25 nine nwc10: but that's already enough so I can for example use prove to run my Perl 6 tests without having to use -e 'perl6'
16:26 dalek nqp: f51bf0e | FROGGS++ | tools/build/MOAR_REVISION:
16:26 dalek nqp: bump moar for exit codes fixes
16:26 dalek nqp: review: https://github.com/perl6/nqp/commit/f51bf0e9e8
16:27 psch lucasb: i think turning it into Str is probably wrong, but it shouldn't leave it alone if the Match doesn't succeed
16:27 dalek rakudo/nom: 6fc1534 | FROGGS++ | tools/build/NQP_REVISION:
16:27 dalek rakudo/nom: bump nqp/moar for exit codes fixes
16:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6fc1534a93
16:27 psch lucasb: in my understanding, it should assign Nil and thus set the container to its type (i.e. mostly Any, but maybe Int or something)
16:28 japhb nine: That is sneakiness of an awesome order.
16:28 FROGGS lizmat: after you had a chance to upgrade moar+nqp+rakudo can you please test t/spec/S32-io/pipe.t ? it's new
16:28 lizmat will do
16:28 psch lucasb: S05:4662 is where what i'd justify my understanding with
16:28 synbot6 Link: http://design.perl6.org/S05.html#line_4662
16:29 psch +is written
16:29 nine japhb: the crazy thing is, that it's probably the most sensible thing to do this.
16:30 japhb nine: It does dissuade p5p from supporting a class keyword though ...
16:30 * japhb is unsure if that is a good or bad thing
16:31 lucasb psch: Thanks! I just wanted to raise the question. I don't know what is best too. :)
16:31 btyler also means you need to steer clear of the various P5 modules that give you a class keyword
16:34 lizmat FROGGS: all tests successful!  :-)
16:34 japhb btyler: Yeahbut ... those would require a 'use' before the class, and they would hook the parser (not sending it down the "needs v6" path), so that shouldn't be a problem, no?
16:36 nine japhb: that's what I think
16:37 FROGGS m: my $r = 0..*; my @a = ^10; say @a[$r]
16:37 camelia rakudo-moar 039d27: OUTPUT«Cannot index Array with Inf␤  in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:3506␤  in block <unit> at /tmp/bDf_10EWcD:1␤␤»
16:38 Hyer joined #perl6
16:38 japhb nine: With so much awesome dwimmery, do you have a list of things that still require using Inline::Perl5 "longhand"?
16:38 lizmat m: my @r = 0..*; my @a = ^10; say @a[@r]
16:38 camelia rakudo-moar 039d27: OUTPUT«0 1 2 3 4 5 6 7 8 9␤»
16:38 Hyer I have written a Lakos-style "levelization" program for simple C/C++ projects
16:38 lizmat m: my @r = 0..*; my @a = ^10; say @a[@r]; say @a[@r]
16:39 Hyer I feel I should contribute it as an example
16:39 Hyer where's the best destination?
16:39 camelia rakudo-moar 039d27: OUTPUT«(timeout)0 1 2 3 4 5 6 7 8 9␤»
16:39 psch Hyer: examples.perl6.org?
16:39 psch Hyer: if it is Perl 6, that is :)
16:39 nine japhb: it's getting shorter. You'd still need it for inheritance
16:39 Hyer psch:  will do
16:40 nine japhb: though I may have some ideas on how to improve that area, too.
16:40 lizmat m: my @r = 10..*; my @a = ^10; say @a[@r]; say @a[@r]
16:40 camelia rakudo-moar 039d27: OUTPUT«(timeout)␤»
16:40 psch Hyer: it might also make sense as a modules
16:40 psch Hyer: if it's generally useful that's probably better than as an example
16:41 japhb nine: That would be straight-up awesome.
16:41 FROGGS m: my @r = 0..*; my @a = ^10; say @r.infinite; say @a[@r]; say @r.infinite # lizmat
16:41 camelia rakudo-moar 039d27: OUTPUT«True␤0 1 2 3 4 5 6 7 8 9␤Nil␤»
16:42 psch lizmat / FROGGS: i had looked at that.  possitionals to BUILD aren't special, which is why 54fbdfe4 doesn't work as-is
16:42 psch i'm not sure how to solve it, because passing arguments as named to BUILD means every .new gets less simplified
16:42 lizmat m: my @r = 0..*; my @a = ^10; say @r.WHAT; say @a[@r]; say @r.WHAT
16:42 camelia rakudo-moar 039d27: OUTPUT«(Array)␤0 1 2 3 4 5 6 7 8 9␤(Array)␤»
16:42 psch otoh, having the assigning body in BUILD means it can't be simplified
16:45 psch i'm not sure there isn't something else weird behind it though
16:46 FROGGS m: say "\c[EURO]"
16:46 camelia rakudo-moar 039d27: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XjXG_9umAg␤Unrecognized character name EURO␤at /tmp/XjXG_9umAg:1␤------> 3say "\c[EURO7⏏5]"␤»
16:46 FROGGS .u €
16:46 yoleaux U+20AC EURO SIGN [Sc] (€)
16:46 lizmat psch: I must have missed something, are you saying that 54fbdfe4 is causing a bug ?
16:46 FROGGS m: say "\c[EURO SIGN]"
16:46 camelia rakudo-moar 039d27: OUTPUT«€␤»
16:47 lizmat m: "€".uniname.say  # ???
16:47 camelia rakudo-moar 039d27: OUTPUT«Method 'uniname' not found for invocant of class 'Str'␤  in block <unit> at /tmp/0jJUzxOyCR:1␤␤»
16:47 FROGGS m: say uniname '€'
16:47 camelia rakudo-moar 039d27: OUTPUT«EURO SIGN␤»
16:47 lizmat ah, I was close  :-)
16:48 FROGGS :o)
16:48 psch lizmat: [TuxCM] has a gist 1-2 hours ago that hangs now but doesn't in eadbae09a32333373a14072e2c8c17d1764455e9
16:48 psch lizmat: http://irclog.perlgeek.de/perl6/2015-04-17#i_10458119
16:48 [TuxCM] we are aware of that
16:48 * psch doesn't know who's in Berlin :P
16:49 [TuxCM] nine, tadzik, FROGGS, lizmat, Tux, sjn at least
16:49 lizmat but that commit is the $_ Nil -> Any commit ?
16:50 psch lizmat: right, but i saw something surprising with coercers in BUILD when working on StrDistance
16:50 lizmat and rjbs
16:50 psch lizmat: and 54fbdfe4 does pretty much the same thing to Range.BUILD as i did to StrDistance.BUILD, and i saw "unitialized" warnings
16:50 lizmat and tinita_  (I think)
16:50 FROGGS and bartolin
16:50 lizmat indeed!   :-)
16:50 FROGGS tinita_ is back home already
16:51 bartolin o/ from Berlin
16:51 psch lizmat: and what FROGGS camelia'd just now has .infinite as Nil
16:51 lizmat but that doesn't feel at all BUILD related ???
16:52 psch m: class A { has Str $.a; submethod BUILD(:$a) { $!a = $a.Str } }; say A.new(:a(42)).perl; class B { has Str $.b; submethod BUILD (Str() :$b) { } }; say B.new(:b(42)).perl
16:52 camelia rakudo-moar 6fc153: OUTPUT«A.new(a => "42")␤B.new(b => Str)␤»
16:53 psch lizmat: that's in essence the simplification in 54fbdfe4, isn't it?
16:53 retupmoca tadzik: correct, the File::Find tests fail on windows - specifically the 'exclude' test, because it's trying to compare 'path\to\file' (from the filesystem) to 'path/to/file' (from the exclude argument)
16:54 lizmat m: class A { has Str $.a; submethod BUILD(:$a) { $!a = $a.Str } }; say A.new(:a(42)).perl; class B { has Str $.b; submethod BUILD (Str() :$b) { } }; say B.new(:b<42>).perl
16:54 camelia rakudo-moar 6fc153: OUTPUT«A.new(a => "42")␤B.new(b => Str)␤»
16:55 lizmat m: class A { has Str $.a; submethod BUILD(:$a) { $!a = $a.Str } }; say A.new(:a(42)).perl; class B { has Str $.b; submethod BUILD (Str() :$!b) { } }; say B.new(:b<42>).perl
16:55 camelia rakudo-moar 6fc153: OUTPUT«A.new(a => "42")␤B.new(b => "42")␤»
16:55 lizmat m: class A { has Str $.a; submethod BUILD(:$a) { $!a = $a.Str } }; say A.new(:a(42)).perl; class B { has Str $.b; submethod BUILD (Str() :$!b) { } }; say B.new(:b(42)).perl
16:55 camelia rakudo-moar 6fc153: OUTPUT«A.new(a => "42")␤B.new(b => "42")␤»
16:55 lizmat psch: you need a Bang (!)
16:56 psch lizmat: that's a relief.  i thought something was horribly broken, but i just did it wrong :)
16:56 tadzik retupmoca: so the test passes a platform-specific string to exclude. That's bad indeed
16:58 cognominal joined #perl6
17:00 mjreed joined #perl6
17:00 mjreed m: my $x={a=>1};my $y=$x.clone();$y<a>=2;say $x
17:00 camelia rakudo-moar 6fc153: OUTPUT«a => 2␤»
17:01 mjreed does clone() not do what I thought it would do?
17:02 Su-Shee joined #perl6
17:02 spider-mario joined #perl6
17:02 Su-Shee jnthn: hey, are you awake? ;) I'd like to trade talk time slots with you ;)
17:02 raiph joined #perl6
17:04 psch m: my $x={a=>1};my $y=$x.clone();$y<a>=2;say $x.WHICH; say $y.WHICH
17:04 camelia rakudo-moar 6fc153: OUTPUT«Hash|73576704␤Hash|73576752␤»
17:04 psch m: my $x={a=>1};my $y=$x.clone();$y<a>=2;say $x<a>.WHICH; say $y<a>.WHICH
17:04 camelia rakudo-moar 6fc153: OUTPUT«Int|2␤Int|2␤»
17:04 lizmat psch: that feels wrong
17:04 Ugator1 joined #perl6
17:05 psch lizmat: i agree.  the containers for the keys should also be different ones
17:05 psch mjreed++
17:05 lizmat OTOH, how would .clone know what to copy (generically?)
17:05 psch i can't think of a case where "everything" wouldn't be an option, but i'm probably being unimaginative
17:08 lizmat m: m: my $x={a=>1};my $y=$x.clone(:a(42));$y<a>=2;say $x
17:08 camelia rakudo-moar 6fc153: OUTPUT«a => 2␤»
17:08 lizmat m: m: my $x={a=>1};my $y=$x.clone(a => 42);$y<a>=2;say $x
17:08 camelia rakudo-moar 6fc153: OUTPUT«a => 2␤»
17:08 Hyer OK, when contributing for the first time to perl6-examples -- do I apply somewhere for push permissions, or create a pull request?
17:08 lizmat S12:883 not fully implemented ?
17:08 synbot6 Link: http://design.perl6.org/S12.html#line_883
17:09 lizmat Hyer: moritz would know
17:09 psch Hyer: as i said, if it's generally useful it might be better as a module or app
17:09 moritz Hyer: just tell me your github username
17:10 psch Hyer: although i'll readily defer judgement over that.  i didn't even know about Lakos levelization until shortly after you asked where to put it :)
17:11 mjreed I’m trying to see where the .WHICH’s are the same, but it must be somewhere not visible at the p6 layer.. and even adding a new key to $y also adds it to $x.
17:15 Hyer on Github I am TomHyer
17:16 dalek roast: fe2c47b | TimToady++ | S15-unicode-information/uni (3 files):
17:16 dalek roast: test method forms of uni functions
17:16 dalek roast: review: https://github.com/perl6/roast/commit/fe2c47bd2d
17:16 * [Coke] gets a perl6 google'lert for http://libraries.io/emacs/perl6-mode
17:16 Hyer psch:  I think of it as an app, because I'm mostly just running it to view the output and check for circular dependencies
17:17 dalek rakudo/nom: 9449e15 | TimToady++ | src/core/Cool.pm:
17:17 dalek rakudo/nom: add method forms of uni functions
17:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9449e157e4
17:17 psch Hyer: i suppose that means it should be on modules.perl6.org, not examples.perl6.org
17:17 Hyer aha
17:18 Hyer Maybe I should separate the dependency-analysis from the file choice (right now it just does all files in '.')
17:21 FROGGS[mobile] lizmat: do you want pizza?
17:21 lizmat FROGGS[mobile]: yes please
17:21 FROGGS[mobile] or somebody else from our room
17:22 FROGGS[mobile] look at joeys pizza in Kreuzberg nord
17:22 FROGGS[mobile] (quick)
17:23 lizmat grrr
17:23 KCL_ joined #perl6
17:25 Su-Shee if you are at betahaus: there is a lovely persian place 300m away ;)
17:26 skids std: if 0 { say "no" } else{ say "yes" }
17:26 camelia std 28329a7: OUTPUT«5===SORRY!5===␤Whitespace required after keyword at /tmp/b4qSCFifnn line 1:␤------> 3if 0 { say "no" } else7⏏5{ say "yes" }␤Parse failed␤FAILED 00:00 137m␤»
17:26 skids m: if 0 { say "no" } else{ say "yes" }
17:26 camelia rakudo-moar 6fc153: OUTPUT«yes␤»
17:32 [Coke] That smells vaguely like an RT I remember.
17:32 noganex joined #perl6
17:40 grondilu m: my @ := (^Inf Z* 1..*) Xdiv 2;
17:40 camelia rakudo-moar 6fc153: OUTPUT«(timeout)»
17:41 * grondilu is not sure why that times out.
17:41 grondilu m: my @ := ^Inf Z* 1..*;
17:41 camelia rakudo-moar 6fc153: OUTPUT«(timeout)»
17:41 grondilu m: my @ := 0..* Z* 1..*;
17:42 camelia rakudo-moar 6fc153: OUTPUT«(timeout)»
17:42 grondilu m: 0..* Z* 1..*;
17:42 minde joined #perl6
17:42 camelia rakudo-moar 6fc153: OUTPUT«(timeout)»
17:42 lizmat grondilu: did that change recently ?
17:42 grondilu star: 0..* Z* 1..*;
17:43 camelia star-m 2015.03: OUTPUT«(timeout)»
17:43 cschwenz joined #perl6
17:43 grondilu I really thought this used to work.
17:44 grondilu it should work anyway, shouldn't it?
17:44 grondilu star: 0..* Z* 1..10;
17:44 camelia star-m 2015.03: ( no output )
17:44 grondilu star: 0..10 Z* 1..*;
17:44 camelia star-m 2015.03: ( no output )
17:44 grondilu m: 0..* Z* 1..10;
17:44 camelia rakudo-moar 6fc153: ( no output )
17:44 jercos star: say 0..10 Z* 1..*;
17:44 camelia star-m 2015.03: OUTPUT«0 2 6 12 20 30 42 56 72 90 110␤»
17:44 jercos >.>
17:44 jercos I've done that too many times
17:45 grondilu star: say 0..* Z* 1..*;
17:45 camelia star-m 2015.03: OUTPUT«0 2 6 12 20 30 42 56 72 90 110 132 156 182 210 240 272 306 342 380 420 462 506 552 600 650 702 756 812 870 930 992 1056 1122 1190 1260 1332 1406 1482 1560 1640 1722 1806 1892 1980 2070 2162 2256 2352 2450 2550 2652 2756 2862 2970 3080 3192 3306 3422 3540 3660 …»
17:45 grondilu wth
17:45 grondilu star: 0..* Z* 1..*;
17:45 camelia star-m 2015.03: OUTPUT«(timeout)»
17:46 jercos yeah I guess it gets evaluated fully for some reason when you *don't* print it, while printing it recognizes it's infinite and prints a subset?
17:47 grondilu but what about var affectation then?
17:47 grondilu star: m @ := 0..* Z* 1..*;
17:47 camelia star-m 2015.03: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kTxdSPVeO_␤Unrecognized regex modifier := ␤at /tmp/kTxdSPVeO_:1␤------> 3m @ := 7⏏0..* Z* 1..*;␤»
17:47 grondilu star: my @ := 0..* Z* 1..*;
17:47 camelia star-m 2015.03: OUTPUT«(timeout)»
17:47 grondilu star: my @a := 0..* Z* 1..*;  #maybe?
17:48 camelia star-m 2015.03: OUTPUT«(timeout)»
17:48 grondilu well, that's LTA
17:49 grondilu m: constant Catalan = 1, [\*] (2, 6 ... *) Z/ 2 .. *;
17:49 camelia rakudo-moar 6fc153: ( no output )
17:49 b2gills Str already had the methods unival and univals, which should probably be removed now
17:50 grondilu m: my @Catalan := 1, [\*] (2, 6 ... *) Z/ 2 .. *;
17:50 camelia rakudo-moar 6fc153: ( no output )
17:50 b2gills m: my @ := 0..* Z* 1..*; Nil;
17:50 camelia rakudo-moar 6fc153: ( no output )
17:50 b2gills m: say my @ := 0..* Z* 1..*;
17:50 camelia rakudo-moar 6fc153: OUTPUT«0 2 6 12 20 30 42 56 72 90 110 132 156 182 210 240 272 306 342 380 420 462 506 552 600 650 702 756 812 870 930 992 1056 1122 1190 1260 1332 1406 1482 1560 1640 1722 1806 1892 1980 2070 2162 2256 2352 2450 2550 2652 2756 2862 2970 3080 3192 3306 3422 3540 3…»
17:50 grondilu star: my @a := 0..* Z* 1..*; say "ok I'm done"
17:50 camelia star-m 2015.03: OUTPUT«ok I'm done␤»
17:50 grondilu ok
17:51 grondilu kinda weird though
17:52 b2gills The same thing happens on the command line
17:53 dalek rakudo/nom: eaf99c2 | lizmat++ | src/ (2 files):
17:53 dalek rakudo/nom: Once a List is infinite, it stays infinite
17:53 dalek rakudo/nom:
17:53 dalek rakudo/nom: Fixes:
17:53 dalek rakudo/nom: $ my @r = ^Inf; say @r.infinite; @r[^10]; say @r.infinite'
17:53 dalek rakudo/nom: True
17:53 dalek rakudo/nom: Nil
17:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/eaf99c2636
17:54 caymanboy joined #perl6
17:54 b2gills maybe its caused by the same thing that allows `sub example { 'returned string' }` to work
17:57 mr-foobar joined #perl6
17:58 colomon m: sub infix:<????>($a, $b) { say $a + $b }; 4 ???? 5
17:59 camelia rakudo-moar 6fc153: OUTPUT«9␤»
18:00 colomon that was impressively slow.
18:00 _mg_ joined #perl6
18:00 b2gills m: {; my @ := 0..* Z* 1..*}; Nil
18:01 camelia rakudo-moar 6fc153: OUTPUT«(timeout)»
18:01 FROGGS colomon: perhaps somebody plays with camelia in privmsg
18:01 b2gills .oO( I think it was me )
18:02 b2gills I was recompiling so I didn't have a local Perl6 to play with ( I don't install perl6 )
18:03 FROGGS that is what camelia is for :o)
18:04 b2gills Perhaps I should refrain from using it for things I suspect will cause her to timeout
18:04 dalek rakudo/nom: 54fa42e | lizmat++ | src/core/Str.pm:
18:04 dalek rakudo/nom: Remove now superfluous Str:D: candidates
18:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/54fa42e9eb
18:07 dalek roast: 47681bd | lizmat++ | S15-unicode-information/uniname.t:
18:07 dalek roast: Fix test count
18:07 dalek roast: review: https://github.com/perl6/roast/commit/47681bd16c
18:09 tinyblak joined #perl6
18:09 cschwenz joined #perl6
18:12 dalek roast: aee9f9e | lizmat++ | S15-unicode-information/unimatch-general.t:
18:12 dalek roast: Fix copy-n-pasto
18:12 dalek roast: review: https://github.com/perl6/roast/commit/aee9f9eb43
18:13 shmibs joined #perl6
18:18 FROGGS jnthn: please take a loot at the WAT in #124324 :o)
18:18 synbot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=124324
18:19 [Coke] jnthn++ lizmat++
18:22 * masak .oO( take a loot -- arrrr! )
18:29 TimToady that's twice now I've failed with --append, lizmat++ for reproducing my amendment exactly :)
18:29 lizmat :-)
18:30 TimToady er *--amend
18:30 masak I can see why --append didn't work so well :P
18:30 dalek rakudo/nom: 7f12892 | lizmat++ | src/core/Str.pm:
18:30 dalek rakudo/nom: Hide unixxxx method caches in helper subs
18:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7f128929c3
18:31 [TuxCM] lizmat++
18:31 [TuxCM] All tests successful.
18:31 [TuxCM] Files=20, Tests=18951, 81 wallclock secs ( 4.95 usr  0.25 sys + 219.59 cusr  2.39 csys = 227.18 CPU)
18:31 [TuxCM] Result: PASS
18:32 mjreed How to create a literal array of hashes, equiv to perl5’’s { my @x = ( { a=>1, b=>2 }, { c=>3, d=>4 } ); }?  Is there a shorter way than { my @x = ( $( %( a=>1, b=>2 ), %( c=>3, d=>4 ) ) ); } ?
18:32 mjreed er, should be a $(…) around second %(...)
18:34 [Coke] m: my @a = {a=>1,b=>2}, {c=>3,d=4}; say @a.perl;
18:34 camelia rakudo-moar 6fc153: OUTPUT«5===SORRY!5=== Error while compiling /tmp/HwchIrWKL9␤Undeclared routine:␤    d used at line 1␤␤»
18:34 [Coke] m: my @a = {a=>1,b=>2}, {c=>3,d=>4}; say @a.perl;
18:34 camelia rakudo-moar 6fc153: OUTPUT«[{:a(1), :b(2)}, {:c(3), :d(4)}]<>␤»
18:36 dalek Heuristic branch merge: pushed 31 commits to rakudo/newio by lizmat
18:36 lizmat pizza&
18:36 mjreed hm.  Somehow I was getting a Parcel or an array of individual Pairs.  Thanks.
18:37 TimToady you'd get a parcel if you were using := instead of =
18:37 mjreed yeah, but I wasn’t..
18:37 [Coke] m: my @a = {a=>1,b=>2}, {c=>3,d=4}; say @a[1].WHAT;
18:37 camelia rakudo-moar 6fc153: OUTPUT«5===SORRY!5=== Error while compiling /tmp/c9OZOxC_4B␤Undeclared routine:␤    d used at line 1␤␤»
18:38 [Coke] m: my @a = {a=>1,b=>2}, {c=>3,d=>4}; say @a[1].WHAT; #figures I picked the wrong one
18:38 camelia rakudo-moar 6fc153: OUTPUT«(Hash)␤»
18:38 [Coke] (just to make sure)
18:55 raiph joined #perl6
19:04 dalek doc: 69e5dbb | skids++ | lib/Language/control.pod:
19:04 dalek doc: Document if/until/else/elsif
19:04 dalek doc: Add some syntax notes and a lead-in to section on "do"
19:04 dalek doc: Could not paper over the Rakudo "Nil" fossil, so put in some caveats
19:04 dalek doc:    (those will have to be pulled later.)
19:04 dalek doc: review: https://github.com/perl6/doc/commit/69e5dbb381
19:06 [TuxCM] https://rt.perl.org/Ticket/Display.html?id=124323 can be closed now. I don't have the rights to do so
19:06 dalek rakudo/nom: a244887 | lizmat++ | src/core/Str.pm:
19:06 dalek rakudo/nom: Stub missing unixxxx subs for JVM
19:06 dalek rakudo/nom:
19:06 dalek rakudo/nom: This unbusts the JVM build
19:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a244887186
19:07 skids We should maybe colorize/refont C<stuff> a bit more visibly in doc.
19:07 masak [TuxCM]: is there a test for it in roast?
19:09 bartolin [TuxCM], masak: I can do that later (adding a test, closing the ticket)
19:09 masak ++bartolin
19:13 dalek Inline-Perl5: 0b63e04 | (Stefan Seifert)++ | t/file_handles.t:
19:13 dalek Inline-Perl5: Add missing use v6; to a test file
19:13 dalek Inline-Perl5: review: https://github.com/niner/Inline-Perl5/commit/0b63e04697
19:13 [TuxCM] <travis-ci> Tux/CSV#80 (master - 805e256 : H.Merijn Brand - Tux): The build was fixed.
19:13 [TuxCM] <travis-ci> Change view : https://github.com/Tux/CSV/compare/4b28803b96a5...805e256c2efc
19:13 [TuxCM] <travis-ci> Build details : http://travis-ci.org/Tux/CSV/builds/58953247
19:13 yqt joined #perl6
19:14 [TuxCM] \☺/
19:14 Ugator1 left #perl6
19:17 hoelzro [TuxCM]: that's awesome!
19:17 [TuxCM] indeed
19:17 * [TuxCM] now building with jvm
19:18 nine Ok, now support for "module" and "class" keywords for Perl 5 is no longer a prototype. It's a surprisingly simple patch to perl: https://gist.github.com/niner/a5c06c450e4d9bc37167
19:18 robinsmidsrod joined #perl6
19:21 [TuxCM] nine, http://www.perlmonks.org/?node_id=1121802
19:22 [TuxCM] Done, jvm-nom built
19:23 nine [TuxCM]: epic!
19:25 hoelzro FROGGS: do you think you could give my tab completion branch another look?
19:25 masak nine: wow.
19:25 FROGGS hoelzro: will do
19:30 yvan1 joined #perl6
19:34 hoelzro thanks!
19:35 nine I probably won't get the "module" and "class" support in. They will want to reserve those words for themselves.
19:35 nine But the use v6; support may get into perl 5.23 :)
19:35 lizmat nine++ rjbs++ p5p++  :-)
19:35 nwc10 nine:
19:36 colomon !!!
19:36 lizmat speechless ?
19:37 masak ???
19:37 masak ...
19:38 vendethiel I see what you did there.
19:38 grondilu where is the v6 home so I read about that stuff?
19:39 vendethiel Inline::Perl5, probably.
19:40 grondilu isn't Inline::Perl5 doing the opposite of what v6 does?
19:42 FROGGS jnthn: can you please run that twice and tell me if that can be made to work? https://gist.github.com/FROGGS/25d22b159f3c225993c1
19:43 minde left #perl6
19:43 FROGGS hoelzro: will look at this after $sleep
19:43 FROGGS gnight
19:43 hoelzro ok, good night
19:46 dalek roast: 1790997 | usev6++ | S03-operators/ternary.t:
19:46 dalek roast: Add tests for RT #124323
19:46 dalek roast: review: https://github.com/perl6/roast/commit/1790997c8c
19:46 synbot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=124323
19:47 [TuxCM] Done, built panda for jvm-nom
19:47 [TuxCM] Updating shims
19:56 rurban_ joined #perl6
19:56 [TuxCM] .tell tadzik https://gist.github.com/Tux/eb7cdda3079bcec5f8e7
19:56 yoleaux [TuxCM]: I'll pass your message to tadzik.
19:58 * [TuxCM] stops for the day
20:16 nbdsp joined #perl6
20:21 rararara joined #perl6
20:23 pippo joined #perl6
20:23 pippo o/ #perl6
20:23 timotimo yo pippo
20:24 masak ahoj pippo
20:26 pippo Question: when I define a grammar and have say rule TOP { <r1> <r2> } how can I make the space between <r1> nd <r2> optional?
20:27 pippo i.e. I want the rule TOP also match <r1><r2>
20:27 masak then maybe make it a token, not a rule
20:27 masak and do something like <.ws>?
20:27 DrForr token foo { <r1> <ws>* <r2> } # mebbe?
20:28 DrForr (not that I didn't just echo what masak just said...)
20:28 masak er, no
20:28 masak never put a * on <ws>
20:28 masak whitespace is an *uncountable*, people
20:29 masak it comes in mass quantities, like water or freedom
20:29 masak don't quantify it
20:29 vendethiel .oO( can  ' t c   o   u  n  twh i t   e s p a    c e )
20:29 * DrForr channels his inner Conehead. :)
20:29 masak my point is, that's still *whitespace*, not "whitespaces"
20:30 pippo I was thinking that some modifiers exist in order to achieve what I said. Nevermind. Thank you all for helping.
20:30 DrForr Ah, in the sense that it defaults to \h* ?
20:30 masak short story: <ws> got you covered. don't quantify it.
20:30 DrForr (or \h+, I don't have the manpage before me.)
20:31 masak DrForr: <ws> defaults to more magic than that. in sum: don't quantify it.
20:32 DrForr Nod.
20:32 vendethiel masak: fun fact: "whitespace" and "void space" use the same word in french, but one is female and the other one is male
20:32 masak vendethiel: of course. because French.
20:32 masak :)
20:32 vendethiel yep. my language is pretty terrible :-)
20:32 * masak .oO( in French, even the nouns have sex )
20:33 masak and the adjectives, I guess.
20:33 DrForr Incidentally, https://github.com/drforr/perl6-ecmascript
20:34 masak DrForr: which ES version are you targeting?
20:34 DrForr And yes, the <LT>* scattered throughout does indeed mean vertical whitespace and will probably go away.
20:34 DrForr An excellent question. The original ANTLR grammar is timestamped 2008.
20:36 vendethiel masak: well, in that regard, spanish is really worse. everything is gender-variant
20:36 masak *nod*
20:36 * masak .oO( oui, we are gendered, but at least we're not des Spaniards! )
20:37 * vendethiel needs to learn german, because most people here seems to speak it
20:37 vendethiel s/seems/seem/ # english is *hard*
20:38 DrForr I don't, but I hardly qualify as 'most people' :)
20:38 vendethiel DrForr: I'll rephrase: most of the amazing people I met at salzburg! haha
20:39 psch curiously, my girlfriend never refers to herself with the properly gendered nouns for things-she-does
20:39 psch e.g. she calls herself a "Psychologe" (psychologist) even though she is by virtue of being female a "Psychologin"
20:39 LonelyGM joined #perl6
20:39 psch that's german, just to be explicit
20:40 psch though french has the same tri-gendered grammar iirc
20:40 pippo Out of topic. But since last day every body was looing at the launch: http://spaceflightnow.com/2015/04/15/new-longer-video-shows-falcon-demise/
20:40 telex joined #perl6
20:41 vendethiel psch: no, "he" wins
20:41 vendethiel (i.e., 5 females and a male, we use the male form)
20:41 vendethiel (or rather, women and men...)
20:41 psch vendethiel: oh, yes, german speaker usually do that do
20:41 psch vendethiel: there was a bit of a complain a few weeks back here by a french speaker iirc
20:42 psch about some parenthesized gender-inclusive thingy
20:42 vendethiel psch: oh? I didn't see that
20:42 psch i don't remember the specifics, i just remember that i said that "germans do "*/Innen"
20:42 psch e.g. "Psychologen/Innen"
20:42 DrForr Spanish as well. It was rather awkward in HS as I was the only male in a nearly-all-female Spanish class. Made for some great lessons on gendered pronouns though.
20:43 psch (also sorry for the unbalanced quotes : )
20:43 FROGGS[mobile] psch: we also do *Innen
20:43 FROGGS[mobile] without a slash, though sometimes with underscore
20:44 psch FROGGS[mobile]: you're right, i think the non-slashed version is actually more common
20:44 psch not sure what made the slash so important in my head
20:46 TimToady you think of yourself as a slasher?
20:47 DrForr I'm a midnight toke[niz]er.
20:48 pippo I have noticed that .nl can be set to any character but not be null. Is it possible to include also ''?
20:48 pippo m: $*ERR.nl = '';
20:48 camelia rakudo-moar a24488: OUTPUT«Invalid string index: max -1, got 4294967295␤  in block  at src/gen/m-CORE.setting:18021␤  in block <unit> at /tmp/VrxMGDJJZA:1␤␤»
20:49 psch TimToady: taking into account the translations offered by dict.cc (one of which translates back as "harsh critic"), maybe.  i am occassionally overly harsh in my criticism
20:51 riceandbeans joined #perl6
20:51 riceandbeans when is perl6 going to be ready for primetime use?
20:53 masak riceandbeans: I've primetime used it since 2008.
20:53 masak riceandbeans: you're late :)
20:53 pippo good night #perl6
20:53 pippo left #perl6
20:53 pullphinger15 joined #perl6
20:53 lizmat_ joined #perl6
20:54 psch vendethiel: you were there, actually, when spider-mario complained: http://irclog.perlgeek.de/perl6/2015-03-27#i_10351152
20:55 riceandbeans according to wikipedia it's not even in RC state until hopefully september
20:55 riceandbeans unless that's totally off
20:55 psch (actually 3 minutes before that link)
20:56 psch which might as well mean that you weren't there anymore :)
20:57 DrForr riceandbeans: Very well, what is *your* definition of 'prime-time'? It's in a usable, albeit somewhat embryonic state right now.
20:57 vendethiel riceandbeans: "prime time"? I've already used it at $work and use it for a lot of "scripting", if that's the question
20:58 bartolin_ joined #perl6
20:58 haroldwu joined #perl6
21:01 vendethiel psch: aaah, he complained that way
21:01 vendethiel I thought he did the other way
21:02 [Coke] I think embryonic isn't the right word.
21:03 DrForr riceandbeans: I am genuinely curious. Ive come back to the language after quite a long hiatus, and it's firming up remarkably well.
21:03 psch i'm of two minds of the "primetime use" question
21:03 [Coke] It's usable today. If you have a specific use case we can probably tell you if we do that well already. Anything we can't do off the shelf, we can probably do with Inline::Perl5
21:03 masak prime-time means different things to different users.
21:03 psch ...and masak illustrated one of the viewpoints
21:04 DrForr [Coke]: Yeah, it's not the right word, but it's late here and I can't quite sum up my impressions in a convenient Twitter-sized commuique'.
21:04 psch if "primetime use" means "production ready", then it's a question of "what does that mean?"
21:04 DrForr And that's why I was after his definition of 'prime-time'. It's already available in RPMs, though somewhat outdated.
21:06 psch the other would be taking "primetime use" to mean "everyone *should* use it", which is obviously overly idealistic, because it assumes preference doesn't matter, and as such this viewpoint should be discarded
21:06 psch but i'm probably not quite fit for irc anymore... &
21:07 LonelyGM joined #perl6
21:08 DrForr Hrm, 22 terms remaining to be tested in this grammar. I wonder if my next project shouldn't be an ANTLR grammar porter.
21:08 riceandbeans so perl6 is now a jvm language in the only actively developed implementation, according to wikipedia
21:08 masak yep.
21:09 masak though it's not jvm-only.
21:09 [ptc] maybe the wikipedia page should be updated and MoarVM metioned as well
21:09 riceandbeans well, jvm or 'moarvm', but I've never heard of the latter and wikipedia says that it's slower
21:09 riceandbeans it does mention moarvm
21:10 [ptc] ah, ok
21:10 masak moarvm is the recommended default backend at this point.
21:10 [ptc] moarvm starts faster, but is afaik slower when running
21:10 [ptc] jvm starts much slower, but runs faster once it's up and going.
21:10 masak I think the runtime speed depends on the actual code.
21:10 lizmat joined #perl6
21:11 riceandbeans jvm is always slow to start
21:11 * [ptc] hopes that's still right
21:11 riceandbeans and tends to leak
21:12 DrForr Oo, and I just triggered a segfault.
21:12 masak 'night, #perl6
21:16 leont joined #perl6
21:16 [ptc] 'night masak
21:17 [Coke] MoarVM was built specifically for what Perl 6 needed, so, unless you've touched perl 6 before, it's not surprising you haven't heard of it.
21:18 riceandbeans why abandon parrot though?
21:18 riceandbeans and why flock to jvm?
21:19 [ptc] jvm is a widely-used technology, and makes asynchronous stuff easy to implement, from what I understand
21:20 timotimo one of the big reasons to build a port to the JVM was that the jvm had battle-tested concurrency already
21:20 Su-Shee riceandbeans: there's a very very long article about that..
21:20 [Coke] Also, targetting the JVM lets us get our foot in the door in some corporate environments (like mine)
21:20 timotimo rakudo, our main implementation, was aimed towards running on multiple different VMs at a somewhat early point
21:21 timotimo and porting to the JVM was an exercise in that, so to speak
21:21 [ptc] Su-Shee: do you have a link?
21:21 [Coke] basically, moarvm took the lessons learned from parrot, and from perl 6 development. it's goal was to do what perl 6 needed and nothing else, and that hadn't been parrot's goal for a lot of its formative years.
21:21 timotimo but since we have jvm interop, we can potentially tap into a very big library of modules through the JVM
21:21 timotimo i haven't seen terribly much in the way of examples, though
21:21 [Coke] parrot was trying to be a good backend for a bunch of different languages. (And it's doing OK at that, near as I can tell)
21:22 [Coke] someone just did a bunch of good work on JVM interop.
21:22 vendethiel timotimo: I know a few friends toyed with it, but executing p6 code from the jvm was still insanely slow for now :)
21:22 timotimo mhh
21:22 riceandbeans most perl people don't like the JVM
21:22 Su-Shee hmm lemme look
21:22 timotimo i suppose that's their loss
21:22 riceandbeans it's like trying to alienate your base for the swing vote
21:23 Su-Shee riceandbeans: that's nonsense. also, any other language has a jvm implementation, it's an extremely smart move
21:23 riceandbeans in my opinion
21:23 [Coke] anyway, welcome to the channel. Please hang out and give the evalbot a whirl, and grab a copy of rakudo 2015.03. 2015.04 is almost out.
21:23 timotimo being able to deploy stuff to the JVM lets you get into lots of places
21:23 timotimo though with rakudo on jvm, you need to deploy onto a device with lots of ram, but that's always the case with a jvm ;)
21:23 [Coke] m: <rice and beans>.join.say
21:23 camelia rakudo-moar a24488: OUTPUT«riceandbeans␤»
21:23 timotimo m: <rice and beans>.pick(*).say
21:23 camelia rakudo-moar a24488: OUTPUT«beans and rice␤»
21:23 * [Coke] heads out.
21:23 timotimo m: <rice and beans>.pick(*).say
21:23 camelia rakudo-moar a24488: OUTPUT«beans rice and␤»
21:23 timotimo m: <rice and beans>.pick(*).say
21:23 camelia rakudo-moar a24488: OUTPUT«and beans rice␤»
21:23 * vendethiel remembers reading an abstract from a TimToady++ 2000/2001 or 2002 talk titled "java isn't the enemy" :P
21:24 * psch wishes he had a clue how to make rakudo-j faster
21:24 timotimo how long do i have until the release gets tagged?
21:24 psch iirc arnsholt++ has a similar, more refined problem, which points at PriorInvocation
21:24 psch timotimo: i heard 23rd
21:24 timotimo i have something i'd love to fix up, but i have no idea how long it'll take
21:24 timotimo is that rakudo or rakudo star?
21:25 psch rakudo iirc
21:25 timotimo good, that should be enough
21:25 timotimo i'm being sent to bed early today :\
21:25 psch is the cat being possessive? :)
21:26 timotimo hah
21:26 timotimo the cats are living in a place i'm visiting quite often these days
21:26 timotimo no cats in my own home
21:27 psch sounds like a solid arrangement — cats in a place you like to visit but peace from cats at home
21:27 raiph joined #perl6
21:27 psch i have memories of my toes being bitten and clawed at when living with cats
21:27 riceandbeans oh no, my walls
21:27 riceandbeans Su-Shee: I bought them markers, and they turned my walls into murals
21:28 psch i'm also reminded that i should sketch out and probably implement a few more jvm-interop bits...
21:29 psch anyway, actually away now o/
21:30 kaare_ joined #perl6
21:32 nbdsp_ joined #perl6
21:35 nbdsp_ Greetings! Due to inability of DBIish module to work with binary data, I was advised here to use DBI from Perl 5 as follows: use DBI:from<Perl5>; my $dbh = DBI.connect(... However this produces an error: "Don't know how to load code from Per 5". Are there some additional declarations or modules needed for using Perl5 code?
21:35 nbdsp_ *Perl 5
21:36 isBEKaml joined #perl6
21:38 RabidGravy Inline::Perl5 I think
21:38 skids nbdsp_: I think :from<Perl5> was just made to work today?
21:38 espadrine joined #perl6
21:41 geekosaur yesterday
21:41 timotimo can't you use Foo:from<Perl5> if you use Inline::Perl5 before that?
21:43 nbdsp_ I don't use Inline::Perl5. Is it needed with that feature? Or I need to reinstall Rakudo for using F;;::from<Perl5>?l
21:43 nbdsp_ *Foo::from<Perl5>?
21:44 skids Either reinstall or use Inline::Perl5 but you will need to intall Inline::Perl5 in either case.
21:45 nbdsp_ Thanks. Will install Inline::Perl5 and if it doesn't work, will reinstall Rakudo.
21:46 [TuxCM] joined #perl6
21:53 timotimo now that we have a fast analysis tool for profiles, maybe someone with a machine with loads of ram could run a core setting compilation with --profile-compile (and probably also --optimize=off to reduce the profile size and ram usage even further)?
21:53 timotimo is there somebody here with a machine that has 32gigs of ram or something? i have no idea if that's enough %)
21:54 timotimo i wouldn't dare run it on hack.p6c.org
21:56 vendethiel :from<Perl5> worked before AFAIK, but wasn't in core
21:58 RabidGravy parse is twenty seconds quicker than it was for some reason
21:58 flussence 20?!
21:59 riceandbeans http://xkcd.com/1513/
22:01 timotimo i'll try if 8 gigs of ram and 10 gigs of swap will be enough locally
22:01 RabidGravy bizarre
22:01 timotimo RabidGravy: that can happen if you forgot to optimize your moarvm build. in fact, parrot used to default to --optimize=0 if you didn't pass --optimize to its configure script, which confused the hell out of me one day
22:03 flussence timotimo: got a compilation command line I can blindly copy and paste? ;)
22:03 timotimo i just closed that tab
22:04 flussence (I wonder if 8 gigs of RAM and a gigantic /dev/zram0 swap would work...)
22:04 timotimo just delete CORE.setting.moarvm and "make", it'll give you the line i mean
22:04 timotimo it's the one following "this is going to take a long time"
22:04 flussence righty
22:04 timotimo thank you!
22:04 timotimo the resulting profile-*.html should gzip very nicely
22:04 timotimo AFK for a bit
22:05 timotimo .o( of course after copy-pasting you'll need --profile-compile rather soon after the "perl6.moarvm" )
22:16 flussence my fast server's currently crying under the load... maybe I'll try it on my slow one (which has a big fast SSD, so tons of real swap ought to not hurt)
22:18 timotimo i'm at 5.5 gigs of swap used and growing
22:18 flussence 9GB here :D
22:22 grettis joined #perl6
22:24 flussence Memory allocation failed; could not allocate 325532884 bytes
22:24 flussence aw nuts.
22:31 timotimo damn :\
22:31 timotimo hm
22:31 timotimo i wonder ...
22:32 timotimo ah, hehe
22:33 timotimo whenever the profiler reaches 4096 "pieces" of string added to its list, it joins all the pieces together and the result becomes the new first piece
22:33 timotimo we should be able to do a bit better than that
22:34 flussence maybe it'd be better to spit it straight out to a file...
22:35 flussence I'll give it another shot in the meantime, hopefully 48GB of swap will be enough...
22:38 flussence (wait... how are we gonna *load* this profile?)
22:46 timotimo the profile itself will be much, much smaller
22:47 timotimo i think it'd be enough to keep a list of "megachunks" around and instead of joining them just print them out to the file one by one
22:47 timotimo but i should go to bed now
22:47 timotimo if you want to hack that, it lives in nqp's repository under src/vm/moar/HLL/Backend.nqp
22:47 nbdsp_ Reinstalled Rakudo and Panda gives the following error on installing Inline::Perl5 or reinstalling Panda: $ perl6 bootstrap.pl ==> Bootstrapping Panda ===SORRY!=== Unsupported serialization format version 13 (current version is 15)
22:47 timotimo you have some old precompiled files lying around, i'm afraid
22:48 timotimo it's kinda shitty that it doesn't give you a filename, though
22:48 nbdsp_ make clean?
22:50 timotimo oh
22:50 timotimo can you use rebootstrap.pl instead?
22:52 andreoss joined #perl6
22:53 andreoss is there a way to fetch only N elements within a feed?
22:53 eli-se joined #perl6
22:54 andreoss m: 1 .. * ==> grep { $^a %% 11 } ==> limit 10 ==> my @x; say @x;
22:54 camelia rakudo-moar a24488: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3i46RizcBM␤Undeclared routine:␤    limit used at line 1. Did you mean 'list'?␤␤»
22:54 andreoss m: 1 .. * ==> grep { $^a %% 11 } ==>  my @x; say @x[^10];
22:55 camelia rakudo-moar a24488: OUTPUT«(signal SEGV)»
22:57 flussence interesting, this run seems to be hovering around 12GB virt even though there's plenty of room free.
22:58 skids andreoss: feeds don't work like they should yet at all.
22:59 skids andreoss: but an object with a .push method inserted in the feed should be able to tap it.
23:01 andreoss i guess gather/take can be put into a feed, but i haven't  found out how yet
23:07 vendethiel m: sub limit($n) { my $r = ^$n; -> @a { @a[$r] } }; say 1, 3, 9 ... * ==> limit(10)();
23:07 camelia rakudo-moar a24488: OUTPUT«1 3 9 27 81 243 729 2187 6561 19683 59049 177147 531441 1594323 4782969 14348907 43046721 129140163 387420489 1162261467 3486784401 10460353203 31381059609 94143178827 282429536481 847288609443 2541865828329 7625597484987 22876792454961 68630377364883 2058…»
23:07 vendethiel m: sub limit($n) { my $r = ^$n; -> @a { @a[$r] } }; say (1, 3, 9 ... * ==> limit(10)());
23:07 camelia rakudo-moar a24488: OUTPUT«59049␤»
23:12 tinyblak joined #perl6
23:20 nbdsp_ reboostrap.pl worked! But: $ panda install Inline::Perl5 ===SORRY!=== Missing or wrong version of dependency 'src/gen/m-Metamodel.nqp' (from 'lib/File/Find.pm')
23:21 skids m: class A { has $.i = 0; has @.a = (); method push (@v) { for (@v) -> $v { @!a.push($v) if 5 < $!i++ < 10 } }; }; my $a = A.new; my @x; @x <== $a <== 1..50 ; for (1..10) { @x[$_] }; $a.a.perl.say; # tap example. but even with a for loop keeping it from reifying to infinity seems undoable.
23:21 camelia rakudo-moar a24488: OUTPUT«[7, 8, 9, 10]<>␤»
23:29 * flussence is watching this --profile-compile via strace... mmap()s 6 or 7 quarter-GB chunks spaced 0.5s apart, thinks about it, then throws them all away and repeats
23:29 flussence It's getting *somewhere*, just very slowly and oddly
23:34 vendethiel flussence: it's solving the halting problem, just you wait!
23:37 flussence I think tweaking the to-json code is probably gonna be a better approach, I'll try that instead.
23:45 andreoss` joined #perl6
23:47 hernan604 joined #perl6
23:56 nbdsp_ Running rebootstrap.pl again solved the problem with wrong version of m-Metamodel,nqp, but the majority of tests during installing of Inline::Perl5 are failed. :(

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

Perl 6 | Reference Documentation | Rakudo