Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-06-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:00 shinobicl thanks lue
00:00 shinobicl that's close, but i should have 148.41315910258 for x = 5
00:01 shinobicl thanks all. i'll keep playing with this :)
00:01 lue r: sub postfix:<!> { [*] 1..$^n }; my $x = 5; my @r = (0..$x).map: {($x ** $^a)/($^a)!}; say [+] @r;
00:01 camelia rakudo b2072f: OUTPUT«91.416667␤»
00:01 [Coke] nqp: use NQPHLL; HLL::Actions.string_to_int("234");
00:01 camelia nqp: OUTPUT«too few positional arguments: 2 passed, 3 (or more) expected␤current instr.: 'string_to_int' pc 20387 (src/stage2/gen/NQPHLL.pir:7584) (src/stage2/gen/NQPHLL.nqp:636)␤»
00:02 [Coke] nqp: use NQPHLL; HLL::Actions.string_to_int("234",4);
00:02 camelia nqp: OUTPUT«Method 'CURSOR' not found for invocant of class 'String'␤current instr.: 'string_to_int' pc 20443 (src/stage2/gen/NQPHLL.pir:7605) (src/stage2/gen/NQPHLL.nqp:639)␤»
00:02 shinobicl r: sub postfix:<!> { [*] 1..$^n }; my $x = 5; my @r = (0..$x).map: {($x ** $^a)/($^a)!}; say @r.perl;
00:02 camelia rakudo b2072f: OUTPUT«Array.new(1.0, 5.0, 12.5, <125/6>, <625/24>, <625/24>)␤»
00:02 diakopter nqp-jvm: use NQPHLL; HLL::Actions.string_to_int("234",4);
00:02 camelia nqp-jvm: OUTPUT«NQPHLL.class (No such file or directory)␤  in <anon>␤  in load_module␤  in load_module␤  in statement_control:sym<use>␤  in !reduce␤  in !cursor_pass␤  in statement_control:sym<use>␤  in !protoregex␤  in statement_control␤  in statement␤  in statementlist␤  in comp_unit␤…
00:02 shinobicl the who las elements are the same :S
00:03 shinobicl last*
00:03 shinobicl two*
00:03 shinobicl hehe
00:06 lue shinobicl: apparently, they're supposed to be the same :)
00:08 * lue &
00:11 shinobicl r: sub postfix:<!> { [*] 1..$^n }; my $x = 5; my @r = (0..100).map({($x ** $^a)/$^a!}); say [+] @r;
00:11 camelia rakudo b2072f: OUTPUT«148.413159102577␤»
00:11 shinobicl :D
00:12 gdey joined #perl6
00:14 shinobicl those variables, $^n and $^a, how are they named? which document can i read to understand them?
00:15 timotimo_ http://perlcabal.org/syn/S06​.html#Placeholder_variables
00:17 shinobicl thanks timotimo_
00:17 timotimo_ you're welcome :)
00:20 jerkbot1 joined #perl6
00:24 btyler joined #perl6
00:26 [Coke] oh fudge. this nqp2 branch doesn't have any of the PAST -> QAST work.
00:27 jerkbot1 joined #perl6
00:30 [Coke] what is the replacement for             &sub := PAST::Compiler.compile($parse.ast);
00:30 [Coke] ?
00:31 [Coke] ... and nqp-jvm doesn't even have QAST, does it?
00:32 sorear it has QAST
00:32 FROGGS nqp: nqp::getcomp('nqp').eval('say("hello")')
00:32 camelia nqp: OUTPUT«hello␤»
00:32 jerkbot1 joined #perl6
00:32 [Coke] ok, good.
00:33 FROGGS maybe nqp: nqp::getcomp('nqp').compile($parse.ast) # ? dunno
00:33 FROGGS nqp: nqp::getcomp('nqp').compile()
00:33 camelia nqp: OUTPUT«too few positional arguments: 1 passed, 2 (or more) expected␤current instr.: 'compile' pc 32505 (src/stage2/gen/NQPHLL.pir:12829) (src/stage2/gen/NQPHLL.nqp:1338)␤»
00:33 [Coke] It's the result of a .parse that I then need to comile.
00:34 [Coke] the language wasn't nqp, either.
00:34 [Coke] FROGGS: https://github.com/partcl/partcl-nqp/​blob/nqp2/src/Partcl/commands/expr.pm
00:38 FROGGS [Coke]: have a look at that... https://github.com/perl6/nqp/blo​b/master/src/NQP/Compiler.nqp#L5
00:38 FROGGS gnight
00:38 timotimo_ compile($foo, :target("ast"));?
00:39 timotimo_ maybe past instead
00:39 [Coke] FROGGS: over my head at the moment.
00:42 fgomez joined #perl6
00:46 sorear [Coke]: have a look at t/qast/01-qast.t
00:51 jeff_s1 joined #perl6
00:54 shinobicl left #perl6
01:00 [Coke] sorear: just have to figure out what to do if it's not NQP.
01:01 sorear [Coke]: it sounds like you're trying to turn QAST structures into executable subs, which is what that nqp::getcomp('whatever').compile($qast, :from('ast')) does
01:02 sorear I think that if you aren't using language-specific custom ops, then any 'whatever' will work equally well as long as it names a language
01:03 stevan_ joined #perl6
01:04 [Coke] whee, more failures.
01:08 [Coke] so, if I change it to &sub := nqp::getcomp('Partcl').compile($parse.ast, :from("ast")); that now dies with an eventual:
01:08 [Coke] Error while compiling block : Can only use get_how on a SixModelObject
01:08 [Coke] current instr.: '' pc 48612 (src/stage2/QAST.pir:17766) (src/stage2/QAST.nqp:2981)
01:09 [Coke] https://gist.github.com/coke/5757381
01:10 sorear are you passing in QAST or PAST?
01:11 [Coke] https://gist.github.com/coke/5757381 again
01:12 benabik joined #perl6
01:12 arnsholt joined #perl6
01:14 * sorear notices PAST::foo in Partcl::Actions
01:14 * sorear might try to get partcl-nqp running on JNQP later this month
01:14 [Coke] sorear: if it ever ran on NQP, you'd have an easier time. ;)
01:15 * [Coke] goes on a PAST hunt.
01:20 [Coke] sorear: only PAST in partcl::actions is in a comment.
01:22 sorear I must be looking at the wrong branch
01:22 [Coke] nqp2
01:22 [Coke] (thanks for looking, btw!)
01:25 FROGGS joined #perl6
01:26 abnorman joined #perl6
01:32 RedditAnalytics just a little poll to break the monotony .. do any of you like listening to music while you program?
01:36 labster sometimes yes, sometimes no on music
01:39 sorear not me, but I'm weird like that
01:41 benabik Another poll: Is github.com down?
01:42 benabik I often like to listen to music, but regularly don't.
01:53 skids joined #perl6
02:04 SamuraiJack joined #perl6
02:32 census joined #perl6
02:32 arnsholt joined #perl6
02:34 census_ joined #perl6
02:43 arnsholt joined #perl6
02:53 arnsholt joined #perl6
02:54 colomon RedditAnalytics: I usually listen to music while I program if I am able to.  (No one else to disturb, etc.)
02:54 RedditAnalytics I guess I'm a weird case since I really have a hard time programming unless I'm listening to music
02:56 census redditanalytics: i'm the same way but with the tv
02:56 RedditAnalytics what's a tv?
02:57 RedditAnalytics ;)
02:57 colomon RedditAnalytics: http://www.last.fm/user/colomon
02:57 colomon afk # bedtime
02:58 RedditAnalytics this is what you program to?  awesome
03:02 * geekosaur has been listening to http://www.di.fm/trance all day... but to the extent that he's been coding, it's been in puppet
03:12 mtk joined #perl6
03:18 sorear so in the CLR if you have a method which is declared virtual, the verifier forbids nonvirtual calls to that method except in the very specific case of an overriding method doing super.foo()
03:18 sorear apparently the JVM has no such restriction and untrusted user code can make arbitrary nonvirtual calls
03:18 sorear so you can't rely on overriding for security
03:24 arnsholt joined #perl6
03:25 Rix joined #perl6
03:48 diakopter ooo, 23andme found a likely 2nd cousin
03:49 Rix joined #perl6
03:49 eternaleye lue: re awesomebar, you could define a bookmark with a substitution pattern and a 'syn' keyword so you could type 'syn 16'
03:49 yoleaux 10 Jun 2013 07:05Z <FROGGS> eternaleye: Future[Int] is a type, for me a proper p6ification would be a trait
03:52 lue eternaleye: I'll look into that
03:52 eternaleye .tell FROGGS Mmm, a trait-based version of futures might be interesting with a syntax more like: my Int $answer is async( calculate_from( <life universe everything> ) )
03:52 yoleaux eternaleye: I'll pass your message to FROGGS.
03:53 eternaleye .tell Froggs (thunking the inside of the async trait_mod, of course, which would make it the kind of thing hygenic macros could implement)
03:53 yoleaux eternaleye: I'll pass your message to Froggs.
04:00 preflex_ joined #perl6
04:01 lue looks cool, except I'd have to type "S 16" :/ (I'm not so much concerned with creating a shortcut as I am not being punished for thinking <Enter> after typing S16 would give me the first suggested completion, usually the right spec)
04:14 sorear .ask jnthn How is subcall_noa's direct call optimization going to interact with Perl 6 function wrapping?
04:14 yoleaux sorear: I'll pass your message to jnthn.
04:28 wbill joined #perl6
04:32 Patterner joined #perl6
04:41 atroxaper joined #perl6
04:47 arnsholt joined #perl6
05:04 zby_home_ joined #perl6
05:08 atroxaper left #perl6
05:10 abnorman joined #perl6
05:16 sorear nr: my @l; { my $*X = 1; @l := gather say $*X; };
05:16 camelia rakudo b2072f: OUTPUT«Dynamic variable $*X not found␤current instr.: 'throw' pc 347557 (src/gen/CORE.setting.pir:151689) (src/gen/CORE.setting:8887)␤called from Sub 'gist' pc 379580 (src/gen/CORE.setting.pir:164088) (src/gen/CORE.setting:10161)␤called from Sub 'gist' pc 165484 (src/gen/…
05:16 camelia ..niecza v24-75-g480a062:  ( no output )
05:17 sorear nr: my @l; if { my $*X = 1; @l := gather say $*X; }
05:17 camelia niecza v24-75-g480a062: OUTPUT«[31m===[0mSORRY![31m===[0m��Missing block at /tmp/fRb6tIhrWG line 1 (EOF):�------> [32mif { my $*X = 1; @l := gather say $*X; }[33m�[31m<EOL>[0m��Parse failed��»
05:17 camelia ..rakudo b2072f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Missing blockâ�¤at /tmp/LZDEkRCios:1â�¤------> [32mif { my $*X = 1; @l := gather say $*X; }[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        postfixâ�¤        statement endâ�¤        statement modifierâ�¤        statement modifier loopâ�¤      â€¦
05:17 sorear r: my @l; if 1 { my $*X = 1; @l := gather say $*X; }
05:17 camelia rakudo b2072f: OUTPUT«Dynamic variable $*X not found␤current instr.: 'throw' pc 347557 (src/gen/CORE.setting.pir:151689) (src/gen/CORE.setting:8887)␤called from Sub 'gist' pc 379580 (src/gen/CORE.setting.pir:164088) (src/gen/CORE.setting:10161)␤called from Sub 'gist' pc 165484 (src/gen/…
05:17 sorear r: my @l; if 1 { my $*X = 1; @l := gather say $*X; 2 }
05:17 camelia rakudo b2072f:  ( no output )
05:18 sorear nr: my @l; { my $*X = 1; @l := gather say $*X;'notsink' }; { my $*X = 2; +@l }
05:18 camelia rakudo b2072f: OUTPUT«2␤»
05:18 camelia ..niecza v24-75-g480a062: OUTPUT«1␤»
05:19 sorear nr: my @l; { my $*X = 1; @l := gather { take $_ for 1..10; say $*X;'notsink' }; $l[5] }; { my $*X = 2; +@l }
05:19 camelia rakudo b2072f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Variable '$l' is not declared. Did you mean '@l'?â�¤at /tmp/Pmtgwhm10a:1â�¤------> [32m$_ for 1..10; say $*X;'notsink' }; $l[5][33mâ��[31m }; { my $*X = 2; +@l }[0mâ�¤    expecting any of:â�¤        postfixâ�¤        statement endâ�¤        sta…
05:19 camelia ..niecza v24-75-g480a062: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Variable $l is not predeclared (did you mean @l?) at /tmp/59JnDRVPlb line 1:â�¤------> [32mtake $_ for 1..10; say $*X;'notsink' }; [33mâ��[31m$l[5] }; { my $*X = 2; +@l }[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6e…
05:19 sorear nr: my @l; { my $*X = 1; @l := gather { take $_ for 1..10; say $*X;'notsink' }; @l[5] }; { my $*X = 2; +@l }
05:19 camelia rakudo b2072f: OUTPUT«2␤»
05:19 camelia ..niecza v24-75-g480a062: OUTPUT«1␤»
05:20 thou joined #perl6
05:28 crab2313 joined #perl6
05:39 Tsuki-san joined #perl6
05:39 Tsuki-san Hsjfkls
05:40 sorear ?
05:45 dmol1 joined #perl6
06:05 skids joined #perl6
06:07 shachaf joined #perl6
06:11 PacoAir joined #perl6
06:15 SamuraiJack joined #perl6
06:23 moritz looks like cat-over-keyboard to me :-)
06:35 xinming_ joined #perl6
06:45 domidumont joined #perl6
06:57 FROGGS[mobile] joined #perl6
06:57 SmokeMachine joined #perl6
06:58 FROGGS[mobile] o/
06:59 sorear o/ FROGGS[mobile]
07:03 labster \o
07:09 labster S16 says that each thread gets its own $*CWD, and that subprocesses use that as their cwd, and that all paths are absolute.
07:09 geekosaur joined #perl6
07:09 labster and I think all perl programmers get a pony, too
07:13 * moritz wants a unicorn, not a pony!
07:19 lustlife joined #perl6
07:19 snearch joined #perl6
07:20 labster I'm more of a pegasus guy myself.
07:21 domidumont joined #perl6
07:23 sqirrel joined #perl6
07:25 kaleem joined #perl6
07:37 fhelmberger joined #perl6
07:46 FROGGS joined #perl6
08:09 shachaf .u 7F01
08:09 yoleaux No characters found
08:16 FROGGS[mobile] joined #perl6
08:21 amoe joined #perl6
08:27 sorear woah, I seem to have missed a huge nqp-jvm commit
08:28 moritz a bootstrap update?
08:29 moritz or "Kill initialize REPR function for JVM 6model."?
08:30 sorear several commits, including the bootstrap update
08:31 sorear resulting in a small wall of text from git pull
08:42 dalek nqp: 9514dbe | sorear++ | src/vm/jvm/ (3 files):
08:42 dalek nqp: s/push_self/push_cur_meth/g
08:42 dalek nqp: review: https://github.com/perl6/nqp/commit/9514dbe84f
08:46 dakkar joined #perl6
08:49 jnthn morning, #perl6
08:49 yoleaux 04:14Z <sorear> jnthn: How is subcall_noa's direct call optimization going to interact with Perl 6 function wrapping?
08:50 sorear mroning jnthn
08:51 jnthn sorear: Badly, until I decide how to propagate whether "use soft;" is in force downwards :) Though it need not eliminate it even there; we could have .wrap invalidate it.
08:52 jnthn (There's stuff in invokedynamic for invalidating optimistic guesses.)
08:54 sorear I did notice we're using MutableCallSite everywhere, even in wval_noa
08:56 sorear jnthn: see http://irclog.perlgeek.de/​perl6/2013-06-12#i_7186905
08:57 sorear jnthn: seems parrot doesn't do the "two callers" thing, and so rakudo/parrot gets a different result from niecza
08:58 jnthn sorear: But who is write by spec? Niecza?
08:59 jnthn wtf
08:59 jnthn who is *right* by spec
08:59 jnthn ...
08:59 * jnthn gets moar coffee
08:59 sorear i don't think it's specced as such, but STD.pm6 depends on the niecza behavior
09:00 sorear otherwise backtracking into the scope of a contextual doesn't work so well
09:04 JimmyZ joined #perl6
09:05 sorear jnthn: Does it make any sense to move a frame from one ThreadContext to another?
09:05 daxim joined #perl6
09:05 sorear I'm thinking .tc should be reset when we restore a frame
09:06 jnthn sorear: I guess there's no reason why you can't invokecontinuation on a different thread.
09:09 sorear although we do sort of make the assumption that the same callframe will not be active simultaneously on two threads.
09:09 jnthn Yes... :)
09:09 jnthn Hmm. :)
09:10 sorear we may need a way to shallow-clone continuations, so that NQRacket can duplicate frames when doing funky stuff like that
09:11 jnthn STD depending on a behavior is fairly spec-indicative.
09:12 jnthn Mebbe one to confirm with TimToady++.
09:16 sorear jnthn: I was SHOCKED to see that auto-close is not only not dead, it's infected JNQP
09:16 jnthn sorear: Well, that's a lot of why the closure discussion took place with Pm and I at the hackathon.
09:17 jnthn sorear: 'cus I was very bothered I "needed" to do that. :/
09:17 sorear Why did you need it?
09:17 sorear and how much memory are we leaking by keeping priorInvocation when we don't?
09:17 * jnthn tries to remember
09:18 jnthn Right, priorInvocation is the thing I want rid of.
09:18 jnthn I *think* it showed up somewhere to do with roles.
09:18 sorear I find the behavior of "if you use a big local in a function once, the GC can't reclaim the memory until the function is called again" rather disturbing/surprising
09:19 jnthn Right.
09:20 sorear If I stick a CallFrame with null codeRef into the stack, will stuff break?
09:20 jnthn If anything does, nothing that can't be fixed with a nullness check
09:21 sorear I guess the question is more *should that be supported*
09:21 jnthn I think there may already be a case where that happens.
09:23 sorear because when invoking continuations we need somewhere for the return value to land
09:23 jnthn Would the need go away if somebody magically refactored the return value handling to not use the tc.result_* things? ;)
09:24 sorear ehehehe
09:24 * jnthn has been planning to return them in the Normal Way at some point :)
09:25 sorear need would be reduced
09:25 sorear lexotic take requires the ability for take to scoop up an unrelated gather as if it were just another frame
09:25 jnthn Not sure when I'll get to it. My tuits for the next week will be reduced.
09:26 arnsholt joined #perl6
09:26 sorear and it would be simpler if we could say that all frames being scooped have an associated CallFrame
09:26 sorear o/ arnsholt
09:26 sorear oops
09:26 sorear which requires nqp::continuationreset to fake up a CallFrame for itself
09:27 sorear looks like there's code all over that does things like tc.curFrame.codeRef.staticInfo​.compUnit.hllConfig.intBoxType
09:27 sorear so not only do I need a codeRef, but it needs to be pinned to a specific HLL as well. boo.
09:29 jnthn I did at one point ponder attaching current HLL to curFrame to avoid all of that.
09:29 jnthn (the pointer chasing)
09:30 jnthn Just set it at frame creation.
09:30 sorear create frame, create coderef, create compunit?
09:30 sorear maybe we could make a FAKE frame in KnowHOWMethods
09:31 sorear s/frame/coderef/
09:31 jnthn That could also work. If there's no code executed under the frame frame then it'd not hit the hllConfig usage, I guess...
09:31 jnthn Sorry, executed under was confusingish. Executed while that frame is tc.curFrame.
09:32 sorear it would be curFrame, for just long enough to call invokeDirect...
09:36 diakopter sorear: we make a temp/"fake"/intermediary frame for several situations in moar
09:37 arnsholt joined #perl6
09:39 sorear but I'm talking about JVM
09:39 diakopter sorear: I know :P
09:40 * jnthn spends some cycles on $dayjob
09:43 diakopter sorear: I was just letting you know so you were aware it's a problem/solution jnthn's thought a lot about
09:45 dakkar joined #perl6
09:47 sorear I see
09:50 huf joined #perl6
09:50 jnthn .oO( jnthn thinks? :D )
09:56 clkao win 21
09:57 arnsholt joined #perl6
10:00 moritz .oO( 21 is only half the answer! )
10:01 * sorear wonders how different .bindTo is from MethodHandles.insertArguments
10:08 dylanwh joined #perl6
10:11 jnthn sorear: .bindTo can only bind a single, object argument.
10:11 jnthn sorear: that is, you can't bindTo an int parameter
10:11 jnthn sorear: insertArguments doesn't ahve that restriction and can insert as many arguments as needed, at whatever position.
10:12 jnthn (whereas bindTo always means "the first one")
10:12 jnthn Presumably bindTo is cheaper when it can be used, 'cus it's simpler.
10:22 domidumont joined #perl6
10:24 cognominal joined #perl6
10:30 chayin joined #perl6
10:36 sorear jnthn: Is it to be expected that occasionally I have to rm -r src/stage* after changes?
10:37 jnthn sorear: No, that's never happened to me.
10:37 jnthn sorear: And shouldn't be happening to you either.
10:37 jnthn sorear: I guess my first question is: are you doing parallel make? If so, may be a missing dependency...
10:40 sorear ok, this is weird
10:40 sorear what could I be doing that's causing a NoSuchMethodError? :/
10:41 moritz calling a method that doesn't exist?
10:42 lizmat an error message calling a method that doesn't exist?
10:50 masak good afty, #perl6
10:51 sorear o/ masak
10:51 masak sorear: maybe the others have already filled the deadpan-snarky quota, but it is my belief that what you're doing is *calling* a non-existent method.
10:52 masak if it existed, you wouldn't get an error. and if you weren't calling it, you also wouldn't get an error.
10:52 jnthn sorear: You can also get it if the arg types are wrong, I think.
10:52 jnthn afty, masak
10:55 sorear question is where are we missing the dependency
10:55 jnthn Not sure. I tried to be careful to get 'em all right...
10:58 colomon http://71.10.146.50:3001/report
10:58 colomon labster: ^^
10:59 lizmat good *, #perl6!
11:06 arlinius joined #perl6
11:06 lizmat while looking at the hash zen slice, I found that it returns the hash object itself, rather than its values like an array object itself would do
11:06 lizmat r: my %h=a=>1,b=>2; say %h{}; say %h{*}
11:06 camelia rakudo b2072f: OUTPUT«("a" => 1, "b" => 2).hash␤1 2␤»
11:07 lizmat it feels to me that there should be no difference between %h{} and %h{*}
11:07 masak no, I think the above is right.
11:08 lizmat and I feel I'm being backed up by S03:5161: The empty C<[]> and C<.[]> postfix operators are interpreted as a
11:08 lizmat zero-dimensional subscript returning the entire array, not as a one-dimensional
11:08 lizmat null slice returning no elements.  Likewise for C<{}> and C<.{}> on hashes,
11:08 lizmat as well as the C<< <> >>, C<< .<> >>, C<«»>, and C<.«»> constant and
11:08 lizmat interpolating slice subscripting forms.
11:08 masak think of the use case "lol this is an interpolating string and I just want the whole hash: %h{} there we go"
11:08 lizmat I ran a spectest with %h{} returning %h.values
11:09 lizmat and the only tests that fail, are the ones that test specifically for the result of %h{}
11:09 lizmat masak: in that case, the spec needs to change
11:10 Stygia joined #perl6
11:10 dalek nqp: a7d9742 | sorear++ | src/vm/jvm/ (4 files):
11:10 dalek nqp: Small rethink of method handles for reentry
11:10 dalek nqp:
11:10 dalek nqp: Turns out we can't just use invokeExact on the original method because the
11:10 dalek nqp: type is different for every compilation unit, duh.  So let's pre-curry and
11:10 dalek nqp: cache an appropriate form of the method on the StaticCodeInfo.
11:10 dalek nqp: review: https://github.com/perl6/nqp/commit/a7d9742551
11:10 sorear make clean; make test worked
11:10 jnthn yay
11:10 jnthn sorear++
11:11 masak lizmat: I haven't thought about %h{} in this setting before. only @a[]
11:11 masak lizmat: nor can I remind myself of a use case where I've needed it.
11:12 lizmat also: the zen slice in the array case could be special in the case of shaped arrays (NYI, but who knows, maybe soon ;-)
11:13 jnthn sorear: Wait, it's the CodeRef.mh already pre-curried with the compilation unit?
11:13 jnthn *isn't
11:14 jnthn sorear: https://github.com/perl6/nqp/blob/ma​ster/src/vm/jvm/runtime/org/perl6/nq​p/runtime/CompilationUnit.java#L84
11:14 masak (also, is this one of the uses of "curry" that should really be "prime"?) :)
11:15 sorear jnthn: yeah, it winds up primed twice
11:15 sorear that's not a problem is it?
11:16 jnthn sorear: I'm just not quite seeing the difference between mh and mhResume
11:16 jnthn No, you can prime stuff twice, I do that elsewhere.
11:16 lizmat I will make a spec issue for the meaning of %h{}, so that TimToady c.s. can decide on it
11:17 masak lizmat++
11:17 jnthn ooh
11:17 jnthn I see
11:17 jnthn sorear: OK, I read the code properly now. No worries. :)
11:18 rindolf joined #perl6
11:20 sorear sleep&
11:22 FROGGS gnight sorear
11:22 yoleaux 03:52Z <eternaleye> FROGGS: Mmm, a trait-based version of futures might be interesting with a syntax more like: my Int $answer is async( calculate_from( <life universe everything> ) )
11:22 yoleaux 03:53Z <eternaleye> FROGGS: (thunking the inside of the async trait_mod, of course, which would make it the kind of thing hygenic macros could implement)
11:24 FROGGS .tell eternaleye I was thinking more like: my Int $answer is async = calculate_from( <life universe everything> )  or  my Int $answer = async calculate_from( <life universe everything> )
11:24 yoleaux FROGGS: I'll pass your message to eternaleye.
11:25 jnthn Trouble with my Int $answer = async ... is that the thing that comes back from async is a Task/Future/Promise or whatever we call it.
11:26 lizmat couldn't that desugar to someting converting the actual return value of async to an int?
11:26 jnthn lizmat: Well, int won't be available until later, though :)
11:26 masak so, wouldn't you want to do 'my Task[Int] $answer = async ...'
11:27 jnthn masak: yes, potentially, but we don't have a way to specify what type of thing an async produces...
11:27 lizmat aka: Int $answer = async{    }.Int ?
11:27 jnthn lizmat: that'd probably block on the result, no?
11:27 jnthn If we're looking at async initialization of things, maybe we want
11:27 lizmat if written like that, yes
11:28 jnthn my Int $x will be { ...value producer... };
11:28 lizmat maybe async{…} should desugar to async { {…}.Int }
11:28 jnthn Too cute, imho
11:29 FROGGS then it would still be a Task/Future/Promise returned by async, no?
11:29 jnthn Types are constraints rather than coercers.
11:29 jnthn FROGGS: right
11:29 FROGGS I am thinking about async the same like with lazy
11:30 FROGGS the time you access the value matters
11:30 lizmat wouldn't a Future be something like a fail object?
11:30 lizmat that may not throw in some situations, like matching the constraint?
11:30 FROGGS sounds right to me
11:32 lizmat .oO { Fail, Future, Finicky , all of the special F objects }
11:32 FROGGS would be awesome to have eager/lazy/eval and async somehow coherent when it comes to syntax and behaviour
11:33 jnthn r: sub foo() { fail 'x' }; my Int $x = foo(); say 'alive'
11:33 camelia rakudo b2072f: OUTPUT«x␤  in method sink at src/gen/CORE.setting:10169␤  in method BUILDALL at src/gen/CORE.setting:801␤  in method bless at src/gen/CORE.setting:743␤  in method new at src/gen/CORE.setting:728␤  in method new at src/gen/CORE.setting:726␤  in block  at /tmp/S_w4kXIWec:1␤…
11:34 FROGGS jnthn: but that is not about type checking
11:34 jnthn r: sub foo() { fail 'x' }; my $x = foo(); say 'alive'
11:34 camelia rakudo b2072f: OUTPUT«alive␤»
11:34 jnthn Apparently it is ;)
11:34 FROGGS ohh
11:34 FROGGS a bit surprising to me
11:35 jnthn Well, if we let you shove a Failure into a container typed as Int, then what happens in:
11:35 FROGGS I think I got it
11:35 jnthn my Int $a = foo(); my Int $b = bar(); say $a + $b # the optimizer spots Int + Int, picks the multi-candidate, and inlines
11:36 jnthn That'll probably blow up in interesting ways.
11:36 lizmat and it's also about not being the right type:
11:36 lizmat r: sub foo() { fail 'x' }; my Failure $x = foo(); say 'alive'
11:36 camelia rakudo b2072f: OUTPUT«alive␤»
11:44 lizmat https://github.com/perl6/specs/issues/51 "Zen slice on hashes: is %h{} the same as %h{*} or not?"
11:44 masak \o/
11:47 simcop2387 joined #perl6
11:47 kivutar joined #perl6
11:47 gudahtt joined #perl6
11:57 baest_ joined #perl6
11:58 SmokeMachine joined #perl6
11:58 bonsaikitten joined #perl6
11:59 pmichaud joined #perl6
11:59 masak joined #perl6
12:05 snearch joined #perl6
12:19 * [Coke] catche sup
12:20 jnthn 'sup, [Coke]?
12:20 jnthn :)
12:22 [Coke] :)
12:23 [Coke] jnthn: looks like the initial conversion to nqp from nqp-rx was verrry spotty. I suspect I had gotten only "puts 3" to work that time, too, and then everything in the past week was getting back to that point after nqp churn.
12:23 [Coke] jnthn: I fixed that branch so it should at least build for you now.
12:24 [Coke] (on win)
12:25 jnthn [Coke]: OK :)
12:26 jnthn [Coke]: yes, it seems it does build
12:26 [Coke] presumably we'll want something better than cat.nqp and echo.nqp files, but seemed the best short term fix.
12:27 jnthn .oO( lolcat.nqp, clearly )
12:28 [Coke] mmmheheheh
12:29 [Coke] jnthn: do you see anything dodgy here: https://gist.github.com/coke/5757381 ?
12:30 [Coke] (the compile call in expr.pm eventually triggers the error above)
12:31 FROGGS [Coke]: what is at src/Partcl/commands.pm:1057 ?
12:32 tgt joined #perl6
12:32 [Coke] FROGGS: line 15 of expr.pm
12:35 jnthn [Coke]: Possibly you got some PAST in your QAST
12:36 jnthn [Coke]: Alternatively, a string or integer literal (which needs to be a QAST::SVal or QAST::IVal node these days)
12:36 ldthien0 joined #perl6
12:47 [Coke] is there any sane way to debug this?
12:47 census joined #perl6
12:47 [Coke] all of my code has already run at that point, no?
12:47 [Coke] (some debug flag I can enable that will show me what it's complaining about?")
12:48 FROGGS dont think so
12:48 konundra joined #perl6
12:49 colomon jnthn: just remembered: someone at YAPC::NA was wondering if the approach you used to create the Rakudo debugger could be easily modified to produce a code coverage tool for p6?
12:49 masak dear #perl6ites: in one week, this will happen: https://github.com/perl6/mu/w​iki/perl6-workshop-june-2013
12:49 masak sign up if you're interested.
12:49 masak hm, maybe we should do the reddit thing, too? I'm actually not sure.
12:51 FROGGS jnthn: is that right? https://github.com/partcl/partcl-nqp/​blob/nqp2/src/Partcl/Actions.pm#L318
12:51 census masak++ :)
12:51 census #masakism ?
12:52 ajr joined #perl6
12:52 [Coke] FROGGS: fwiw, this is failing on "expr 2".
12:53 [Coke] but yah, that looks dodgy.
12:54 FROGGS [Coke]: I'd guess you have to create an QAST::IVal on line 318
12:54 FROGGS (at least there)
12:54 [Coke] FROGGS: that seems plausible. danke.
12:56 [Coke] FROGGS: ./partcl -e 'puts [expr 2]'
12:56 [Coke] 2
12:56 FROGGS same for line 320, SVal for 335, 338...
12:56 FROGGS cool
12:56 mikemol joined #perl6
12:56 census2 joined #perl6
12:57 FROGGS yay, it looks like I got heredocs working
12:57 timotimo_ masak: why does it say "your name here" in the audience part and not in the participants part?
12:57 jnthn FROGGS: Looks like it needs to be a QAST::IVal there
12:57 FROGGS jnthn: right
12:57 [Coke] jnthn++ FROGGS++
12:58 FROGGS (having an nqp-debugger would save us from ours of pain... at least when using it)
12:58 timotimo_ masak: also, since i still fail at timezones, that would be 20:00 to 24:00 for CEST, yes?
13:00 masak timotimo_: you're free to enter as either participant or audience. it's just that no-one has signed up as audience yet. hope that clarifies things.
13:00 masak timotimo_: yes, I think that's the right time. better double-check, but yes.
13:01 birdwindupbird joined #perl6
13:02 * timotimo_ signs up
13:02 bluescreen10 joined #perl6
13:03 rindolf joined #perl6
13:03 daimonic joined #perl6
13:04 SmokeMachine joined #perl6
13:14 SamuraiJack joined #perl6
13:16 masak \o/
13:17 daimonic left #perl6
13:35 btyler joined #perl6
13:40 kaleem joined #perl6
13:41 timotimo_ tadzik: may i ask you to fix io-select to run with current rakudo or give me a hint on how to reach that state?
13:43 spider-mario joined #perl6
13:50 PacoAir joined #perl6
13:54 FROGGS[mobile] joined #perl6
14:02 mikemol joined #perl6
14:02 tgt joined #perl6
14:02 imIKARi joined #perl6
14:04 lue joined #perl6
14:10 timotimo_ oh
14:10 timotimo_ wow, that was easy
14:23 * colomon has not managed to build Rakudo-JVM for a couple of days now... :(
14:23 skids joined #perl6
14:30 thou joined #perl6
14:32 JimmyZ joined #perl6
14:34 domidumont joined #perl6
14:35 tgt joined #perl6
14:35 timotimo_ why is the $.listen attribute in the IO::Socket::INET class a Bool rather than an Int?
14:35 FROGGS joined #perl6
14:36 moritz because where the listening happens is determined by localport and... forgot the name for the local IP address
14:36 timotimo_ okay, so where do i put the number of sockets that may accumulate before they get .accept'd?
14:37 timotimo_ at the moment, it will just pass $.listen as the argument to $PIO.listen
14:38 timotimo_ should i open a spec ticket?
14:39 moritz or patch both specs and rakudo
14:39 * moritz doesn't really know much about sockets, and is glad when somebody else does the work :-)
14:39 timotimo_ yeah, i will do that :)
14:40 timotimo_ :$listen! just means it's named and required, right?
14:40 benabik yes
14:40 timotimo_ ok good
14:42 timotimo_ it's not even in the spec at all
14:43 timotimo_ should i put it there?
14:49 ldthien0 joined #perl6
14:54 timotimo_ i was editing a socket that wasn't in git any more o_O
14:55 timotimo_ nope, just not understanding what "git show" does
14:57 jnthn shows your HEAD, without an arg
14:59 timotimo_ i tried to git show path-to-file to figure out what's up with it
14:59 timotimo_ it didn't show up in my git diff, i hadn't realized i had already :Gwrite'd it from my vim
15:00 benabik Gwrite!  I had wondered where Gadd was.
15:01 timotimo_ :)
15:24 btyler joined #perl6
15:32 FROGGS[mobile] joined #perl6
15:32 sqirrel joined #perl6
15:33 crab2313 joined #perl6
15:44 tadzik timotimo_: I've no idea :(
15:46 tadzik but it looks like you managed to fo that already?
15:51 tgt joined #perl6
15:56 timotimo_ yeah, i managed :)
15:59 masak hey, did I just find a MAIN bug? https://gist.github.com/masak/5766668
16:00 jnthn masak: The "if it's in a mdouel it doesn't count" bug is already in RT
16:01 jnthn Think I may even have it open in a browser tab as a "probable easy fix"... :)
16:01 tgt joined #perl6
16:01 daniel-s joined #perl6
16:01 masak I'm looking for it now.
16:01 masak I found the opposite bug: https://rt.perl.org/rt3/Tic​ket/Display.html?id=114354 :)
16:01 masak but that one's resolved...
16:02 masak ok, so it's known. then I won't need to submit it.
16:02 masak ah, found it: https://rt.perl.org/rt3/Ti​cket/Display.html?id=84342
16:03 masak is there a non-MAIN way to ask Perl 6 "was I invoked directly?"
16:03 masak (thinking of a workaround)
16:08 masak ok, easy workaround: remove the module declaration.
16:13 SamuraiJack joined #perl6
16:13 masak r: use Test; class C {}; is_deeply C.new, C.new
16:13 camelia rakudo b2072f: OUTPUT«not ok 1 - ␤#      got: C.new()␤# expected: C.new()␤»
16:13 masak is there an easy, painless way to make (value) objects play nicely with is_deeply?
16:14 masak r: use Test; class C { has $.x }; is_deeply C.new(x => 5), C.new(x => 5) # perhaps a better example
16:14 camelia rakudo b2072f: OUTPUT«not ok 1 - ␤#      got: C.new(x => 5)␤# expected: C.new(x => 5)␤»
16:21 fhelmberger joined #perl6
16:26 xilo joined #perl6
16:32 ironcamel joined #perl6
16:54 tgt joined #perl6
16:59 masak rn: my %h = foo => 42; my @a = \%h; say @a.perl
16:59 camelia niecza v24-75-g480a062: OUTPUT«[\({"foo" => 42}.hash)].list␤»
16:59 camelia ..rakudo b2072f: OUTPUT«Array.new(Capture.new( list => ("foo" => 42,).list, hash => EnumMap.new()))␤»
16:59 masak rn: my %h = foo => 42; my @a = %h; say @a.perl
16:59 camelia niecza v24-75-g480a062: OUTPUT«["foo" => 42].list␤»
16:59 camelia ..rakudo b2072f: OUTPUT«Array.new("foo" => 42)␤»
17:00 masak rn: my %h = foo => 42; my @a; @a[0] = %h; say @a.perl
17:00 camelia niecza v24-75-g480a062: OUTPUT«[{"foo" => 42}].list␤»
17:00 camelia ..rakudo b2072f: OUTPUT«Array.new({"foo" => 42})␤»
17:00 masak rn: my %h = foo => 42; my @a = [%h].list; say @a.perl
17:00 camelia niecza v24-75-g480a062: OUTPUT«["foo" => 42].list␤»
17:00 camelia ..rakudo b2072f: OUTPUT«Array.new("foo" => 42)␤»
17:00 masak bah :)
17:00 masak some days I just feel like flattening gets in the way...
17:00 kaleem joined #perl6
17:06 konundra joined #perl6
17:08 [Coke] *some* days?
17:11 colomon some days I feel like flattening everything in my path...
17:15 * masak .oO( if you don't like flattning, then you might as well switch to Python! is that what you want? huh? huh? ) :P
17:16 masak ah, false dichotomies.
17:16 masak I either like them or detest them.
17:17 spider-mario if you either like or hate false dichotomies, you might as well try true dichotomies!
17:18 zby_home_ joined #perl6
17:24 masak spider-mario: my word, you're right.
17:25 masak or wrong.
17:25 spider-mario what I said is any(True, False)
17:28 colomon quite possibly right and wrong
17:28 dmol joined #perl6
17:29 daxim the continuum hypothesis is all(Proven to be unprovable, Proven to be something you can't disprove)
17:31 logie_ joined #perl6
17:32 sjn joined #perl6
17:33 patspam joined #perl6
17:38 census joined #perl6
17:47 FOAD joined #perl6
17:48 cognominal joined #perl6
17:50 sergot_ hi! o.
17:50 sergot_ o/
17:53 masak sergocie! \o/
17:53 masak ok, this is a fun one:
17:53 masak rn: my $s = 'pre x post'; $s ~~ /^ (<-[x]>+) 'x' (\N+) $/; $s = ~$0; ~$1
17:53 camelia niecza v24-75-g480a062:  ( no output )
17:53 camelia ..rakudo b2072f: OUTPUT«Start of substr out of range. Is: 5, should be in 0..4␤current instr.: 'throw' pc 347557 (src/gen/CORE.setting.pir:151689) (src/gen/CORE.setting:8887)␤called from Sub 'sink' pc 379739 (src/gen/CORE.setting.pir:164183) (src/gen/CORE.setting:10169)␤called from Sub 'M…
17:53 masak n: my $s = 'pre x post'; $s ~~ /^ (<-[x]>+) 'x' (\N+) $/; $s = ~$0; say ~$1
17:53 camelia niecza v24-75-g480a062: OUTPUT« post␤»
17:53 masak I'm entirely with Niecza here.
17:53 masak I think rakudo has... a bug. :)
17:54 masak of course you should bind to the string itself, not to the scalar container that holds it.
17:54 * masak submits rakudobug
17:54 eternaleye jnthn: regarding async and returning a Future, I'm in agreement with you - but FROGGS' point makes sense to me about it being insufficiently sugared. Perhaps we could just overload infix:<=>( ::T $lvalue, Future[T] $rvalue ) in some way?
17:54 yoleaux 11:24Z <FROGGS> eternaleye: I was thinking more like: my Int $answer is async = calculate_from( <life universe everything> )  or  my Int $answer = async calculate_from( <life universe everything> )
17:56 nwc10 rakudo has *a* bug? Inconcievable?
17:57 masak you keep using that word.
17:57 fgomez joined #perl6
17:57 tadzik it could have a "Bug #1", like Ubuntu had
17:57 tadzik "#1 - people still run Rakudo 5.8"
17:58 eternaleye masak: When you put that ellipsis in your earlier line, I heard a scare chord.
17:58 lizmat joined #perl6
17:58 nwc10 well, it's sort of "Rakudo has but one bug? No, I don't believe this"
17:58 masak eternaleye: :)
17:58 eternaleye "I think rakudo has... [DUNNNN] a bug"
17:59 eternaleye Complete with that gif of the gopher suddenly turning to the camera.
17:59 diakopter gophers are harder to shave than yaks
18:01 [Coke] LHF for lurkers: add this test to roast: https://rt.perl.org/rt3/Ti​cket/Display.html?id=77504
18:02 jnthn .oO( Lurker Hanging Fruit )
18:02 pochi joined #perl6
18:06 * moritz wonders if counts as a lurker these days
18:07 masak if you do, you're our favorite lurker!
18:09 eternaleye moritz: I suspect you delurked loooong ago :P
18:09 ajr joined #perl6
18:11 [Coke] relurker!
18:12 moritz any fun ideas I could talk about at YAPC::EU?
18:12 moritz I'm slowly planning my attendance
18:12 tadzik \o/
18:14 moritz I'm thinking of a lightning talk "Perl 6 in numbers", with lots of stuff that can be measured over time
18:14 btyler joined #perl6
18:14 moritz LOC, performance, passing tests, number of modules, ...
18:14 moritz but I don't think I can fill more than 5 minutes with it
18:15 diakopter moritz: graphs of irc participation would be interesting
18:15 tadzik Commitbit-driven community
18:15 * tadzik considers submitting "Organizing a Perl Workshop for dummies"
18:15 tadzik it went quite well on PLPW
18:16 moritz and for a main talk, maybe "Perl 6 Errors" (about error reporting, exceptions and such stuff)
18:16 tadzik oh!
18:17 diakopter moritz: maybe height of day to indicate number of irc messages, and some form of cyclical horizontal color gradient to indicate some measure of "churn" of people
18:17 masak moritz: yes, but call it "Exceptional Perl 6" :)
18:17 masak "Perl 6 Errors" makes it sounds like we are less-than-infallible around here... :P
18:19 tadzik Error-crouch Perl 6
18:20 tadzik heh. Perl 6 Failures would've been better :D
18:20 tadzik "this is how we fail()"
18:20 diakopter "Failing Perl 6"
18:20 eternaleye "Exceptional Perl 6: Throwing Failures to somewhere they can be handled properly"
18:20 diakopter "fail Perl fail 6 fail"
18:21 huf "exceptional monkeys get to throw exceptional ..."
18:22 tadzik Perl 6 CATCHes
18:22 FOAD joined #perl6
18:22 FOAD joined #perl6
18:24 jnthn Crouching Exception, Hidden Failure
18:24 jnthn Ooh
18:25 jnthn "How to make Perl 6 die" :P
18:25 [Coke] Too Perl to Fail
18:26 arnsholt joined #perl6
18:27 tadzik jnthn: haha, awesome
18:28 arnsholt jnthn: Any objections to factoring the generateJVMType bits of P6Opaque into a separate class? I think it'd be useful to share that logic with the CStruct REPR
18:28 jnthn arnsholt: Yes
18:28 jnthn arnsholt: Uh, wait. No.
18:28 jnthn arnsholt: I mean, you can refactor it that way if you wish :)
18:29 arnsholt Cool
18:29 jnthn (the yes was agreement to the second sentence, the "no" was "no objections" :))
18:29 arnsholt Yeah, with the third line as context, it made sense =)
18:31 arnsholt Although I think the CPointer REPR is the first one I should write
18:32 jnthn :)
18:32 arnsholt Least amount of moving parts and all that
18:32 * jnthn hopes to find the concentration to get MapIter somewhat sorted this evening.
18:33 arnsholt I think the hardest thing to figure out will be how to attach a C thing to a Java object (or alternatively create and keep track of pairings of the same)
18:38 benabik joined #perl6
18:44 arnsholt Ooooooh, one thing seen on Stack Overflow: store pointers in Java long fields... very evil...
18:46 sorear good * #perl6
18:46 benabik arnsholt: why?
18:46 diakopter sorear: welcome to the land of the awake. :)
18:46 sorear wasn't there an exceptions talk at frankfurt?
18:47 arnsholt benabik: Why pair C and Java stuff, or why long? =)
18:47 jnthn sorear: Yeah, but the speaker hijacked it for his own means.
18:48 benabik arnsholt: Why pass around a pointer as a long?  Just so you can introduce segfaults to Java?
18:48 diakopter sorear: having met you in person, I now know how to sound out your messages in my head to get the intended intonation and expression. it was easy. All I have to do is imagine your words being spoken by Sheldon from Big Bang Theory. :)
18:49 benabik Java, segfaults.  Segfaults, Java.  I'm sure you two will get along great.
18:50 arnsholt benabik: Yeah, it's really nasty. But so far it's the only option I've come across
18:50 jnthn Segfaulting the JVM for fun and profit
18:51 arnsholt Apparently segfaults are -Ofun =)
18:57 benabik arnsholt: Creating a final Pointer class, so at least people can't change it?
18:57 arnsholt Yeah, that probably makes sense
18:59 arnsholt Although this is pretty deep in the compiler guts, so it needs less protection than more directly user-facing code
19:01 tomyan joined #perl6
19:02 stevan__ joined #perl6
19:04 stevan__ joined #perl6
19:06 sorear jnthn: is there a stability/deprecation policy that applies to nqp:: opcodes and semantics?
19:08 GlitchMr joined #perl6
19:09 jnthn sorear: Nothing formal at the moment. What're you considering?
19:09 jnthn sorear: A bunch of them are pretty new anyway...
19:09 sorear jnthn: oh, just "how perfect does nqp::continuation* need to be on the first pass"
19:10 tgt joined #perl6
19:11 jnthn sorear: It doesn't, especially as it's new / just going in now.
19:11 jnthn sorear: It's mostly just a concern if lots of people were to come to depend on it. I don't think that's going to happen in a hurry. :)
19:13 sorear I see
19:18 itz_ joined #perl6
19:25 pmurias joined #perl6
19:27 labster Is it possible to create an object that does not have a Str method?
19:28 tadzik why?
19:28 colomon rn: class A { has $.a; }; my $a = A.new(a => "bue"); say $a.Str
19:28 camelia niecza v24-75-g480a062: OUTPUT«A()<instance>␤»
19:28 camelia ..rakudo b2072f: OUTPUT«A<285003360>␤»
19:28 colomon is that from Any?
19:28 labster no particular application.  just thinking about what would be a valid input to path stuff.
19:29 labster Mu has .Str
19:29 colomon rn: class A { has $.a; method Str() { ... } }; my $a = A.new(a => "bue"); say $a.Str
19:29 camelia niecza v24-75-g480a062: OUTPUT«Unhandled exception: >>>Stub code executed␤  at /tmp/VXbaXIQcbs line 1 (A.Str @ 4) ␤  at /tmp/VXbaXIQcbs line 1 (mainline @ 7) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4542 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4543 (module-CORE…
19:29 camelia ..rakudo b2072f: OUTPUT«Stub code executed␤  in method gist at src/gen/CORE.setting:10161␤  in method gist at src/gen/CORE.setting:893␤  in sub say at src/gen/CORE.setting:11047␤  in block  at /tmp/tnFo3PJvfe:1␤␤»
19:30 labster r: class A { has $.a; method Str() { ... } }; my $a = A.new(a => "bue"); say $a.^methods.grep('Str')
19:30 camelia rakudo b2072f: OUTPUT«Str␤»
19:30 labster it has one, it's just really bad at making strings :)
19:31 snearch joined #perl6
19:31 colomon exactly.  :)
19:45 konundra joined #perl6
19:47 * TimToady is kinda back online for a day or two; for a definition of 'online' that does not preclude a bazillion other people trying to use this wifi spectrum here in Cambridge, where there are obviously too many smart people
19:48 colomon o/
19:48 nwc10 or too many people interested in videos of cats
19:48 nwc10 I think he's more optimistic than me :-)
19:48 lizmat o/ TimToady
19:48 diakopter how much bigger is bazillion than barillion and fooillion?
19:49 TimToady about --> <-- that much
19:49 labster a quuxillion more.
19:50 diakopter commute&
19:50 sorear o/ TimToady
19:51 TimToady on zen slices, .[] is supposed to be equivalent to @(), and .{} equivalent to %(), as a convenient contextualizer
19:52 TimToady .{} is specifically not the same as .{*}
19:55 masak what's a good way to get the fractional part of a Rat?
19:55 labster .oO ( let my terriers catch the rat first )
19:56 * masak adds that to perl6/specs/issues
19:56 colomon masak: .denominator
19:56 masak colomon: .denominator != fractional part
19:57 colomon masak: yeah, just realized that
19:57 TimToady nr: my $x = 3.14159625; say $x - $x.Int
19:57 camelia rakudo b2072f: OUTPUT«0.1415963␤»
19:57 camelia ..niecza v24-75-g480a062: OUTPUT«0.14159625␤»
19:57 colomon don't think we have a method for it.
19:57 masak I did ($rat % 1), but that left me with a Num, and some rounding errors :/
19:57 colomon nr: my $x = -3.14159625; say $x - $x.Int
19:57 camelia niecza v24-75-g480a062: OUTPUT«-0.14159625␤»
19:57 camelia ..rakudo b2072f: OUTPUT«-0.1415963␤»
19:57 moritz nr: my $x = 3.14159625; say ($x - $x.Int).perl
19:57 camelia rakudo b2072f: OUTPUT«0.1415963␤»
19:57 camelia ..niecza v24-75-g480a062: OUTPUT«0.14159625␤»
19:57 TimToady nr: my $x = -3.14159625; say $x - $x.Int;
19:58 camelia niecza v24-75-g480a062: OUTPUT«-0.14159625␤»
19:58 camelia ..rakudo b2072f: OUTPUT«-0.1415963␤»
19:58 moritz nr: my $x = 3.14159625; say ($x - $x.Int).nude.join: '/'
19:58 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«113277/800000␤»
19:58 jnthn nr: my $x = 3.14159625; say ($x - $x.floor).perl
19:58 camelia rakudo b2072f: OUTPUT«0.1415963␤»
19:58 camelia ..niecza v24-75-g480a062: OUTPUT«0.14159625␤»
19:58 TimToady you'll have to decide what to do with negatives
19:58 masak in my case, I don't care about negatives.
19:58 masak so .floor and .Int semantics are equally usable.
19:58 colomon TimToady: your $x - $x.Int strikes me as doing the Right Thing for negatives
19:58 TimToady well, maybe
19:59 tomyan joined #perl6
19:59 labster rn: my $x = 3.14159625; say ($x.numerator % $x.denominator)/$x.denominator
19:59 colomon still, should we have a .fractional-part method?
19:59 camelia rakudo b2072f: OUTPUT«0.1415963␤»
19:59 camelia ..niecza v24-75-g480a062: OUTPUT«0.14159625␤»
20:00 TimToady I think negatives are sufficiently undefined that we should leave it up to the user
20:00 TimToady nr: my $x = -3.14159625; say $x - $x.floor;
20:00 camelia niecza v24-75-g480a062: OUTPUT«0.85840375␤»
20:00 camelia ..rakudo b2072f: OUTPUT«0.8584038␤»
20:00 TimToady some people might want that
20:00 masak I ended up doing ($x - $x.Int) in my code, and it seems to work fine.
20:01 TimToady nr: my $x = -3.14159625; say $x - $x.trunc;
20:01 camelia niecza v24-75-g480a062: OUTPUT«Unhandled exception: Unable to resolve method trunc in type Rat␤  at /tmp/loNe0vAuvm line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4542 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4543 (module-CORE @ 590) ␤  at /home/…
20:01 camelia ..rakudo b2072f: OUTPUT«No such method 'trunc' for invocant of type 'Rat'␤  in block  at /tmp/0LbXseI5B8:1␤␤»
20:01 TimToady I guess we don't have that
20:01 TimToady nr: my $x = -3.14159625; say $x - $x.truncate;
20:01 camelia niecza v24-75-g480a062: OUTPUT«-0.14159625␤»
20:01 camelia ..rakudo b2072f: OUTPUT«-0.1415963␤»
20:02 * masak .oO( no need to trunc perfectly cromulent English words ) :P
20:02 TimToady then why do they do just that so often here in Merry Olde
20:04 lue .oO(Why is "abbreviation" not one itself?)
20:04 TimToady btw, yesterday we ate in a cave/pub, Þe Olde Trip to Jerusalem, the oldest pub in continuous operation in England.
20:05 TimToady est 1187 or some such
20:05 jnthn ooh :)
20:05 TimToady under the Castle of Nottingham which isn't really there anymore...
20:05 moritz continuous operation? no curfew? :-)
20:06 TimToady continuous intermittent, sez Glo :)
20:06 twigel joined #perl6
20:07 masak that's my favorite kind of continuous.
20:08 TimToady kinda like this wifi network here...
20:09 lizmat TimToady: so maybe {} should return self.list rather than self ?
20:09 lizmat like [] does ?
20:10 jnthn %() returns .hash
20:10 TimToady it needs to return the non-itemized form, but it still needs to have the identity of the hash/array
20:11 lizmat so the .list in the array case, only has the identity because .list has the same identity
20:11 TimToady nr: say %( %*ENV ) === %*ENV
20:11 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«True␤»
20:11 TimToady nr: say %*ENV{} === %*ENV
20:11 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«True␤»
20:11 TimToady that is correct
20:12 lizmat rn: my @a; say @a === @a[]
20:12 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«True␤»
20:12 lizmat rn: my @a; say @a === @a[.list
20:12 camelia niecza v24-75-g480a062: OUTPUT«[31m===[0mSORRY![31m===[0m��Unable to parse subscript at /tmp/vJXOUUUVbe line 1:�------> [32mmy @a; say @a === @a[[33m�[31m.list[0m�Couldn't find final ']'; gave up at /tmp/vJXOUUUVbe line 1 (EOF):�------> [32mmy @a; say @a === @a[.list[33m�[31m…
20:12 camelia ..rakudo b2072f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unable to parse expression in subscript; couldn't find final ']'â�¤at /tmp/4K7bzmFg34:1â�¤------> [32mmy @a; say @a === @a[.list[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤        postfixâ�¤        statement endâ�¤   …
20:12 lizmat rn: my @a; say @a === @a.list
20:12 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«True␤»
20:12 TimToady nr: my @a = 1,2,3; say @a === @a[*]
20:12 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«False␤»
20:12 TimToady .[] is not supposed to be the same as .[*]
20:13 lizmat ok, that's clear to me now.  But not clear from the spec, at least not to me
20:13 TimToady .[*] is a 1-dimensional slice; .[] is 0-dimensional
20:14 TimToady .[] is the degenerate form of .[*;*;*] --> .[*;*] --> .[*] --> .[]
20:16 * lizmat is apparently still living in flatland  :-)
20:17 TimToady it's one of those things that we realized when S09 was written, but nobody goes there much :)
20:17 TimToady anyway, not all of .nl is that flat... :)
20:18 lizmat true..  we have mountains as well, although they're locate in the Carribean
20:18 TimToady we came through the fens today, where they used to build churches on the islands between the peat bogs
20:18 TimToady now they're just on hills :)
20:19 lizmat that's one way to make mountains  :-)
20:21 rjbs "0-dimensional slice" meaning that it selects based on a 0-dimensional criteria and gets you everything?
20:23 masak that's a nice way to see it.
20:25 simcop2387 joined #perl6
20:26 simcop2387 joined #perl6
20:28 lizmat rn: say (my @h).list.WHAT   # shouldn't this be (List) ?
20:28 camelia rakudo b2072f: OUTPUT«(Array)␤»
20:28 camelia ..niecza v24-75-g480a062: OUTPUT«Potential difficulties:â�¤  @h is declared but not used at /tmp/2T4EltSrn9 line 1:â�¤------> [32msay (my [33mâ��[31m@h).list.WHAT   # shouldn't this be (Lis[0mâ�¤â�¤(Array)â�¤Â»
20:28 lizmat or is this an optimization leaking out?
20:29 masak rn: say Array ~~ List
20:29 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«True␤»
20:29 masak if it already is one, you don't need to convert to it.
20:30 masak Liskov-Compliant™.
20:30 lizmat rn: say List ~~ Array
20:30 camelia rakudo b2072f, niecza v24-75-g480a062: OUTPUT«False␤»
20:30 lizmat ok…   trying to wrap my head around seeming inconsistencies
20:33 lue r: my @a is List; say @a.WHAT;
20:33 camelia rakudo b2072f: OUTPUT«(Array)␤»
20:38 pmichaud .list is a contextualizer; it simply asks the invocant to return its list component
20:38 pmichaud the coercer (if there is one) would be .List
20:39 lizmat o/ pmichaud!
20:39 masak pmichaud! \o/
20:40 pmichaud also, as part of the S07 work I'm expecting there to be some tightening of definitions on .values and the like
20:41 pmichaud and a bit of a refactor on iterators in general, now that I understand "hyper" and "race" a bit better.
20:41 pmichaud (yapc::na presentations)++
20:41 colomon \o/
20:42 pmichaud when that will take place... I dunno.
20:42 pmichaud hopefully sometime this summer.
20:42 lizmat pmichaud: any idea on the size of Hash.new refactoring ?
20:43 lizmat size of work needed, I mean
20:43 pmichaud btw, did anyone else happen to see the tweet that yapc::asia is specifically looking for #perl6 talks?
20:44 * pmichaud looks
20:44 jnthn pmichaud: Yeah, saw it
20:44 masak oh?
20:44 jnthn I did NA this year, and hadn't really budgeted to do YAPC::Asia also.
20:44 pmichaud https://twitter.com/yapcasia​/statuses/344331940633124864
20:45 masak ooh
20:45 * colomon would get lynched if he scheduled another trip away from his family.
20:46 pmichaud colomon: so, don't schedule one.  Just go.  :-P
20:46 masak because that would get him so much less lynched?
20:46 colomon :p
20:46 sorear alternatively, bring your family with you.
20:46 lizmat we're still not sure whether we'll be going to YAPC::Asia, but if we're going I could give a go at a Perl 6 presentation
20:46 pmichaud sorear++ ftw!
20:47 pmichaud so yeah... take your family.  2nd and 3rd mortgages on houses aren't *that* hard to come by these days :-P
20:47 * sorear currently has no intention of going to yapc::asia, fwiw
20:47 colomon sorear: If I could afford to do that, I'd probably get lynched for not taking the family to Newfoundland instead.  ;)
20:49 sorear let's arrange for yapc::canada again in 2015
20:50 jnthn I'd totally do a YAPC in Canada.
20:50 colomon yapc::canada++
20:50 pmichaud Well volunteered!  :-P
20:50 masak jnthn is doing a YAPC in Canada? awesome!
20:50 masak jnthn: I'll be there!
20:51 colomon \o/
20:51 jnthn eh? That's not what I meant! :P
20:51 pmichaud btw, for all of the yapc::na attendees, I thought I'd note that it finally got hot here after yapc::na was over :-P
20:51 masak too late you already volunteered
20:51 autumn joined #perl6
20:51 lue Wouldn't that be YAPC::NA::CA :) ?
20:51 jnthn OK, I'll work on it once I run out of Perl 6 / Moar things to do :P
20:52 * benabik could probably go to one in Toronto.
20:52 sorear pmichaud: *after* lizmat got stuck in the falsh flood?
20:52 masak pmichaud: oh man, if that was not heat, I'm glad I didn't stay long enough to experience actual heat...
20:52 masak jnthn: well avoided. :)
20:52 lizmat flash flood ?   what where?  that was in Germany, not in NL  :-)
20:53 colomon wasn't there a flash flood in austin on your way home (take one)?
20:53 sorear lizmat: iirc you missed your flight out of houston->AMS because of flooding
20:54 colomon YAPC::Toronto or YAPC::St John's would be absolute must attends for my whole family.  :)
20:54 pmichaud masak: the week in austin was a late spring for us.  summer is approaching fast... 37degC highs on their way
20:54 jnthn Man, this MapIter porting is laborious...
20:54 lizmat Ah, that way: no, we got stuck in the traffic jam caused by too much rain for the drains in Houston
20:54 [Coke] I wonder if we could get an NYC or philly event.
20:54 jnthn Or I'm just braindead...
20:54 [Coke] (too much rain) lizmat - that has been a problem forever. flooded many times when I lieved there.
20:55 pmichaud jnthn: start with the naive MapIter, fwiw.
20:55 lizmat jnthn: a good night's sleep will revive your brain
20:55 sorear [Coke]: would the pittsburgh perl workshop be close enough?
20:55 jnthn lizmat: Been trying that for the last 3 nights... :)
20:55 jnthn pmichaud: Yeah, am skipping sinking, control exceptions etc. for the first cut.
20:55 sorear I think that's in the same state as philly
20:56 pmichaud "same state as philly" is kind of like saying "I think El Paso is in the same state as Houston", though :-P
20:57 sorear I tend to think about points in space as floating-point displacements from home
20:57 sorear :)
20:57 pmichaud (el paso is halfway between houston and san diego, fwiw :)
20:57 pmichaud so, drive from san diego to houston.  when you reach el paso, you're halfway there.
20:57 TimToady intricacies is definitely emphasized on the 1st syllable in western US
20:58 sorear I thought AZ and NM were bigger than that
20:58 TimToady just like "intricate"
20:58 pmichaud san->hou  1468mi
20:58 pmichaud elp->hou 745mi
20:59 pmichaud well, I-10 only hits the southwest corner of NM
21:02 pmichaud on the plus side, a lot of I-10 is this: http://upload.wikimedia.org/wikipedia/commons/t​humb/b/b9/Texas_80_mph_speed_limit_unveiling.JP​G/800px-Texas_80_mph_speed_limit_unveiling.JPG
21:03 pmichaud lizmat: (hash.new)  it doesn't seem like a big chunk of work to me.  I think I may be able to get the first part done tonight, even.
21:04 pmichaud I'll attempt it again and report back tomorrow morning.
21:04 lizmat pmichaud++
21:08 lizmat going home from Niederrhein.pm meeting&
21:10 jnthn wtf, for <a b c> { .say } just worked.
21:10 colomon jnthn: in JVM?
21:10 jnthn yeah
21:10 colomon \o/
21:10 jnthn So, guess we got simple mapiter...
21:11 tadzik aww yiss
21:11 jnthn woo, for <a b c d> -> $a, $b { say $a ~ $b } # also works
21:11 sorear \o/ jnthn++
21:11 timotimo_ cool!
21:11 jnthn darn, this startup time is incredibly terrible...I'm gonna have to spend some tuits on that soon.
21:11 colomon jnthn++ indeed
21:12 zby_home joined #perl6
21:12 sorear pmichaud: if it says 80 on the signs, that means everyone does 100, right?
21:17 dalek rakudo/nom: 76de8c7 | jnthn++ | src/ (2 files):
21:17 dalek rakudo/nom: Start porting the core of MapIter.
21:17 dalek rakudo/nom:
21:17 dalek rakudo/nom: It was a blob of PIR. This does it mostly with QAST trees. Not yet
21:17 dalek rakudo/nom: complete; missing control exception handling and sink stuff. Works for
21:17 dalek rakudo/nom: the basic cases, though.
21:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/76de8c7335
21:20 sorear mapiter used pir? O_O  *looks*
21:21 sorear did it have to use PIR or was that an optimization?
21:22 jnthn For the control exceptions I think it had to
21:24 sorear ...part of me suddenly wants to rename StackSaveException to ShiftException, because it's thrown by nqp::continuationshift and it's almost but not quite like a ControlException
21:25 masak ShiftException sounds a bit too ambiguous.
21:25 masak maybe ContinuationShiftException?
21:26 sorear masak: we'd need AltException and MetaException to continue the theme.
21:26 masak hehe
21:26 lee_ jnthn: you're probably aware, but the JVM p6 repl gives some strange errors if you create the same data structure twice
21:26 lee_ https://gist.github.com/leedo/55553c28f1300af23844
21:27 timotimo_ well, if you write the same code twice
21:27 timotimo_ try say "hello" twice in a raow
21:27 lee_ ah yes, same thing
21:27 sorear wut
21:28 jnthn ah, 'cus it uses the hash of the source for the SC identifier. :)
21:28 sorear also, lee_, I don't rember you, welcome to #perl6!
21:28 jnthn That's not the best of ideas for the REPL...
21:28 lee_ sorear: hehe thanks, long time lurker :P
21:29 jnthn hm, quite a stream of errors...
21:30 sorear jnthn: what should I do with documentation and usage examples for nqp::continuation* ?
21:30 sorear from design.pod
21:30 masak lee_: welcome to the land of the not-lurking!
21:31 timotimo_ nurking?
21:33 jnthn sorear: docs/continuations.md # or so?
21:37 dalek rakudo/nom: c947f78 | jnthn++ | src/Perl6/Grammar.nqp:
21:37 dalek rakudo/nom: Fix REPL bug when same line issued twice.
21:37 dalek rakudo/nom:
21:37 dalek rakudo/nom: Reported by lee_++.
21:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c947f78004
21:39 lee_ yay! thanks
21:41 masak 'night, #perl6
21:41 sorear jnthn: Why does it work in the NQP REPL?
21:41 sorear rakudo-jvm: say 2
21:42 jnthn sorear: NQP always adds a timestamp into the SHA1
21:42 jnthn sorear: 'cus of the bootstrap
21:42 sorear Will the fix you just did also handle the case of eval?
21:43 sorear Is it possible to have two modules with the same source text that are compiled differently because of relative paths or something?
21:43 sorear continuations.md WFM
21:43 sorear though I guess I need to learn markdown :D
21:46 jnthn sorear: (eval) yes
21:46 jnthn sorear: Oh, there's .pod in that directory too
21:46 twigel joined #perl6
21:46 jnthn sorear: I'm just too lazy to write Pod. :)
22:03 pmichaud why is MapIter building QAST?
22:04 pmichaud that's.... weird.
22:04 pmichaud oh, you made it into an op.
22:05 pmichaud I'm not sure I like it as an op.  :-/
22:06 pmichaud are we limited to an op because of the control logic?
22:13 jnthn pmichaud: yes
22:14 jnthn pmichaud: I tried it another way first, but this worked out easiest.
22:14 pmichaud that's likely not going to work medium-long term.
22:14 pmichaud can't say exactly why... just alarm bells here saying "nononononono"
22:15 pmichaud more to the point, we have to find a way to make MapIter fast without resorting to per-vm ops to do it.
22:16 pmichaud otherwise we're going to be doing per-vm ops for a lot of stuff.
22:16 pmichaud (a lot of high-level-ish stuff)
22:16 sorear pmichaud: It's not a per-vm op
22:17 lizmat joined #perl6
22:17 pmichaud sorear: I see a lot of JAST and "as_jast" in the patch, so it looks per-vm-ish to me.  But I don't have tuits to be able to look more closely now.
22:18 jnthn Yes, this is JVM specific, just like the PIR is Parrot-specifc
22:18 pmichaud I just want to register my objection to the patch and a note that we may be backing it out at some point.
22:18 pmichaud the PIR was Parrot specific primarily for speed concerns, iirc.
22:18 pmichaud at one point I had a non-PIR version.
22:18 jnthn I thought it was primarily for the control exception stuff?
22:18 pmichaud no, speed stuff originally.
22:19 jnthn If any place is worth VM-specific optmization, this is one of 'em, though...
22:19 pmichaud you didn't like the slowdowns we were seeing in the b->nom transition, so we went to PIR to avoid that.
22:19 pmichaud but that was also before the nqp:: space was largely available.
22:20 jnthn If there's a reasonably performant solution using nqp:: ops, I'm all for it.
22:20 pmichaud had the nqp:: ops been more available, I would've likely used them more directly.
22:20 pmichaud just remember that MapIter's current implementation was done before we had good native var support and before we had nqp:: ops.
22:21 pmichaud so I don't consider it to be "the right way to do it", or a way that we want to copy to other vm platforms, unless we just *have* to do so.
22:21 * lizmat is back home and needs to sleep&
22:21 pmichaud (which may be the case... but once you generalize to n==2, it's pretty tempting to keep going to larger values of n)
22:21 lizmat will check backlog later
22:22 pmichaud also, even if the PIR is because of control exception logic, I'd prefer to think it's that way because of Parrot's broken exception model, which we could hopefully fix for other vm platforms.
22:23 pmichaud rather than continue being hobbled by parrot's way of doing it.
22:23 GlitchMr joined #perl6
22:23 pmichaud i.e., it seems to me there should be a much cleaner way of solving it in other vm platforms (and if there isn't, we're storing up some bigger difficulties for later)
22:24 jnthn ok, ok...
22:24 jnthn maybe I'll see if I can figure out another way to do it.
22:24 pmichaud I'm not saying revert the patch.
22:24 jnthn Otherwise, you're only gonna be telling me the same a month or so down the line when I do this for Moar :P
22:24 pmichaud exactly.
22:25 jnthn At which point I'll really be fed up of porting MapIter :P
22:25 pmichaud not to mention that the current MapIter is wrong anyway.
22:25 jnthn I think I can see a way to do the control exception stuff, actually...
22:25 pmichaud the current MapIter will change a fair bit when we introduce threading, hyper, race, tc.
22:25 pmichaud *etc.
22:25 [Coke] sorear: aye. I could drive to that and pick up a few people on the way, mebbe.
22:26 [Coke] (not sixers though)
22:26 pmichaud which is also why I'm not saying "revert the patch", but more saying "let's not get in the pattern of thinking this is the way to do it"
22:26 sorear you couldn't pick up sixers?  or just there are none in the area?
22:26 pmichaud because it feels really wrong to me.
22:26 sorear .oO( TIMTOWDI )
22:27 pmichaud I'd prefer to see how we'd write it in p6 code (perhaps at the level of nqp:: ops), then how to make that work.
22:27 pmichaud okay, I have to fetch dinner here... bbl
22:32 dalek roast: be0cfe8 | (Solomon Foster)++ | S32-list/roll.t:
22:32 dalek roast: Fix Niecza fudging.
22:32 dalek roast:
22:32 dalek roast: It was reporting a TODO pass for this test, but in actuality the test's current approach simply does not work for Niecza.  I've changed it to a
22:32 dalek roast: skip to cut down on the spectest noise, and not tempt someone else to remove the fudging all together.
22:32 dalek roast: review: https://github.com/perl6/roast/commit/be0cfe88fe
22:34 [Coke] sorear: I don't know of any between here and there unless there's some in NYC.
22:53 Timbus joined #perl6
23:00 autumn joined #perl6
23:05 jnthn 'night, #perl6
23:39 colomon \o
23:42 sorear o/ colomon
23:42 colomon sorear: how goes continuations?
23:44 colomon rn: my @var = <a b ab c>; my $aref = \@var; say 'a0' ~~ m/$aref[0]/
23:44 camelia niecza v24-75-g480a062: OUTPUT«Potential difficulties:â�¤  Apparent subscript will be treated as regex at /tmp/YyO5L1ul4r line 1:â�¤------> [32m>; my $aref = \@var; say 'a0' ~~ m/$aref[33mâ��[31m[0]/[0mâ�¤â�¤Falseâ�¤Â»
23:44 camelia ..rakudo b2072f: OUTPUT«Potential difficulties:â�¤    Apparent subscript will be treated as regexâ�¤    at /tmp/pg8ofwTb3s:1â�¤    ------> [32m>; my $aref = \@var; say 'a0' ~~ m/$aref[33mâ��[31m[0]/[0mâ�¤Falseâ�¤Â»
23:44 sorear colomon: pretty good.  shuffling tuits with $dayjob though
23:45 colomon understood. Still, it makes me happy to see you working on rakudo-jvm.  :)
23:48 colomon rn: my @var = <a b ab c>; my $aref = \@var; say 'a b ab c0' ~~ m/$aref[0]/
23:48 camelia rakudo b2072f: OUTPUT«Potential difficulties:â�¤    Apparent subscript will be treated as regexâ�¤    at /tmp/_GLkM5sFIt:1â�¤    ------> [32maref = \@var; say 'a b ab c0' ~~ m/$aref[33mâ��[31m[0]/[0mâ�¤ï½¢a b ab c0ï½£â�¤â�¤Â»
23:48 camelia ..niecza v24-75-g480a062: OUTPUT«Potential difficulties:â�¤  Apparent subscript will be treated as regex at /tmp/EV2AIPaqQg line 1:â�¤------> [32maref = \@var; say 'a b ab c0' ~~ m/$aref[33mâ��[31m[0]/[0mâ�¤â�¤Falseâ�¤Â»
23:48 sorear not rakudo-jvm.  we never did get the CLA done in Austin. :)
23:48 colomon doh!
23:48 colomon just nqp-jvm?
23:54 dalek roast: 2277bd3 | (Solomon Foster)++ | S05-metasyntax/litvar.t:
23:54 dalek roast: Niecza refudge.
23:54 dalek roast: review: https://github.com/perl6/roast/commit/2277bd3557
23:55 sorear we'll see
23:55 sorear i'll have to find any(scanner, stamp)
23:58 colomon do you have a printer?
23:59 colomon https://www.usps.com/business/online-postage.htm

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

Perl 6 | Reference Documentation | Rakudo