Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-01-16

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:04 japhb lue: Sorry, got pulled away.  Looking again.
00:05 japhb 1: .elems is unnecessary when peforming math ops on an array
00:05 japhb 2: $end doesn't need to be computed; it's just .end
00:06 japhb 3: 'if ... { return True; }' more idiomatic as 'return True if ...'
00:07 japhb 4: No parens needed on params of -> block of for
00:08 lue japhb: Seems like those things would be best as your own comment, rather than me editing them into mine :)
00:08 japhb 5. Don't need to use a $-sigil scalar to store a Code reference; just use a & sigil and call it normally
00:09 japhb Oh, I was just giving you examples.
00:09 japhb But sure, I suppose so.
00:11 japhb Commit commented on.
00:25 daniel-s joined #perl6
00:29 jeffreykegler joined #perl6
00:40 dalek perl6-examples: e5eac13 | lue++ | 99-problems/P08-viklund.pl:
00:40 dalek perl6-examples: [99-probs] Fix P08-viklund.pl
00:40 dalek perl6-examples:
00:40 dalek perl6-examples: Now, that 'our multi' fix is no longer needed, and in fact breaks the
00:40 dalek perl6-examples: script.
00:40 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/e5eac13eff
00:40 vky joined #perl6
00:53 stevan_ joined #perl6
00:54 stevan_ joined #perl6
00:58 araujo joined #perl6
01:00 clsn So.  I think I have Signature and Parameter matching and .perling working well.
01:01 timotimo \o/
01:01 clsn I guess I should format a patch or something.
01:02 clsn (had the most infuriating bug earlier.  Ever notice that anything ~~ $_ is always True?  Annoying when you expect $_ to be something)
01:03 clsn Wonder if I should do an eqv for Signatures/Parameters too.
01:04 clsn Enh, I suppose X ~~ Y and Y ~~ X is about right.
01:07 clsn I made up a few test cases for Signature matching; I suppose I should submit them to roast.
01:10 clsn <clsn> Enh, I suppose X ~~ Y and Y ~~ X is about right.  -- Actually, not really... ~~ doesn't take rw into account, for example.  Glah.  well, I'll think about it.
01:14 denis_boyun joined #perl6
01:19 jnap joined #perl6
01:42 skids joined #perl6
02:32 MARGELYSR_MORA21 joined #perl6
02:33 skids joined #perl6
02:36 rurban1 joined #perl6
02:49 kaleem joined #perl6
02:54 slavik joined #perl6
02:59 jeffreykegler joined #perl6
03:03 Mouq joined #perl6
03:04 MARGELYSR_MORA21 left #perl6
03:05 dayangkun joined #perl6
03:32 labster joined #perl6
03:35 kbaker_ joined #perl6
03:50 jeffreykegler1 joined #perl6
03:56 thou joined #perl6
04:01 mumukshu joined #perl6
04:02 mumukshu hi
04:09 gfldex joined #perl6
04:12 preflex_ joined #perl6
04:24 SamuraiJack joined #perl6
04:34 dalek Net--IRC/concurrency: 8f8e477 | (Geoffrey Broadwell)++ | lib/Net/IRC/Logger.pm:
04:34 dalek Net--IRC/concurrency: Minor readability cleanup
04:34 dalek Net--IRC/concurrency: review: https://github.com/TiMBuS/​Net--IRC/commit/8f8e477eaf
04:34 dalek Net--IRC/concurrency: 1543ec9 | (Geoffrey Broadwell)++ | lib/Net/IRC/Logger.pm:
04:34 dalek Net--IRC/concurrency: Considerably speed up logging so it's not a bottleneck (for now at least)
04:34 dalek Net--IRC/concurrency: review: https://github.com/TiMBuS/​Net--IRC/commit/1543ec9525
04:34 dalek Net--IRC/concurrency: 30de528 | (Geoffrey Broadwell)++ | lib/Net/IRC/SocketConnection.pm:
04:34 dalek Net--IRC/concurrency: Various SocketConnection improvements
04:34 dalek Net--IRC/concurrency:
04:34 dalek Net--IRC/concurrency: * Better debugging output
04:34 dalek Net--IRC/concurrency: * Ability to log privacy-scrubbed messages
04:34 dalek Net--IRC/concurrency: * .sendln method
04:34 dalek Net--IRC/concurrency: * Factor out !start-threads from .new
04:34 dalek Net--IRC/concurrency: * Various minor code cleanups
04:34 dalek Net--IRC/concurrency: review: https://github.com/TiMBuS/​Net--IRC/commit/30de528cee
04:51 BenGoldberg .ping
04:53 moritz .pong
06:02 immortal joined #perl6
06:18 kaleem joined #perl6
06:25 sergot joined #perl6
06:26 mtj_ joined #perl6
06:29 dayangkun joined #perl6
06:39 darutoko joined #perl6
06:49 jeffreykegler1 left #perl6
06:53 xinming joined #perl6
06:58 xinming_ joined #perl6
07:16 yoleaux joined #perl6
07:18 hummeleBop joined #perl6
07:28 raydiak well, I eventually got rakudo jvm to build on my laptop by putting more ram in it...seems 2 gigs was the minimum required in my case...never did figure out why it wouldn't swap
07:29 moritz raydiak: maybe the JVM marks it memory pages as non-swappable, or something
07:29 moritz I'm pretty sure there is such a mechanism, to avoid swapping of passwords, for example
07:31 raydiak moritz: that's a decent guess...though there are many wires I didn't jiggle like ulimits, kernel config, etc
07:33 AW3i joined #perl6
07:33 raydiak I'm mostly just trying to not have to invest too much energy into this sorry machine until I can replace it with something not half broken and with a hard drive :)
07:34 raydiak but I wanted something with multiple cores to develop Pray concurrency on, so now I have that at least
07:40 FROGGS joined #perl6
07:55 AW3i joined #perl6
07:57 berekuk joined #perl6
08:14 virtualsue joined #perl6
08:17 zakharyas joined #perl6
08:22 LLamaRider joined #perl6
08:37 dmol joined #perl6
08:44 salv0 joined #perl6
08:56 grep0r joined #perl6
09:02 hoelzro morning #perl6
09:02 yoleaux 15 Jan 2014 22:37Z <raiph> hoelzro: http://questhub.io/realm/perl/​quest/52bca72af6d329e15d0000ca
09:03 dayangkun joined #perl6
09:06 bjz joined #perl6
09:06 tadzik apparently you _do_ live twice
09:06 tadzik hello hoelzro
09:07 rindolf joined #perl6
09:11 Vlavv` joined #perl6
09:12 lizmat good *, #perl6!
09:12 lizmat tadzik, hoelzro o/
09:12 salv0 joined #perl6
09:12 FROGGS morning all
09:13 lizmat FROGGS o/
09:13 FROGGS o/
09:14 * lizmat is still looking at the my @a := 5 issue
09:15 lizmat or more verbosely, and at run time:
09:15 lizmat r: my @a; my $b=0; my @b := @a[$b]
09:15 camelia rakudo-parrot 4f66ce: OUTPUT«Type check failed in binding; expected 'Positional' but got 'Any'␤  in block  at /tmp/pBzmgOhCx1:1␤␤»
09:15 camelia ..rakudo-jvm 4f66ce: OUTPUT«Type check failed in binding; expected 'Positional' but got 'Any'␤␤»
09:16 lizmat feels to me that so far we can think of a scalar value as a one element array/list
09:16 lizmat except when binding
09:17 lizmat and I wonder whether that is consistent or wanted
09:17 lizmat that it fails in the above cases
09:18 lizmat some spelunking showed me that this will probably will have to be fixed in perl6_assert_bind_ok in C
09:18 lizmat jnthn: any thoughts?
09:20 hoelzro ahoy tadzik  and lizmat
09:25 moritz r: my @a; my $b=0; say @a[$b].WHAT
09:25 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«(Any)␤»
09:25 moritz why fixing? it's correct
09:25 hoelzro .tell raiph why did you point that QH quest out to me?
09:25 yoleaux hoelzro: I'll pass your message to raiph.
09:25 moritz binding doesn't coerce (like assignment)
09:26 hoelzro thanks yoleaux!
09:26 lizmat moritz: maybe it should?
09:26 moritz lizmat: nope
09:26 moritz lizmat: binding is a low-level operation
09:26 moritz lizmat: when you mess with it, you'd better know what you're doing :-)
09:27 lizmat ok, so how do you stand on slices returning scalars depending on number of elements?
09:27 lizmat if elemens == 1, return scalar from slice
09:27 hoelzro any further thoughts on how binding and type-constrained hash keys should interact? =)
09:27 moritz +1
09:28 hoelzro ex. my %hash{Int} := MyHashImpl
09:28 hoelzro er
09:28 hoelzro ex. my %hash{Int} := MyHashImpl.new
09:28 thou joined #perl6
09:28 moritz hoelzro: is the {Int} a type constraint? Or a container initialization thingy?
09:28 lizmat ok, so I implemented slices return a scalar if .elems == 1
09:28 hoelzro moritz: it's a constraint on the keys
09:28 hoelzro lizmat++ impl'd it
09:28 moritz hoelzro: I know it is
09:29 lizmat and I get *massive* breakage in the spectest because my @a := @b[slice] sometimes returns a scalar
09:29 moritz hoelzro: but that doesn't answer my question
09:29 moritz lizmat: then maybe it's not such a good idea after all :(
09:29 moritz hoelzro: let me explain:  my %hash; constraints %hash to Positional, but initializes %hash with type Hash
09:30 lizmat well, if my @a := 5 would work, it *would* be a good idea and completely consistent
09:30 [Sno] joined #perl6
09:30 moritz hoelzro: so there are two things here: a property of the container, and a property of the object that's stored in it
09:30 pecastro joined #perl6
09:30 moritz s/Positional/Associative/, but you get the idea
09:30 lizmat afk for a few hours&
09:31 moritz hoelzro: so, the question I'm asking: does the {Int} go into the container type constraint?
09:35 dakkar joined #perl6
09:43 masak good antenoon, #perl6
09:44 arnsholt 'lo
09:44 masak lizmat, moritz: fwiw, I'd rather have the scalar/list semantics be consistent than dwimmy.
09:45 masak that is, I don't mind if it's sometimes single-minded and doesn't give me exactly what I wanted -- as long as I can look at the code and figure out what it will give me, statically.
09:45 salv0 joined #perl6
09:46 moritz r: my %h; say so %h{'a'}:exists
09:46 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«False␤»
09:46 moritz r: my @a; say so @a[0]:exists
09:46 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«False␤»
09:47 moritz r: my @a; say so @a[-> $ { 0 }]:exists
09:47 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«True␤»
09:47 moritz r: my @a; say so @a[*+1]:exists
09:47 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«True␤»
09:47 * moritz finds that really unintuitive
09:47 masak what's the proximal cause?
09:47 hoelzro moritz: ooooooh
09:47 FROGGS r: my @a; say (@a[*+1]:exists).perl
09:48 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«(Bool::False,)␤»
09:48 hoelzro I understand (I think)
09:48 masak ah, yes.
09:48 masak 'so' on a 1-elem list.
09:48 hoelzro I believe that (at least in terms of the implementation) it's a property of the underlying Hash
09:48 moritz hoelzro: if it's not a type constraint on the container, it won't interfere with binding.
09:49 hoelzro but that means I can do my %hash{Int} := MyHash.new; %hash<foo> = 'bar'; doesn't it?
09:54 moritz yes
09:59 hoelzro hmm
09:59 hoelzro well, if that's the case
09:59 hoelzro then I think I will try my hand at implementing fixed size arrays in a simliar fashion
10:10 labster joined #perl6
10:11 erkan joined #perl6
10:38 masak when I make a language, it won't have the scalar-vs-1-element-list dwimming. :)
10:38 masak at least not in the main slang.
10:40 * moritz has a long mental "when I make a language" list
10:45 moritz "if I were a god, I'd be *nice*" http://podcastle.org/2012/06/26/podcast​le-214-we-never-talk-about-my-brother/
10:46 berekuk joined #perl6
10:52 FROGGS[mobile] joined #perl6
11:00 d^_^b joined #perl6
11:00 mtk joined #perl6
11:04 FROGGS[mobile]2 joined #perl6
11:06 denis_boyun joined #perl6
11:08 pnu_ joined #perl6
11:16 masak moritz: :)
11:16 smls joined #perl6
11:22 smls re recent log: I'm with masak here, I think array indexing vs array slicing should be distinguishable syntactically
11:26 FROGGS[mobile] joined #perl6
11:26 PZt joined #perl6
11:29 fhelmberger joined #perl6
11:32 thou joined #perl6
11:37 lizmat masak, moritz: perhaps a :parcel adverb ?
11:38 lizmat @a[@b]:parcel would guarantee a parcel, even if only 1 element?
11:48 rindolf joined #perl6
11:54 baest_ joined #perl6
11:56 rindolf joined #perl6
11:59 rindolf joined #perl6
12:01 rindolf joined #perl6
12:03 fhelmberger_ joined #perl6
12:09 masak lizmat: seems sane at first glance.
12:10 masak (that would mean sanity is still opt-in... but maybe Perl as a whole is too committed to the idea of scalar things being indistinguishable from 1-elem lists)
12:14 moritz r: say 1.Parcel
12:14 camelia rakudo-parrot 4f66ce: OUTPUT«No such method 'Parcel' for invocant of type 'Int'␤  in block  at /tmp/s73rDTJwJ6:1␤␤»
12:14 camelia ..rakudo-jvm 4f66ce: OUTPUT«No such method 'Parcel' for invocant of type 'Int'␤␤»
12:14 moritz maybe a Any.Parcel method
12:14 moritz and then we can get simply say .Parcel, and don't need to invent yet another adverb
12:14 hoelzro whoa, when did Gist start supporting Perl 6?
12:15 masak moritz: +1
12:15 hoelzro I swear that it didn't like 2 weeks ago, even though other parts of GH did
12:15 tadzik woo
12:15 masak hoelzro: nice!
12:16 jnthn morning, #perl6
12:16 preflex jnthn: you have 3 new messages. '/msg preflex messages' to read them.
12:16 jnthn uh...wait...which timezone am I...oh. :)
12:16 moritz hoelzro: iirc somebody said yesterday that it gist didn't support Perl 6
12:16 moritz hoelzro: so might have started last night/today
12:16 hoelzro sweet
12:17 jnthn ooh, gist supporting Perl 6 is nice :)
12:17 FROGGS cool!
12:18 FROGGS indeed, it works now
12:18 FROGGS lunch &
12:18 xfix http://codegolf.stackexchange.com/a/18616/3103
12:18 xfix wow, code golf problem with two pages
12:19 xfix Perl 6 wins for now
12:19 xfix With -47 bytes.
12:19 sftp_ joined #perl6
12:19 moritz r: say[+]1..5
12:19 camelia rakudo-jvm 4f66ce: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/qMi_ud_MSu�Preceding context expects a term, but found infix + instead�at /tmp/qMi_ud_MSu:1�------> [32msay[+[33m�[31m]1..5[0m�»
12:19 camelia ..rakudo-parrot 4f66ce: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/eTFl578ZSS�Preceding context expects a term, but found infix + instead�at /tmp/eTFl578ZSS:1�------> [32msay[+[33m�[31m]1..5[0m�»
12:20 moritz r: say [+]1..5
12:20 camelia rakudo-jvm 4f66ce: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/JwTk5X5VJuâ�¤Two terms in a rowâ�¤at /tmp/JwTk5X5VJu:1â�¤------> [32msay [+][33mâ��[31m1..5[0mâ�¤    expecting any of:â�¤        argument listâ�¤        postfixâ�¤        infix stopperâ�¤        â€¦Â»
12:20 camelia ..rakudo-parrot 4f66ce: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Io6d6SIQKdâ�¤Two terms in a rowâ�¤at /tmp/Io6d6SIQKd:1â�¤------> [32msay [+][33mâ��[31m1..5[0mâ�¤    expecting any of:â�¤        argument listâ�¤        postfixâ�¤        infix stopperâ�¤     …»
12:20 moritz r: say [+] 1..5
12:20 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«15␤»
12:20 moritz r: say[+] 1..5
12:20 camelia rakudo-jvm 4f66ce: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/UG8g7nBxW8�Preceding context expects a term, but found infix + instead�at /tmp/UG8g7nBxW8:1�------> [32msay[+[33m�[31m] 1..5[0m�»
12:20 camelia ..rakudo-parrot 4f66ce: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/_IgH6q9yil�Preceding context expects a term, but found infix + instead�at /tmp/_IgH6q9yil:1�------> [32msay[+[33m�[31m] 1..5[0m�»
12:20 * moritz grumbles
12:20 xfix Yeah, [+] operator annoys me.
12:20 moritz r: say [+](1..5)
12:20 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«15␤»
12:20 moritz but you can get rid of that one whitespace
12:20 moritz cause you already have parens around the argument
12:21 masak jnthn! \o/
12:21 xfix say [+] (1..get.eval)».comb
12:21 xfix But... I call at method on it.
12:21 jnthn o/ masak
12:21 xfix Won't this change precedence?
12:21 xfix call a method*
12:22 xfix The parens here are for a reason.
12:23 moritz xfix: why don't you try?
12:23 moritz r: say [+](4, 5).join
12:23 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«9␤»
12:23 moritz r: say [+] (4, 5).join
12:23 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«45␤»
12:23 moritz ok, it does change it. Never mind.
12:35 jnthn lizmat: my @a := 5 # should fail, I remember a time when it did not and it was agreed that this was a bug. Binding is low level. Please don't try to put magic into binding; magical things going on in stuff that's supposed to be low level is already making optimization a huge pain
12:35 lizmat fair enough
12:35 jnthn hoelzro: my %hash{Int} is a type constraint on the keys
12:36 lizmat but that means that if you want to bind the result of something that you don't know is going to be an array or not
12:36 lizmat you cannot use an array
12:36 lizmat which in itself bars some optimizations, no?
12:36 hoelzro jnthn: right, but what does that mean if I bind another Associative to that hash?
12:36 lizmat my $a := @a[@b]
12:36 lizmat rather than:
12:37 lizmat my @a := @b[@c]
12:38 jnthn hoelzro: That it should be ~~ Hash[Mu, Int], iirc
12:38 jnthn lizmat: If you don't know what you're going to have then coerce it to be sure.
12:38 jnthn lizmat: No, I don't see how it bars optimization.
12:39 lizmat because at compile time with @a you know you have a positional, whereas with $a you don't know what you're going to get at runtime
12:39 jnthn lizmat: Well, I can maybe see...ish...but I'm pretty sure avoiding the check is a bigger win
12:39 jnthn lizmat: The other thing to keep in mind is that if you want binding to be that magical, then for consistency one might well expect that:
12:39 jnthn sub foo(@a) { }; foo(1)
12:39 jnthn To also work.
12:40 jnthn 'cus signature binding is also a case of binding.
12:40 jnthn And I'm pretty sure we can't do that, since relying on multi-dispatch distinguishing array vs scalar matters.
12:40 lizmat ok
12:41 jnthn In fact, I know to-json in JSON::Tiny relies on (and gets good use out of) this.
12:41 lizmat but what do you think about slices returning a scalar depending on the number of values returned ?
12:41 lizmat if .elems == 1, then scalar, else Parcel
12:42 jnthn I'm not sure it's about number of results so much as which of the multi candidates for postcircumfix you hit
12:42 jnthn Though, I can see that @a[0]:v is an icky case
12:42 lizmat well, that's just it
12:42 jnthn 'cus it's meant to strip, or whatever we call it
12:42 lizmat yup
12:42 lizmat and even with *-1
12:42 jnthn Yeah. I see the problem.
12:43 lizmat which is what originally spurred my spelunking
12:43 lizmat cause that's indistinguishable from -> {(0,1,2)}
12:43 lizmat and *that* would return a Parcel
12:43 jnthn I'm pretty sure that we can't, performance wise, get away with constructing a Parcel for every array access.
12:43 lizmat and people expect *-1 to *not* return a Parcel
12:44 jnthn Yeah
12:44 hoelzro jnthn: sorry, what does 'it' resolve to here?
12:44 hoelzro %hash, or the new Associative?
12:44 lizmat I implemented .elems == 1 returning a scalar
12:44 jnthn hoelzro: The new associative. Each symbol has a bind constraint.
12:44 lizmat and get rather massive failures in the spectest
12:45 lizmat because of my @a = @b[@c] returning a scalar
12:45 jnthn lizmat: Hmm
12:45 lizmat * :=
12:45 hoelzro jnthn: so the bind should fail if the new associative doesn't ~~ Hash[Mu, Int], you say?
12:46 jnthn hoelzro: I think Hash may be too specific, actually
12:46 jnthn hoelzro: I mean, my Int @a := ... needs the ... to be ~~ Positional[Int]
12:46 jnthn And I think the bind constraint on a %-y thing wants to be Associative[...]
12:47 jnthn lizmat: I think that @b[@c] will always hit the Positional case in multi-dispatch
12:47 jnthn lizmat: And could consistently be a Parcel
12:47 jnthn lizmat: I guess the challenge is to think of simple rules
12:47 lizmat mode the Whatever case is ambiguous
12:47 spider-mario joined #perl6
12:47 lizmat s/mode/but
12:47 jnthn Yeah, the Whatever case is. That's about the only one where I can't see a better way than .elems, though that feels icky
12:48 xfix std: foreach my $x (1) {}
12:48 camelia std 09dda5b: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?) at /tmp/PbZlA2qcKi line 1:â�¤------> [32mforeach my $x (1) [33mâ��[31m{}[0mâ�¤    expecting any of:â�¤ constraintâ�¤     infix or me…»
12:48 lizmat and with adverbs it becomes more blurry
12:48 hoelzro jnthn: I'm just wondering if my %hash{Int} := MyHashImpl.new is even valid
12:48 xfix It still doesn't require this Perl 5 construct?
12:48 hoelzro I'm guessing that the bind needs to check MyHashImpl for some properties on top of associative (namely, the type params)
12:48 jnthn Well, the adverbs all strip, so I could see "if you adverb we always Parel" as a rule
12:48 hoelzro on a side note, speaking of the gist coloring, I found this gem in the logs:
12:48 hoelzro http://irclog.perlgeek.de/​perl6/2012-08-02#i_5868670
12:49 hoelzro talk about foreshadowing =P
12:49 jnthn hoelzro: At the moment Associative only cares for the value type, and lacks a second key type parameter
12:50 bjz joined #perl6
12:50 lizmat fwiw, I feel we need to be consistent
12:50 hoelzro jnthn: the reason I ask is because I'm interested in trying to impl fixed size/shaped arrays, and wonder how I should handle binding
12:50 jnthn hoelzro: that likely wants to change.
12:50 lizmat since any scalar value can be assumed to be a 1 element list/array
12:50 lizmat there is no harm returning a scalar in case of a 1 element parcel
12:50 bjz joined #perl6
12:50 jnthn hoelzro: Well, there's already a patch doing fixed size arrays
12:50 jnthn hoelzro: Which has been through some code review.
12:51 bjz joined #perl6
12:51 hoelzro ah ha
12:51 Ulti are the fixed size also native shaped?
12:51 jnthn lizmat: True, "if there's one result, you get a scalar" is an easy to remember rule
12:51 Ulti as in just offset arrays
12:51 bjz joined #perl6
12:52 lizmat and then we just have to tell everybody that if you bind to a slice
12:52 jnthn lizmat: Probably one for TimToady++ to weigh in on
12:52 lizmat you shouldn't use an array
12:52 jnthn lizmat: tbh the vast majority of folks assing rather than bind
12:52 jnthn uh, assign
12:52 lizmat indeed
12:52 jnthn ...I hate that typo...
12:52 jnthn ...it's a pain in the butt.
12:52 lizmat but there's plenty of spectests that need to be fixed if my @a := 5 is not going to work
12:53 lizmat and possibly in the core as well
12:53 lizmat and most likely in the ecosystem as well
12:53 lizmat not to mention darkpan
12:53 jnthn Well, I'm quite confidnet saying "my @a := 5" is not going to work. I'd be very surprised and kinda concerned if we ruled the other way on that one.
12:53 jnthn s/we/TimToady/
12:54 lizmat I can live with that
12:54 lizmat don't get me wrong
12:54 jnthn The "one elem = scalar" rule, I'm not so sure
12:54 lizmat well, at the moment, it is almost arbitrary what you get
12:54 jnthn I'd hold fire a little just to let TimToady have a chance to weigh in. He may have an answer we all missed. :)
12:54 jnthn Yes, I'm not defending the status quo at all :)
12:54 moritz r: say (1..5).pick.^name
12:54 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«Int␤»
12:54 moritz r: say (1..5).pick(1).^name
12:54 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«Int␤»
12:54 jnthn The only thing I have a strong feeling on here is the := semantis
12:54 moritz r: say (1..5).pick(1..1).^name
12:54 jnthn *semantics
12:54 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«Int␤»
12:54 moritz r: say (1..5).pick(2).^name
12:54 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«List␤»
12:55 moritz r: say 1.map(*+1).^name
12:55 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«List␤»
12:55 moritz jnthn: I agree with you on the binding semantics
12:56 lizmat jnthn: wrt to making @a := 5 work
12:56 lizmat the way I see it, is that this would not be a burden on current execution speed
12:56 lizmat only if the initial test fails (which now throws the exception)
12:57 lizmat only then would a list be created in which the scalar would be put, which would then be bound
12:57 lizmat so the normal code path would not have any change
12:58 jnthn lizmat: Well, but the consistency with parameter binding is still a strong argument not to do it.
12:58 jnthn lizmat: And it's not just speed we should be concerned with, but code size
12:58 lizmat apart from some extra C-code, how would this affect code size ?
12:58 jnthn (Because more compact generated code = more of it in L1)
12:58 lizmat the generated code would still be the same, no?
12:59 jnthn You're only looking at the Parrot way of doing it, though
12:59 lizmat ah, ok
12:59 jnthn On Moar it isn't a C op
12:59 jnthn It emits istype
12:59 jnthn And a branch
12:59 lizmat ok
12:59 lizmat yes, looking only from Parrot standpoint atm
12:59 jnthn 'cus we want the type specializer to be able to deal with istype statically when it can
13:00 jnthn whcih I guess with dead code elimination means it'd throw away the extra code you're suggesting at specialization point...
13:00 jnthn ...so it's not the end of the world.
13:00 jnthn I think the inconsistency we'd introduce with parameter binding is the strongest argument here
13:00 jnthn BUT, I am wary of relying on clever optimizations to make things we class as primitives efficient.
13:01 lizmat understood
13:01 jnthn That's why I pushed for the postcircumfix becoming a sub rather than a method. So the code we send onwards to VMs for array/hash access is already a little better
13:02 jnthn (Yes, I will look at the optimizer soon to ensure we're getting wins from that.)
13:03 jnthn On the JVM it will inline a bunch of levels deep *but* after the code is hot. So we exaggerate the slow start effect, if we ain't careful. I think he CLR only goes one deep, but maybe they changed that.
13:04 jnthn On Moar, we can implement what we like, but inlining multiple levels deep *and* keeping enough around to pretend the stack trace looked a certain way when an error occurs is...really good fun to make work. :)
13:06 jnthn bah, I have a half-complete patch here and I can't remember what I was in the middle of trying to make work... :)
13:13 dag_ joined #perl6
13:13 FROGGS and the weird thing is, you are still smiling
13:14 dag_ xfix: Nice golf! How about replacing the eval with an expression grammar, just to blow the competition out of the water? ;-)
13:14 lizmat jnthn: on closer inspection wrt parameter binding,
13:14 Ulti I think I found a new target for a Perl6 slang https://github.com/parrot/lolcode/​blob/master/src/parser/grammar.pg
13:14 lizmat if we implement the .elems == 1 -> scalar rule
13:14 lizmat we must have @a := 5 work as well
13:15 lizmat otherwise we get this:
13:15 lizmat $ perl6-p -e 'sub a (@x) { say @x }; my @a=0; a(@a[@a])'
13:15 lizmat Nominal type check failed for parameter '@x'; expected Positional but got Int instead
13:16 lizmat :-(
13:21 timotimo let's implement IntParcel, StrParcel, NumParcel and AnyParcel dual-derived types! :P
13:21 jnthn lizmat: Yes, well that probably tells us that the .elems == 1 -> scalar rule is gonna be problematic...
13:23 jnthn We kinda know we can't make binding do that or we seriously break multi-dispatch...
13:26 lizmat r: sub a (@x) { say @x }; my @a=0; my $b:=0; a(@a[$b])  # fails
13:26 camelia rakudo-jvm 4f66ce: OUTPUT«Nominal type check failed for parameter '@x'␤␤»
13:26 camelia ..rakudo-parrot 4f66ce: OUTPUT«Nominal type check failed for parameter '@x'; expected Positional but got Int instead␤  in sub a at /tmp/r0qbipx6Zk:1␤  in block  at /tmp/r0qbipx6Zk:1␤␤»
13:26 lizmat r: sub a (@x) { say @x }; my @a=0; my $b:=(0,); a(@a[$b])  # does not fail
13:26 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«0␤»
13:26 jnthn lizmat: Well, I totally expect the first one to fail
13:27 jnthn Second one perhaps should.
13:28 lizmat but I see your point about multi-dispatch
13:28 lizmat yuck
13:30 FROGGS Ulti: sounds reasonable :o)
13:31 Ulti KTHNX
13:32 FROGGS that reminds me of nagging jnthn about slangs
13:33 jnthn <- jetlagged and stupid today :P
13:34 FROGGS I am not jetlagged :o)
13:35 FROGGS I let others judge on stupidness
13:36 LLamaRider joined #perl6
13:39 dalek Heuristic branch merge: pushed 20 commits to rakudo/moar-support by jnthn
13:41 lizmat jnthn: thinking about it some more, wrt to parameter binding and mmd
13:41 lizmat r: multi a (@x) { say "array" }; multi a ($x) { say "scalar" }; my @a=0; a(@a[@a])  # says array
13:41 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«array␤»
13:41 lizmat if the .elems == 1 -> scalar rule would apply, then it would be say "scalar"
13:42 jnthn Yeah. That's why I think the .elems == 1 rule isn't gonna fly
13:42 jnthn I'm pondering something like:
13:42 lizmat but why would that be a problem?
13:42 jnthn 1) @foo[$x] is always a scalar
13:43 jnthn 2) @foo[@x] is always a Parcel
13:43 jnthn 3) Any adverb results in a Parcel
13:43 lizmat @foo[*-1] ?
13:43 jnthn 4) For WhateverCode, if evaluating the WhateverCode gives back a Positional then you get a Parcel, and if not then you get a Scalar.
13:43 lizmat @foo[ -> {(0,1,2)} ]
13:43 timotimo jnthn: if you have one or two rakudo-jvm tuits left over in the coming days, i'd really appreciate help in moving the dispatcher creation code from nqp to rakudo. i tried a month ago at least and there was a really strange error i ran into; i think the code disappeared somewhere >_<
13:43 jnthn That is, we go on what the WhateverCode returns...
13:44 Lorn_ joined #perl6
13:44 jnthn In fact, do we not re-dispatch to postcircumfix:<[ ]> with the result of the WhateverCode? If so, we get this semantic for free.
13:45 jnthn timotimo: OK. I'm gonna focus on getting moar-support merged today/tomorrow, but we can look at that over the weekend.
13:45 jnthn Or maybe tomorrow
13:45 timotimo cool :)
13:47 jnthn uh...is it me, or does building Rakudo on Parrot feel slower than building Rakudo on Moar?
13:47 lizmat jnthn: if $x is bound to a Parcel in "1) @foo[$x] is always a scalar", then it would have to return a Parcel
13:47 * [Coke] wishes again he timed stuff.
13:48 timotimo jnthn: you would be right; i'm pretty sure that stage parse at least is faster.
13:48 jnthn lizmat: I'm pretty sure TimToady would tell us that we screwed up binding somehow...
13:48 jnthn (for the item case)
13:48 timotimo and as i said recently: the "stage post" + "stage pir" may be faster than "stage mast", but there's a second call to parrot to compile the pir code to pbc and *that* also takes a whole lot of time
13:48 lizmat ok, I'll wait until TimToady chimes in
13:48 lizmat :-)
13:49 jnthn timotimo: Well, I more meant waiting for Grammar, Actions, etc. :)
13:49 jnthn lizmat: Yeah, I think that'd be wise.
13:49 jnthn lizmat: I'm happy you're looking into this. It's a genuine issue.
13:49 timotimo well, those have some parse time to do, too :)
13:50 jnthn Moar stage parse on this machine is 67.438. On Parrot it's 108.610.
13:50 tadzik :o
13:51 jnthn And while stage mast may be a hefty 53.466, post/pir are 42.542 and 3.948 respectively.
13:52 jnthn That's without the pir => pbc thing which takes a few seconds.
13:52 jnthn So they're within a few seconds on the backend stages
13:52 timotimo a few seconds? i need to time that
13:52 jnthn And Moar is notably faster in stage parse, and spends 2 seconds less in stage parse
13:53 jnthn uh, optimize on the end there
13:53 jnthn and this is before Moar has gotten much optimization.
13:53 timotimo was about to say
13:53 jnthn r: say 67.438 / 108.610
13:53 camelia rakudo-parrot 4f66ce, rakudo-jvm 4f66ce: OUTPUT«0.620919␤»
13:54 * jnthn runs spectest on Parrot in the moar-support branch to look for the interesting Hash.defined failure
13:58 timotimo jnthn: they come from nqp::defor
13:58 timotimo i forgot where exactly, but it's always the same method or sub that causes the error
14:00 jnthn timotimo: Yeah, I found it
14:00 jnthn timotimo: I'm building a fix
14:00 jnthn timotimo: It's code I remember changing in moar-support
14:02 timotimo ah, excellent
14:02 timotimo i looked and didn't see anything touching that, so i was very confused
14:02 timotimo afaict, that's the only blocker for a moar-support merge
14:02 jnthn \o/
14:02 jnthn OK, then after I verify this is fixed I could just go for it... :)
14:02 jnthn And let the daily roast tell us about any fallout.
14:03 jnthn And then will jump on any that pops up
14:03 jnthn Gonna do a JVM build also
14:04 timotimo jup =)
14:04 jnthn Yeah, fix seeems to help
14:05 dalek rakudo/moar-support: 1f34bcd | jonathan++ | src/core/Capture.pm:
14:05 dalek rakudo/moar-support: Unbust Capture.BUILD on Parrot.
14:05 dalek rakudo/moar-support: review: https://github.com/rakudo/rakudo/commit/1f34bcdb73
14:06 jnthn General question: how would folks feel about moving the NQP component of perl6-debug into the Rakudo repo?
14:07 jnthn We could leave the UI part as a normal module
14:07 jnthn (Shipped in Star)
14:07 lizmat +1
14:07 timotimo +1
14:07 jnthn Which means we're good to have multiple UIs still
14:08 smls joined #perl6
14:08 jnthn But it'd ease the build side of it.
14:08 jnthn And install
14:08 jnthn Given it needs NQP
14:09 lizmat again, +1  :-)
14:09 jnthn Also it's quite tightly bound to the Grammar and Actions, which means maint wise, it's easier to have it in Rakudo.
14:09 jnthn OK, I'm hearing a loud +1 :)
14:09 lizmat well, only 2 so far
14:09 jnthn 3 :)
14:09 jnthn oh, but you stuffed the ballot :P
14:10 lizmat yup  :-)
14:10 [Coke] jnthn: any chance this'll happen in the next 20m?
14:10 jnthn [Coke]: "this"? :)
14:10 [Coke] you know, the one random thing in backlog I care about. :)
14:11 jnthn [Coke]: oh, moar-support merge...
14:11 [Coke] 09:02 < jnthn> OK, then after I verify this is fixed I could just go for it... :)
14:11 [Coke] wow, you did guess right. :)
14:11 jnthn [Coke]: Oh, if I make it happens in 20 mins do I get roast results later today? :)
14:11 [Coke] I can delay today's run if it's going to happen soon.
14:11 hoelzro dammit, why did this guy stop? http://spamusement.com/
14:12 jnthn [Coke]: OK, lemme verify I didn't bust JVM build
14:12 timotimo hoelzro: i think people in general are about as mad about tthat as they are about the cancellation of Firefly after the first season
14:12 [Coke] yes, if it happens in the next 20m, I can make one change now and it'll pick up during the daily run.
14:12 [Coke] timotimo: NO WHY DID YOU BRING UP THE PAIN
14:12 araujo joined #perl6
14:12 araujo joined #perl6
14:12 timotimo [Coke]: ;(
14:12 jnthn [Coke]: OK, will get it in the next 20 min then :)
14:12 [Coke] ok, will tell moar to build just from nom then.
14:12 hoelzro timotimo: that's another tragedy
14:12 timotimo so many tragedies :(
14:13 timotimo on a related note, i really should watch Dr. Horrible's Sing-Along Blog again
14:14 dalek perl6-roast-data: 9305507 | coke++ | bin/rakudo.moar.sh:
14:14 dalek perl6-roast-data: Pull from default branch
14:14 dalek perl6-roast-data:
14:14 dalek perl6-roast-data: (in anticipation of mergeback to nom)
14:14 dalek perl6-roast-data:
14:14 dalek perl6-roast-data: jnthn++
14:14 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/9305507f86
14:14 jnthn Merging also means we hopefully get moar into p6eval :)
14:14 [Coke] ok, more like 15m. I can delay the daily build if needs be, just let me know. (I can easily kill and restart it too)
14:15 colomon timotimo: "Anarchy run by me"
14:16 kbaker_ joined #perl6
14:17 timotimo :D
14:17 SHODAN joined #perl6
14:17 SHODAN joined #perl6
14:20 pmurias joined #perl6
14:20 jnthn [Coke]: est. 5 mins
14:20 timotimo .o( mergeback mountain )
14:21 jnthn # Your branch is ahead of 'origin/nom' by 251 commits.
14:21 jnthn Geez... :)
14:21 timotimo we should do something about that!
14:21 timotimo it's unfair, you know?
14:22 dalek nqp: ea681df | jonathan++ | tools/build/MOAR_REVISION:
14:22 dalek nqp: Update MOAR_REVISION.
14:22 dalek nqp: review: https://github.com/perl6/nqp/commit/ea681df423
14:23 pmurias jnthn: re moving the nqp part of perl 6 debugger into rakudo, the code seems very internalish
14:23 pmurias so +1
14:25 dalek Heuristic branch merge: pushed 252 commits to rakudo/nom by jnthn
14:25 timotimo \o/
14:26 dalek rakudo/nom: 2e90c5c | jonathan++ | docs/ChangeLog:
14:26 dalek rakudo/nom: Add a ChangeLog entry about MoarVM.
14:26 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2e90c5c74a
14:27 timotimo there is no changelog entry big enough in the whole wide world
14:27 nwc10 I disagree. I think it can be suitably summarised as "Rather good"
14:28 bjz joined #perl6
14:28 timotimo :D
14:28 moritz \o/
14:30 tadzik timotimo: wrong
14:30 dalek evalbot: b149ece | moritz++ | build-scripts/rebuild-rakudo.pl:
14:30 dalek evalbot: build rakudo-m and nqp-m
14:30 dalek evalbot: review: https://github.com/perl6/evalbot/commit/b149ece9ee
14:30 tadzik timotimo | hoelzro: i think people in general are about as mad about tthat as they are about the cancellation of Firefly after the first season
14:30 dalek rakudo/nom: dddd3ff | jonathan++ | README:
14:30 dalek rakudo/nom: Some README tweaks to mention MoarVM.
14:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dddd3ff13c
14:30 tadzik I *wish* it was cancelled *after* the first season :)
14:31 hoelzro indeed =/
14:31 tadzik at least there was Serenity
14:32 timotimo oh, that's what you mean
14:32 timotimo i thought you were complaining that they more or less tried to close off the story
14:32 timotimo which isn't actually accurate
14:32 timotimo except, you know, Serenity
14:35 tadzik I.. got confused reading those last 3 :)
14:36 dalek evalbot: 2644d7e | moritz++ | evalbot.pl:
14:36 dalek evalbot: experimental rakudo-moar support
14:36 dalek evalbot: review: https://github.com/perl6/evalbot/commit/2644d7eb0a
14:37 tadzik is there a --gen-moar?
14:37 jnap joined #perl6
14:37 dalek evalbot: 8d86eb0 | moritz++ | evalbot.pl:
14:37 dalek evalbot: use rakudo's nqp-m
14:37 dalek evalbot: review: https://github.com/perl6/evalbot/commit/8d86eb0865
14:38 moritz tadzik: aye
14:38 tadzik oh oh :)
14:42 dalek features: e8d1817 | jonathan++ | features.json:
14:42 dalek features: Split Rakudo by backend; improve concurrency items
14:42 dalek features:
14:42 dalek features: Makes it easier to see what is supported on what Rakudo backend, and
14:42 dalek features: also aligns concurrency section with current S17.
14:42 dalek features: review: https://github.com/perl6/f​eatures/commit/e8d18172b5
14:42 grondilu m: say "hi?"
14:42 jnthn I hope I didn't mess it up :)
14:42 moritz grondilu: it's not active yet
14:42 moritz it's not even built :(
14:44 timotimo jnthn: there was a copypasto in your features commit: +        "code"    : [ "http://perl6advent.wordpress.com​/2009/12/07/day-7-looping-forp- rj- rm-fun-and-profit/",
14:45 jnthn lol
14:45 * colomon is trying to build all three backends on one go....
14:46 moritz I've been doing that on moar-support for some time
14:46 dalek features: 4b3184d | jonathan++ | features.json:
14:46 dalek features: Correct find/replace gone wild.
14:46 dalek features: review: https://github.com/perl6/f​eatures/commit/4b3184d4bd
14:46 jnthn timotimo++
14:46 timotimo oh, hehe, that was search&replace ... of course! :D
14:48 tadzik sounds like Seek&Destroy :)
14:48 bjz joined #perl6
14:48 FROGGS[mobile] joined #perl6
14:48 [Coke] (build all 3 at the same time) I have been avoiding doing that, running each rakudo backend in a separate container.
14:52 btyler joined #perl6
14:53 * smls is hacking on a Perl 5 script and can't stop thinking "Gosh, I'd love to have access to those Perl 6 cross/recude/hyper operators here..."
14:53 FROGGS[mobile]2 joined #perl6
14:54 JimmyZ +1
14:54 skids joined #perl6
15:02 jnthn JimmyZ: What's the +1 to? :)
15:02 JimmyZ perl 6 debugger into rakudo
15:02 JimmyZ :P
15:03 jnthn ah, k :)
15:06 lizmat errands&
15:06 skids can perl6-debug descend into included PIR?  How?
15:07 masak skids: I'm going to go with "no".
15:08 skids good answer :-) at least I'm not missing something obvious then.
15:13 jnthn skids: no
15:14 jnthn skids: It'll treat it as a single expression/statement
15:15 colomon was all excited to have everything built, but...
15:15 colomon colomon@melissa:~/tools/rakudo$ perl6-m
15:15 colomon Segmentation fault (core dumped)
15:16 timotimo oh, huh, that's new
15:16 colomon clean checkout of rakudo, built all three in one go, the other two work.
15:17 ajr joined #perl6
15:18 treehug88 joined #perl6
15:19 colomon stack trace: https://gist.github.com/colomon/8456640
15:20 moritz evalbot control restart
15:21 camelia joined #perl6
15:21 moritz p: say 'just a test...'
15:21 timotimo colomon: oh, i think the repl is b0rked
15:22 camelia rakudo-parrot dddd3f: OUTPUT«just a test...␤»
15:23 colomon timotimo++ # it does work if I give it a quick script
15:23 jnthn colomon: Yeah, repl bust. Needs fixing before release
15:23 colomon seriously, 98%?  that's crazy talk
15:24 jnthn colomon: Netcraft^W[Coke] confirms it
15:24 moritz m: say 'Hi from Moar'
15:24 camelia rakudo-moar dddd3f: OUTPUT«(signal ABRT)While looking for 'RESTRICTED.setting.moarvm': no such file or directory␤   at src/gen/m-ModuleLoader.nqp:345  (/home/p6eval/rakudo-inst-2/languages/n​qp/lib/Perl6/ModuleLoader.moarvm::52)␤ from src/gen/m-ModuleLoader.nqp:352  (/home/p6eval…»
15:25 colomon jnthn++ all involved++
15:25 moritz seems that RESTRICTED.setting.moarvm isn't installed?
15:26 jnthn moritz: Quite possible...make install likely needs some love
15:26 JimmyZ jnthn: Does it mean you will add vtable io before release? :)
15:27 jnthn JimmyZ: No, nothing so big... :)
15:27 jnthn JimmyZ: Just "make it work" for now :)
15:27 JimmyZ I know why repl bust, I just don't know how to fix it.
15:35 kaleem joined #perl6
15:42 * jnthn discovers more free beer
15:43 nwc10 is it as good as the free beer in Frankfurt?
15:43 jnthn nwc10: No :(
15:43 jnthn moritz: You taking care of RESTRICTED or should I?
15:43 nwc10 Surely "f"ree" bud light has negative value?
15:44 nwc10 at least one can make tea using real water.
15:44 jnthn nwc10: Well, it's Becks or Carlsberg...
15:44 jnthn In Germany there was Franziskaner weissbier...
15:44 tadzik so the tea scenario is still an option :>
15:44 [Coke] "much moar" "so rakudo"
15:44 [Coke] [6~[6~
15:44 nwc10 I'd forgotten exactly what the answer was
15:45 nwc10 I have to admit I'll drink Becks if someone else is paying and they don't expect anything in return
15:45 timotimo :D
15:45 * [Coke] is not a finicky beer drinker. Coke probably needs to drink moar beer.
15:50 dalek features: 94a298f | jonathan++ | features.json:
15:50 dalek features: Correct notes.
15:50 dalek features: review: https://github.com/perl6/f​eatures/commit/94a298fbea
15:50 timotimo is there a spot i can look at to memadvise moarvm's heap spaces to be "no copy on fork" on linux?
15:51 jnthn timotimo: Why don't we want them to be copied?
15:51 nwc10 jnthn: this is another airport?
15:51 jnthn timotimo: Or is this COW?
15:51 nwc10 or some other beer fountain?
15:51 jnthn nwc10: Heathrow
15:51 nwc10 oh
15:51 nwc10 different route home?
15:51 jnthn yeah
15:55 timotimo jnthn: it's COW and at least for forking off a new moarvm where the first thing i'll do is killing the existing thread context ... d)
15:55 timotimo it seems like i can just use the nursery addresses and sizes and give that to madvise directly before the fork and undo the stuff afterwards
15:56 jnthn yeah...well, the nursery tospace/fromspace and the pages in the gen2 allocator...
15:56 timotimo yup
15:58 Psyche^ joined #perl6
16:00 timotimo hm, the sizes of the gen2 bins is a function of the individual size class
16:00 jnthn yeah
16:01 * timotimo marks it as todo
16:01 timotimo how big is the gen2 going to be anyway! probably only a few kilobytes! :P
16:01 timotimo (since the sandbox host process is likely going to be implemented in nqp)
16:02 * timotimo is noticing he's not following "do the simplest thing that could possibly work"
16:03 timotimo and instead, he chases interesting thingies
16:06 hoelzro anyone else going to FOSDEM?
16:07 jnthn r: say (27980 / 98.28) * 99 - 27980
16:07 camelia rakudo-moar dddd3f: OUTPUT«(signal ABRT)While looking for 'RESTRICTED.setting.moarvm': no such file or directory␤   at src/gen/m-ModuleLoader.nqp:345  (/home/p6eval/rakudo-inst-2/languages/n​qp/lib/Perl6/ModuleLoader.moarvm::52)␤ from src/gen/m-ModuleLoader.nqp:352  (/home/p6eval…»
16:07 camelia ..rakudo-parrot dddd3f, rakudo-jvm dddd3f: OUTPUT«204.981685␤»
16:08 jnthn FROGGS[mobile]2: Fixing remaining S05 Unicode prop things is enough to hit 99% ;)
16:08 jnthn r: say 471 - 261
16:09 camelia rakudo-moar dddd3f: OUTPUT«(signal ABRT)While looking for 'RESTRICTED.setting.moarvm': no such file or directory␤   at src/gen/m-ModuleLoader.nqp:345  (/home/p6eval/rakudo-inst-2/languages/n​qp/lib/Perl6/ModuleLoader.moarvm::52)␤ from src/gen/m-ModuleLoader.nqp:352  (/home/p6eval…»
16:09 camelia ..rakudo-parrot dddd3f, rakudo-jvm dddd3f: OUTPUT«210␤»
16:09 jnthn Otherwise we gotta fix everything else :P
16:13 FROGGS joined #perl6
16:13 FROGGS[mobile] joined #perl6
16:14 FROGGS jnthn: true, but I'd need to talk to somebody how to do things to make that unicode stuff work
16:15 FROGGS jnthn: I am even thinking about implementing NFG, for this I would need even more information
16:15 arnsholt timotimo: Was it you who talked about wanting Qt bindings for Perl 6?
16:16 jnthn hoelzro: I'll be at FOSDEM
16:16 hoelzro cool =)
16:16 jnthn hoelzro: Not sure if I was on your list of people who're going or not :)
16:16 hoelzro everyone here is on my list =)
16:16 hoelzro especially you, since I can bug you about low level stuff *and* have a good beer =)
16:17 timotimo arnsholt: yeah
16:17 jnthn \o/
16:17 timotimo arnsholt: why? do you have something crazy cool up your sleeves?
16:17 timotimo because binding a C++ library is always painful
16:17 jnthn .oO( Arms? )
16:17 arnsholt Not really, was just reading about Qt and got to thinking
16:17 timotimo Qt is crazy cool.
16:17 hoelzro Qt++
16:17 arnsholt 'cuz yeah, that's essentially what I was going to ask you about: Did you have any ideas, or just pie-in-the-skying?
16:18 * hoelzro .oO( pie? I thought it was castles )
16:18 timotimo no, just the desire to have it
16:18 timotimo unfortunately, the Qt Jambi project is apparently dead
16:18 timotimo otherwise we'd have bindings for the jvm we could use
16:18 arnsholt I guess we could look at how Python, Perl 5, etc do it
16:19 timotimo yeah, PySide may be interesting to look at
16:19 arnsholt But first I want to finish NativeCall on JVM, and then perhaps looking back into ZMQ
16:19 timotimo yeah, nativecall pretty please :)
16:19 timotimo what about NativeCall on moarvm? :D
16:19 arnsholt I've got CStruct about half-finished on my laptop I think
16:19 arnsholt A Moar port should be a lot easier than JVM, since we can probably steal most of it more or less verbatim from the Parrot version
16:20 timotimo yeah
16:20 arnsholt Would you be interested in digging into ZMQ/iPython again once I get NativeCall working on JVM?
16:20 arnsholt I think that could be a cool thing to have
16:21 timotimo i think it would be very cool, yes
16:21 timotimo unfortunately i don't work like that :P
16:22 arnsholt 's ok
16:24 stevan_ joined #perl6
16:25 FROGGS JimmyZ: about fixing the REPL: I think we would need to set the u.fd in getstdstream, but this explodes when doing so on my box
16:26 FROGGS (and it explodes within getstdstream)
16:26 atroxaper joined #perl6
16:30 jnthn Time to go fly...bbl
16:30 FROGGS o/
16:49 treehug88 joined #perl6
16:53 * [Coke] gets a new phone from work that can display cyrillic, but not kana or hanzi. :|
16:53 * [Coke] adds some speed dial links in russian. :P
17:00 thou joined #perl6
17:10 * japhb is slowly catching up in the backlog
17:10 japhb \o/ to the r-m merge!
17:10 japhb +1 to debugger NQP components in mainline
17:12 japhb +0 to jnthn's 4 rules of scalar v. Parcel for subscripting # Looks sane, but then I'm rather tired.
17:16 raydiak is that more positive than -0?
17:16 japhb raydiak: Yes.
17:18 japhb raydiak: That's about as important as round-to-even
17:18 PerlJam japhb: so ... extremely important?  ;)
17:20 japhb PerlJam: Yep.  My professor explained it as "Without the separation of +0 and -0, airflow simulations get screwed up, and people design planes that don't fly."
17:22 japhb For the peanut gallery: round-to-even keeps stock markets and other high-transaction-volume systems from drifting due to bias in rounding half-ULP (Unit in the Last Place) numbers.
17:22 SamuraiJack joined #perl6
17:24 locsmif joined #perl6
17:25 japhb .oO( Oh Professor Kahan, thank you for bringing pedantry to a whole new level! )
17:25 jeffreykegler joined #perl6
17:29 raydiak I could be confused, but seem to be having a problem which occurs after CHECK and before INIT, and FINAL doesn't appear to exist. How might I track down the line causing the error message (which has no line number)?
17:31 * FROGGS .oO( paste a gist? )
17:32 raydiak of the error? or of the Pray codebase?
17:32 FROGGS the error
17:33 raydiak it's just your standard "no such method jast for NQPMu"...nothing uniquely helpful
17:33 FROGGS btw, did you tried to pass --ll-exception to perl6?
17:33 raydiak nope
17:33 FROGGS ahh, well
17:34 raydiak trying --ll-exception now
17:34 FROGGS I'd think that there is garbage in the ast
17:34 raydiak ast=symbol tree?
17:35 japhb raydiak: Abstract Syntax Tree
17:35 raydiak --ll-exception doesn't change the output
17:35 FROGGS k
17:35 raydiak -c completes with OK
17:35 FROGGS can you pass --target=ast ?
17:36 raydiak trying
17:37 * TimToady is in a quantum superposition of about five timezones, and his backbrain is not in one-to-one correspondence with the backlog...
17:38 FROGGS hmmm
17:38 raydiak ah, rearranged params so --ll-exception actually gets passed in the right place...it does change the output
17:38 * FROGGS muses about TimToady's frontbrain and the frontlog
17:39 TimToady those are in a zero-to-zero correspondence at the moment...
17:39 FROGGS I usually put it right after perl6
17:39 FROGGS (the --ll-exception, not the brane)
17:40 raydiak https://gist.github.com/raydiak/8459623
17:41 FROGGS # variables with fallback can have side effects and cannot be elided
17:41 FROGGS $il.append($last_res.jast)
17:41 FROGGS this is in  (gen/jvm/stage2/QAST.nqp:3790)
17:41 FROGGS so, $last_res is Mu
17:42 FROGGS which should be the last statement of a block
17:42 FROGGS raydiak: can you golf it?
17:43 SamuraiJack joined #perl6
17:43 raydiak FROGGS: I suppose I'll have to make a copy and start shearing chunks off until it un-breaks
17:44 benabik joined #perl6
17:44 japhb moritz: typo in https://github.com/perl6/evalbot/commit/2644d7​eb0a#diff-93d0161b0a7e935ad1f398ddf24753b9R72
17:44 dolnop joined #perl6
17:44 FROGGS raydiak: exactly
17:44 japhb moritz: 'raudo-moar'
17:45 dolnop hello, any news about perl6 for android?
17:46 FROGGS dolnop: there not active project for that I think
17:46 FROGGS might be not too hard since we have Perl 6 on the JVM, but I know nearly nothing about android
17:47 apejens joined #perl6
17:48 avar joined #perl6
17:48 avar joined #perl6
17:48 japhb FROGGS: I believe Dalvik and JDK have very differently designed VMs, so I doubt the code gen would work -- though the Java runtime code might, I dunno.
17:49 FROGGS japhb: but we have some sort of pattern, so, it is at least possible :o)
17:49 dolnop FROGGS: on perldroid Google Page is this note:2013-09-04: No work has been done anymore on this project due to the existence of a TPJ grant to improve cross compilation of perl
17:51 psch joined #perl6
17:51 psch hi #perl6
17:51 colomon o/
17:51 japhb FROGGS: Just found this: https://github.com/perl6/evalbot/commit/2644d7​eb0a#diff-93d0161b0a7e935ad1f398ddf24753b9R72
17:51 FROGGS dolnop: I hope it succeeds
17:52 [Coke] psch: hi
17:52 FROGGS japhb: is that the right link?
17:52 [Coke] TPJ grant?
17:52 dolnop the Perl journal?
17:53 dalek evalbot: 4e909dc | moritz++ | evalbot.pl:
17:53 dalek evalbot: fix typos, japhb++
17:53 dalek evalbot: review: https://github.com/perl6/evalbot/commit/4e909dcd6d
17:56 moritz japhb: success of rakudo-m in evalbot mostly depends on installed rakudo-m working fine :-)
17:56 japhb FROGGS: Nope, that's the wrong link, heh
17:56 japhb http://stackoverflow.com/questions/230​193/what-can-you-not-do-on-the-dalvik-​vm-androids-vm-that-you-can-in-sun-vm
17:57 japhb Some of that is out of date now, but other stuff applies.  According to Wikipedia, as of 2.2 Dalvik had a JIT, and as of 4.4 there's the ART install-time AOT compiler.
17:59 psch warnings in the optimizer should come out as X::AdHoc i assume, seeing as that's how the grammar does them?
17:59 psch err, X::Comp::AdHoc in the grammar that is
18:00 mtk joined #perl6
18:02 moritz actually no
18:02 moritz that's how it's done, but that's not how it should be
18:02 moritz they should have typed exceptions just like everything else
18:03 psch okay
18:04 treehug88 joined #perl6
18:05 psch is 'straight up printing to stderr when a warning gets handled' another of those "that's just how it is right now" cases? S04 talks about continuations and lambdas wrt warnings
18:05 moritz yes
18:06 [Sno] joined #perl6
18:07 psch does that mean i've done nothing actually useful except learning about how stuff works right now, because stuff will change tremendously anyway? :)
18:08 moritz it well change, but probably not tremendously
18:08 moritz a patch that uses old-style warnings/errors will likely not be rejected for that reason
18:09 moritz I just frown a bit about them, that's all :-)
18:09 benabik I keep getting `make: write error` the compilation finishes.  Everything seems to work, just something get's OS X's make confused.
18:09 psch old-style means X::AdHoc in this case? i've introduced X::TypeCheck::Signature for the 'sub foo(Str) {}; foo 42' case
18:10 psch in addition to 'make the optimizer throw and group typed exceptions in the first place'
18:10 kaare_ joined #perl6
18:10 jnap joined #perl6
18:13 psch ... ihave also been changing the name of the sub-exception a few times and settled on X::TypeCheck::Argument instead of X::TypeCheck::Signature it seems
18:13 psch which does seem saner to me, because it's not actually the signature but the argument that's of the wrong type
18:16 psch https://gist.github.com/peschwa/8459897 # this is how what i have behaves currently
18:17 moritz psch: looks good
18:18 moritz psch: though I'd even use throws_like for block around lines 33-39
18:18 moritz something like
18:19 moritz throws_like $code, X::TypeCheck::Argument, expectedSig => { .[0] ~~ Str }, ...
18:19 moritz psch: oh, and please rename that to expected-sig, we use CamelCase only for types in core
18:19 psch okay, will do
18:20 moritz or just 'signature'
18:20 moritz because there's no other signature involved
18:20 psch right
18:21 FROGGS japhb: btw, I'd need a BlackBerry backend then :/
18:25 benabik moat-support got merged without the fixes for Moar vs Parrot CFLAGS I think.  :-(
18:25 benabik *moar-support
18:25 btyler benabik: I've been having linking errors when compiling rakudo on OSX. you got rakudo to build successfully (other than the make error)?
18:26 benabik btyler: Before the moar-support merge, I've been linking Rakudo successfully.
18:26 benabik btyler: However I don't use the --gen-* options and install everything to /usr/local
18:27 btyler hm. I was just sticking the various install/project dirs into $PATH and using --prefix, which worked up through nqp and part of rakudo. trying a fresh run with the --gen-* options now
18:29 tadzik joined #perl6
18:29 benabik Looks like I can build parrot if I don't configure moar.  But I'm getting linker failures for moar even without Parrot.
18:29 btyler https://gist.github.com/kanat​ohodets/7ace7f6ecd474452ed02 # the specific failure, but that's a few revisions ago now. just got a similar one doing a --gen-* run from a clean rakudo clone
18:29 SHODAN joined #perl6
18:30 benabik That's the linker failures I was getting as well.
18:31 btyler oh, sorry, I should be more specific -- linking errors trying to build r-m
18:31 benabik That's why I specified that I was able to build before moar-support.  :-D
18:32 btyler clarity++
18:32 benabik Yeah, Moar build is borked on OS X.  Can't link on its own and it messes with the parrot build as well.
18:33 dalek rakudo/nom: 46b213d | moritz++ | tools/build/Makefile-Moar.in:
18:33 dalek rakudo/nom: fix a moar cleanup
18:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/46b213d6cc
18:34 moritz in what way does it mess with the parrot build?
18:34 benabik r-p fails building parrot exts with "unable to find header ffi.h"
18:35 benabik This is because ffi.h is in /usr/include/ffi on OS X and Moar seems to overwrite the Parrot CFLAGS.  (Or something, I haven't investigated in detail.)
18:35 benabik ISTR someone saying they had a partial patch for it, so I wasn't worrying about it.
18:35 jdv79 joined #perl6
18:38 benabik Erm... Is rakudo trying to compile a moar extension with `-install_name .../libmoar.dylib` on OS X?  That would be a mistake.
18:40 benabik I think it wants its own -install_name and a -lmoar.
18:41 pochi joined #perl6
18:42 dalek rakudo/nom: 2a47e8e | moritz++ | tools/build/Makefile- (3 files):
18:42 dalek rakudo/nom: Build and install restricted setting
18:42 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2a47e8e5e1
18:44 kshannon joined #perl6
18:45 ajr joined #perl6
18:49 vky joined #perl6
18:53 TimToady FROGGS: the view that Nil turns into () is the older one; the docs are more up-to-date than the impl
18:54 FROGGS ahh, I see
18:56 masak so `say (Nil, Nil, Nil).elems` is supposed to print 3 nowadays?
19:04 raiph joined #perl6
19:05 perigrin will it stamp it's foot too? like my daughter when she was 6?
19:06 masak nr: say (Nil, Nil, Nil).elems
19:06 camelia niecza v24-109-g48a8de3: OUTPUT«3␤»
19:06 camelia ..rakudo-parrot dddd3f, rakudo-jvm dddd3f: OUTPUT«0␤»
19:13 dalek rakudo/nom: 347c9a4 | moritz++ | tools/build/Makefile- (2 files):
19:13 dalek rakudo/nom: avoid conflicts between Parrot and Moar Makefile variables
19:13 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/347c9a4409
19:13 moritz that's odd, I could have sworn I had resolved these conflicts ages ago
19:14 masak I have that feeling sometimes, too.
19:15 moritz and I know I have built perl6-p and -m along side each other in moar-support
19:15 moritz many times
19:19 diakopter I have that "I have that feeling many times" feeling many times
19:21 pecastro joined #perl6
19:22 masak diakopter: I don't. only just now.
19:23 diakopter masak: welcome to the club.
19:27 treehug88 joined #perl6
19:30 dalek nqp: 8688e89 | (Tobias Leich)++ | / (3 files):
19:30 dalek nqp: implement \x{} for P5 regexes
19:30 dalek nqp: review: https://github.com/perl6/nqp/commit/8688e896a1
19:37 timotimo what does that do?
19:43 FROGGS timotimo: it is just like \x[FE]
19:43 FROGGS written as \x{FE}
19:43 FROGGS and \x{} would match NUL
19:47 FROGGS p: say chr(0) ~~ /\x[]/ # dunno if we need such behaviour
19:47 camelia rakudo-parrot 2a47e8: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/b7owCwvf16â�¤Unrecognized backslash sequence: '\x'â�¤at /tmp/b7owCwvf16:1â�¤------> [32msay chr(0) ~~ /\[33mâ��[31mx[]/ # dunno if we need such behaviour[0mâ�¤    expecting any of:â�¤        p…»
19:52 TimToady on subscripting, use of .elems would be wrong in the way that introspection is usually wrong; it has to be distinguished on the basis of the type of the argument
19:53 TimToady if people have to put an extra comma or .[0] or .item here or there, so be it
19:53 raiph joined #perl6
19:54 TimToady iow, I think I agree with jnthn's formulation of the rules
19:56 TimToady but maybe we should leave :v orthogogonal to those rules, and require you to use comma when you want to force parcel
19:57 * TimToady is agog as his spelling
20:00 Rotwang joined #perl6
20:04 treehug88 joined #perl6
20:05 diakopter moritz: I keep having to add BAT = .bat back into the windows rakudo moar makefile as it tries to operate on non-existent files otherwise
20:05 diakopter don't know where to fix
20:10 Mouq joined #perl6
20:11 * jnthn back
20:12 jnthn TimToady: :v has existence filtering semantics, iirc?
20:12 nwc10 jnthn: yay! With real beer waiting for you?
20:13 jnthn Yeah, though I seem to have mildly upset my stomach with something I ate at some point, or maybe just shoved too much food in it. So I'll go easy tonight :)
20:13 timotimo easy on the beer but not easy on the code? :P
20:14 FROGGS hehe
20:16 telex joined #perl6
20:16 TimToady jnthn: yeah, so maybe that's an argument against orthogonal :v
20:17 TimToady due to the implicit grep
20:17 TimToady plus arguably :v will strike some folks as cleaner that .[stuff,]
20:17 TimToady though I can argue it the other way too
20:18 lizmat fwiw, the same applies for :k
20:18 jnthn TimToady: Yes, I was thinking especially of :v when I said "adverb forces Parcel"
20:18 jnthn TimToady: I can kinda argue it both ways too, but we're trying to avoid special things to remember and making :v different would feel odd
20:19 lizmat wrt to being able to distinguish by the argument
20:20 lizmat if a scalar is bound to a parcel, and that scalar would be used as index in a slice
20:20 lizmat would you expect a scalar to be returned, or a parcel ?
20:21 jnthn lizmat: I *think* TimToady would expect a scalar, but the mechanism is...hazy, at least to me.
20:21 jnthn This is the kinda reason we introduced my \x := ...
20:21 lizmat and what would that scalar contain then?  the value of the first element of the Parcel?
20:21 SHODAN joined #perl6
20:23 jnthn I think the expectation would be that it'd do what happens in
20:23 jnthn r: my $a = (1,2,3); my @x = <a b c>; say @x[$a]
20:23 diakopter jnthn: I'm surprised you don't get the same error with nmake install
20:23 camelia rakudo-jvm 2a47e8: OUTPUT«(timeout)»
20:23 camelia ..rakudo-parrot 2a47e8, rakudo-moar 2a47e8: OUTPUT«(Any)␤»
20:23 jnthn um :)
20:23 jnthn oh, duh
20:23 jnthn r: my $a = (1,2,3); my @x = <a b c d>; say @x[$a]
20:23 diakopter m: ;
20:24 camelia rakudo-parrot 2a47e8, rakudo-jvm 2a47e8, rakudo-moar 2a47e8: OUTPUT«d␤»
20:24 camelia rakudo-moar 2a47e8: ( no output )
20:24 diakopter m: say .say
20:24 camelia rakudo-moar 2a47e8: OUTPUT«Nil␤True␤»
20:24 jnthn fail :) Anyway, d, because it numifies (1,2,3) which gives the number of elems.
20:24 lizmat r: my $a := (1,2,3); my @x = <a b c d>; say @x[$a]
20:24 camelia rakudo-parrot 2a47e8, rakudo-jvm 2a47e8, rakudo-moar 2a47e8: OUTPUT«b c d␤»
20:42 NotJack joined #perl6
20:48 dalek nqp: 1595bd4 | (Tobias Leich)++ | src/QRegex/P5Regex/Grammar.nqp:
20:48 dalek nqp: allow more hexints in \x{}
20:48 dalek nqp: review: https://github.com/perl6/nqp/commit/1595bd4a95
20:52 jeffreykegler left #perl6
20:54 NotJack it's not fun trying to steal algorithms from CPAN when your language doesn't have great regex support :(
20:56 FROGGS NotJack: to which language do you want to steal it to?
20:56 NotJack J
20:57 timotimo arnsholt: how much is missing after CStruct for jvm is implemented?
20:57 NotJack Data structure-wise, J is like a uptight german
20:57 colomon joined #perl6
20:57 diakopter timotimo: the things
20:57 NotJack it's well-ordered or GTFO
20:58 FROGGS ohh wow, and they say Perl looks like line noise O.o
20:59 * jnthn hands NotJack "quote of the day" award :)
21:01 timotimo NotJack: DAS NICHT STACKENBLACKEN!
21:02 NotJack lol
21:03 NotJack FROGGS: If Perl is line noise, J is nails on a blackboard
21:03 FROGGS ICH WERDE DIESE SCHALLPLATTE NICHT KAUFEN, SIE IST ZERKRATZT!!!
21:03 FROGGS NotJack: yeah, feels like
21:03 FROGGS *shudder*
21:05 timotimo FROGGS: that doesn't have to be yelled
21:05 timotimo oh
21:05 timotimo well, it *is* german
21:05 timotimo so i guess it does have to be yelled
21:05 NotJack I'm pretty sure all proper German must be yelled
21:05 NotJack damnit
21:06 FROGGS timotimo: you can't whisper KAMPFPANZERWAGEN, really
21:06 jnthn Outlawing lowercase wasn't going to fly, so they compromised on just capitalizing all the nouns :P
21:07 lue .oO(Unless it starts with ß, grumble grumble...)
21:09 timotimo that's right
21:09 timotimo DORT, EIN EICHHÖRNCHEN!
21:10 arnsholt timotimo: After CStruct we're pretty much there. Potentially a bit of trickyness with callbacks, but structs are the last remaining really tricky bit I expect
21:10 psch but but, country of poets and thinkers...
21:11 arnsholt Any particular reason you wonder?
21:12 timotimo more like ... shou..ets and ... screamers?
21:12 timotimo arnsholt: just trying to estimate when you may be able to finish it up and we get a rakudo star on the jvm :D
21:13 FROGGS timotimo: my kids tended to say ARSCHHÖRNCHEN, now it is more like EINHÖRNCHEN
21:13 FROGGS both is cute somehow
21:14 timotimo haha
21:17 psch "Die Deutschen tun nicht viel, aber sie schreien desto mehr. [...] Das sinnige deutsche Volk liebt es zu brüllen und zu kreischen, und zum Schreien hat es immer Zeit. " frei nach Wolfgang Menzel.
21:17 dayangkun joined #perl6
21:17 psch more on topic: i've decided that i have no idea how exactly warnings could be handled as typed exceptions
21:18 psch which means i'll probably have to get a PR finished soon, although i'm still missing a few test-cases i would like to...test
21:19 psch e.g. i still miss a case for X::Undeclared::Method with !private set that falls into the responsability of the optimizer
21:20 psch the naive case seems to be handled before, as i found out with FROGGS++ help the last time i was around
21:20 psch r: try EVAL 'class A { method doit { self!really; } }; my A $a .= new; $a.doit;'; $!.perl # as this is already typed
21:20 camelia rakudo-jvm 347c9a: OUTPUT«(timeout)»
21:20 camelia ..rakudo-parrot 347c9a, rakudo-moar 347c9a: ( no output )
21:20 psch wait what
21:21 psch ohh, same mistake, no say
21:21 psch r: try EVAL 'class A { method doit { self!really; } }; my A $a .= new; $a.doit;'; say $!.perl #
21:21 camelia rakudo-parrot 347c9a, rakudo-jvm 347c9a, rakudo-moar 347c9a: OUTPUT«X::Method::NotFound.new(method => "!really", typename => "A", private => Bool::True)␤»
21:27 skids camelia: r: say -6 +| -2
21:27 camelia skids: rakudo-parrot 347c9a, rakudo-moar 347c9a: OUTPUT«-6␤»
21:27 camelia ..rakudo-jvm 347c9a: OUTPUT«-2␤»
21:28 colomon :\
21:29 skids r-moar seems to have inherited r-parrot's libtommath
21:29 FROGGS it has
21:29 colomon but hey, rakudo-moar works in camelia now!  \o/
21:29 skids \o/
21:29 FROGGS n: say -6 +| -2
21:29 camelia niecza v24-109-g48a8de3: OUTPUT«-2␤»
21:29 skids Yes, considering I only usually build star that is immensely helpful.
21:30 FROGGS is -2 the correct answer?
21:30 skids yes.
21:36 jnthn m: say 'moar'
21:36 camelia rakudo-moar 347c9a: OUTPUT«moar␤»
21:36 jnthn yay
21:37 diakopter m: say `moar --version`
21:37 camelia rakudo-moar 347c9a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/UmrzhupyOhâ�¤Two terms in a rowâ�¤at /tmp/UmrzhupyOh:1â�¤------> [32msay [33mâ��[31m`moar --version`[0mâ�¤    expecting any of:â�¤        argument listâ�¤        prefix or termâ�¤        prefix …»
21:37 timotimo but is it really moar?
21:38 diakopter m: say $*VM
21:38 camelia rakudo-moar 347c9a: OUTPUT«(timeout)»
21:38 skids that shut it up.
21:38 diakopter m: say $*VM.perl
21:38 skids not supposed to be a stumper :-)
21:38 camelia rakudo-moar 347c9a: OUTPUT«(timeout)»
21:38 benabik r-p: say $*VM
21:38 diakopter m: print $*VM
21:38 timotimo it's very slow at that, yeah :(
21:39 camelia rakudo-parrot 347c9a: OUTPUT«("name" => "parrot", "config" => {"git_describe" => "RELEASE_5_9_0", "sha1" => "e8eebc017012a1ac97c704c48c1d3429395104ee", "a" => ".a", "ar" => "ar", "ar_extra" => "", "ar_out" => "", "archname" => "x86_64-linux-gnu-thread-multi", "arflags" => "cr", "as"…»
21:39 camelia rakudo-moar 347c9a: OUTPUT«name moar config     ccoptiflags     -O1 uvrule      $(AR) $(ARFLAGS) $@ $(UV_LINUX) tomobjects      3rdparty/libtommath/bn_error.o 3rdparty/libtommath/bn_fast_mp_invmod.o 3rdparty/libtommath/bn_fast_mp_montgomery_reduce.o 3rdparty/libtommath/bn_fast_s_mp_mul_digs.o
21:39 camelia ..3rdpart…»
21:39 itz is there a FOSDEM Perl Room again this year?
21:39 benabik Problem with .gist?
21:39 diakopter itz: yes
21:39 jnthn m: say $*EXECUTABLE_NAME
21:39 camelia rakudo-moar 347c9a: OUTPUT«perl6-m␤»
21:39 diakopter m: print $*VM<name>
21:39 camelia rakudo-moar 347c9a: OUTPUT«moar»
21:40 FROGGS m: say nqp::backendconfig<version>
21:40 diakopter r: print $*VM<name>
21:40 camelia rakudo-moar 347c9a: OUTPUT«2013.10-367-ga313c0a␤»
21:40 camelia rakudo-parrot 347c9a: OUTPUT«parrot»
21:40 camelia ..rakudo-jvm 347c9a: OUTPUT«jvm»
21:40 camelia ..rakudo-moar 347c9a: OUTPUT«moar»
21:40 FROGGS m: say nqp::backendconfig<config>
21:40 camelia rakudo-moar 347c9a: OUTPUT«--optimize --prefix=/home/p6eval/rakudo-inst-2 --make-install␤»
21:41 vky joined #perl6
21:41 jnthn http://perl6.org/compilers/features now has all the backends, btw
21:43 timotimo oh, set operations for character classes seems like something doable in not too much time
21:43 krunen joined #perl6
21:43 timotimo it'd give us one more green button :)
21:46 araujo joined #perl6
21:50 timotimo since our character classes are currently "one long string of all candidate characters", it'd just be doing these set operations on these characters once at regex qast construction time
22:03 colomon joined #perl6
22:04 jnthn Time for some rest...back tomorrow :)
22:06 treehug88 joined #perl6
22:09 treehug88 joined #perl6
22:13 * psch goes to sleep o/
22:27 dalek perl6-roast-data: 69140ec | coke++ | / (5 files):
22:27 dalek perl6-roast-data: today (automated commit)
22:27 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/69140ec719
22:28 dalek perl6-roast-data: 7b2b4f9 | coke++ | perl6_pass_rates.csv:
22:28 dalek perl6-roast-data: note that today's moar run on nom
22:28 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/7b2b4f99c2
22:29 [Coke] 98.31% #moar
22:33 treehug88 joined #perl6
22:44 lizmat also sleep&
22:45 jeffreykegler joined #perl6
23:00 Mouq joined #perl6
23:03 d4l3k_ joined #perl6
23:10 virtualsue joined #perl6
23:16 dmol joined #perl6
23:23 vky joined #perl6
23:44 Rotwang joined #perl6
23:53 jeffreykegler1 joined #perl6
23:58 FROGGS joined #perl6

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

Perl 6 | Reference Documentation | Rakudo