Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-04-12

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:39 vendethiel joined #perl6
00:43 BenGoldberg joined #perl6
01:06 vendethiel joined #perl6
01:08 mr-foobar joined #perl6
01:10 Possum joined #perl6
01:26 Sqirrel joined #perl6
01:31 vendethiel joined #perl6
01:46 ilbot3 joined #perl6
01:46 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31
01:48 bjz joined #perl6
01:51 n0vacane joined #perl6
01:51 n0vacane joined #perl6
01:59 tinyblak joined #perl6
02:14 noganex joined #perl6
02:16 skids joined #perl6
02:18 aborazmeh joined #perl6
02:18 aborazmeh joined #perl6
02:34 aindilis joined #perl6
02:38 vendethiel joined #perl6
02:38 telex joined #perl6
03:01 kaare_ joined #perl6
03:02 vendethiel joined #perl6
03:02 * skids drops a pin
03:03 * n0vacane offers skids a non-alcoholic beer
03:06 * TimToady is testing <1+2i> literals
03:06 skids .oO(It's so quiet in here you could here a pint drop?)
03:06 Zoffix :D
03:07 TimToady a pint is rather more than a drop
03:08 raydiak not much after you drop it
03:12 nbdsp joined #perl6
03:12 nbdsp Greetings! Could someone advise please how to truncate Int to UInt64? Namely, to get rid of the following error:
03:12 nbdsp m: my UInt64 $n = 0x1122334455667788; $n +^= $n +< 5;
03:12 camelia rakudo-moar 0b2092: OUTPUT«Type check failed in assignment to '$n'; expected 'UInt64' but got 'Int'␤  in block <unit> at /tmp/vpj3BICp68:1␤␤»
03:17 tinyblak joined #perl6
03:17 dalek roast: f3fa03d | TimToady++ | S02-literals/numeric.t:
03:17 dalek roast: tests for <1/2> and <1+2i> literals
03:17 dalek roast: review: https://github.com/perl6/roast/commit/f3fa03d459
03:18 dalek rakudo/nom: 0495190 | TimToady++ | src/Perl6/ (2 files):
03:18 dalek rakudo/nom: implement Complex literals
03:18 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/04951905de
03:19 raydiak nbdsp: if you just want to truncate you could always do it by hand e.g. $n = min 2**64-1, $n +^ $n +< 5
03:20 skids joined #perl6
03:22 nbdsp radyak: not exactly just truncate, but rather to do proper C-like left biwise shift
03:23 flussence m: Buf.new(0x00) ~ Buf.new(0x01)
03:23 camelia rakudo-moar 0b2092: ( no output )
03:23 flussence m: say Buf.new(0x00) ~ Buf.new(0x01)
03:23 camelia rakudo-moar 0b2092: OUTPUT«Buf:0x<00 01>␤»
03:23 flussence hm, I must've got a dud update. that barfs locally.
03:24 flussence oh duh, never mind. Typo in my code it gave a LTA error for
03:25 flussence m: constant Bar = Foo ~ Buf.new(0x00);
03:25 camelia rakudo-moar 0b2092: OUTPUT«5===SORRY!5=== Error while compiling /tmp/emhGYXGjKr␤An exception occurred while evaluating a constant␤at /tmp/emhGYXGjKr:1␤Exception details:␤  Cannot use a Buf as a string, but you called the Stringy method on it␤    in method Stringy at sr…»
03:25 skids m: my UInt64 $i = 0x1122334455667788; $i = ($i +< 5) +& 0xffffffffffffffff; $i.base(16).say
03:25 camelia rakudo-moar 0b2092: OUTPUT«2446688AACCEF100␤»
03:26 skids (That certainly should not be necessary with uint64 and probably shouldn't be with UInt64)
03:27 nbdsp skids: thanks!
03:28 raydiak skids++ :)
03:28 raydiak oh yeah if you use uint64 (the lowercase version), it works too
03:28 skids Well, no not really.
03:29 skids m: my uint64 $i = 0x1122334455667788; $i = ($i +< 3) +& 0xffffffffffffffff; $i.base(16).say # uint64 still has issues
03:29 camelia rakudo-moar 0b2092: OUTPUT«-76EE65DD54CC43C0␤»
03:30 raydiak hrm
03:30 raydiak m: my uint64 $n = 0x1122334455667788; $n +^= $n +< 5; say $n.base(16)
03:30 camelia rakudo-moar 0b2092: OUTPUT«35645BCEF9A88688␤»
03:30 raydiak m: my uint64 $n = 0x1122334455667788; $n +^= $n +< 3; say $n.base(16)
03:30 camelia rakudo-moar 0b2092: OUTPUT«-67CC569901AA3438␤»
03:30 isBEKaml joined #perl6
03:31 skids It's the upper sine bit.
03:32 skids array[uint64] is likewise borked, but all the smaller array[uintX] work fine.
03:33 raydiak good to know
03:33 skids (jnthn said he thought array[uint32] should work on 32bit machines, but I have not verified that yet.)
03:34 adu joined #perl6
03:51 Sqirrel joined #perl6
04:37 TimToady m: say <0x1234.56+0b111111i>
04:37 camelia rakudo-moar 0b2092: OUTPUT«0x1234.56+0b111111i␤»
04:38 TimToady m: say <1+2i>.WHAT
04:38 camelia rakudo-moar 0b2092: OUTPUT«(Str)␤»
04:38 TimToady hmm, not recompiled
04:56 Sqirrel joined #perl6
05:26 Sqirrel joined #perl6
05:37 vendethiel joined #perl6
05:44 noganex_ joined #perl6
05:45 Patterner joined #perl6
05:46 pRiVi_ joined #perl6
05:47 clkao_ joined #perl6
05:48 aindilis joined #perl6
05:48 arnsholt_ joined #perl6
05:48 smi1er_ joined #perl6
05:48 virtualsue joined #perl6
05:49 krunen_ joined #perl6
05:49 BinGOs_ joined #perl6
05:53 dustinm`_ joined #perl6
05:53 skarn_ joined #perl6
05:59 [Tux] joined #perl6
06:00 Vlavv_ joined #perl6
06:00 BinGOs joined #perl6
06:06 rindolf joined #perl6
06:20 jnthn morning, #perl6
06:20 TimToady o/
06:24 dalek nqp: 0f90dfe | nicholas++ | t/serialization/01-basic.t:
06:24 dalek nqp: Test serializing integers with 63 bits set and 1 bit clear.
06:24 dalek nqp:
06:24 dalek nqp: These bit patterns may catch out some bugs.
06:24 dalek nqp: review: https://github.com/perl6/nqp/commit/0f90dfedb3
06:24 dalek nqp: b335f0c | nicholas++ | tools/build/Makefile- (3 files):
06:24 dalek nqp: Use the PROVE macro instead of a literal `prove` in the generated Makefiles.
06:24 dalek nqp:
06:24 dalek nqp: This permits one to override it on the make command line, for example as
06:24 dalek nqp: `PROVE=prove\ -j24`.
06:24 dalek nqp: review: https://github.com/perl6/nqp/commit/b335f0cf31
06:25 robinsmidsrod joined #perl6
06:25 dalek nqp: ee0112f | nicholas++ | t/serialization/01-basic.t:
06:25 dalek nqp: The integer serialization tests now "pass" on 32 bit Parrot, albeit with TODOs.
06:25 dalek nqp:
06:25 dalek nqp: commit 1a559ff0fd3ba34c in Feb 2014 added "Serialization tests for integers
06:25 dalek nqp: up to 2**62." As written, they fail on 32 bit Parrot, because unlike all other
06:25 dalek nqp: platforms, there NQP's native integers are not 64 bit. Specifically, the way
06:25 dalek nqp: the looping was written too few tests would be run, meaning that the failure
06:25 dalek nqp: was only detected because the test count didn't match the plan.
06:25 dalek nqp:
06:25 dalek nqp: Refactor the looping construction so that the correct number of tests are
06:25 dalek nqp: always run (on all platforms). The tests aren't *meaningful* on 32 bit Parrot
06:25 dalek nqp: because they aren't testing that integers >= 2**31 can serialize, but they
06:25 dalek nqp: don't fail (because as before they instead end up testing integers around 0,
06:25 dalek nqp: rather than 2 ** $n, for $n in 31..62)
06:25 dalek nqp:
06:25 dalek nqp: Add a test, TODO'd on 32 bit parrot, that the values being tested are actually
06:25 dalek nqp: large and positive (which 0 obviously isn't).
06:25 dalek nqp:
06:25 dalek nqp: With this, we have no broken windows, and all tests (usefully) pass on MoarVM,
06:25 dalek nqp: JVM and 64 bit Parrot.
06:25 dalek nqp: review: https://github.com/perl6/nqp/commit/ee0112f087
06:26 Sqirrel joined #perl6
06:39 ribasushi PSA: I registered perl.christmas (the domain)
06:39 ribasushi I have no plans to use it, if someone here is interested in putting something there - feel free to ping me with the DNS settings you want
06:42 diana_olhovik_ joined #perl6
06:42 skids ribasushi++
06:51 dalek nqp: 3f733f3 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/ (2 files):
06:51 dalek nqp: Keep MODE_UNBOX_STR_NOT_EMPTY_OR_ZERO around.
06:51 dalek nqp:
06:51 dalek nqp: We don't need it for NQP or Perl 6 any more, but (a) the stage0 of NQP
06:51 dalek nqp: may use it, and (b) we probably want it for v5 or other slangs.
06:51 dalek nqp: review: https://github.com/perl6/nqp/commit/3f733f3e36
06:52 jnthn That doesn't unbust nqp-j, unfortunately.
06:57 TimToady make the meaning of istrue_s stage dependent somehow, I suppose
06:58 jnthn The istrue_s and isfalse_s parts of the patch aren't to blame.
06:58 jnthn It's all about the boolification of BOOTStr
06:59 sunday joined #perl6
06:59 sunday m: my $B = { say "hello"; }; $B();
06:59 camelia rakudo-moar 0b2092: OUTPUT«hello␤»
07:00 sunday left #perl6
07:02 jnthn But yeah, probably gonna end up fixing this by updating stage0.
07:02 jnthn Just doing a couple of checks that that's really what's going to be needed.
07:03 nwc10 jnthn: oh. OK. If so, could you do the other MoarVM stuff before reboostrapping stage 0?
07:03 nwc10 I'm assuming that all 3 get done together
07:03 jnthn No, it's per backend
07:03 jnthn So unless you have stuff for JVM stage0?
07:03 nwc10 no.
07:03 KCL_ joined #perl6
07:04 nwc10 (sorry, can't help there)
07:04 * TimToady --> rebootstrap &
07:06 jnthn o/ :)
07:06 lue joined #perl6
07:15 cdc hello #perl6
07:16 cdc you may like reading this article ("Programming languages shape the way their users think"): http://www.technologyreview.com/re​view/536356/toolkits-for-the-mind/
07:18 dalek nqp: f728a1d | jnthn++ | src/vm/jvm/stage0/ (10 files):
07:18 dalek nqp: Bump JVM stage0, to fix the build.
07:18 dalek nqp:
07:18 dalek nqp: This was produced by undoing part of the recent patch making "0" true,
07:18 dalek nqp: producing a new stage0, then applying the patch again, and verifying
07:18 dalek nqp: the issue is resolved.
07:18 dalek nqp: review: https://github.com/perl6/nqp/commit/f728a1dba2
07:22 darutoko joined #perl6
07:26 nine cdc: indeed, an excellent article. Thanks for the pointer.
07:29 dalek rakudo/nom: a509d12 | jnthn++ | src/ (2 files):
07:29 dalek rakudo/nom: Typed exceptions for bad variable/parameter type.
07:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a509d127da
07:31 dalek roast: ed5b245 | jnthn++ | S32-exceptions/misc.t:
07:31 dalek roast: Test for RT #123397.
07:31 dalek roast: review: https://github.com/perl6/roast/commit/ed5b245c59
07:31 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=123397
07:39 masak good morning, #perl6
07:43 jnthn o/ masak
07:55 dalek rakudo/nom: 9240574 | jnthn++ | src/Perl6/Grammar.nqp:
07:55 dalek rakudo/nom: Detect undeclared symbols in use/no arglists.
07:55 dalek rakudo/nom:
07:55 dalek rakudo/nom: Resolves LTA error in RT #123627.
07:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9240574a73
07:55 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=123627
07:55 dalek roast: f7729ba | jnthn++ | S32-exceptions/misc.t:
07:55 dalek roast: Test for RT #123627.
07:55 dalek roast: review: https://github.com/perl6/roast/commit/f7729ba04c
07:55 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=123627
08:06 anaeem1_ joined #perl6
08:22 RabidGravy joined #perl6
08:24 xfix joined #perl6
08:27 vendethiel joined #perl6
08:37 dalek nqp: 64fd183 | jnthn++ | tools/build/MOAR_REVISION:
08:37 dalek nqp: Bump MOAR_REVISION (SEGV fix, tuned serialization)
08:37 dalek nqp: review: https://github.com/perl6/nqp/commit/64fd183b41
08:38 dalek rakudo/nom: fc67ac0 | jnthn++ | tools/build/NQP_REVISION:
08:38 dalek rakudo/nom: Bump NQP_REVISION (both JVM and Moar fixes).
08:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fc67ac0a2c
08:39 dalek roast: 31ffc2c | jnthn++ | S02-types/native.t:
08:39 dalek roast: Tests for RT #123789.
08:39 dalek roast: review: https://github.com/perl6/roast/commit/31ffc2c598
08:39 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=123789
08:39 masak m: say <3/5+0b11i>
08:39 camelia rakudo-moar 0b2092: OUTPUT«3/5+0b11i␤»
08:41 [Tux] panda question:
08:41 [Tux] Compiling lib/Text/CSV.pm to mbc
08:41 [Tux] ==> Testing Text::CSV
08:41 [Tux] t/10_base.t .......
08:41 [Tux] No subtests run
08:42 [Tux] perl6 -Ilib t/10_base.t
08:42 [Tux] all tests pass
08:42 [Tux] is there something I have to add to the configuration?
08:42 masak moritz: I guess the above complex literal in a <> is another exception to https://github.com/moritz/perl6-wtop/blob/master/p​ractices.pod#use-whitespace-around-infix-operators :)
08:44 masak [Tux]: don't think so. looks fine to me.
08:44 [Tux] so I will have to go spelunkin'
08:47 moritz masak: aye
08:47 masak m: say <Inf+NaNi>
08:47 camelia rakudo-moar 0b2092: OUTPUT«Inf+NaNi␤»
08:47 masak m: say NaNi
08:47 camelia rakudo-moar 0b2092: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oWZnDneOvH␤Undeclared name:␤    NaNi used at line 1␤␤»
08:47 masak m: say NaN\i
08:47 camelia rakudo-moar 0b2092: OUTPUT«0+NaN\i␤»
08:48 masak TimToady: what's the motivation for 'NaNi' working inside a <> but not outside it?
08:50 masak or is it...
08:50 masak *dun dun dun*
08:50 masak ...a bug?
08:50 masak :)
08:50 Perl6_newbee joined #perl6
08:51 moritz masak: though one could also argue that the + in the complex literal isn't really an infix operator, but rather part of the literal
08:51 jnthn masak: I think https://rt.perl.org/Ticket/Display.html?id=117853 can get a test (if there isnt' already one) and be closed now?
08:51 masak jnthn: yep. was gonna add that to the ticket.
08:51 * masak adds it now
08:52 masak moritz: that's true. but in this case, the insides of the <> are trying their best to *emulate* the original behavior of '+' and '-' and '/'
08:53 jnthn masak: Aww, was hoping for a test so we could close it :P
08:54 masak not saying there isn't a test already :)
08:54 lizmat joined #perl6
08:59 [Tux] in Panda/Tester.pm:
08:59 [Tux] if $run-default && 't'.IO ~~ :d {
08:59 [Tux] withp6lib {
08:59 [Tux] my $cmd    = "$prove-command -e \"$*EXECUTABLE\" -r t/";
08:59 [Tux] should that by default add -Ilib?
09:01 masak depends whose job one considers it to be for the .t files to find the lib/ modules, I guess.
09:03 [Tux] Panda's docs state:    prove -e perl6 -lrv t/
09:04 [Tux] so, *my* inuition says that the -r should be -lr in Tester.pm
09:07 masak |Tux|: ok, sounds about right.
09:07 masak m: sub bar ($a,$b,$c,:$mice) { say $mice }; sub foo (|args) { say args.perl; &bar.nextwith(|args); }; foo 1,2,3,:mice<blind>
09:07 camelia rakudo-moar 0b2092: OUTPUT«\(1, 2, 3, :mice("blind"))␤No such method 'nextwith' for invocant of type 'Sub'␤  in sub foo at /tmp/IiUBdJdKZI:1␤  in block <unit> at /tmp/IiUBdJdKZI:1␤␤»
09:08 masak oh, &bar.nextwith is NYI
09:08 lizmat joined #perl6
09:19 lolisa joined #perl6
09:22 davido_ joined #perl6
09:25 anaeem1 joined #perl6
09:26 lizmat good *, #perl6!
09:26 yoleaux 11 Apr 2015 13:38Z <masak> lizmat: I'm not sure I think the second positional to tmpdir/homedir pulls its own weight. why not just construct the desired path object and pass it in as the first argument?
09:28 jnthn o/ lizmat
09:28 lizmat .tell masak I see your point...
09:28 yoleaux lizmat: I'll pass your message to masak.
09:28 lizmat hi jnthn
09:28 jnthn Good NLPW?
09:28 lizmat almost recovered from NLPW
09:28 lizmat yes, it was a good one!
09:29 lizmat but very tiring...
09:29 jnthn Cool! I saw there was plenty of Perl 6 stuff :)
09:29 lizmat and we're almost off for another event
09:29 jnthn Which one this time?
09:29 lizmat (which involves a lot of whisky tasting :-)
09:29 jnthn Oh, that sounds like a good event :)
09:29 lizmat http://www.whisky-messe-rheinruhr.de
09:31 lizmat and then on Wed on to the QA Hackathon in Berlin
09:31 lizmat .tell TimToady thanks for fixing the print-nl problem in 2cb72b2141f2e37c0
09:31 yoleaux lizmat: I'll pass your message to TimToady.
09:32 lizmat .tell TimToady the alternative being always calling method say inside sub say, to completely hide that implementation detail, thoughts ?
09:32 yoleaux lizmat: I'll pass your message to TimToady.
09:33 * jnthn spectests a patch making things like "has Int $!a where * > 0" work
09:37 jnthn m: subset Fu of Mu where * eq 'foo'; my Fu $x = 'bar';
09:37 camelia rakudo-moar fc67ac: OUTPUT«Type check failed in binding $expected; expected 'Any' but got 'Fu'␤  in block <unit> at /tmp/gjBLaBSw9r:1␤␤»
09:38 cschwenz joined #perl6
09:39 RabidGravy hi, can the apparent behaviour of NativeCall whereby if "sub foo() is native('libfoo.so') { ... }" and foo() is actually in the loaded libraries you get that irrespective of whether "libfoo.so" exists or not be relied on?
09:40 [Tux] is this stupid default Panda's fault or generic to help:
09:40 [Tux] panda help
09:40 [Tux] Usage:
09:40 [Tux] /pro/3gl/CPAN/rakudobrew/moar-n​om/install/share/perl6/site/34 [--notests] [--nodeps] install [<modules> ...] -- Install the specified modules
09:41 jnthn RabidGravy: Uh, having trouble parsing that, but I think you're asking "can I rely on us not checking for the library to be present at the time the module is compiled"
09:41 jnthn In which case yes, we'll continue resolving them at runtime, especially as there are runtime ways to customize resolution.
09:43 dalek rakudo/nom: 6a73d80 | jnthn++ | src/core/Exception.pm:
09:43 dalek rakudo/nom: Add a Mu to a $expected to unbust error reporting.
09:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6a73d80f32
09:43 robinsmidsrod joined #perl6
09:44 RabidGravy yeah, I'm thinking of a case like crypt() which on Linux requires libcrypt.so generally and is in the libc on FreeBSD but  ... is native('libcrypt.so') seems to work on FreeBSD even though it isn't present
09:44 RabidGravy the libcrypt.so that is
09:45 dalek rakudo/nom: 9bce74b | jnthn++ | src/Perl6/ (3 files):
09:45 dalek rakudo/nom: Support post constraints on attributes/variables.
09:45 dalek rakudo/nom:
09:45 dalek rakudo/nom: Some work to be done on the precedence side of things with regards to
09:45 dalek rakudo/nom: assignment of a default, it seems. Also could improve error reporting.
09:45 dalek rakudo/nom: This gets the functionality of actually enforcing the check in place,
09:45 dalek rakudo/nom: however.
09:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9bce74b1f7
09:46 dalek roast: a7bb01d | jnthn++ | S32-exceptions/misc.t:
09:46 dalek roast: Test for correct exception with Mu-subset assign.
09:46 dalek roast: review: https://github.com/perl6/roast/commit/a7bb01d9c6
09:46 dalek roast: 21602c8 | jnthn++ | S12-class/attributes.t:
09:46 dalek roast: Un-fudge tests for RT #122109.
09:46 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=122109
09:46 dalek roast: review: https://github.com/perl6/roast/commit/21602c8f6a
09:46 robinsmidsrod joined #perl6
09:50 jnthn m: say [] ... []
09:50 camelia rakudo-moar fc67ac: OUTPUT«Cannot .shift from an empty Array␤  in sub SEQUENCE at src/gen/m-CORE.setting:21788␤  in sub infix:<...> at src/gen/m-CORE.setting:22099␤  in block <unit> at /tmp/b4o9mpfpi1:1␤␤»
09:51 jnthn .tell TimToady Since you were working on sequences recently, could you decide what https://rt.perl.org/Ticket/Display.html?id=114326 should do (and mebbe fix it? :))
09:51 yoleaux jnthn: I'll pass your message to TimToady.
09:52 robinsmidsrod joined #perl6
09:56 robinsmidsrod joined #perl6
10:01 robinsmidsrod joined #perl6
10:03 * moritz just generated http://www.p6c.org/stats/
10:04 robinsmidsrod joined #perl6
10:04 tadzik oh, nice!
10:05 dalek roast: 9812502 | jnthn++ | S04-declarations/my.t:
10:05 dalek roast: Test "my int ($a, $b)" enforces int constraint.
10:05 dalek roast: review: https://github.com/perl6/roast/commit/9812502ed3
10:05 dalek roast: cfd2fb2 | jnthn++ | S04-declarations/my.t:
10:05 dalek roast: Correct a test with bad eval scope assumptions.
10:05 dalek roast:
10:05 dalek roast: With the corrections, it passes happily on Rakudo.
10:05 dalek roast: review: https://github.com/perl6/roast/commit/cfd2fb25d0
10:07 lizmat afk until some time tomorrow&
10:10 jnthn Have fun o/
10:10 timotimo bye lizmat!
10:10 timotimo and hello everybody
10:11 jnthn timotimo/
10:14 anaeem___ joined #perl6
10:15 robinsmidsrod joined #perl6
10:16 robinsmidsrod joined #perl6
10:22 mr-foobar joined #perl6
10:23 robinsmidsrod joined #perl6
10:29 anaeem1_ joined #perl6
10:37 RabidGravy is "> sub f() { 42; }
10:37 RabidGravy ===SORRY!=== Error while compiling <unknown file>
10:37 RabidGravy Unexpected closing bracket
10:37 RabidGravy "
10:37 RabidGravy a known infelicity with the REPL?
10:41 spider-mario joined #perl6
10:47 robinsmidsrod joined #perl6
10:51 robinsmidsrod joined #perl6
10:56 moritz RabidGravy: not known to me
10:57 eli-se joined #perl6
10:58 Perl6_newbee joined #perl6
10:58 eli-se konnichiwa
11:00 jnthn oh hai o
11:02 dalek rakudo/nom: d402fb4 | jnthn++ | src/ (2 files):
11:02 dalek rakudo/nom: Handle "my (Int $x, Num $y)"/"my Int (Str $x)".
11:02 dalek rakudo/nom:
11:02 dalek rakudo/nom: The first declares variables of the appropriate types; the latter now
11:02 dalek rakudo/nom: gives an exception complaining about the conflict.
11:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d402fb42f9
11:02 masak m: sub bar ($a,$b,$c,:$mice) { say $mice }; sub foo (|args) { say args.perl; bar(|args); }; foo 1,2,3,:mice<blind>
11:02 yoleaux 09:28Z <lizmat> masak: I see your point...
11:02 camelia rakudo-moar 9bce74: OUTPUT«\(1, 2, 3, :mice("blind"))␤blind␤»
11:02 dalek roast: 138d463 | jnthn++ | S04-declarations/my.t:
11:02 dalek roast: Unfudge and extend tests for RT #102414.
11:02 dalek roast: review: https://github.com/perl6/roast/commit/138d4630f3
11:02 dalek roast: e32f905 | jnthn++ | S32-exceptions/misc.t:
11:02 dalek roast: Test for RT #73102.
11:02 dalek roast: review: https://github.com/perl6/roast/commit/e32f905fbc
11:02 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=102414
11:02 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=73102
11:08 Rounin joined #perl6
11:13 robinsmidsrod joined #perl6
11:14 robinsmidsrod joined #perl6
11:17 robinsmidsrod joined #perl6
11:21 dalek perl6.org: fbd7944 | moritz++ | source/compilers/index.html:
11:21 dalek perl6.org: Remove zavolaj link
11:21 dalek perl6.org:
11:21 dalek perl6.org: NativeCall.pm is now part of rakudo. Closes #6
11:21 dalek perl6.org: review: https://github.com/perl6/p​erl6.org/commit/fbd7944116
11:28 eli-se I should learn what rebasing is.
11:33 robinsmidsrod joined #perl6
11:33 masak eli-se: http://atlassian.wpengine.netdna-cdn.com​/wp-content/uploads/rebase-on-master.gif
11:34 eli-se Oh. I never want that.
11:34 masak that's the most casual dismissal of rebasing I've ever heard.
11:36 vendethiel masak: it's eli-se ;-)
11:36 eli-se Unless it creates a merge commit, then it's fine.
11:38 vendethiel the whole point of rebasing is not to create those.
11:39 eli-se Hence. :P
11:39 moritz you can still create a merge commit when merging the rebased branch
11:40 masak there are situations when a merge commit is just the right thing. and then there are those when it isn't.
11:41 masak Git is nice (in a very Perlish way) in that it gives you the choice.
11:41 masak saying "I never want that" is fine *if* you know something about the forces that apply to your workflow which the rest of us don't :)
11:46 robinsmidsrod joined #perl6
11:46 [Tux] masak, -lr would work if prove would add -Ilib to the argument passed with -e, but when -e is given, -l is ignored :( :(
11:46 masak aww
11:47 masak shoulda seen that one coming
11:47 * masak had no idea, but it kinda makes sense
11:47 [Tux] that means I have to somehow specify that -Ilib is added to the executable
11:48 moritz not to mention that rebase is one of the most powerful tools in the git ecosystem
11:48 yvan1 joined #perl6
11:49 moritz even if you don't need it in your regular workflow, there are occasional situations where it's an absolute live safer
11:51 masak moritz: yes. I've come to see rebase as not necessarily showing up as "part" of a workflow or other, but nevertheless something I do as a matter of course quite often.
11:52 rurban_ joined #perl6
11:54 [Tux] May I suggest https://gist.github.com/Tux/9d5855ae281348218123 ?
11:54 [Tux] that fixes panda install for me
12:03 colomon “Dependency PSGI is not present in the module ecosystem”.  Hurm
12:08 robinsmidsrod joined #perl6
12:12 PacoLinux joined #perl6
12:15 robinsmidsrod joined #perl6
12:18 aborazmeh joined #perl6
12:18 aborazmeh joined #perl6
12:34 [Tux] FWIW dd cannot be used in for:
12:35 [Tux] m: dd $_ for 1, "a"
12:35 camelia rakudo-moar d402fb: OUTPUT«No such method 'name' for invocant of type 'Int'␤  in sub dd at src/gen/m-CORE.setting:2493␤  in block <unit> at /tmp/dByTHuP9u6:1␤␤»
12:35 anaeem1 joined #perl6
12:36 masak m: dd 1
12:36 camelia rakudo-moar d402fb: OUTPUT«No such method 'name' for invocant of type 'Int'␤  in sub dd at src/gen/m-CORE.setting:2493␤  in block <unit> at /tmp/iYGQkUsMtC:1␤␤»
12:36 masak `for` is not the problem.
12:48 kaare_ joined #perl6
12:54 robinsmidsrod joined #perl6
12:59 timotimo 167/op/infix/∪.html
12:59 timotimo er
12:59 timotimo there's a 167 404 hits for that url
13:12 tinyblak_ joined #perl6
13:13 kaare_ joined #perl6
13:14 virtualsue joined #perl6
13:27 colomon joined #perl6
13:30 rmgk_ joined #perl6
13:32 koo5 joined #perl6
13:40 rurban_ joined #perl6
13:46 lucasb joined #perl6
13:50 zakharyas joined #perl6
13:59 lolisa joined #perl6
14:00 lucasb Hello channel
14:01 masak ahoy lucasb
14:01 lucasb o/ masak
14:05 lucasb m: my @a = $(1,2,3); say @a.elems
14:05 camelia rakudo-moar d402fb: OUTPUT«1␤»
14:05 lucasb m: say @($(1,2,3)).elems
14:05 camelia rakudo-moar d402fb: OUTPUT«3␤»
14:05 lucasb I was trying to understand what those $(...), @(...), etc. contextualizers do.
14:06 masak well, '$' tends to mean "item"
14:06 masak and '@' tends to mean "list"
14:06 masak to a first approximation :)
14:08 lucasb Should $(...) inside @(...) has some effect?
14:09 lucasb m: my @a = 1,2,3; .say for @a.elems, @a.perl
14:09 camelia rakudo-moar d402fb: OUTPUT«3␤[1, 2, 3]<>␤»
14:09 lucasb m: my @a = $(1,2,3); .say for @a.elems, @a.perl
14:09 camelia rakudo-moar d402fb: OUTPUT«1␤[1, 2, 3]<>␤»
14:09 lucasb ^^ I think this one is about the "<>" thing
14:09 lucasb The arrays have different number of elements, but they have the exact same ".perl" representation
14:10 masak yep.
14:10 masak don't ask me to explain it. I don't know what the "<>" thing means either :)
14:10 Alina-malina joined #perl6
14:11 lucasb It's a diamond :D
14:11 moritz it's a zen slice
14:11 psch decontiamond /o\
14:12 masak yeah, but it's a zen *hash* slice
14:12 masak "view this whole array as a hash", perhaps?
14:12 masak m: my %h = foo => 1, bar => 2, baz => 3; say %h<foo baz>
14:12 camelia rakudo-moar d402fb: OUTPUT«1 3␤»
14:13 psch m: say [1,2,3].perl; say nqp::decont([1,2,3]).perl
14:13 camelia rakudo-moar d402fb: OUTPUT«[1, 2, 3]␤[1, 2, 3]<>␤»
14:13 psch m: say [1,2,3]<>.perl
14:13 camelia rakudo-moar d402fb: OUTPUT«[1, 2, 3]<>␤»
14:13 moritz an array, a list and a hash zen slice walk into a bar
14:13 psch i think thinking of it as decont might not really be that useful :/
14:14 moritz "a container, please" they say to the drunken gymnast
14:15 masak I think I would be happier with the inexactitude that comes from confusing the container and decontained form, than I currently am with "<>"
14:15 masak let a [1, 2, 3] be a [1, 2, 3]
14:17 psch m: my @a = 1,2,3; my $b = @a; say @a.perl; say $b.perl
14:17 camelia rakudo-moar d402fb: OUTPUT«[1, 2, 3]<>␤[1, 2, 3]␤»
14:18 moritz I think that the fact that we can't stop discussing these things without coming to a proper conclusion means we're on the wrong track
14:18 masak +1
14:19 moritz and having done a bit of python the past few months, I'd think it'd be sane to give up autoflattening (and thus relevance to containers in the context of lists)
14:19 moritz and provide some short, powerful primivites to concatenate lists or flatten lists after the fact
14:20 masak it'd be a big step away from Perl 5's flattening semantics, no matter how well you'd pull that off
14:20 masak and, as TimToady said, much of this is to make `push @a, @b` come out right
14:21 moritz well, the perlish solution to that is to offer two different verbs
14:21 moritz "extend" to push with flattening, "push" to push without flattening, or something
14:22 eli-se joined #perl6
14:23 masak sometimes I feel that "let's make it two methods" is a close cousing of "let's make it a configurable setting in the Settings pane"
14:24 moritz masak: do you feel the same way about , vs + in python?
14:24 masak i.e. instead of providing a self-sufficient small set of primitives, we provide lots of semantically overlapping options, and punt all the decision-making to the community
14:25 masak moritz: I was recently reminded of the exact semantics of , and +
14:25 masak moritz: it's horrible. I used to know about it. then some merciful part of my brain made me forget.
14:25 masak moritz: am I right in thinking that that's Python 2 only?
14:25 arnsholt_ , and + in print, I presume?
14:25 masak right.
14:26 masak which is a bit special because print is a special form in Python 2.x
14:26 arnsholt_ Yeah
14:26 konsolebox joined #perl6
14:26 moritz masak: no, I meant  a = [1, 2, [3, 4]] vs a = [1, 2] + [3, 4]
14:27 arnsholt_ From a cursory Google, the default is to join with a space in Python 3, but you can override it with the sep named param
14:27 masak moritz: no, I don't feel the same about that situation.
14:27 moritz the , delimits elements, the + joins lists
14:27 moritz we should have that distinction in Perl 6 too
14:27 masak *nod*
14:28 moritz and if push and unshift would need that distinction too, then maybe they are the wrong primitives
14:29 moritz if we had a list joining operator @, then @a @= 1, 2, 3 would be flattening push, and @a R@= 1,2, 3 would be flattening unshift
14:30 moritz and ,= unflattening push, R,= unflattening unshift
14:30 moritz something along those lines
14:35 masak the R metaop doesn't feel quite apt there
14:36 masak I like that you're deliberately trying to think along new orbits, though
14:37 moritz well, I'm trying to think in operations that can compose with list joining vs. element delimiting
14:38 masak *nod*
14:41 moritz human language isn't very orthogonal, but it composes fantastically
14:42 lucasb m: say @($(1,2,3),$(4,5,6)).elems
14:42 camelia rakudo-moar d402fb: OUTPUT«2␤»
14:42 lucasb m: say @($(1,2,3)).elems
14:42 camelia rakudo-moar d402fb: OUTPUT«3␤»
14:42 lucasb ^^ Just for the record, this cleared my thoughts a little bit; I think this is about the 1-elem parcel being the elem itself.
14:47 beastd joined #perl6
14:50 masak we already decided that parameters/arguments don't flatten. maybe deciding the same for ordinary ambient lists is too much of a step away from what makes Perl Perl, but maybe we could somehow provide a mode where such flattening is turned off.
14:50 masak or an environment. or something.
14:54 molaf__ joined #perl6
15:05 dalek rakudo-star-daily: 4c705b5 | coke++ | log/ (2 files):
15:05 dalek rakudo-star-daily: today (automated commit)
15:05 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/4c705b55dd
15:12 dalek rakudo/nom: 9cc5aa5 | (Carl Masak)++ | docs/release_guide.pod:
15:12 dalek rakudo/nom: pick up April release
15:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9cc5aa5bb2
15:13 * jnthn wondres how soon that is :)
15:13 masak jnthn: 23rd.
15:14 jnthn Ah, good. A week and a half to go :)
15:15 n0vacane joined #perl6
15:15 n0vacane joined #perl6
15:16 anaeem1 joined #perl6
15:16 telex joined #perl6
15:20 anaeem1 joined #perl6
15:23 skids joined #perl6
15:24 [Coke] masak: will you be able to handle the new signing requirements?
15:26 masak [Coke]: oh, thanks for reminding me.
15:26 masak [Coke]: I don't know exactly what they are, but I think so. I have 1.5 weeks to find out :)
15:27 SHODAN joined #perl6
15:27 masak guessing this is documented in the release guide?
15:28 shinohai left #perl6
15:29 * vendethiel notices http://journeesperl.fr/ and paris.mongueurs.net are 503'ing
15:29 masak yes, seems it is. moritz++
15:40 dalek roast: c05784c | jnthn++ | S15-normalization/nfc- (10 files):
15:40 dalek roast: Add Unicode NFC conformance tests.
15:40 dalek roast:
15:40 dalek roast: Generated from NormalizationTests.txt in the Unicode database.
15:40 dalek roast: review: https://github.com/perl6/roast/commit/c05784cbef
16:04 moritz you really just need gnupg installed, and a key pair
16:05 masak $ gpg --version
16:05 masak gpg (GnuPG) 1.4.16
16:06 masak so that's step one apparently already taken care of ;)
16:08 osfameron vendethiel: and act in general, apparently Maddingue is aware and investigating
16:08 [Tux] $ prove -e perl6\ -Ilib  -r t/
16:08 [Tux] t/10_base.t ....... ok
16:08 [Tux] $ prove -e perl6 -r t/
16:08 [Tux] t/10_base.t ....... /pro/3gl/CPAN/rakudobrew/bin/perl6: line 2: 27311 Segmentation fault      /pro/3gl/CPAN/rakudobrew/m​oar-nom/install/bin/perl6 "$@"
16:08 [Tux] t/10_base.t ....... Dubious, test returned 139 (wstat 35584, 0x8b00)
16:09 [Tux] oops?
16:09 [Tux] $ perl6 t/10_base.t
16:09 masak [Tux]: not the expected behavior :)
16:10 [Tux] /pro/3gl/CPAN/rakudobrew/bin/perl6: line 2: 27341 Segmentation fault      /pro/3gl/CPAN/rakudobrew/m​oar-nom/install/bin/perl6 "$@"
16:10 [Tux] right
16:10 [Tux] what happens here is that I meanwhile have installed Text::CSV *also* using panda where I added the -Ilib call to prove
16:10 masak [Tux]: do you think you can golf it a bit?
16:11 eli-se joined #perl6
16:12 [Tux] perl6 -e'use v6; use Text::CSV; my $c = Text::CSV.new'
16:12 [Tux] /pro/3gl/CPAN/rakudobrew/bin/perl6: line 2: 27394 Segmentation fault      /pro/3gl/CPAN/rakudobrew/m​oar-nom/install/bin/perl6 "$@"
16:12 [Tux] is that golfing enough?
16:12 * masak tries to reproduce it locally
16:14 [Tux] perl6 -e'use v6; use Text::CSV; my $c = Text::CSV' passes
16:17 [Tux] https://gist.github.com/Tux/5e7c57acfc8168c1c680
16:21 osfameron why do you need 'use v6' if you're invoking with 'perl6' ?
16:22 masak right -- does it still fail without the 'use v6;' ?
16:22 JimmyZ better msg when somebody do `perl xxx.pl6`
16:23 JimmyZ 00:23 here ,good night
16:23 [Tux] same fail
16:31 aborazmeh joined #perl6
16:31 aborazmeh joined #perl6
16:31 masak [Tux]: I just downloaded Text::CSV and its two dependencies, manually.
16:32 masak [Tux]: neither t/10_base.t nor the one-liner segfaults here.
16:32 masak This is perl6 version 2015.03-231-g2cb72b2 built on MoarVM version 2015.03-80-g1d592be
16:32 [Tux] DAMN! OK, I'll have to dig deeper then
16:32 masak could it be that I didn't install via panda?
16:32 [Tux] This is perl6 version 2015.03-239-g9cc5aa5 built on MoarVM version 2015.03-96-g1055bb7
16:32 masak ok, upgrading.
16:33 [Tux] the installation with panda is what I doubt be the cause too
16:33 dalek roast: 011e18a | jnthn++ | S15-normalization/test-gen.p6:
16:33 dalek roast: Turn on generating NFKC tests.
16:33 dalek roast: review: https://github.com/perl6/roast/commit/011e18aac4
16:33 dalek roast: f177bf1 | jnthn++ | S15-normalization/nfkc- (10 files):
16:33 dalek roast: Add Unicode NFKC conformance tests.
16:33 dalek roast:
16:33 dalek roast: Generated from NormalizationTests.txt in the Unicode database.
16:33 dalek roast: review: https://github.com/perl6/roast/commit/f177bf175d
16:33 masak [Tux]: s/doubt/suspect/ ?
16:34 [Tux] probably
16:34 [Tux] still tired from NLPW :)
16:38 [Tux] afk: diner
16:41 vendethiel osfameron: oh, thanks for the heads up!
16:46 itz_ joined #perl6
16:50 TimToady nqp: my $x := "0x42"; say(+~ $x ~~ /^.*$/)
16:50 yoleaux 09:31Z <lizmat> TimToady: thanks for fixing the print-nl problem in 2cb72b2141f2e37c0
16:50 yoleaux 09:32Z <lizmat> TimToady: the alternative being always calling method say inside sub say, to completely hide that implementation detail, thoughts ?
16:50 yoleaux 09:51Z <jnthn> TimToady: Since you were working on sequences recently, could you decide what https://rt.perl.org/Ticket/Display.html?id=114326 should do (and mebbe fix it? :))
16:51 TimToady on nqp-m that makes 66, on nqp-j it makes 0 and blows S02-literals/numeric.t out of the water
16:51 camelia joined #perl6
16:52 TimToady r: say <0x42/0x43>
16:52 tinyblak joined #perl6
16:53 camelia nqp-parrot: OUTPUT«Can't exec "./rakudo-inst/bin/nqp-p": No such file or directory at lib/EvalbotExecuter.pm line 188.␤exec (./rakudo-inst/bin/nqp-p /tmp/tmpfile) failed: No such file or directory␤Server error occurred! Closing Link: static.231.60.47.78.clients.your-server.de (Q…»
16:53 camelia ..nqp-jvm: OUTPUT«(signal ABRT)*** Error in `java': double free or corruption (fasttop): 0x00007ffdbc007c90 ***␤*** Error in `java': double free or corruption (!prev): 0x00007ffdbc01a8c0 ***␤»
16:53 camelia ..nqp-moarvm: OUTPUT«66␤»
16:53 camelia rakudo-jvm 9cc5aa: OUTPUT«cannot connect to eval server: Connection refused␤»
16:53 camelia ..rakudo-moar 9cc5aa: OUTPUT«0.985075␤»
16:53 TimToady wow
16:54 anaeem1_ joined #perl6
16:55 RabidGravy is it possible to create a method in a class as a partial application of an existing method directly without e.g. using add_method at run-time?
16:56 TimToady well...you can always use add_method at compile time by putting it into a begin...
16:57 RabidGravy :) cheater
16:57 raiph joined #perl6
17:00 TimToady nqp-j: my $x := "0x42"; say(+~ $x ~~ /^.*$/)
17:00 camelia nqp-jvm: OUTPUT«(signal ABRT)*** Error in `java': double free or corruption (fasttop): 0x00007f550c013530 ***␤*** Error in `java': double free or corruption (fasttop): 0x00007f550c01bf60 ***␤*** Error in `java': double free or corruption (!prev): 0x00007f550c01a8c0 ***␤»
17:01 RabidGravy e.g. like the pseudo-code "class Foo { method foo(Str $f) { .... } method &foo_bar = &.foo.assuming("bar"); }"
17:03 TimToady usually we'd solve those things with multi methods, one with a (Str $f) and one with ('bar')
17:04 yqt joined #perl6
17:04 gfldex could i subclass in an eval block and make the new class stick outside the block?
17:04 TimToady that works in my local nqp-j, in the sense of producing 0 rather than an ABRT
17:04 vendethiel gfldex: not sure what you mean by "subclass an eval block"?
17:05 vendethiel gfldex: you want to create a class in some EVAL then subclass it?
17:05 gfldex the other way around
17:05 TimToady class names are 'our', so probably
17:05 vendethiel m: class A{method x{5}}; EVAL 'class B is A{};'; say B.new.x
17:05 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Hcg9dNEqn2␤Undeclared name:␤    B used at line 1␤␤»
17:06 vendethiel m: class A{method x{5}}; EVAL 'class B is A{};'; say ::{'B'}.new.x # something something?
17:06 camelia rakudo-moar 9cc5aa: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
17:06 TimToady ::()
17:06 vendethiel m: class A{method x{5}}; EVAL 'class B is A{};'; say ::('B').new.x # something something?
17:06 camelia rakudo-moar 9cc5aa: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
17:06 TimToady ::()m: class B {...}; class A {method x{5}}; EVAL 'class B is A {};'; say B.new.x
17:07 TimToady m: class B {...}; class A {method x{5}}; EVAL 'class B is A {};'; say B.new.x
17:07 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TuYHkX5m93␤The following packages were stubbed but not defined:␤    B␤at /tmp/TuYHkX5m93:1␤------> 3}}; EVAL 'class B is A {};'; say B.new.x7⏏5<EOL>␤    expecting any of:␤        postfix␤   …»
17:07 vendethiel TimToady: the other option would be to disable any kind of statical analysis if we see an EVAL?
17:08 TimToady m: class B {...}; class A {method x{5}}; EVAL 'class B is A {};'; say ::('B').new.x
17:08 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/6GGRmNuyk3␤The following packages were stubbed but not defined:␤    B␤at /tmp/6GGRmNuyk3:1␤------> 3AL 'class B is A {};'; say ::('B').new.x7⏏5<EOL>␤    expecting any of:␤        postfix␤   …»
17:08 TimToady m: class B {...}; class A {method x{5}}; EVAL 'class B is A {};'; say OUR::('B').new.x
17:08 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/3OdlyTFcLr␤The following packages were stubbed but not defined:␤    B␤at /tmp/3OdlyTFcLr:1␤------> 3'class B is A {};'; say OUR::('B').new.x7⏏5<EOL>␤    expecting any of:␤        postfix␤   …»
17:09 TimToady m: class A {method x{5}}; EVAL 'class B is A {};'; say OUR::('B').new.x
17:09 camelia rakudo-moar 9cc5aa: OUTPUT«5␤»
17:09 TimToady there you go
17:09 vendethiel TimToady: is that working as intended?
17:09 TimToady m: class A {method x{5}}; EVAL 'class B is A {};'; say OUR::B.new.x
17:09 camelia rakudo-moar 9cc5aa: OUTPUT«5␤»
17:10 TimToady package declarations default to our, so yes
17:10 vendethiel I mean the compile-time errors
17:10 TimToady m: class A {method x{5}}; EVAL 'package Foo; class B is A {};'; say OUR::B.new.x
17:10 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling EVAL_0␤This appears to be Perl 5 code. If you intended it to be Perl 6 code, please use a Perl 6 style package block like "package Foo { ... }", or "module Foo; ...".␤at EVAL_0:1␤------> 3package Foo;7⏏5 …»
17:10 TimToady m: class A {method x{5}}; EVAL 'module Foo; class B is A {};'; say OUR::B.new.x
17:10 camelia rakudo-moar 9cc5aa: OUTPUT«No such method 'x' for invocant of type 'Any'␤  in block <unit> at /tmp/oZq5tuNRCc:1␤␤»
17:10 masak [Tux]: still doesn't segfault on Rakudo 2015.03-239-g9cc5aa5
17:11 TimToady yeah, we have to be picker about lexicals if we want any hope of optimizing things
17:11 vendethiel ...without having to throw away all the optimizations we have if we see an "EVAL" (that's what JS runtimes do)
17:12 TimToady though Cannot find method 'has_compile_time_value' is one of those many errors that doesn't yet produce a decent location, let alone a backtrace
17:12 vendethiel (so, if you "need" an eval in JS, you usually have a wrapper, so that every other function can be optimized by the runtime)
17:13 TimToady I think we pessimize some things already with EVAL, but since we're pessimizing optimizations, and optimizations are not supposed to change semantics, pessimizations should also theoretically not change semantics
17:14 TimToady whether B is considered visible would be a semantic shift, which is probably a design smell
17:16 gfldex Is what I want to do insane, a rakudobug in EVAL, LTA on the error or should I do that with macros anyway?
17:17 TimToady you'll note that P6 does almost nothing with packages, other than use them for module or class names, since neither subs nor methods are stored in packages anymore; we kept them, however, for just such run-time chicanery
17:17 zakharyas joined #perl6
17:17 eli-se vendethiel: if you need eval in JS you're writing pointlessly dynamic code that should break.
17:18 TimToady at the expense of having to say OUR:: in spots where P5 would look things up in the package by default
17:18 vendethiel eli-se: I feel this is irrelevant to what I've said :)
17:18 vendethiel I definitely agree, tho.
17:18 moritz have you folks seen http://perl6.guide/ ?
17:19 vendethiel moritz: I think the guy who did that came some time ago to discuss it. it's on some github repo, afaik
17:19 TimToady "Rakudo has a JVM backend! That's cool, right?"
17:19 vendethiel ah, there's a link at the bottom, even
17:20 eli-se moritz: I have now.
17:22 RabidGravy going back to my previous Q regarding partial application, how would one get the code of a method at all?
17:22 RabidGravy code object that is
17:23 moritz m: say 42.^find_method('sqrt').^name
17:23 camelia rakudo-moar 9cc5aa: OUTPUT«Method␤»
17:23 moritz m: say 42.^find_method('sqrt')(4)
17:23 camelia rakudo-moar 9cc5aa: OUTPUT«2␤»
17:23 moritz RabidGravy: like this
17:25 RabidGravy ah ok no short incantation
17:26 TimToady nqp-m: say(+"0x42")
17:26 camelia nqp-moarvm: OUTPUT«66␤»
17:26 moritz m: say 42.can('sqrt')[0](4)
17:26 camelia rakudo-moar 9cc5aa: OUTPUT«2␤»
17:26 TimToady nqp-j: say(+"0x42")
17:26 camelia nqp-jvm: OUTPUT«(signal ABRT)*** Error in `java': double free or corruption (fasttop): 0x00007f22ec012f50 ***␤*** Error in `java': double free or corruption (!prev): 0x00007f22ec01a8c0 ***␤#␤# There is insufficient memory for the Java Runtime Environment to continue.␤# pthre…»
17:27 TimToady nqp-j: +"0x2"
17:27 camelia nqp-jvm: OUTPUT«(signal ABRT)#␤# There is insufficient memory for the Java Runtime Environment to continue.␤# pthread_getattr_np␤*** Error in `java': double free or corruption (out): 0x00007ffe0401a8c0 ***␤*** Error in `java': double free or corruption (!prev): 0x00007ffe040…»
17:27 RabidGravy moritz++ # cheers
17:27 TimToady shortest abort for nqp-j?
17:28 TimToady nqp-j: +"0x"
17:28 camelia nqp-jvm: OUTPUT«(signal ABRT)*** Error in `java': double free or corruption (fasttop): 0x00007f7654007c90 ***␤*** Error in `java': double free or corruption (fasttop): 0x00007f7654016880 ***␤*** Error in `java': double free or corruption (fasttop): 0x00007f765401bf60 ***␤#␤*…»
17:28 TimToady masakbot: ^^
17:29 moritz nqp-j: say(42)
17:29 camelia nqp-jvm: OUTPUT«(signal ABRT)»
17:29 moritz nqp-j: 1
17:29 camelia nqp-jvm: OUTPUT«(signal ABRT)*** Error in `java': double free or corruption (!prev): 0x00007f510001a8c0 ***␤*** Error in `java': double free or corruption (out): 0x00007f510001a8c0 ***␤»
17:29 moritz TimToady: I win :-)
17:30 TimToady nqp-j:
17:31 TimToady nqp-j:
17:33 moritz I wrote the regex that camelia uses for detecting input; I'd be surprised if it triggered for the empty program :-)
17:33 TimToady anyway, it's still not producing the same result for +"0x42"
17:33 TimToady the second one had a no-break space
17:34 TimToady so, is a zero-width space shorter than a 1? :)
17:35 dalek roast: 9b7d709 | nbrown++ | S02-literals/heredocs.t:
17:35 dalek roast: Add test for here doc constants RT #117853
17:35 dalek roast: review: https://github.com/perl6/roast/commit/9b7d709fd7
17:35 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=117853
17:36 * [Tux] clears out moar-nom completely and starts all over …
17:38 TimToady m: sub infix:<>($a,$b) { $a * $b }; say 2pi
17:38 camelia rakudo-moar 9cc5aa: OUTPUT«6.28318530717959␤»
17:38 egrep joined #perl6
17:42 RabidGravy ooh TimToady++ # that "trick" answers a question I had queued up
17:52 sjn m: sub infix:<>($a,$b) { $a * $b }; say 2e
17:52 camelia rakudo-moar 9cc5aa: OUTPUT«5.43656365691809␤»
17:54 sjn m: sub infix:<>($a,$b) { $a * $b }; say 2pi
17:54 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5===␤Null operator is not allowed␤at /tmp/BN8USoFDV6:1␤------> 3sub infix:<>7⏏5($a,$b) { $a * $b }; say 2pi␤Other potential difficulties:␤    Pair with <> really means an empty list, not null string; use :('') to represent the…»
17:54 sjn huh
18:01 RabidGravy odd
18:01 * vendethiel would feel better if infix:<> wasn't allowed :-)
18:07 masak m: say '<>'.chars
18:07 camelia rakudo-moar 9cc5aa: OUTPUT«3␤»
18:08 vendethiel .u <>
18:08 yoleaux U+003C LESS-THAN SIGN [Sm] (<)
18:08 yoleaux U+003E GREATER-THAN SIGN [Sm] (>)
18:08 yoleaux U+FEFF ZERO WIDTH NO-BREAK SPACE [Cf] (<control>)
18:08 * masak suspects TimToady has something up his <> ;)
18:08 vendethiel that much was obvious :-)
18:09 masak well, I guess putting zero width no-break spaces into your code is its own punishment
18:13 dalek roast: 2aa5258 | TimToady++ | S02-literals/numeric.t:
18:13 dalek roast: fudge for nqp-j bug; some complex tests approx
18:13 dalek roast: review: https://github.com/perl6/roast/commit/2aa5258b5a
18:19 [Tux] I'm missing something here:
18:19 [Tux] m: my@x=["a","b"],[1,2],[3,4],[5,6];@x.perl.say;my Str @y = shift @x;@x.perl.say;@y.perl.say;
18:19 camelia rakudo-moar 9cc5aa: OUTPUT«[["a", "b"], [1, 2], [3, 4], [5, 6]]<>␤[[1, 2], [3, 4], [5, 6]]<>␤Type check failed in assignment to '@y'; expected 'Str' but got 'Array'␤  in method REIFY at src/gen/m-CORE.setting:10985␤  in method reify at src/gen/m-CORE.setting:9519␤  in bloc…»
18:21 TimToady you didn't put a Str into @array, you put an Array
18:21 TimToady a := might work there
18:22 TimToady m: my@x=["a","b"],[1,2],[3,4],[5,6];@x.perl.say;my Str @y := shift @x;@x.perl.say;@y.perl.say;
18:22 camelia rakudo-moar 9cc5aa: OUTPUT«[["a", "b"], [1, 2], [3, 4], [5, 6]]<>␤Type check failed in binding; expected 'Positional[Str]' but got 'Array'␤  in any bind_error at src/vm/moar/Perl6/Ops.nqp:224␤  in block <unit> at /tmp/oC2Ojmp1uY:1␤␤»
18:22 TimToady or...not... :)
18:22 psch m: my Cool @x = [<a b>], [1, 2]; my Str @y = do -> Str() @z { @z }(@x)
18:22 camelia rakudo-moar 9cc5aa: ( no output )
18:22 psch m: my Cool @x = [<a b>], [1, 2]; my Str @y = do -> Str() @z { @z }(@x); @y.perl.say
18:22 camelia rakudo-moar 9cc5aa: OUTPUT«Array[Str].new("a b 1 2")␤»
18:22 psch eh, too cool
18:22 psch should've expected that, probably
18:23 KCL joined #perl6
18:23 * psch is still recouperating from the lawyer-and-judge-heavy ruby wedding anniversary he was at yesterday
18:24 [Tux] ok, what I want to do is convert @x to [{:a(1),:b(2)},[:a(3),:b(4)},{:a(5),:b(6)}]
18:24 * TimToady wonders what year the python anniversary is...
18:24 [Tux] first row of AoA is to be used as keys for all subsequent rows
18:26 TimToady m: my@x=["a","b"],[1,2],[3,4],[5,6];@x.perl.say;my @y = @x.shift.list; @x.perl.say; @y.perl.say;
18:26 camelia rakudo-moar 9cc5aa: OUTPUT«[["a", "b"], [1, 2], [3, 4], [5, 6]]<>␤[[1, 2], [3, 4], [5, 6]]<>␤["a", "b"]<>␤»
18:30 vendethiel m: role X[*::T]{} #:P
18:30 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/WFlMlTgX7A␤Malformed parameter␤at /tmp/WFlMlTgX7A:1␤------> 3role X[*7⏏5::T]{} #:P␤    expecting any of:␤        formal parameter␤»
18:30 vendethiel m: role X[Mu:U *@types]{} #:P
18:30 camelia rakudo-moar 9cc5aa: OUTPUT«5===SORRY!5=== Error while compiling /tmp/QxqFMEODyP␤Slurpy positionals with type constraints are not supported.␤at /tmp/QxqFMEODyP:1␤------> 3role X[Mu:U *@types7⏏5]{} #:P␤    expecting any of:␤        constraint␤»
18:32 vendethiel m: role X[*@types]{}; X[Int, Array] #:P
18:32 camelia rakudo-moar 9cc5aa: ( no output )
18:32 vendethiel amazing.
18:35 KCL_ joined #perl6
18:36 masak ...but maybe not call it `X`, because that's the Exceptions namespace ;)
18:36 TimToady m: my @x = ["a","b"],[1,2],[3,4],[5,6]; my @y = @x.shift.list; @x.map(-> @a { $%( @y Z=> @a ) }).perl.say
18:36 camelia rakudo-moar 9cc5aa: OUTPUT«({:a(1), :b(2)}, {:a(3), :b(4)}, {:a(5), :b(6)})␤»
18:37 TimToady |Tux|: ^^
18:37 [Tux] https://gist.github.com/Tux/dbb86caf733d09e199d9 <= what I almost committed
18:38 vendethiel masak: I remember using "LoL" as a namespace a few days ago :P
18:38 vendethiel I'm just checking if we'll be able to go c++-type crazy if we want to
18:40 masak :)
18:41 anaeem1_ joined #perl6
18:41 TimToady C++ is just another dialect of Perl 6 :P
18:41 TimToady though might need a few more hooks into GCland to get there...
18:42 [Tux] nice. back to two lines ...
18:42 [Tux] my @h = @in.shift.list or return [];
18:42 [Tux] return [ @in.map (-> @r { $%( @h Z=> @r ) }) ];
18:43 vendethiel TimToady: well, we can probably use a low-level array to have our own memory mapping
18:44 TimToady esp if its size is mmapped
18:45 vendethiel .oO( don't mind me, I'm just looking for the turing-complete compile-time part... )
18:49 TimToady m: m: say <Inf+NaNi>.WHAT
18:49 camelia rakudo-moar 9cc5aa: OUTPUT«(Str)␤»
18:49 TimToady masak: ^^^ it's not doing what you think
18:49 TimToady m: m: say <Inf+NaN\i>.WHAT
18:49 camelia rakudo-moar 9cc5aa: OUTPUT«(Complex)␤»
18:50 masak TimToady: oh, good :)
18:51 TimToady I suppose one could try to recognize "almost numbers" and warn, but that seems problematic
18:51 konsolebox joined #perl6
18:53 TimToady I admit it puzzled me long enough to go back and make sure there was no way to parse NaN without a >> after it...
18:53 TimToady then the "oh duh"
18:53 brrt joined #perl6
18:53 masak sorry to make you go "nani!?" :P
18:54 TimToady masak: I really, really appreciate multi-lingual puns :)
18:55 masak m: say <Inf+NaN\deska>
18:55 camelia rakudo-moar 9cc5aa: OUTPUT«Inf+NaN\deska␤»
18:55 masak :)
18:57 vendethiel masak++ # okay, didn't see that pun coming :P
18:57 spider-mario joined #perl6
18:57 Patterner joined #perl6
18:57 TimToady man shall not live by pan alone
19:00 * masak .oO( well, that panned out well... )
19:04 TimToady panda!
19:06 * masak .oO( пан, да... )
19:07 TimToady n'yet, it's still baking in the pan
19:12 masak yet another thing I shouldn't've putin the pan...
19:23 jnthn .oO( His neighbours wish he'd not putin the troops... )
19:23 * jnthn back from dinner
19:26 eli-se joined #perl6
19:29 dalek rakudo/uni: d36537c | jnthn++ | / (2 files):
19:29 dalek rakudo/uni: Start implementing Uni type and its subclasses.
19:29 dalek rakudo/uni: review: https://github.com/rakudo/rakudo/commit/d36537c264
19:29 dalek rakudo/uni: d9e6196 | jnthn++ | t/spectest.data:
19:29 dalek rakudo/uni: Add Unicode normalization tests as stress tests.
19:29 dalek rakudo/uni:
19:29 dalek rakudo/uni: Including them in a normal run would not only increase the time quite
19:29 dalek rakudo/uni: a bit, but also be a somewhat cheating way to surpass 100,000 spec
19:29 dalek rakudo/uni: tests.
19:29 dalek rakudo/uni: review: https://github.com/rakudo/rakudo/commit/d9e6196c76
19:31 jnthn masak: In https://gist.github.com/masak/e54c64fc2d51cdd1a0b7 try for ^23 -> int $i { ... }
19:31 raiph joined #perl6
19:32 masak jnthn: oh, good idea.
19:32 * masak does
19:34 raiph joined #perl6
19:40 vendethiel are all the branches on rakudo/rakudo here for a reason? (as in - they have unmerged commits)
19:40 lichtkind joined #perl6
19:44 vendethiel was newio merged to master?
19:44 jnthn Not yet
19:45 moritz tony-o: perl6-event-emitter's META.json is not valid json, according to http://ecosystem-api.p6c.org/errors.json
19:48 dalek roast: 6d547a3 | jnthn++ | S15-normalization/test-gen.p6:
19:48 dalek roast: Generate normalization sanity tests.
19:48 dalek roast:
19:48 dalek roast: This picks 500 out of the 18,500 or so for each normalization form. It
19:48 dalek roast: biases towards those that perform a transform rather than identity, as
19:48 dalek roast: those are generally the more interesting, but includes some identity
19:48 dalek roast: cases too.
19:48 dalek roast: review: https://github.com/perl6/roast/commit/6d547a3782
19:48 dalek roast: d5b767c | jnthn++ | S15-normalization/nf (4 files):
19:48 dalek roast: Add generated normalization sanity tests.
19:48 dalek roast: review: https://github.com/perl6/roast/commit/d5b767c2e8
19:49 dalek rakudo/uni: 6c1393b | jnthn++ | t/spectest.data:
19:49 dalek rakudo/uni: Run normalization sanity tests.
19:49 dalek rakudo/uni:
19:49 dalek rakudo/uni: On Moar only, but these are not stress tests.
19:49 dalek rakudo/uni: review: https://github.com/rakudo/rakudo/commit/6c1393bbe7
19:50 yqt joined #perl6
19:51 vendethiel jnthn: ah, thanks. I tried to compare branches on github, but it didn't work, that's why I asked
19:53 masak moritz: did you mean META.info ?
19:53 masak moritz: I saw nothing wrong with that file looking very closely at it with my eyes.
19:54 moritz masak: no, META6.json
19:54 masak oh.
19:54 moritz http://ecosystem-api.p6c.org/errors.json
19:55 masak https://raw.githubusercontent.com/tony-​o/perl6-event-emitter/master/META6.json
19:56 masak indeed, that one looks wrong.
19:56 masak two commas instead of colons inside the "provides" hash.
19:56 masak would've worked if it were Perl ;)
20:01 tony-o moritz: thanks for the heads up - should be fixed
20:04 dalek nqp: 9aee14f | jnthn++ | tools/build/MOAR_REVISION:
20:04 dalek nqp: Bump MOAR_REVISION for Unicode normalization bits.
20:04 dalek nqp: review: https://github.com/perl6/nqp/commit/9aee14f5ab
20:06 dalek rakudo/nom: 0b32573 | jnthn++ | tools/build/NQP_REVISION:
20:06 dalek rakudo/nom: Bump NQP_REVISION for MoarVM normalization bits.
20:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0b3257306d
20:06 dalek rakudo/nom: c291698 | jnthn++ | / (2 files):
20:06 dalek rakudo/nom: Start implementing Uni type and its subclasses.
20:06 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c291698bf3
20:06 dalek rakudo/nom: 568de38 | jnthn++ | t/spectest.data:
20:06 dalek rakudo/nom: Add Unicode normalization tests as stress tests.
20:06 dalek rakudo/nom:
20:06 dalek rakudo/nom: Including them in a normal run would not only increase the time quite
20:06 dalek rakudo/nom: a bit, but also be a somewhat cheating way to surpass 100,000 spec
20:07 dalek rakudo/nom: tests.
20:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/568de38cc8
20:07 dalek rakudo/nom: 8e96e4f | jnthn++ | t/spectest.data:
20:07 dalek rakudo/nom: Run normalization sanity tests.
20:07 dalek rakudo/nom:
20:07 dalek rakudo/nom: On Moar only, but these are not stress tests.
20:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8e96e4fa0b
20:11 lichtkind_ joined #perl6
20:12 RabidGravy is it likely that adding new "routine_declarator"s will be supporting at some time?
20:13 vendethiel RabidGravy: like "sub" and "method"?
20:13 jnthn Via the slang mechanism, surely.
20:14 RabidGravy yeah
20:14 jnthn Not sure there'll be as neat a way for them as a few of the other categories.
20:14 masak the problem isn't so much handling the parsing bit
20:14 RabidGravy yeah was just looking at the code
20:14 jnthn Well, not so much neat, but "obvious non-slang useful way to declare them"
20:14 masak it's handling the actions, threading new code into old code
20:15 masak I'm pretty sure we have a few lessons to learn there for Perl 6 and extensibility
20:15 jnthn For infix/postfix/prefix/circumfix, "call a subroutine" is a pretty useful non-slang default. For package_declarator, "custom meta-object" also is.
20:16 jnthn Both of those are open to slang-y extension when you want more, of course.
20:16 jnthn I'm not sure there's an obvious one for routine_declarator.
20:18 RabidGravy I was thinking "call a subroutine with name, ptotype and routine body" simply
20:18 RabidGravy in my stupid way of looking at things
20:20 masak maybe say "define", not "call" ;)
20:20 espadrine joined #perl6
20:43 cognominal joined #perl6
20:43 cognominal joined #perl6
20:46 cognominal the Perl6 shell is confused by :  grep { True }, < a b c >
20:46 cognominal Missing comma after block argument to grep
20:46 cognominal at <unknown file>:1
20:46 cognominal ------> say grep { True ⏏}, < a b c >
20:51 vendethiel o/, cognominal
20:53 cognominal \o, ven
20:55 vendethiel cognominal: maybe it's confusing it for a hash
20:55 vendethiel m: grep { True }, <a b c>
20:55 camelia rakudo-moar 8e96e4: ( no output )
20:55 vendethiel or mabye it's really just the shell
20:56 cognominal It is just the shell. I don't know the heuristics for shell parsing and how it differs from regualr parsing.
20:57 RabidGravy yeah I think it has gone a bit wrong the last couple of days
20:59 RabidGravy If you split it into lines it hits the skids after the ,
20:59 RabidGravy > grep {
20:59 RabidGravy * True
20:59 RabidGravy * },
20:59 RabidGravy ===SORRY!=== Error while compiling <unknown file>
20:59 RabidGravy Missing comma after block argument to grep
21:00 skids don't hit the skids!
21:00 RabidGravy ;-)
21:00 lucasb joined #perl6
21:02 cognominal .hug skids
21:02 RabidGravy I think it may be associated with the "not parsing subs properly"
21:02 anaeem1_ joined #perl6
21:03 anaeem1 joined #perl6
21:05 lucasb m: my ($x,@a,%h); say $x.VAR.WHAT, @a.VAR.WHAT, %h.VAR.WHAT
21:05 camelia rakudo-moar 8e96e4: OUTPUT«(Scalar)(Array)(Hash)␤»
21:05 lucasb m: say 42.VAR.WHAT, "foo".VAR.WHAT
21:05 camelia rakudo-moar 8e96e4: OUTPUT«(Int)(Str)␤»
21:05 lucasb ^^ Is .VAR really intended to work on literals?
21:05 RabidGravy in the REPL is it deciding somehow for itself when to parse a chunk of code, and maybe doing it a bit too soon?
21:06 jnthn lucasb: Yes, design docs say it returns identity on those.
21:07 lucasb jnthn: Oh, thanks.
21:08 ugexe considering all the recent work done regarding when to parse a line of code in the repl i would imagine that is what is happening
21:12 psch RabidGravy: yes, block parsing in the REPL is currently a bit broken, courtesy of yours truely
21:13 RabidGravy oh well, as long as we know ;-)
21:13 psch RabidGravy: i've been between "just revert it" and "you can figure it out in the next few days" for a bit over a week now, which strongly hints at the former being the right course of action...
21:14 psch i'm giving myself up to the 20th, because i'd rather not have a nigh-useless REPL in the next release :)
21:14 RabidGravy two pronged, stuff it in a branch, revert master and fix at your leisure ;-)
21:15 psch i had a branch, and it looked fine to my eyes, that's why i merged
21:15 psch i didn't look closely enough, apparently :)
21:16 psch i'm just glad it doesn't leak out of the REPL, 'cause that'd be horrible
21:17 psch but yes, i will keep at it in a branch if there's no timely solution
21:18 psch (and write more tests)
21:23 kst joined #perl6
21:25 koo6 joined #perl6
21:29 RabidGravy all good
21:37 * masak just re-read "Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire"
21:38 masak I don't think I properly appreciated when I last read that what a deeply CT-inspired paper that is.
21:39 masak I wonder if they considered calling it "Explicit structural induction considered harmful" -- it's certainly that in spirit.
21:41 masak 'night, #perl6
21:49 jnthn omgz I writed a blog post! https://6guts.wordpress.com/2015/04/12/t​his-week-unicode-normalization-many-rts/
21:49 jnthn 'night, masak :)
21:52 eli-se Perl 6 is like APL.
21:56 work_op joined #perl6
21:56 jnthn sleep; 'night #perl6
22:20 vendethiel joined #perl6
22:24 eli-se good bye jonathan
22:26 telex joined #perl6
22:37 RabidGravy boom!
22:37 RabidGravy nighty night!
22:41 raiph joined #perl6
23:05 vendethiel joined #perl6
23:13 * geekosaur just read masak's article abotu here docs and is confused about the two "special cases". in the `constant` case, at the time the senmicolon is read, you have already parsed some number of heredoc delimiters (q* :to) and know how many more to read; for `BEGIN` blocks, doesn't the heredoc logically belong *inside* the block?
23:13 geekosaur (yes, I saw that something was done for the `constant` one)
23:14 raiph joined #perl6
23:14 geekosaur for BEGIN blocks, I'd expect the heredoc outside the block to be nonexistent at compile time and probably q:to should throw an exception...
23:16 TimToady m: sub foo (**@lol) { say nqp::iscont(@lol[0]) }; foo((1,2,3),(4,5,6))
23:16 camelia rakudo-moar 8e96e4: OUTPUT«1␤»
23:16 TimToady m: sub foo (**@lol) { say nqp::iscont(@lol[0]) }; foo($(1,2,3),(4,5,6))
23:16 camelia rakudo-moar 8e96e4: OUTPUT«1␤»
23:16 TimToady this is unfortunate
23:17 TimToady probably the main reason we've had to rewrite a lot of **@lol into \args
23:17 TimToady and the underlying reason why ... is behaving inconsistently

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

Perl 6 | Reference Documentation | Rakudo