Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-10-14

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:16 dmol joined #perl6
00:17 Psyche^ joined #perl6
00:19 Mouq joined #perl6
00:58 BenGoldberg joined #perl6
01:01 dayangkun joined #perl6
01:09 woosley joined #perl6
01:22 FROGGS_ joined #perl6
01:33 zakharyas joined #perl6
01:56 rpr223 joined #perl6
02:21 pprs3 joined #perl6
02:50 xenoterracide joined #perl6
02:55 xorp joined #perl6
02:58 xenoterracide_ joined #perl6
02:58 xenoterracide_ joined #perl6
03:10 Vlavv` joined #perl6
03:23 aindilis joined #perl6
03:48 preflex_ joined #perl6
03:57 PZt joined #perl6
04:53 * Mouq makes Rakudo PR #216
05:07 benabik joined #perl6
05:15 masak *yawn* morning, #perl6
05:16 Mouq Don't merge that PR
05:16 Mouq :p
05:23 masak Mouq: shall I invalidate it?
05:25 Mouq I just made a comment saying it shouldn't yet be merged, but go ahead.
05:25 [Sno] joined #perl6
05:27 Woodi morning :)
05:28 masak Mouq: done.
05:29 masak Woodi: mornin'
05:29 masak &
05:29 Woodi so, what is teoretical mining of ':' in perl6 ? eg. one used in ':2nd' above :)
05:30 Mouq ':something' is a pair or adverb. It's just sugar, and the list is here: http://perlcabal.org/syn/S0​2.html#Adverbial_Pair_forms
05:31 Woodi ook, looking
05:31 Mouq Well, sugary
05:33 Mouq r: my $str = "I love books, and they love me". $str ~~ s:2nd/love/hate/; say $str
05:33 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/3C0qoFXzHo�Unsupported use of . to concatenate strings; in Perl 6 please use ~�at /tmp/3C0qoFXzHo:1�------> [32mstr = "I love books, and they love me". [33m�[31m$str ~~ s:2nd/love/hate/; say $…»
05:33 Mouq r: my $str = "I love books, and they love me"; $str ~~ s:2nd/love/hate/; say $str
05:33 camelia rakudo e22ac2: OUTPUT«I love books, and they hate me␤»
05:36 Mouq I guess for matches they're actually called 'Modifiers' S05:171 which is probably for the best since they don't actually de-sugar like normal adverbs
05:36 synopsebot Link: http://perlcabal.org/syn/S05.html#line_171
05:39 Mouq r: $t = 'est'; Q '$t' :qq
05:39 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Z8qLIndEL6â�¤Variable '$t' is not declaredâ�¤at /tmp/Z8qLIndEL6:1â�¤------> [32m$t[33mâ��[31m = 'est'; Q '$t' :qq[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
05:39 Mouq r: my $t = 'est'; say (Q '$t' :qq)
05:39 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/YDLqPBBvPMâ�¤You can't adverb thatâ�¤at /tmp/YDLqPBBvPM:1â�¤------> [32mmy $t = 'est'; say (Q '$t' :qq[33mâ��[31m)[0mâ�¤    expecting any of:â�¤        pair valueâ�¤Â»
05:39 Woodi why Pairs are "extracted" to separate type/form ? something like lists or just sugar ?
05:41 Mouq "All of the adverbial forms (including the normal ones with identifier keys) are considered special tokens and are recognized in various positions in addition to term position"
05:42 Mouq I guess calling them sugar is wrong. They're a chunk of the language
05:47 SamuraiJack_ joined #perl6
05:48 Mouq sub power ( :$level ) { say "His {&?ROUTINE.name} level is over $level!" }; power :9000level
05:48 Mouq r: sub power ( :$level ) { say "His {&?ROUTINE.name} level is over $level!" }; power :9000level
05:48 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/AJRzS9D_FDâ�¤Malformed radix numberâ�¤at /tmp/AJRzS9D_FD:1â�¤------> [32me} level is over $level!" }; power :9000[33mâ��[31mlevel[0mâ�¤    expecting any of:â�¤        number in radix notationâ�¤Â»
05:49 Mouq Awww
05:49 moritz \o
05:49 Mouq o/
05:49 moritz r: my %h = :1st; say %h.perl
05:49 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/C96hdSdtuaâ�¤Malformed radix numberâ�¤at /tmp/C96hdSdtua:1â�¤------> [32mmy %h = :1[33mâ��[31mst; say %h.perl[0mâ�¤    expecting any of:â�¤        number in radix notationâ�¤Â»
05:50 moritz seems to work only as regex adverbs
05:50 moritz std: :1st
05:50 camelia std a0bcfb1: OUTPUT«ok 00:01 120m␤»
05:50 moritz n: my %h = :1st; say %h.perl
05:50 camelia niecza v24-98-g473bd20: OUTPUT«{}.hash␤»
05:50 moritz n: my %h = (:1st); say %h.perl
05:50 camelia niecza v24-98-g473bd20: OUTPUT«{}.hash␤»
05:51 moritz I'm pretty sure that's wrong
05:51 moritz though adverbs are somewhat of a mistery to me
05:51 Mouq S02:3776
05:51 synopsebot Link: http://perlcabal.org/syn/S02.html#line_3776
05:52 Mouq Oh, that didn't link to the right place
05:55 woosley left #perl6
05:55 Mouq I think my browser's just being weird. "For identifiers that take a numeric argument…"
06:04 PacoAir joined #perl6
06:05 darutoko joined #perl6
06:10 FROGGS joined #perl6
06:18 dayangkun joined #perl6
07:04 hummeleB1 joined #perl6
07:05 araujo joined #perl6
07:05 araujo joined #perl6
07:07 kurahaupo joined #perl6
07:17 tadegenban joined #perl6
07:17 tadegenban left #perl6
07:34 PacoAir joined #perl6
07:34 salv0 joined #perl6
07:36 dwarring joined #perl6
07:37 moukeddar joined #perl6
07:37 dwarring PR for nqp rubyish example - https://github.com/perl6/nqp/pull/137
07:46 sqirrel joined #perl6
07:54 dmol joined #perl6
08:08 hoelzro o/ #perl6
08:15 dayangkun joined #perl6
08:21 moritz \o
08:23 moritz dwarring: if that's fine for you, I'd squash all of those commits into one
08:26 * moritz siply goes ahead
08:26 dalek nqp: 3c7ac10 | dwarring++ | examples/rubyish/ (18 files):
08:26 dalek nqp: Add rubyish example
08:26 dalek nqp:
08:26 dalek nqp: Ruby subset extended from the `rubyish-4` example, as introduced in the Edument
08:26 dalek nqp: [Rakudo and NQP internals course](https://github.com/edumentab/ra​kudo-and-nqp-internals-course).
08:26 dalek nqp: review: https://github.com/perl6/nqp/commit/3c7ac10dd7
08:27 moritz and dwarring++ now has an nqp commit bit
08:48 jnthn morning o/
08:53 dakkar joined #perl6
08:54 hoelzro ahoy jnthn
09:05 daxim joined #perl6
09:07 moukeddar joined #perl6
09:15 xinming joined #perl6
09:35 dansamo joined #perl6
09:39 fhelmberger joined #perl6
09:43 xinming joined #perl6
09:55 nwc10 aristotle pointed me at http://programming.oreilly.com/201​3/10/dead-batteries-included.html (which links to http://www.leancrew.com/all-this/2012/04​/python-doesnt-play-nicely-with-others/ ) and possibly related is also http://www.python.org/dev/peps/pep-0439/
09:56 nwc10 ie - the downsides of having a "batteries included" philosphy, that at least some Pythonistas think that Perl is better at OO glue (so Perl 6 ought to steal the best process starting API from CPAN) and that Python is belatedly shipping a module installer in core.
09:58 tadzik oh, is it just me griding my teeth upon the division operator overloaded to do paths?
09:58 tadzik (grinding?)
09:58 nwc10 no, I am too. IIRC Boost does that, and I don't like it at all
10:01 jnthn Or how C++ has << overloaded for output? :)
10:03 diakopter I have whitespace overloaded for concatenation
10:05 diakopter nwc10: did you try it on the pi yet? :)
10:06 nwc10 not yet. Pi's SD card is rather unhappy.
10:07 diakopter I couldn't get my bain working enough to get started on the Galaxy
10:07 diakopter *brain
10:12 tadzik my pi's sdcard is always unhappy :(
10:12 tadzik it doesn't like surprise power downs
10:13 diakopter my galaxy's sdcard makes my galaxy unhappy, even though it's Samsung also
10:13 GlitchMr <jnthn> Or how C++ has << overloaded for output? :)
10:13 GlitchMr I hate iostream interface.
10:14 GlitchMr http://yosefk.com/c++fqa/io.html
10:14 nwc10 jnthn: I guess I'm sort of prepared to overlook << and >> because they seem to end up being pretty sucky for actually coping with any real file formats I ever had to deal with
10:14 jnthn nwc10: So far in my career I managed to escape using C++, and after various discussions with $dayjob's C++ teacher about the language I'm not in a hurry to need to know it. ;)
10:15 GlitchMr I personally find C++ worse than PHP.
10:15 nwc10 yes, keep your remaining sanity for more useful projects
10:15 GlitchMr Yes, you can use sane subset of it, except this sane subset is called C.
10:16 GlitchMr The only thing I could possibly miss are strings, but that's about it.
10:17 tadzik except that they're not part of C++, technically ;)
10:18 * jnthn chuckles at his mail client labeling a mail from on of $dayjob's sales folks as "This message may be a scam"
10:18 GlitchMr std::string is not part of C++?
10:18 tadzik what I mean is that it's part of the standard library, not part of the language
10:18 tadzik as in, "this is not std::string"
10:19 GlitchMr Without standard library, C++ would be C with booleans and classes.
10:19 GlitchMr (and booleans are in C99 anyway)
10:20 GlitchMr It would feel like Perl without arrays and hash tables.
10:31 araujo joined #perl6
10:31 araujo joined #perl6
10:35 fhelmberger_ joined #perl6
10:36 pernatiy joined #perl6
10:44 dalek Perlito: fcea756 | (Flavio S. Glock)++ | misc/tree_grammar.pl:
10:44 dalek Perlito: Perlito - misc - tree grammar placeholder
10:44 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/fcea7562c5
10:49 grondilu joined #perl6
10:51 colomon GlitchMr: for my $work, I had to reimplement the bits of the C++ standard library I needed, because (when I started) I could not rely on my customers all using compilers that had working versions of it.
10:51 GlitchMr That makes sense.
10:51 GlitchMr I mean, C++ is not even a standard.
10:51 GlitchMr Or rather, it is, but it doesn't specify anything.
10:52 GlitchMr For example, name mangling. The specification says it has to be done, but not how, so everybody does it different way.
10:53 FROGGS good that our specs tend to say how it has to work too
10:55 GlitchMr C++ portability doesn't exist.
10:58 daxim_ joined #perl6
10:59 GlitchMr Mixing C++ code? That's simple, ensure they both were compiled with the same options and the same compiler.
11:03 nwc10 IIRC the intent pretty much is that compilers do name mangling *differently*, because if they did it the same way, they would have to lay out the detailed implementation of classes and vtables byte for byte identically
11:05 GlitchMr Other languages have standarized name mangling.
11:06 GlitchMr For example, Foo$1 is anonymous class in method of class Foo.
11:06 GlitchMr (in Java)'
11:07 c1sung joined #perl6
11:09 GlitchMr Or Objective-C, which is compiled language. It also has standarized name mangling.
11:15 * grondilu reads https://en.wikipedia.org/wiki/Name_man​gling#Standardised_name_mangling_in_C.2B.2B
11:15 grondilu according to this, if C++ does not standardize name mangling, it's more or less intentional.
11:17 grondilu Also:  « A standardised requirement for name mangling would also prevent an implementation where mangling was not required at all — for example, a linker which understood the C++ language. »
11:18 grondilu One day there may be a C++ compiler in Perl 6, right?
11:18 masak grondilu: the standard answer to that is "yes, but you'd still have to write a VM/runtime on top of C++"
11:19 grondilu I don't understand why.  Couldn't we use the same VM Perl 6 uses?
11:25 jnthn masak: A C++ compiler written in Perl 6, I think grondilu meant. Not writing a Perl 6 compiler in C++.
11:25 jnthn or that's how I read it, anyway...
11:25 grondilu yeah that's what I meant.
11:26 moritz oh my, no easy task
11:26 Timbus perl in C++... topaz??
11:26 nwc10 first, could I have a Perl 6 compiler written in NQP? :-)
11:26 nwc10 pony remains optional
11:27 nwc10 note, do not want a pony instead of the Perl 6 compiler, even if it's cheaper just to ship me a pon.y
11:27 Timbus plz spec pony
11:27 Timbus pony is required
11:27 moritz plz unspec Timbus :-)
11:28 grondilu I suspect once Perl6 is fast and fully functional, people will have lots of fun writting compilers for various languages.  C++ won't be any exception.
11:30 nwc10 pony has 4 legs, which point downwards. Is unambiguously alive (no nails or perches involved). Does not have captions in front of it (so do not confuse with a LOLCAT or similar). Eats grass, oats and similar vegetable matter, converts to nitrogen rich fertiliser. Effectively also eats money, without doing so directly.
11:31 Timbus yes but
11:31 nwc10 pony will not pass perl 6 regression test suite, however hard you flog
11:31 Timbus what colour is it
11:31 masak pony-colored!
11:31 Timbus hoho
11:31 nwc10 orange. Or the closest you can get with spray-tan.
11:33 nwc10 oh, I forgot, pony is not a valid ingredient of beefburgers, cottage pie, or other cow-based food products
11:33 nwc10 (neither is a Perl 6 compiler)
11:35 nwc10 the pun potential of that has not been tested. It might get rather surreal
11:35 nwc10 although, quite truthfully, yesterday we enjoyed a nice roast for lunch
11:37 jnthn Gee, I look away for a moment and we end up talking about spray-tanning ponies...
11:38 colomon joined #perl6
11:38 moritz .oO( spanning pony trees )
11:48 zakharyas joined #perl6
11:48 flussence_ neat, I can build all of rakudo-jvm in a bit under an hour on my netbook now
11:51 dalek Perlito: 3bc9e5a | (Flavio S. Glock)++ | misc/tree_grammar.pl:
11:51 dalek Perlito: Perlito - misc - tree grammar - actions
11:51 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/3bc9e5a96f
12:07 * [Coke] gets to lead a workshop at work today that was pulled up several days earlier than anticipated on a topic that is much more boring than jnthn++'s workshop.
12:07 * [Coke] is therefore unmotivated, unprepared, and unhappy.
12:10 [Coke] (and offline. laters)
12:26 dayangkun joined #perl6
12:34 tadzik . o O ( unmotivated, unprepared, unhappy and unplugged )
12:35 jnthn Sounds like am emo concert...
12:36 moritz :-)
12:36 FROGGS *g*
12:39 gabriel joined #perl6
12:40 tadzik ;D
12:59 kbaker_ joined #perl6
13:00 pmichaud good morning, #perl6
13:01 jnthn hi, pmichaud
13:01 moritz good am, pm
13:10 colomon_ joined #perl6
13:10 arnsholt_ joined #perl6
13:10 MrMeek-afk joined #perl6
13:10 dalek Perlito: 0be0d64 | (Flavio S. Glock)++ | misc/tree_grammar.pl:
13:10 dalek Perlito: Perlito - misc - tree grammar - macros
13:10 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/0be0d64d40
13:11 kst` joined #perl6
13:12 FROGGS hi pmichaud
13:13 skids joined #perl6
13:13 cotto joined #perl6
13:13 atta joined #perl6
13:14 perigrin joined #perl6
13:14 simcop2387 joined #perl6
13:18 araujo joined #perl6
13:22 prevost joined #perl6
13:33 lowpro30 joined #perl6
13:41 bluescreen10 joined #perl6
13:42 jnap joined #perl6
13:44 btyler joined #perl6
13:54 dalek Perlito: 063696d | (Flavio S. Glock)++ | misc/tree_grammar.pl:
13:54 dalek Perlito: Perlito - misc - tree grammar - cleanup
13:54 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/063696d3af
13:57 kaare_ joined #perl6
14:18 xinming joined #perl6
14:20 Timbus joined #perl6
14:36 ajr joined #perl6
14:43 benabik joined #perl6
14:48 Mouq p5eval: printf("%.50f", 1.115)
14:48 p5eval Mouq: 1.1149999999999999911182158​02998747676610946655273441
14:48 Mouq r: printf("%.50f", 1.115)
14:48 camelia rakudo e22ac2: OUTPUT«1.000000000000000000000​0000000000000000000001.15e+49»
14:48 diakopter p5eval: printf("%.500f", 1.115)
14:48 p5eval diakopter: 1.1149999999999999911182158029987476766109466552​734375000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000
14:48 * Mouq likes p5's approximation better than rakudo's fail
14:49 timotimo ... what the hell is that 1.00000...0001.15 thing? :D
14:49 Mouq n: printf("%.50f", 1.115)
14:49 camelia niecza v24-98-g473bd20: OUTPUT«1.115000000000000000000​00000000000000000000000000000»
14:49 diakopter megafail
14:49 Mouq niecza++
14:50 timotimo well, you *did* ask for a float to be output
14:50 timotimo and niecza just goes ahead and says "haha, that's totally a rat!"
14:50 kaleem joined #perl6
14:53 gshank joined #perl6
14:54 FROGGS Mouq: please send a rakudobug
14:54 xenoterracide_ joined #perl6
14:55 Mouq FROGGS: Roger
14:57 Mouq r: printf("%.50f", '1.115')
14:57 camelia rakudo e22ac2: OUTPUT«1.000000000000000000000​0000000000000000000001.15e+49»
14:57 rindolf joined #perl6
14:58 moritz r-j: printf("%.50f", '1.115')
14:58 camelia rakudo-jvm e22ac2: OUTPUT«1.000000000000000000000​000000001.1499999999999994E49»
14:58 moritz r: printf("%.10f", '1.115')
14:58 camelia rakudo e22ac2: OUTPUT«1.1150000000»
15:02 diakopter nqp-m: printf("%.10f", '1.115')
15:02 camelia nqp-moarvm: OUTPUT«Bytecode validation error at offset 22, instruction 4:␤register operand index 50 out of range 0..9␤»
15:03 FROGGS r: printf("%.50f", 1.115)
15:03 camelia rakudo e22ac2: OUTPUT«1.000000000000000000000​0000000000000000000001.15e+49»
15:03 FROGGS nqp: say(nqp::sprintf("%.50f", 1.115))
15:03 camelia nqp: OUTPUT«get_pmc_keyed() not implemented in class 'Float'␤current instr.: 'next_argument' pc 50548 (src/stage2/gen/NQPHLL.pir:19479) (src/stage2/gen/NQPHLL.nqp:2137)␤»
15:04 FROGGS nqp: say(nqp::sprintf("%.50f", [1.115])) # better
15:04 camelia nqp: OUTPUT«1.0000000000000000000000​000000000000000000001.15e+49␤»
15:04 jnthn nqp-jvm: nqp: say(nqp::sprintf("%.50f", [1.115])) # curious
15:04 camelia nqp-jvm: OUTPUT«Confused at line 2, near "nqp: say(n"␤  in panic (src/stage2/gen/NQPHLL.nqp:279)␤  in comp_unit (src/stage2/gen/NQP.nqp:772)␤  in TOP (src/stage2/gen/NQP.nqp:669)␤  in parse (src/stage2/gen/QRegex.nqp:1247)␤  in parse (src/stage2/gen/NQPHLL.nqp:1376)␤  in…»
15:04 FROGGS why does that take so long to compute?
15:04 jnthn nqp-jvm: say(nqp::sprintf("%.50f", [1.115])) # curious
15:04 camelia nqp-jvm: OUTPUT«1.0000000000000000000000​00000001.1499999999999994E49␤»
15:04 jnthn Portably buggy :P
15:08 Mouq So, you can't submit bugs from rt.perl.org?
15:09 FROGGS no
15:10 FROGGS rakudobug@perl.org
15:13 Mouq It is done.
15:13 rindolf joined #perl6
15:14 dalek evalbot/host07: e2559d7 | diakopter++ | build-scripts/rebuild-nqp-moarvm.sh:
15:14 dalek evalbot/host07: new
15:14 dalek evalbot/host07: review: https://github.com/perl6/evalbot/commit/e2559d7f7b
15:16 jnthn diakopter: Does it need to git pull in the NQP repo too or is that handled elsewhere?
15:17 diakopter did it already
15:19 dalek evalbot/host07: 43c8596 | diakopter++ | evalbot.pl:
15:19 dalek evalbot/host07: newer
15:19 dalek evalbot/host07: review: https://github.com/perl6/evalbot/commit/43c8596e00
15:19 diakopter evalbot control restart
15:20 camelia joined #perl6
15:20 diakopter nqp-moarvm: say('I see you');
15:20 diakopter nqp-m: say('I see you');
15:20 diakopter ..
15:20 camelia nqp-moarvm: OUTPUT«I see you␤»
15:20 camelia nqp-moarvm: OUTPUT«I see you␤»
15:20 diakopter nqp-m: say('I see you');
15:20 camelia nqp-moarvm: OUTPUT«I see you␤»
15:20 diakopter nqp-m: say('I see you');
15:20 camelia nqp-moarvm: OUTPUT«I see you␤»
15:20 diakopter nqp-m: say('I see you');
15:20 camelia nqp-moarvm: OUTPUT«I see you␤»
15:20 diakopter nqp-m: 1
15:20 camelia nqp-moarvm: ( no output )
15:21 diakopter nqp-m: nqp::say(nqp::list)
15:21 camelia nqp-moarvm: OUTPUT«cannot stringify this␤frame_name_0␤»
15:22 diakopter nqp-m: nqp::say(nqp::outer_ctx)
15:22 camelia nqp-moarvm: OUTPUT«No registered operation handler for 'outer_ctx'␤compile_op␤»
15:22 diakopter nqp-m: nqp::say(nqp::outerctx)
15:22 camelia nqp-moarvm: OUTPUT«No registered operation handler for 'outerctx'␤compile_op␤»
15:23 diakopter nqp-m: nqp::say(nqp::reprname(1))
15:23 camelia nqp-moarvm: OUTPUT«P6int␤»
15:23 diakopter nqp-m: nqp::say(nqp::reprname(nqp::newtype))
15:23 camelia nqp-moarvm: OUTPUT«Arg count 0 doesn't equal required operand count 3 for op 'newtype'␤compile_mastop␤»
15:24 diakopter nqp-m: nqp::say(nqp::reprname(nqp::can(1,'')))
15:24 camelia nqp-moarvm: OUTPUT«P6int␤»
15:24 diakopter nqp-m: nqp::say(nqp::can(1,''))
15:24 camelia nqp-moarvm: OUTPUT«0␤»
15:24 diakopter nqp-m: nqp::say(nqp::can(1,nqp::null))
15:24 camelia nqp-moarvm: OUTPUT«0␤»
15:24 diakopter nqp-m: nqp::say(nqp::can(nqp::null,nqp::null))
15:24 camelia nqp-moarvm: OUTPUT«(signal SEGV)»
15:24 diakopter hee
15:24 Mouq nqp-m: nqp::say(nqp::can(nqp::null,'do anything?'))
15:24 camelia nqp-moarvm: OUTPUT«(signal SEGV)»
15:24 diakopter it's *really* null
15:26 jnthn Yeah...we should deal with that at some point :)
15:28 diakopter to whoever fixes that: you have to check all if conditionals that could have an implied NULL, all occurrences of NULL, all memset, and all calloc
15:29 diakopter and all occurrences of 0, for good measure
15:29 diakopter and all ternary ops
15:29 jnthn And while, and... :P
15:30 diakopter and all &&
15:30 diakopter *sigh*
15:30 jnthn Damn, you're making the SEHs sound easy :P
15:30 diakopter and for()
15:31 dalek Perlito: 1e7c085 | (Flavio S. Glock)++ | misc/tree_grammar.pl:
15:31 dalek Perlito: Perlito - misc - tree grammar - more patterns
15:31 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/1e7c0852ee
15:32 diakopter jnthn: are we allocating in gen2 for the 6model bootstrap?
15:32 TimToady hot water heater busted, sigh, so I know what I'm doing today...
15:33 TimToady hopefully just a thermostat
15:33 jnthn TimToady: Not being warm, apparently...
15:33 timotimo stay cool, tim. tim, stay cool
15:33 jnthn diakopter: Don't think so, though we could
15:33 jnthn diakopter: In the grand scheme of things, it's not a lot of objects :)
15:33 TimToady who is this "tim" of which you speak?
15:34 huf a dangerous powerful wizard iirc
15:34 * TimToady 's name is "toady"
15:34 timotimo doesn't scan. http://www.youtube.com/watch?v=qTDvkCU3u3w
15:35 timotimo well, it does for the second part, but that's not the part that everybody knows (obviously)
15:35 * TimToady is merely a toady of tims
15:36 rjbs There is more than one adjective describing you.
15:37 TimToady timid ain
15:37 TimToady ain't one of 'em
15:37 timotimo aye, it's a sign of the tims.
15:37 diakopter there's no tim like the present
15:38 timotimo o TimToady o mores!
15:38 timotimo (mores than one way to do it, that is!)
15:38 diakopter what is that, old Scottish?
15:41 timotimo laTim.
15:46 TimToady it's really an oriental name, so "tim" is the family part, and "toady" is the given name :)
15:47 TimToady that's why I prefer to go by "toady"
15:53 TimToady it also serves as a microshibboleth when people don't know my real name and assume it must be "Tim" :)
15:53 rindolf joined #perl6
15:54 TimToady hence I prefer that my friends *not* do that...
15:57 cognominal joined #perl6
16:00 dayangkun joined #perl6
16:00 timotimo okay :)
16:11 benabik joined #perl6
16:16 go|dfish joined #perl6
16:20 TimToady skimming those Python articles made me realize that one of the reasons for providing more than one way to do it is to allow the language to scale properly; if there's only one way to do things, it's usually either too heavy or too light for your current purposes
16:21 TimToady it's like dealing with the government; the amount of paperwork is always going to be too little or too much :)
16:21 TimToady or a quantum superposition of those...
16:22 jnthn or just not at all :P
16:23 FROGGS joined #perl6
16:24 TimToady well, yes, "can't get there from here" is closely related to "can't get their form here"
16:25 TimToady the other alternative is to pay enough that your government just tells you what would be on your forms if you had any :P
16:26 jnthn I do receive a form. I then can send an SMS to say I agree with it, and that's my tax return done for the year. ;)
16:26 jnthn If I'm paying that much they better be doing the darn calcs for me :P
16:27 [Sno] joined #perl6
16:27 TimToady well, you're still sending in a lot of notional paper, it's just monetary paper :)
16:28 TimToady .oO(waterbed theory of government paper)
16:28 FROGGS o/
16:33 TimToady so government is like a pony: Effectively also eats money, without doing so directly.  (Except, of course, when it does do so directly, but then it's more like a goat.)
16:35 arnsholt_ jnthn: Yeah, I quite like that system as well
16:36 arnsholt Apparently some Americans are horrified by the fact that it's even possible =)
16:36 jnthn ;)
16:37 jnthn arnsholt: BTW, I'm free in Oslo on Thursday evening for a few hours.
16:37 pmurias joined #perl6
16:37 jnthn For beer/dinner/meatspace nativecall plotting... :)
16:38 arnsholt I'll be away, unfortunately
16:39 jnthn Ah, no worries :)
16:39 jnthn Today I heard I'll probably be there for a couple of days in Nov too
16:39 jnthn Seems Norway is a monthly happening nowadays. :)
16:39 fgomez joined #perl6
16:41 arnsholt Cool
16:41 arnsholt Gimme a shout if you have some free time to kill
16:42 jnthn Typically, I have at least one free evening, sometimes two. :)
16:46 TimToady well, in America you can find people horrified by nearly anything that they are told to be horrified by :)
16:46 arnsholt Is there a reason only install/bin/{nqp,perl6} are runnable outside of the repo on JVM?
16:46 arnsholt TimToady: Yeah, I guess that's true of anywhere
16:48 TimToady alas, the one thing they almost never do is get horrified by the motivations of the people that are telling them what to be horrified by
16:48 arnsholt Well, the people doing the telling aren't going to tell them to be horrified by that, are they? =)
16:49 perigrin TimToady: I'm horrified by that truth.
16:49 TimToady it's always trivially easy to "justify" extremism by pointing out the other extreme
16:51 TimToady and compromise seems to be completely busted here right now because the extremists can compromise, and even the people in the middle can't compromise now because that just moves things toward one extreme or the other :)
16:51 TimToady *can't compromise
16:52 SamuraiJack_ joined #perl6
16:52 TimToady We all agree on the necessity of the other guy compromising...
16:55 perigrin well the problem is that compromise *is* moving (somethings) towards one extreme or the other ... and moving *other* things the other direction. If it were everything moving in one direction it would be called capitulation.
16:55 perigrin though the extremists like to think it's called compromise still.
16:55 TimToady and we've decided to clean up all the unsanitary processes in the sausage factory; as a result, no sausage can be made anymore
16:56 TimToady we got rid of all the smoke-filled rooms and all the pork-barrel earmarks, so there's nothing to trade with
16:57 TimToady as a result, we'll likely take down the entire world economy before the tea party wakes up and smells the coffee
16:59 TimToady on the other hand, I'm more depressed by my broken water heater :)
17:01 perigrin that's cold.
17:02 * TimToady thinks, however, that the US is straying into another period resembling the extended fight between North and South, only this time the Red and Blue are a gerrymandered patchwork, and it's hard to foresee a Missouri Compromise for that to hold things together for a few more years
17:03 TimToady and just as in the Civil War (ours, not yours :), the outcome is not really in doubt, but that won't stop them from fighting it
17:06 TimToady well, at least we'll be able to fight using Perl 6  :)
17:08 * TimToady should go fix his water heater before making any more dire predictions :)
17:11 benabik joined #perl6
17:41 sqirrel joined #perl6
17:42 dalek zavolaj: db7be71 | (Arne Skjærholt)++ | / (2 files):
17:42 dalek zavolaj: Make the test suite run on JVM.
17:42 dalek zavolaj:
17:42 dalek zavolaj: Here be hackery. Most notably, figuring out how to compile libraries on JVM is
17:42 dalek zavolaj: tricky, so for now we can run the test suite with Rakudo/Parrot to get them
17:42 dalek zavolaj: built and then again with Rakudo/JVM.
17:42 dalek zavolaj:
17:42 dalek zavolaj: Also, the extension guessing doesn't, so far. It just assumes the shared
17:42 dalek zavolaj: library extension is so.
17:42 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/db7be71a46
17:42 arnsholt jnthn: I think there's a role mixin bug on Rakudo/JVM
17:43 arnsholt If you take that latest Zavolaj commit (and replace the hardcoded .so with .dll) and run t/01-argless.t it should fail on the last test, which exercises the is symbol function
17:45 arnsholt If you move the is symbol so that it's before the the is native, it works
17:45 timotimo weird
17:45 arnsholt IIRC the Parrot backend had this exact same bug
17:47 japhb .tell ssutch FYI: In case you don't watch emails from github, I sent you a pull request for p6-pb.  More to come, I hope.
17:47 yoleaux japhb: I'll pass your message to ssutch.
17:47 ssutch cool
17:47 yoleaux 17:47Z <japhb> ssutch: FYI: In case you don't watch emails from github, I sent you a pull request for p6-pb.  More to come, I hope.
17:47 ssutch ill take a look right now
17:47 japhb Excellent.  :-)
17:48 ssutch merged!
17:48 ssutch are you working on something with perl 6 and protobufs?
17:49 woosley joined #perl6
17:51 japhb ssutch, thanks!  I'd like to get a fully working Perl 6 protobuf implementation, which would allow Perl 6 to participate fully in Google APIs (plus others who adopted protobufs as well).  Your project seemed like a good start.  :-)
17:51 dalek Perlito: 48991b3 | (Flavio S. Glock)++ | misc/tree_grammar.pl:
17:51 dalek Perlito: Perlito - misc - tree grammar - star
17:51 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/48991b305d
17:51 ssutch cool
17:51 ssutch i wanted to use RethinkDB with perl 6
17:52 ssutch when i have some tuits later i hope to finish the impl, really like programming in perl 6
17:52 japhb Nice homepage for RethinkDB.
17:53 japhb Besides the two of us, I believe masak expressed interest in working on this, so I think between us we should be able to scrape up tuits here and there.  :-)
17:54 ssutch totally
17:54 ssutch for me it's just tough right now because i am spending all my time on contracts to support a start up which i spend all my time on ;)
17:54 Rotwang joined #perl6
17:54 japhb LOL.  Been there, done that.
17:55 japhb Notice that I am not doing it *now*.  ;-)
17:55 jeffreykegler joined #perl6
17:55 ssutch yeah i hope that in the next 6 months i'll just be able to spend all my time on a profitable startup and then spend all my time on side projects (perl6 et al.)
17:56 japhb Yay for side projects!
18:08 lizmat_ joined #perl6
18:13 dmol joined #perl6
18:17 frdmn joined #perl6
18:22 jnap joined #perl6
18:44 sqirrel joined #perl6
18:49 BenGoldberg joined #perl6
18:49 BenGoldberg join #moarvm
18:50 * BenGoldberg forgot the /
18:51 FROGGS :o)
18:58 timotimo and now the Pet Shop Boys are playing their famous song "Go Moar" in my head ...
18:59 * FROGGS .oO( /join #moar, life is peaceful there... )
19:02 lowpro30 joined #perl6
19:12 lowpro30_ joined #perl6
19:24 BenGoldberg There is no #moar :)
19:24 lowpro30_ joined #perl6
19:25 jnthn tbh, I think one irc channel is enough for us :P
19:26 BenGoldberg nqp-m: say( NQPMatch )
19:26 camelia nqp-moarvm: OUTPUT«(signal SEGV)»
19:32 wsri joined #perl6
19:33 GlitchMr nqp-m: say( SEGV )
19:33 camelia nqp-moarvm: OUTPUT«␤»
19:33 GlitchMr hm, I see
19:33 GlitchMr nqp-m: say( say )
19:33 camelia nqp-moarvm: OUTPUT«␤»
19:34 GlitchMr camelia: help
19:34 camelia GlitchMr: Usage: <(rakudo-jvm|nqp-jvm|star|pugs|nqp|std|nie​cza|rakudo|p5-to-p6|b|nqp-moarvm|nom|r|j|n​qp-m|nqp-mvm|pnr|p6|nr|npr|n|perl6|rj|p56|​prn|rn|r-j|r-jvm|p|rnp|nrp|rpn)(?^::\s) $perl6_program>
19:34 GlitchMr j: say now
19:34 camelia rakudo-jvm e22ac2: OUTPUT«Instant:1381779309.557␤»
19:35 GlitchMr p5-to-p6: use strict; use warnings; if (1) { while (<>) { print "Hello, world!"; } }
19:35 camelia p5-to-p6 : OUTPUT«# use strict␤# use warnings␤if 1 {␤    while (glob('')) {␤        print('Hello, world!')␤    }␤}␤»
19:35 GlitchMr <> is glob?
19:36 timotimo <> is more like lines()
19:52 moritz p5 <> can act both like glob and like lines();
19:56 TimToady but it's only glob if it doesn't match '<' <ident>? '>'
20:01 sqirrel joined #perl6
20:01 lowpro30__ joined #perl6
20:13 BenGoldberg p5-to-p6: use feature 'say'; say "Hello World";
20:13 camelia p5-to-p6 : OUTPUT«# use feature␤say('Hello World')␤»
20:15 BenGoldberg p5-to-p6: sub foo { print "a method" }; __PACKAGE__->foo;
20:15 camelia p5-to-p6 : OUTPUT«sub main::foo {␤    print('a method')␤}␤__PACKAGE__.foo()␤»
20:15 BenGoldberg r: say __PACKAGE__
20:15 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/GcGJ3Ez_Ckâ�¤Undeclared name:â�¤    __PACKAGE__ used at line 1â�¤â�¤Â»
20:16 BenGoldberg p5-to-p6: sub foo { print "a method" }; main->foo;
20:16 camelia p5-to-p6 : OUTPUT«sub main::foo {␤    print('a method')␤}␤main.foo()␤»
20:16 BenGoldberg r: sub main::foo { print("test") }; main.foo;
20:16 camelia rakudo e22ac2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/uIbkDmSgL_â�¤Undeclared routine:â�¤    main used at line 1. Did you mean '&min'?â�¤â�¤Â»
20:26 rjbs fg
20:26 rjbs Sorry!
20:33 arnsholt *sigh* jdb is a bit crap
20:34 grondilu off topic:  Andrew Ng's class on machine learning starts again today:  http://ml-class.org
20:35 arnsholt I've heard good things about that course
20:35 grondilu yep, the first one was cool.
20:36 arnsholt Machine learning is pretty cool too
20:38 cognominal joined #perl6
20:42 pernatiy joined #perl6
20:43 benabik joined #perl6
20:45 arnsholt jnthn: Another Rakudo/JVM weirdo: calling set_str(null) on a P6OpaqueInstance with a str box_target results in the string being "null"...
20:46 FROGGS r: say nqp::null()
20:46 camelia rakudo e22ac2: OUTPUT«(Mu)␤»
20:46 FROGGS j: say nqp::null()
20:46 FROGGS slooooooow
20:46 camelia rakudo-jvm e22ac2: OUTPUT«(Mu)␤»
20:47 FROGGS I have seen that "null" in a ast dumpm I think
20:47 FROGGS dump*
20:52 arnsholt From jdb inspection it looks like it happens somewhere inside the inlined set_str created by P6str
21:01 jnthn arnsholt: Hmm...odd
21:02 jnthn arnsholt: I can imagine it printing as "(null)" or so
21:02 FROGGS an nqp::isnull_s check would help there I guess
21:02 jnthn arnsholt: Is there a difference between nqp::null and nqp::null_s here?
21:03 bbkr_ joined #perl6
21:04 arnsholt jnthn: No idea, since this is in NativeCall code
21:04 FROGGS nqp-jvm: say(nqp::null_s())
21:04 arnsholt But I've inspected the values, and the java.lang.String being passed to set_str is null
21:04 camelia nqp-jvm: OUTPUT«null␤»
21:04 FROGGS nqp-jvm: say(nqp::null())
21:04 camelia nqp-jvm: OUTPUT«java.lang.NullPointerException␤  in  (src/stage2/gen/NQPCORE.setting:672)␤  in print (src/stage2/gen/NQPCORE.setting:671)␤  in say (src/stage2/gen/NQPCORE.setting:678)␤  in  (/tmp/xpEcSDuZYX:1)␤  in  (src/stage2/gen/NQPHLL.nqp:1098)␤  in eval (src/stage2/…»
21:04 FROGGS nqp: say(nqp::null())
21:04 camelia nqp: OUTPUT«Null PMC access in get_string()␤current instr.: '' pc 768 (src/stage2/gen/NQPCORE.setting.pir:355) (src/stage2/NQPCORE.setting:665)␤»
21:04 FROGGS nqp: say(nqp::null_s())
21:04 camelia nqp: OUTPUT«␤»
21:05 arnsholt jnthn: Check out Zavolaj HEAD and swap out the hardcoded .so for .dll and you should be able to repro by running t/03-simple-returns.t
21:06 arnsholt t/01-argless.t has the mixin bug I mentioned earlier. Pretty sure that very same bug was fixed a while back, so I think it's backend specific
21:12 benabik joined #perl6
21:17 dayangkun joined #perl6
21:22 Ulti can I suggest total is cached in Baggy and not just Bag so that roll uses the cached value
21:23 Ulti at least the way I use BagHash/KeyBag is to sample from a distribution so adding data isn't that common but I .roll thousands of times in tight loops
21:29 TimToady one shouldn't even need to cache Bag since summing an immutable value should cache itself via constant folding in the first palce
21:29 TimToady *place
21:32 BenGoldberg joined #perl6
21:34 pdurbin joined #perl6
21:43 lizmat TimToady: until we have that in place, I guess we can fake constness for now in Bag
21:44 lizmat Ulti: caching total in BagHash/MixHash will have to wait until I've had the tuits to fix visibility of attributes in roles
21:47 jnthn arnsholt: Will look tomorrow, too tired today :(
22:05 retupmoca joined #perl6
22:22 Ulti in the mutable baggy things its more you want to update the total as you go
22:26 dalek nqp: ee184fe | dwarring++ | examples/rubyish/ (3 files):
22:26 dalek nqp: rubyish - line spanning of parenthesised lists; checks on '<%' .. '%>' placement
22:26 dalek nqp: review: https://github.com/perl6/nqp/commit/ee184fe136
22:28 benabik joined #perl6
22:32 pdurbin left #perl6
22:35 lopsoflove joined #perl6
22:38 kurahaupo joined #perl6
22:51 araujo joined #perl6
22:58 denis_boyun joined #perl6
23:10 denis_boyun joined #perl6
23:13 dalek perl6-roast-data: 172099f | coke++ | / (2 files):
23:13 dalek perl6-roast-data: today (automated commit)
23:13 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/172099f998
23:14 [Coke] Not sure if anyone noticed, but rj took the lead briefly when rp had an issue.
23:14 TimToady we want rj to be better, not rp to be worse :)
23:16 colomon rj took the lead in spectests? woah.
23:21 diakopter rm will rm you
23:22 lue .oO(I'm not surprised rp isn't soaring. We 'ad to nail it to its perch, else 'e woulda climbed up to the bars and muscled 'is way out.)
23:22 diakopter -_-
23:23 [Coke] colomon: r.p had the flu or something. it's back today.
23:26 TimToady it was pining for a fjord
23:28 benabik joined #perl6
23:33 dmol joined #perl6
23:52 * colomon just tried to make the C++ ternary operator ? !
23:54 diakopter colomon: giggle.
23:54 colomon it's not the first time I've done it.
23:54 diakopter I've done ?? !! in ... hmm, what was it, JavaScript?
23:54 diakopter Java?
23:54 diakopter I don't remember
23:55 colomon I'm good at remember it's not doubled in C++.  I'm bad at remember what the characters are.
23:55 * colomon is getting better at using GDB thanks to the last two weeks.  :(
23:56 xinming joined #perl6
23:59 pecastro_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo