Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-07-13

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:13 davef hi - simple regex question. How do I capture parts of a regex into vars/ a hash in rakudo?
00:13 davef rakudo:  'USE java::nio::IntBuffer uses java::nio::ByteOrder' ~~ /^USE\s+(\w+)\s+/; $/.perl.say;
00:13 p6eval rakudo 402470: OUTPUT«Match.new(␤ # WARNING: this is not working perl code␤ # and for debugging purposes only␤ ast  => "",␤ Str => "",␤ from => 50,␤ to   => -2,␤)␤»
01:15 Whiteknight joined #perl6
01:46 szabgab joined #perl6
01:52 ihrd joined #perl6
01:52 ihrd left #perl6
02:13 agentzh joined #perl6
02:22 s1n is :name required for WALK? the spec seems to indicate that it returns methods and walk.t's cand_order calls the parameters as the matched methods
02:22 s1n i was under the impression that WALK returned the classes in the hierarchy
02:23 s1n or does it traverse the hierarchy looking for matching methods
02:27 buubot joined #perl6
02:27 synth joined #perl6
02:30 KyleHa joined #perl6
02:30 KyleHa perl6: Inf.int.say
02:30 p6eval elf 27520: OUTPUT«Can't locate object method "int" via package "Inf" (perhaps you forgot to load "Inf"?) at (eval 123) line 3.␤ at ./elf_h line 5881␤»
02:31 p6eval ..rakudo 402470: OUTPUT«-2147483648␤»
02:31 p6eval ..pugs: OUTPUT«179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479…
02:31 pugs_svn r27521 | kyle++ | [t/spec] Test for RT #61566
02:31 KyleHa STD: Inf.int.say
02:32 s1n use std:
02:32 KyleHa std: Inf.int.say
02:32 p6eval std 27520: OUTPUT«ok 00:02 36m␤»
02:34 KyleHa What should Inf.int.say say?
02:35 KyleHa S02 says that the Int type can hold Inf and NaN, but I don't see how those are supposed to "look".
02:50 eternaleye joined #perl6
02:52 tann joined #perl6
02:53 alester joined #perl6
02:56 tann__ joined #perl6
03:24 KyleHa rakudo: say '~~' ~~ /~~/
03:24 p6eval rakudo 402470: OUTPUT«perl6regex parse error: Unable to parse goal after ~ at offset 25, found '/'␤in Main (src/gen_setting.pm:3340)␤»
03:24 frankshaw joined #perl6
03:24 KyleHa rakudo: say '~~' ~~ /\~\~/
03:24 p6eval rakudo 402470: OUTPUT«~~␤»
03:24 KyleHa rakudo: say '~~' ~~ /'~~'/
03:24 p6eval rakudo 402470: OUTPUT«~~␤»
03:26 HemanShaw joined #perl6
03:27 pugs_svn r27522 | kyle++ | [t/spec] Test for RT #61732
03:28 pugs_svn r27523 | kyle++ | [t/spec] Note an RT ticket that corresponds to an existing test.
03:28 pugs_svn r27524 | kyle++ | [t/spec] Test for RT #61772
03:28 pugs_svn r27525 | kyle++ | [t/spec] Better =~ braino tests for RT #61778
03:32 frew_ joined #perl6
03:58 cottoo joined #perl6
04:22 sri_kraih_ joined #perl6
04:29 azawawi joined #perl6
04:29 azawawi hi
04:38 ihrd joined #perl6
04:46 kate21de joined #perl6
04:50 ihrd left #perl6
04:51 ihrd joined #perl6
04:51 ihrd left #perl6
05:40 kane_ joined #perl6
05:47 agentzh joined #perl6
05:51 RickyWh joined #perl6
05:51 RickyWh is perl 6 beta?
05:54 finanalyst joined #perl6
05:58 bionoid RickyWh: Not yet. :P
06:01 RickyWh ahh jeez
06:10 bionoid RickyWh: You can use it for experimenting and learning, but not for production stuff. Use perl5 :)
06:15 ejs joined #perl6
06:25 rfordinal joined #perl6
06:34 iblechbot joined #perl6
06:38 DemoFreak joined #perl6
06:40 ejs joined #perl6
06:51 ejs1 joined #perl6
06:59 dakkar joined #perl6
07:02 ihrd joined #perl6
07:03 ihrd left #perl6
07:04 rfordinal joined #perl6
07:06 ihrd1 joined #perl6
07:06 ihrd1 left #perl6
07:06 jan joined #perl6
07:07 amoc joined #perl6
07:08 rfordinal left #perl6
07:10 ihrd joined #perl6
07:10 ihrd left #perl6
07:21 ihrd joined #perl6
07:21 ihrd left #perl6
07:28 Jedai joined #perl6
07:36 pmurias joined #perl6
07:44 pmurias ruoso: hi
07:44 drbean joined #perl6
07:49 Matt-W Morning
07:51 pmurias morning
08:08 eMaX joined #perl6
08:09 barney joined #perl6
08:19 broquaint joined #perl6
08:28 fridim_ joined #perl6
09:01 payload joined #perl6
09:10 Eevee joined #perl6
09:31 donaldh joined #perl6
09:40 sri_kraih joined #perl6
09:42 mikehh joined #perl6
09:50 Eevee joined #perl6
09:51 ejs1 joined #perl6
10:08 moritz_ phenny: tell KyleHa testing for Inf is generally done with ~~ Inf
10:08 phenny moritz_: I'll pass that on when KyleHa is around.
10:10 masak joined #perl6
10:20 frankshaw joined #perl6
10:22 Matt-W o/ masak
10:23 masak Matt-W: \o
10:26 Matt-W I won my battle with Xerces-C++
10:26 masak congrats.
10:26 masak is there any practical difference between 'role R2 is R1 { ... }' and 'role R2 does R1 { ... }'?
10:27 Matt-W hmm
10:27 Matt-W I'm not sure
10:28 moritz_ isn't the former forbidden?
10:28 Matt-W I haven't quite got my head into the philosophy behind role composition vs class inheritance
10:29 Matt-W so I'm not sure if it makes sense for roles to be able to inherit from other roles
10:30 masak moritz_: in that case, I'm happy.
10:30 * Matt-W would be quite happy too
10:31 moritz_ note that I too don't claim to grok roles in Perl 6
10:31 moritz_ (or in general, that is)
10:31 Khisanth joined #perl6
10:32 drbean joined #perl6
10:33 ruoso hi pmurias
10:36 jauaor joined #perl6
10:40 pmurias ruoso: hi
10:42 ruoso pmurias, have you been able to find interesting results with the smop profiler?
10:43 pmurias i'm working on making the smop profiler faster as it's currently to slow to profile anything without --empty-setting
10:44 ruoso cool
10:44 ruoso so you're profiling the profiler :P
10:45 pmurias do you think it's ok if the profiler used Forest? (it will be an extra dependency when profiling)
10:45 moritz_ smop is all about going meta, isn't it? :-)
10:46 ruoso pmurias, forest?
10:46 jauaor_ joined #perl6
10:47 ruoso moritz_, heh... every cs problem can be solved with another level of indirection... except when the problem is "too many levels of indirection"
10:48 pmurias ruoso: a CPAN module for tree's
10:48 moritz_ unless you find a way to abstract away abstraction layers :-)
10:48 pmurias * trees
10:48 jauaor joined #perl6
10:49 ruoso moritz_, heh..
10:49 jauaor hah
10:50 davef joined #perl6
10:51 ruoso pmurias, depending on CPAN modules is fine...
10:55 pmurias ruoso: do you know how can i hide the measurement overhead from the profile?
10:55 ruoso pmurias, not really
10:58 ruoso moritz_, but seriously, "abstracting away abstraction levels" is actually the plan on how SMOP can be really fast...
11:01 * ruoso commute &
11:05 payload joined #perl6
11:15 alc joined #perl6
11:20 meppl joined #perl6
11:20 donaldh joined #perl6
11:22 cognominal joined #perl6
11:29 davef Hi, I'm trying to port a java API to p6. I have classes that use other classes that have methods that return objects of the original class.
11:30 davef So one class 'uses' another which then 'use's the first.  Should I be using 'need' and is it in rakudo?
11:35 moritz_ need is not yet in rakudo.
11:37 skids joined #perl6
11:37 davef If class A uses class B that has methods that return class A, will 'use' handle this?
11:38 * moritz_ has no idea
11:39 icwiener joined #perl6
11:39 davef I assume that if class B has a method with --> A, then you need the 'use A' in class B's file.
11:40 moritz_ the compiler has to know somehow that A is a type
11:40 moritz_ so it must see a type declaration somehwere
11:41 last joined #perl6
11:41 moritz_ (a workaround for now is to omit the declaration of the return type for now)
11:42 davef won't I get the same issue if a method has a parameter of the other class?
11:43 moritz_ you will, right
12:14 KyleHa joined #perl6
12:18 zamolxes joined #perl6
12:31 molaf joined #perl6
12:44 ihrd joined #perl6
12:52 synth joined #perl6
12:58 Sunbeam[Pinged] joined #Perl6
13:11 last joined #perl6
13:21 finanalyst left #perl6
13:24 davef Is P6 'is' equivalent to java's extends?
13:25 moritz_ class A is B { # in this context it's inheritance
13:26 Matt-W sub foo() is export
13:26 Matt-W ^ there it means something completely different
13:26 davef sorry, I meant in the class context.
13:27 Matt-W no problem
13:27 Matt-W in that case, yes it's rather like 'extends'
13:28 Matt-W insofar as inheritance in Perl 6 is like inheritance in Java
13:29 davef thanks
13:29 nihiliad joined #perl6
13:41 M_o_C joined #perl6
13:44 frankshaw joined #perl6
13:49 alester joined #perl6
13:56 PacoLinux joined #perl6
14:00 macae joined #perl6
14:09 frew joined #perl6
14:13 davef left #perl6
14:15 skids joined #perl6
14:23 iblechbot joined #perl6
14:28 PerlJam joined #perl6
14:28 iblechbot joined #perl6
14:28 skids joined #perl6
14:28 frew joined #perl6
14:28 macae joined #perl6
14:28 PacoLinux joined #perl6
14:28 alester joined #perl6
14:28 frankshaw joined #perl6
14:28 M_o_C joined #perl6
14:28 Sunbeam[Pinged] joined #perl6
14:28 synth joined #perl6
14:28 zamolxes joined #perl6
14:28 icwiener joined #perl6
14:28 cognominal joined #perl6
14:28 donaldh joined #perl6
14:28 meppl joined #perl6
14:28 jauaor joined #perl6
14:28 drbean joined #perl6
14:28 Khisanth joined #perl6
14:28 masak joined #perl6
14:28 ejs1 joined #perl6
14:28 Eevee joined #perl6
14:28 mikehh joined #perl6
14:28 sri_kraih joined #perl6
14:28 broquaint joined #perl6
14:28 barney joined #perl6
14:28 eMaX joined #perl6
14:28 pmurias joined #perl6
14:28 Jedai joined #perl6
14:28 Guest33841 joined #perl6
14:28 dakkar joined #perl6
14:28 DemoFreak joined #perl6
14:28 agentzh joined #perl6
14:28 kane_ joined #perl6
14:28 cottoo joined #perl6
14:28 eternaleye joined #perl6
14:28 buubot joined #perl6
14:28 szabgab joined #perl6
14:28 dukeleto joined #perl6
14:28 nbrown joined #perl6
14:28 SmokeMachine joined #perl6
14:28 frettled joined #perl6
14:28 xinming_ joined #perl6
14:28 ilogger2 joined #perl6
14:28 mdxi joined #perl6
14:28 Patterner joined #perl6
14:28 spx2 joined #perl6
14:28 cls_bsd joined #perl6
14:28 lucs joined #perl6
14:28 kst joined #perl6
14:28 Ehtyar joined #perl6
14:28 simcop2387 joined #perl6
14:28 ssm joined #perl6
14:28 r696 joined #perl6
14:28 pjcj_ joined #perl6
14:28 jiing joined #perl6
14:28 patmat joined #perl6
14:28 tarbo2 joined #perl6
14:28 buu joined #perl6
14:28 IRSeekBot joined #perl6
14:28 jjore joined #perl6
14:28 huf joined #perl6
14:28 RonOreck joined #perl6
14:28 cookys joined #perl6
14:28 christin1 joined #perl6
14:28 cxreg joined #perl6
14:28 s1n joined #perl6
14:28 gbacon joined #perl6
14:28 gfldex joined #perl6
14:28 Helios joined #perl6
14:28 omega joined #perl6
14:28 renormalist joined #perl6
14:28 antiphase joined #perl6
14:28 sjohnson joined #perl6
14:28 [particle] joined #perl6
14:28 meteorjay joined #perl6
14:28 yahooooo joined #perl6
14:28 Lorn joined #perl6
14:28 stepnem joined #perl6
14:28 Snublefot joined #perl6
14:28 Caelum joined #perl6
14:28 baest joined #perl6
14:28 skids_ joined #perl6
14:28 japhb joined #perl6
14:28 estrabd joined #perl6
14:28 mj41 joined #perl6
14:28 pugs_svn joined #perl6
14:28 chipdude joined #perl6
14:28 rjh joined #perl6
14:28 PZt joined #perl6
14:28 awwaiid joined #perl6
14:28 Aisling joined #perl6
14:28 nnunley joined #perl6
14:28 kolibrie joined #perl6
14:28 felipe joined #perl6
14:28 BinGOs joined #perl6
14:28 krunen joined #perl6
14:28 rhr joined #perl6
14:28 spinclad joined #perl6
14:28 kcwu joined #perl6
14:28 cosimo joined #perl6
14:28 c9s joined #perl6
14:28 ashizawa joined #perl6
14:28 scrottie joined #perl6
14:28 hexmode joined #perl6
14:28 yves joined #perl6
14:28 jiing_ joined #perl6
14:28 ascent_ joined #perl6
14:28 shachaf joined #perl6
14:28 solarion joined #perl6
14:28 bigpresh_ joined #perl6
14:28 eiro joined #perl6
14:28 ibrown joined #perl6
14:28 jlaire joined #perl6
14:28 edenc joined #perl6
14:28 Gothmog_ joined #perl6
14:28 clkao joined #perl6
14:28 he_ joined #perl6
14:28 StephenPollei joined #perl6
14:28 hcchien joined #perl6
14:28 araujo joined #perl6
14:28 elmex joined #perl6
14:28 Hale-Bopp joined #perl6
14:28 phenny joined #perl6
14:28 michaelr joined #perl6
14:28 pnu joined #perl6
14:28 p6eval joined #perl6
14:28 jevin joined #perl6
14:28 avar joined #perl6
14:28 dalek joined #perl6
14:28 allbery_b joined #perl6
14:28 Matt-W joined #perl6
14:28 sbp joined #perl6
14:28 nsh joined #perl6
14:28 frodwith joined #perl6
14:28 nothingmuch joined #perl6
14:28 charsbar_ joined #perl6
14:28 Tene joined #perl6
14:28 lisppaste3 joined #perl6
14:28 jrockway joined #perl6
14:28 lambdabot joined #perl6
14:28 bionoid joined #perl6
14:28 integral joined #perl6
14:28 silug joined #perl6
14:28 pmichaud joined #perl6
14:28 mtve joined #perl6
14:28 pochi joined #perl6
14:28 dmpk2k joined #perl6
14:28 jnthn joined #perl6
14:28 betterworld joined #perl6
14:28 rafl joined #perl6
14:28 gabiruh joined #perl6
14:28 Trey joined #perl6
14:28 Grrrr joined #perl6
14:28 c1sung joined #perl6
14:28 literal joined #perl6
14:28 leedo joined #perl6
14:28 r0bby joined #perl6
14:28 andreasg_ joined #perl6
14:28 Ingmar joined #perl6
14:28 LCamel joined #perl6
14:28 DQuest joined #perl6
14:28 tomaw- joined #perl6
14:28 Maddingue joined #perl6
14:28 moritz_ joined #perl6
14:28 ingy joined #perl6
14:28 obra_ joined #perl6
14:28 Woody2143 joined #perl6
14:31 RickyWh joined #perl6
14:35 justatheory joined #perl6
14:35 KyleHa joined #perl6
14:40 DemoPhreak joined #perl6
14:53 frew joined #perl6
15:03 Leland joined #perl6
15:03 Leland afternoon
15:04 Leland trying to test implementation of classes in perl6 but getting "invoke() not implemented in class..." ... presumably I'm missing something fundamental ?
15:05 KyleHa It may be that your Perl 6 implementation is unfinished, as they all are.
15:05 phenny KyleHa: 10:08Z <moritz_> tell KyleHa testing for Inf is generally done with ~~ Inf
15:06 KyleHa Thanks Phenny.
15:06 Leland KyleHa: it's the latest git repository of rakudo
15:07 KyleHa Leland: I'm no expert in the Perl 6 OO, but there are tons of examples in the spec tests.
15:07 KyleHa t/spectest.data lists which files are expected to run under rakudo.
15:07 KyleHa Within those files, the tests that don't work are marked with "#?rakudo ..."
15:07 Leland thanks.. will double check it.. ran the tests the other day with abysmal results, but still.. will check again
15:07 KyleHa (That's called a "fudge")
15:09 Leland hmm.. class/basic.t supposed to work
15:09 * Leland checks example
15:10 KyleHa At least you're getting an error message, not "Null PMC access".  8-)
15:10 Leland true :)
15:13 Leland heh
15:13 Leland spoke too soon on that one
15:13 Leland o$ ./perl6 test.pl
15:13 Leland Null PMC access in find_method()
15:14 KyleHa Oh, that's a bug.
15:14 moritz_ invoke() not implemented means that something is called as a sub that can't be
15:14 KyleHa If you can get that down to the minimum code required to get the Null PMC and send it to rakudobug@perl.org, that would be a help.
15:14 moritz_ like if you say Int()
15:14 KyleHa Hey, moritz_!
15:15 KyleHa My Inf.int question was driven by a ticket regarding that.  Give me a minute, and I'll find it again.
15:16 Leland class test { method hello { my Str $hello = "Hello World"; return $hello; } } my $foo = new test();  say $foo.hello();
15:16 KyleHa rakudo:  class test { method hello { my Str $hello = "Hello World"; return $hello; } } my $foo = new test();  say $foo.hello();
15:16 p6eval rakudo 402470: OUTPUT«Statement not terminated properly at line 2, near "my $foo = "␤in Main (src/gen_setting.pm:3340)␤»
15:16 KyleHa rakudo:  class test { method hello { my Str $hello = "Hello World"; return $hello; }; }; my $foo = new test();  say $foo.hello();
15:16 p6eval rakudo 402470: OUTPUT«invoke() not implemented in class 'test'␤in Main (/tmp/l61NmEfVJA:2)␤»
15:17 skids pmurias: ping
15:17 moritz_ ah, it should be test.new().
15:17 Leland aha!
15:17 Leland \o/
15:17 Leland that's better.. thanks
15:18 moritz_ std: class test { }; new test()
15:18 p6eval std 27525: OUTPUT«##### PARSE FAILED #####␤Obsolete use of C++ constructor syntax; in Perl 6 please use method call syntax instead at /tmp/3luBP1icfm line 1:␤------> [32mclass test { }; new test[31m()[0m␤FAILED 00:02 36m␤»
15:18 KyleHa Here it is:  http://rt.perl.org/rt3/Public/Bug/Display.html?id=61602
15:19 Leland many thanks
15:19 * Leland returns to playing
15:19 moritz_ KyleHa: I'd test that as Inf.int ~~ Inf
15:19 moritz_ and (-Inf).int ~~ -Inf
15:20 rfordinal joined #perl6
15:20 KyleHa Okay.
15:20 donaldh joined #perl6
15:20 KyleHa Thanks moritz_++ !!
15:21 masak waitwait, can Inf really be converted to int?
15:21 * masak thought only Int had the Inf value
15:21 moritz_ masak: no
15:21 moritz_ masak: but .int converts to Int, or so it seems
15:21 masak ah.
15:21 * moritz_ not 100% sure about it
15:21 masak is it specced that way?
15:22 moritz_ rakudo: say (+Inf)
15:22 p6eval rakudo 402470: OUTPUT«Inf␤»
15:22 * masak hopes it's a temporary Rakudo idiosyncracy
15:22 moritz_ rakudo: say (-Inf)
15:22 p6eval rakudo 402470: OUTPUT«-Inf␤»
15:22 KyleHa rakudo: say Inf.int ~~ Inf
15:22 moritz_ rakudo: say "4".Int
15:22 p6eval rakudo 402470: OUTPUT«0␤»
15:22 p6eval rakudo 402470: OUTPUT«Method 'Int' not found for invocant of class 'Str'␤»
15:23 moritz_ dunno, TimToady's call
15:23 KyleHa Infinity is fraught with peril.
15:23 terje_ joined #perl6
15:23 KyleHa I seem to recall some wise guy proving that there's more than one "size" of infinity.
15:24 PerlJam KyleHa: there is.
15:24 KyleHa I'm inclined to make a joke about drugs, but I'm not quite that bright at the moment.
15:27 KyleHa I see a test for Inf.int already, now that I look.  There's not an analogous test for NaN, however.
15:27 KyleHa rakudo: say NaN.int ~~ NaN
15:27 p6eval rakudo 402470: OUTPUT«0␤»
15:27 KyleHa rakudo: NaN.int.say
15:27 p6eval rakudo 402470: OUTPUT«-2147483648␤»
15:28 nihiliad joined #perl6
15:28 KyleHa It says -9223372036854775808 here.  I'm guess that's 32 bit vs. 64 bit.
15:29 moritz_ aye
15:30 KyleHa So should it be true that NaN.int ~~ NaN  ?
15:30 moritz_ I'm not sure if .int is cocerction to Int or to int
15:31 moritz_ if it's to Int, it should be NaN
15:31 moritz_ if it's to int, it should die.
15:31 payload joined #perl6
15:31 PerlJam int giving Int would be surprising.
15:31 moritz_ aye
15:31 moritz_ but prefix:<int> is gone
15:31 moritz_ and .int was advertised as the alternvative
15:35 PerlJam what did prefix:<int> do exactly?
15:35 PerlJam was that a replacement for perl5's version of int()?
15:36 moritz_ it was
15:37 PerlJam seems to me that truncate is the alternative then.
15:37 PerlJam rakudo: say truncate(3.1415)
15:37 p6eval rakudo 402470: OUTPUT«3␤»
15:37 moritz_ rakudo: say truncate(Inf)
15:37 p6eval rakudo 402470: OUTPUT«-2147483648␤»
15:38 PerlJam and that would be a bug then
15:38 PerlJam (or I'd expect truncate(Inf) and truncate(NaN) to return Inf and NaN respectively)
15:38 moritz_ PerlJam: same here
15:40 gbacon joined #perl6
15:46 pugs_svn r27526 | kyle++ | [t/spec] truncate() on Inf and NaN
15:46 Leland chained concatenation of strings is now done only with ~ and not . right ?
15:46 moritz_ right
15:47 Leland $var1 ~ $var2
15:47 Leland ok
15:47 Leland shame thta it couldn't share a similarity with other languages using +  ;)
15:47 moritz_ no, that's on purpose
15:48 Leland yea.. causes conflict with dynamic typing
15:48 PerlJam Leland: you can always redefine infix:<+> to be concatenation if you want  :)
15:48 moritz_ in other languages (like javascript) the + stands for different operations depending on the type on the left side
15:48 moritz_ in perl the + always stands for addtion, and forcefully coerces all operands to Num
15:49 Leland PerlJam: useful to know... though it could be useful for it to be dynamically overloaded if strict typedefs are used for the elements... is of typedef is Str then + = contact
15:49 Leland concat
15:49 PerlJam moritz_: that's not quite true given MMD.
15:50 moritz_ PerlJam: right, but that's the design principle
15:50 Leland at least there's the flexibility to redefine the operators.. that in and of itself is a cool feature :)
15:51 moritz_ aye
15:51 PerlJam Leland: sub infix:<+>(Num $a, Str $b) { ... }  # if that's a closer fit, that's the one that gets chosen.
15:51 moritz_ Perl 6 is designed with extensibility in mind
15:51 PerlJam Leland: beware over-specificity though
15:51 Leland PerlJam: can you override the definitions ?
15:51 PerlJam Leland: sure
15:51 Leland cool
15:51 moritz_ there's nearly nothing you can't override in Perl 6
15:53 PerlJam moritz_: what can't be overriden?  I can't think of anything :)
15:53 Leland nice that you can override even basic operators though.. that's cool
15:54 KyleHa Someone should override overridability.
15:54 PerlJam Leland: and you can make up your own operators
15:54 Leland woot \o/
15:54 TimToady it's intentionally very difficult to override the definition of the language in someone else's lexical scope
15:54 PerlJam Leland: the canonical example is factorial:  sub postfix:<!>($n) { [*] 1..$n }
15:55 moritz_ rakudo: sub postfix:<!>($n) { [*] 1..$n }; say 5!
15:55 p6eval rakudo 402470: OUTPUT«120␤»
15:55 PerlJam rakudo: sub postfix:<!>($n) { [*] 1..$n }; say 0!;   # like magic!  ;)
15:55 KyleHa I'm looking at this ticket:  http://rt.perl.org/rt3/Public/Bug/Display.html?id=61844
15:56 p6eval rakudo 402470: OUTPUT«1␤»
15:56 KyleHa Those expressions don't kill rakudo anymore, but I don't know what they're supposed to do.
15:56 Exodist joined #perl6
15:56 moritz_ rakudo: say (1,2)[*..*] # empty list?
15:56 p6eval rakudo 402470: OUTPUT«Use of uninitialized value␤␤»
15:57 moritz_ rakudo: say (1,2)[*..*].PARRT
15:57 PerlJam moritz_: I'd guess [*..*] would give the whole thing.
15:57 p6eval rakudo 402470: OUTPUT«Method 'PARRT' not found for invocant of class 'Failure'␤»
15:57 moritz_ rakudo: say (1,2)[*..*].PARROT
15:57 p6eval rakudo 402470: OUTPUT«Failure␤»
15:57 moritz_ PerlJam: how so? it's not the same as [*]
15:57 KyleHa [*..*] is "whatever to whatever" ?
15:57 PerlJam KyleHa: right
15:57 moritz_ rakudo: say (0,)[*-1..*].PARROT
15:58 p6eval rakudo 402470: OUTPUT«List␤»
15:58 moritz_ rakudo: say (0,)[*-1..*]
15:58 p6eval rakudo 402470: OUTPUT«0Use of uninitialized value␤␤»
15:58 moritz_ that sounds right
15:58 PerlJam moritz_: In the spirit of "whatever",  "whatever to whatever" means "everything" to me.
15:58 moritz_ PerlJam: in subscripts "whatever" means "number of items"
15:58 TimToady er, that's kind of a misstatement
15:59 TimToady whatever has no clue that it's in a subscript, ever
15:59 TimToady it's just some operators return WhateverCode, and a subscript will feed number of items to any WhateverCode it sees
16:00 TimToady *..* doens't return WhateverCode, so the subscript never feeds it :)
16:00 moritz_ so what does *..* return, except a smiley?
16:01 KyleHa So should "(1,2)[*..*]" actually be Failure?
16:01 PerlJam Failure works for me.  It allows growth for when we figure out something useful for it  :0
16:01 PerlJam er :)
16:01 moritz_ erm, Nil?
16:02 PerlJam There has to be *some* room for "this sequence of symbols is meaningless"
16:02 TimToady *..* is already defined to match anything Ordered currently
16:03 moritz_ so it's similar to  -> *@a { [<=] @a] } ?
16:03 TimToady S03:2933
16:04 KyleHa Aha.
16:04 Psyche^ joined #perl6
16:04 KyleHa rakudo: say (1,2)[-Inf..+Inf]
16:04 p6eval rakudo 402470:  ( no output )
16:04 KyleHa rakudo: say (1,2)[*..*]
16:05 p6eval rakudo 402470: OUTPUT«Use of uninitialized value␤␤»
16:05 TimToady was intended to be more like Orderable
16:05 KyleHa rakudo: say ((1,2)[-Inf..+Inf]) ~~ ((1,2)[*..*])
16:05 TimToady but given that Ordered isn't defined anywhere else in the specs, it's probably slightly bogus
16:05 takadonet joined #perl6
16:05 p6eval rakudo 402470:  ( no output )
16:05 takadonet hey everyone
16:06 KyleHa Maybe I'll just go look for one I can already figure out how to test.
16:07 moritz_ TimToady: just a quick sanity check, .int actually returns an int, .Int an Int, right?
16:07 KyleHa Opening up these dialogs always leaves me feeling slightly dizzy.
16:07 TimToady yes, they are simply typecasts
16:07 moritz_ KyleHa: i know that feeling :-)
16:07 PerlJam KyleHa: or convince TimToady to spec it in a way that makes sense for you to write a test  :)
16:07 moritz_ ok, then Rakudo currently has it wrongish
16:07 TimToady permanent state of mind for me :)
16:08 TimToady I can argue that any negative subscript including -Inf should blow up, since we nailed down .[] subscripting to be 0-based always
16:09 TimToady and the *..* form was intended for pattern matching, not subscripting
16:09 PerlJam TimToady: could you expand on this sentence a bit:  And even though C<*..*> can't be constructed at all, it's still useful as a selector object.
16:10 TimToady grep *..*, @list
16:10 last joined #perl6
16:10 TimToady if it means something like Orderable
16:10 TimToady but it's almost certainly clearer to use the role in that case
16:11 PerlJam TimToady: If @list were a Capture (or whatever the right term is these days), what would that mean?
16:11 TimToady the place you might want to use *..* is in a set of parallel when statements, where *..* matches the whole range always
16:12 TimToady and serves as a default, but slightly more specific than 'when *'
16:12 TimToady assuming it does represent a role, but it's certainly of marginal utility, in reality
16:12 PerlJam yeah, so I vote to get rid of it (if my vote has any weight)
16:13 TimToady Originally we thought *..* meant -Inf to Inf, but then we though it might want to generalize to non-numeric types
16:13 TimToady you have something against koalas?
16:14 huf you just broke my brain
16:14 PerlJam Only when they show up in the middle of Texas.
16:14 Leland left #perl6
16:14 TimToady but a slightly more useful variant would be *^..^*, which is everything except +/- Inf
16:14 PerlJam (or any other place that triggers me "non-native species" sense :)
16:15 TimToady hmm, I think the ^..^ is a wolf operator, so *^..^* would be a wolf in koala's clothing
16:16 TimToady but maybe it's just a dingo
16:17 * PerlJam suddenly blames Damian
16:17 huf TimToady: that's clearly a cold cat. with earmuffs.
16:17 explorer joined #perl6
16:17 PerlJam rakudo: say 1..^5
16:18 p6eval rakudo 402470: OUTPUT«1234␤»
16:18 PerlJam rakudo: say 1^..^5
16:18 p6eval rakudo 402470: OUTPUT«234␤»
16:18 PerlJam rakudo: say 1^..^2
16:18 p6eval rakudo 402470: OUTPUT«␤»
16:18 PerlJam rakudo: say 1^..^1
16:18 p6eval rakudo 402470: OUTPUT«␤»
16:18 TimToady rakudo: say Inf.defined
16:18 p6eval rakudo 402470: OUTPUT«1␤»
16:19 TimToady so basically, *..* should exclude NaN, and *^..^* should also exclude -Inf and +Inf
16:20 TimToady but match all the other Ints and Nums, for instance
16:21 TimToady perhaps that implies that -Inf/+Inf are considered Orderable
16:21 TimToady while NaN isn't
16:22 PerlJam IF ever I wanted that, I don't think I'd ever use *..* or *^..^*.   I'd use a role or something instead.   Anything were the symbology dial was turned down a bit.
16:22 PerlJam s/were/where/
16:23 KyleHa If there are as many guesses about what cute critter an expression resembles as there are guesses about what the expression means...there's a serious comprehensibility problem.
16:24 PerlJam KyleHa: that may just be an issue of learning.
16:24 KyleHa Or perhaps there's an absurd comprehensibility problem.
16:24 KyleHa PerlJam: Perhaps so.  I'm new here.
16:24 PerlJam KyleHa: if the meaning of *..*  falls out of the meaning of Whatever, then it makes enough sense that someone could figure it out if they didn't know what it meant.
16:25 PerlJam KyleHa: personally, *..* looks like a special case that I'd have to remember
16:25 TimToady the question is what DWIM means to someone who already knows the concepts of *..* and ^..^
16:25 KyleHa If that's the question, the answer can be had most precisely with a poll.
16:26 PerlJam heh
16:26 TimToady what would you expect 'a' .. * to mean?
16:26 KyleHa Survey says...hamster!
16:26 TimToady KyleHa: only if you can poll the future
16:26 pmichaud GOod morning, #perl6
16:26 PerlJam good morning pmichaud
16:27 TimToady language design is all about making decisions for people who can't know they're going to be polled in 20 years :)
16:27 KyleHa TimToady: Sadly, the only way in which I can poll the future is by pretending you meant "skewer."
16:27 PerlJam "making decisions for people who haven't even been born yet"
16:27 TimToady pmichaud++ just on general principles
16:27 takadonet morning pmichaud
16:28 TimToady okay, I'll go poll the skewer then :)
16:28 KyleHa Nyuck nyuck nyuck!
16:28 PerlJam rakudo: say 5^..^2
16:28 p6eval rakudo 402470: OUTPUT«␤»
16:29 TimToady PerlJam: perl never supports autoreversing ranges
16:29 PerlJam TimToady: I know, I'm just checking that rakudo does the right thing
16:30 TimToady I know, I was just checking that your brain does the right thing :)
16:31 PerlJam TimToady: my brain objects to *..* and ^..^ as there isn't enough context to figure out what it means  :)
16:31 PerlJam (Even when there *is* enough context, it's not really enough :)
16:31 TimToady isn't enough context to figure out what .. means either
16:31 rjh joined #perl6
16:31 dalek rakudo: 03bc9da | pmichaud++ | docs/spectest-progress.csv:
16:31 dalek rakudo: spectest-progress.csv update: 415 files, 11796 passing, 0 failing
16:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/03bc9da3b0f1e9322d0ca0e38f32fc3193c842ab
16:32 KyleHa "0 failing" FTW
16:32 pmichaud yes
16:32 TimToady we don't even know what "is" is without context :)
16:33 pmichaud the parrot folks did an awesome job on tracking down the gc-related bugs
16:33 TimToady +1 xx *
16:35 ujwalic joined #perl6
16:36 tann joined #perl6
16:36 TimToady PerlJam: and as you were pointing out to moritz_++ a bit ago, even + is ambiguous unless you know whether the user has defined extra candidates or not
16:37 [particle] pmichaud: are they all tracked down on all your test platforms now?
16:37 TimToady so I guess I don't know what you mean by "enough context".  I don't have enough context... :)
16:37 pmichaud [particle]: 32-bit and 64-bit ubuntu, yes.
16:38 [particle] well, heck, that's worth a celebratory email to the list.
16:38 pmichaud [particle]: we still have the "abort-on-exit" failures, but those don't directly impact Rakudo's usability as much as the gc failures do
16:38 pmichaud [particle]: yes, I'm just getting started today :-)
16:38 REPLeffect joined #perl6
16:40 PerlJam TimToady: when presented with the tyranny of choice, I look for something concrete I can hang on to--a choice that makes sense under appropriate circumstances.  These serve as guide-posts for a mental model.  I guess I'm not finding enough guide posts that make *..* useful to me, so I'd rather use something a more verbose (and rather not have to suffer figuring out a future *..* when I cross it)
16:40 rfordinal joined #perl6
16:41 TimToady I feel similarly about Strange Words That Are Defined Somewhere Else
16:44 TimToady to me, more verbose is just dehuffmanizing the same mysterious bits, it only feels more explanatory if you assume you know what the words mean, which is a linguistic illusion
16:45 [particle] words like TIMTOWTDI?
16:46 PerlJam But it's not an illusion!  If you use the words consistently and define them to mean the mysterious mumble, then that's reality as far as most people are concerned.
16:46 Bruce joined #perl6
16:46 PerlJam They don't need to understand the mystery, just to know that input A gives output B and that it's consistent
16:46 ruoso joined #perl6
16:47 TimToady by that argument, they don't need to understand *^..^* either
16:47 PerlJam I guess so.
16:47 TimToady and operators tend to compose better than words
16:47 PerlJam Except that I expect more from *^..^* because it uses familiar symbols in a certain context.
16:47 TimToady which is why we all love to hate COBOL
16:49 PerlJam I think I still prefer the illusion of AllRealNumbers  or NotANaN than *..*  :)
16:50 TimToady what is the name of 'aaa' .. * then?
16:51 [particle] the string that shall not be named.
16:51 PerlJam that one I don't care to name  :)
16:51 [particle] s/string/range/
16:51 PerlJam maybe I'm just trading one special case for another then.
16:52 ruoso Hello!
16:52 lisppaste3 Lorn pasted "recompiling re-smop" at http://paste.lisp.org/display/83520
16:52 Lorn ruoso: ^^ everything is up-to-date ( i did svn up few minutes ago )
16:55 ruoso Lorn, there's some issue with m0ld_exe in your env
16:55 ruoso Lorn, can you run ./m0ld_exe?
16:55 Lorn ruoso: yes, no errors
16:56 ruoso Lorn, and what about: ./m0ld_exe <<< 'my $x = 1'
16:57 Lorn ruoso: works fine, no errors
16:57 FurnaceBoy joined #perl6
16:57 KyleHa is ('not container' =:= 'not container') a failure, or just false?
16:57 ruoso what's the output?
16:57 Lorn ruoso: \n
16:58 ruoso Lorn, alright... you do have a problem
16:58 moritz_ KyleHa: I'd guess it'll fail()
16:58 moritz_ KyleHa: (and by testing that you can define its behaviour thusly ;-)
16:58 ruoso pmurias, m0ld_exe is not working for Lorn... any idea why?
16:58 KyleHa moritz_: Yeah, maybe I'll do that.
16:58 Lorn ruoso: file m0ld_exe
16:58 Lorn m0ld_exe: empty
16:59 Lorn O_o
16:59 ruoso Lorn, remove the build directory and every file not in svn, then try doing make again
16:59 ruoso and paste that make
17:00 Lorn ruoso: now works!
17:00 ruoso hmmmm...
17:01 Lorn ruscons --clean
17:01 ruoso so... it's really slackware's fault ;) ;) ;)
17:01 Lorn ruoso: ops, scons --clean dont work ..
17:01 ruoso Lorn, make clean
17:01 ruoso then rm -rf build
17:01 Lorn ruoso: can we add rm -rf build in the Makefile?
17:02 Lorn ruoso: the scons --clean *is* the make clean
17:02 ruoso Lorn, not sure it is needed
17:03 pmurias skids: pong
17:03 Lorn ruoso: if you look in the Makefile clean: you will see just scons --clean, maybe some "rm -rf" will help
17:04 payload joined #perl6
17:04 Lorn maybe they will be added in the SConstruct ( makefile for scons ) i dont know
17:04 ruoso Lorn, does it build now?
17:05 Lorn ruoso: yes, now i'm trying re-mildew
17:07 pugs_svn r27527 | pmurias++ | [re-smop] make sure make clean cleans up everything
17:07 skids pmurias: from what I could get out of oprofile, mildew's biggest time committment is in allocs and frees.  Especially hashes where each bucket is individually allocated.
17:08 Lorn ruoso: re-mildew compiles fine
17:08 Lorn pmurias: thanks! :)
17:08 ruoso Lorn, try make test in re-mildew now
17:09 kane_ joined #perl6
17:10 pmurias skids: so a hash bucket pool would speed things up?
17:10 Lorn ruoso: t/01-sanity - Ok
17:11 ruoso Lorn, there are a lot of tests... better wait them to finish
17:12 Lorn ruoso: i'm waiting just report
17:12 skids pmurias: probably.  There's no particular call taking like 50% of the time or anything, but one of the leaders is hash_destr, which would be a simple free if a pool was (re)alloced.
17:13 skids Same probably goes for the way capture arrays are built.
17:13 pugs_svn r27528 | kyle++ | [t/spec] Incomplete test for RT #61918
17:14 pugs_svn r27529 | kyle++ | [t/spec] Test for RT #61928 from Todd Helper
17:14 pugs_svn r27530 | kyle++ | [t/spec] Add =:= failure tests to S03-operators/identity
17:14 pugs_svn r27531 | kyle++ | [t/spec] mv t/spec/S03-operators/identity t/spec/S03-operators/identity.t
17:14 pugs_svn r27532 | kyle++ | [t/spec] Fudge S03-operators/identity.t for Rakudo
17:18 Lorn ruoso: Can't locate Coro.pm
17:19 ruoso Lorn, that's almost fine... you won't be able to interoperate with p5, but you can install Coro and it will work
17:22 skids pmurias: release_code and smop_mold_frame_message are also standouts.
17:24 ruoso skids, smop_mold_frame_message is the runops of mold
17:25 skids ruoso: smop_mold_frame_message spends 30% of it's time in smop_nagc_release if I am reading this right.
17:26 KyleHa perl6: my $a='a'; say 'a' ~~ / $a /;
17:26 pmurias smop_nagc_release is the refcount decrement
17:26 p6eval rakudo 03bc9d: OUTPUT«Null PMC access in get_string()␤in regex PGE::Grammar::_block54 (/tmp/n8dRGxzJ17:1)␤called from Main (/tmp/n8dRGxzJ17:2)␤»
17:26 p6eval ..pugs: OUTPUT«Error eval perl5: "if (!$INC{'Pugs/Runtime/Match/HsBridge.pm'}) {␤    unshift @INC, '/home/evalenv/pugs/perl5/Pugs-Compiler-Rule/lib';␤    unshift @INC, '/home/evalenv/pugs/third-party/Parse-Yapp/lib';␤    eval q[require 'Pugs/Runtime/Match/HsBridge.pm'] or die $@;␤}␤'Pugs::Runtime…
17:26 p6eval ..elf 27532: OUTPUT«␤»
17:27 KyleHa std: my $a='a'; say 'a' ~~ / $a /;
17:27 p6eval std 27532: OUTPUT«ok 00:03 37m␤»
17:27 moritz_ it's allowed
17:27 moritz_ just NYI
17:27 KyleHa The tests for scalars in a regex all say m/<{$var}>/  So is /$var/ OK?
17:27 KyleHa Should it do what it does in Perl 5?
17:28 skids Hrm, it looks like smop_nagc_release and release_code can both call into each other, and that's what they spend a lot of time doing.
17:28 pmichaud $var /  does a literal match against $var (assuming $var is a string)
17:28 moritz_ KyleHa: in the case of / $var / it never tries to compile $var as a regex
17:29 moritz_ if $var is a string - literal match. If $var is a Regex => DWYM
17:29 KyleHa So in Perl 6, / $var / (when $var is a string) is like a Perl 5 (-1 != index $_, $var), sounds like.
17:30 moritz_ like /\Q$var\E/
17:30 pmurias skids: are you working on it or should i clean it up?
17:30 KyleHa *nod*
17:30 KyleHa Thanks!
17:30 moritz_ or like index, with the side effect of setting pos()
17:30 KyleHa Ah yeah.  I never use pos().  Forgot about that part.
17:30 moritz_ ah well, without /g it's not even set, so ignore me ;-)
17:31 skids pmurias: no telling when I'll have my coding head on again.  Hopefully I'll be in the mood sometime soon.  The urge just hasn't hit lately, though.
17:31 moritz_ but other match variables are reset etc.
17:31 moritz_ anyway, off to table tennis
17:36 ruoso skids, pmurias, is there a way to identify how many of this releases result in calls to DESTROYALL or to an actual free?
17:37 pugs_svn r27533 | kyle++ | [t/spec] Tests for RT #61960
17:38 pmurias ruoso: yes
17:38 ruoso pmurias, I'm guessing a lot of things get immediatly destroyed
17:39 ruoso which would explain why release takes so much more time than reference
17:39 ruoso while they are invoked in very similar rates
17:40 pmurias there's more spaghetti in the releases
17:42 ruoso pmurias, only when destroying
17:43 ruoso otherwise it's pretty much the same as reference
17:45 pmurias we could make _nofree the only option and make DESTROYALL call smop_nagc_free
17:45 pmurias (but i don't think that would improve performace)
17:48 tann joined #perl6
17:49 ruoso pmurias, it wouldn't
17:49 ruoso pmurias, what would probably improve would be to abstract some abstractions ;)
17:50 ruoso pmurias, I mean, defining low-level shortcuts for common paths
17:51 tann why doesn't p6 take a step further and make parens optional for 'my', 'our'? ie. my $lo, $hi = $left, $right;
17:51 ruoso pmurias, and thus avoiding the creation of so many captures
17:51 ruoso and the consequent destroying of them
17:53 pmichaud tann: because of the precedence of "my"
17:53 pmichaud tann: in this case, that would parse as   (my $lo), $hi = $left, $right
17:53 skids .oO(recyclable mold frames)
17:54 Lorn i got a warning in the t/benchmark.t "Use of uninitialized value in string.." ( statement_control.pm ) they try to eq without verify if the value/method exist example if ($m->{sym} eq 'unless'), does can i add a initial if like if (exists $m->{sym}) ... ?
17:54 Lorn ops re-mildew/t/benchmark.t
17:55 skids ruoso: 60% of the time when oprof found smop inside release_code, it was inside DESTROYALL
17:56 ruoso skids++ recycable mold frames is a really interesting idea
17:56 pmurias Lorn: the warning annoys me greatly so fix it if you know how
17:56 ruoso as well as recyclable captures
17:56 ruoso Lorn, pmurias, indeed.... i have no idea of where that warning comes from
17:56 Helios joined #perl6
17:57 tann pmichaud: shouldn't my/our be treated differently from a sub as they are used mainly as scoping declaratives? so, their terminated delims can be either '=' or ';' ?
17:57 pmurias recyclable yeast frames not mold frames are the future
17:57 ruoso pmurias, keeping a recycle bin for capture objects would probably help a lot too
17:57 Lorn ruoso, pmurias: i think it is becauce we try to use $m->{sym} without verify if they exist
17:57 * ruoso meeting &
17:58 pmichaud tann: there are far more things that could "terminate" the my than just '=' or ';', though.
17:58 [particle] tann: my multi method foo($abc) { ... }
17:59 kate21de joined #perl6
18:02 cdarroch joined #perl6
18:07 pugs_svn r27534 | pmurias++ | [re-smop] fix warning in mildew
18:07 pmurias Lorn: fixed the warning
18:12 Lorn pmurias: nice, let me see
18:33 payload joined #perl6
18:36 molaf joined #perl6
18:37 finanalyst joined #perl6
18:41 finanalyst hi. can anyone here help me with a Padre question. their server seems to be donw
18:41 finanalyst down
18:42 finanalyst i cant find how to get rakudo to execute a perl6 script
18:42 PerlJam finanalyst: perl6 scriptname
18:42 PerlJam finanalyst: with appropriate path specification
18:44 finanalyst Perljam: sorry I know how to do it from command line. I mean inside padre. I understand I can run it within the system and get results in the Padre output window
18:44 PerlJam oh, sorry, I missed the padre context.
18:44 finanalyst i know its a bit off topic here, but not quite sure where to go for help
18:46 japhb joined #perl6
18:46 finanalyst problem seems to be with the environment settings but i cant figure out where they get set.
18:48 [particle] is there not a #padre?
18:48 [particle] yes, there is, on irc.perl.org.
18:49 finanalyst [particle]: thanx. will go there and try
18:51 finanalyst [particle]: no one in #padre
18:51 [particle] ...on IRC.PERL.ORG
18:51 [particle] there are ~33 folks there last i checked :)
18:51 [particle] do you know how to get to another irc server?
18:51 finanalyst no
18:52 [particle] what irc client?
18:52 finanalyst jabber
18:52 finanalyst sorry pidgin
18:52 [particle] ah, ok, i use pidgin
18:52 [particle] from the buddy list, Accounts menu
18:53 finanalyst then?
18:53 [particle] manage | add | protocol = irc, server = irc.perl.org, username = finanalyst | save
18:55 [particle] then from the buddies menu, you'll want to join a chat, using the new irc account, and room #padre
18:57 PerlJam [particle]++
18:58 finanalyst [particle]: done that. but after join channel, it gives me a dialog with Channel: and Password:
18:59 [particle] try entering #padre, no password
18:59 finanalyst s/after/after Join a Chat/
18:59 [particle] i don't know that dialog
19:00 finanalyst tells me finanalyst@irc.perl.org disconnected
19:02 [particle] finanalyst: on your account details page (accounts|manage|select finanalyst|modify...
19:03 [particle] )
19:03 [particle] does it list protocol: irc | username: finanalyst | server: irc.perl.org | password: <blank> ?
19:03 finanalyst yes
19:03 finanalyst blank
19:04 [particle] and the advanced tab
19:04 [particle] port: 6667 | encodings: UTF-8 | proxy type: 'use global proxy settings' ?
19:05 finanalyst username: finanalyst | Real Name
19:05 finanalyst and those, but Use GNOME ProxySettings
19:05 [particle] ok, well that might work for you, but you may need to play with it
19:05 [particle] set it to whatever the irc.freenode.net settings are
19:05 finanalyst good point
19:06 * finanalyst trying
19:06 KyleHa std: say qx/echo foo/
19:06 finanalyst the password is set.
19:06 p6eval std 27534: OUTPUT«ok 00:03 36m␤»
19:07 pmichaud rakudo:  say qx/echo foo/;  # just checking
19:07 p6eval rakudo 03bc9d: OUTPUT«operation not permitted in safe mode␤in Main (lib/Safe.pm:25)␤»
19:07 [particle] freenode has a registry for nicknames, so passwords are important
19:07 pmichaud \o/
19:07 [particle] irc.perl.org has no nickserv
19:10 finanalyst [particle]: I have tried both with pw and without.
19:11 [particle] sigh.
19:11 finanalyst Actually I connect to #perl6 using irc.ubuntu.com
19:11 [particle] /join #pidgin <-- it's on freenode :)
19:11 finanalyst frustration
19:12 [particle] yeah, i use pidgin on windows, so there are probably minor differences, and i'm no expert.  sorry!
19:12 finanalyst thanx anyway
19:14 leedo you could try using that mibit web irc interface
19:15 leedo http://www.mibbit.com/chat/
19:18 sbp you can't use that on freenode anymore
19:18 eMaX joined #perl6
19:21 pugs_svn r27535 | kyle++ | [t/spec] more tests for qq:x
19:23 finanalyst left #perl6
19:24 finanalyst joined #perl6
19:25 szabgab finanalyst, have you solved your padre issue ?
19:26 finanalyst no not yet
19:26 finanalyst trying to find a way onto #padre
19:26 szabgab what was the question ?  how to run perl 6 code ?
19:27 finanalyst i have rakudo installed,
19:27 szabgab good
19:27 szabgab what os ?
19:27 finanalyst Ubuntu
19:28 jferrero joined #perl6
19:28 szabgab I hve two minutes to help you before I have to o :-)
19:28 szabgab go
19:29 finanalyst i have PERL6LIB and PARROT  and LD_LIBRARY_PATH set in /etc/bash.bashrc
19:29 finanalyst but when i do RUN & then env in Padre, I dont see PERL6LIB
19:30 szabgab what do you try to accomplish ? to run perl 6 code from Padre ?
19:30 payload1 joined #perl6
19:30 szabgab do you have a perl6 executable ?
19:31 szabgab oh and have you tried to run padre from the command prompt after you have confirmed that you have the environment variables?
19:32 szabgab or have you made an icon to launch padre ?
19:32 szabgab in the latter case your env variables might not be read as it is not running in the shell
19:32 finanalyst made an icon
19:32 finanalyst ah!
19:34 szabgab so try to run padre from the shell
19:34 finanalyst on running padre, I get an error message about not finding parrot.pm
19:35 finanalyst or Parrot/Embed.pm
19:35 szabgab you don't need the Parrot plugin
19:35 szabgab you only need the Perl 6 plugin if you want to edit and run perl 6 files
19:36 finanalyst i get execvp(/perl6, /home/richard/development/RatingComparison/new/testpa.p6) failed with error 2!
19:36 finanalyst for a simple say 'hi' script
19:36 finanalyst i have the Perl 6 plugin.
19:36 davef joined #perl6
19:36 szabgab what is in the RAKUDO_DIR env variable ?
19:37 finanalyst not set
19:37 szabgab it should point to the directory where perl6 is
19:37 pugs_svn r27536 | pmurias++ | [re-smop] reduce starting hash_bucket number
19:37 * finanalyst trying to st RAKUDO_DIR
19:37 szabgab so set it and then start padre again from the command line so it will see the new variable
19:37 finanalyst please note that is not in any of the documentation I could find
19:38 szabgab please either file a bug report on padre.perlide.org or send and e-mail to padre-dev
19:38 szabgab or if nothing works send an email to szabgab@gmail.com I'll try to update the docs tomorrow
19:39 szabgab finanalyst, oh and is it working for you already ?
19:39 finanalyst still changing the setting. moment please
19:40 szabgab just remember you cannot run scripts that prompt()
19:40 szabgab or if you want you need to switch to run in xterm (you can do it in Preferences)
19:41 szabgab night &
19:42 finanalyst still not working. but good night and thanx for help
19:45 finanalyst szabgab: got working!!!!
19:53 takadonet left #perl6
20:03 KyleHa perl6: my $a = do BEGIN { time }; say $a
20:03 p6eval pugs: OUTPUT«300830613.879044␤»
20:03 p6eval ..elf 27536: OUTPUT«Undefined subroutine &GLOBAL::time called at (eval 123) line 3.␤BEGIN failed--compilation aborted at (eval 123) line 3.␤ at ./elf_h line 5881␤»
20:03 p6eval ..rakudo 03bc9d: OUTPUT«_block58␤»
20:16 icwiener_ joined #perl6
20:23 Bruce1 joined #perl6
20:28 Bruce1 joined #perl6
20:28 finanalyst left #perl6
20:28 szabgab finanalyst, I am glad it worked for you, it would be great if you could write down a step-by-step instruction - people who just learn it usually do it better than people who are supposed to already know
20:29 finanalyst joined #perl6
20:32 SmokeMachine joined #perl6
20:33 finanalyst left #perl6
20:36 Ehtyar joined #perl6
20:45 KyleHa perl6: my $x; BEGIN { $x = 'begin'; say 'har' }
20:45 p6eval elf 27536, pugs: OUTPUT«har␤»
20:45 p6eval ..rakudo 03bc9d: OUTPUT«Symbol '$x' not predeclared in <anonymous> (/tmp/hpHVtEdqRq:2)␤in Main (src/gen_setting.pm:456)␤»
20:51 [particle] rakudo: our $x; BEGIN { our $x = 'begin' }; print $x
20:51 p6eval rakudo 03bc9d: OUTPUT«begin»
20:52 [particle] ...current workaround for that behavior.
20:52 moritz_ rakudo: our $x; print $x; BEGIN { our $x = 'begin' }
20:52 p6eval rakudo 03bc9d: OUTPUT«begin»
20:53 [particle] KyleHa: what made you start those new test emails?
20:54 KyleHa I want to be able to open a ticket and see if it has tests written for it or not.
20:54 [particle] they're less than useful, without more content
20:54 [particle] like a diff of the added tests, or what lines they're on, or what revision they were committed, or *something*
20:55 moritz_ [particle]: they are useful for an implementor looking for tests
20:55 [particle] otherwise it's quite difficult to go to the ticket and see which tests are supposed to be for that ticket
20:55 moritz_ [particle]: did you actually try it?
20:55 [particle] try what?
20:55 moritz_ try to see which tests are associated with the ticket
20:55 KyleHa Look for the revision with the ticket number in the description, get the diff.
20:56 moritz_ often it's accompanied by a #?rakudo skip 'RT #\d+'
20:56 KyleHa Or just "# RT #\d+" before the tests.
20:56 buubot joined #perl6
20:57 [particle] but this will change over time
20:57 [particle] when a test is modified for another issue at a later date
20:57 moritz_ but very slowly
20:57 [particle] yeah, now.
20:57 moritz_ when I update tests, I leave references to tickets in there
20:58 [particle] mail with the body:
20:58 [particle] This is an automatically generated mail to inform you that tests are now available in b/t/spec/S12-class/lexical.t
20:58 [particle] is not useful to me
20:58 [particle] what's b/ ?
20:59 KyleHa That's a bug I haven't fixed yet.
20:59 moritz_ part of the diff file name
20:59 [particle] so this mail is generated from a diff? why not include the whole diff for the file?
21:00 [particle] that way i can see the issue, and the proposed tests for it
21:00 moritz_ maybe not a bad idea
21:00 KyleHa Maybe the mail generator should be in the repo somewhere.
21:00 [particle] it gives me the ability to say, yes, these tests properly address the issue. let's resolve.
21:03 [particle] would be nice to have the script in the repo, and a bot running it, but i'm not able to help with that, just to offer constructive criticism :(
21:04 pmichaud right now does it actually generate mail, or does it just append to the ticket?
21:04 KyleHa It generates mail that gets appended to the ticket.
21:04 pmichaud (and then the ticket generates mail...)
21:04 KyleHa The email is sent to the ticket.
21:04 pmichaud right.
21:05 pmichaud I don't think the script needs to include the diff -- it can just point to the diff via url or something.
21:05 pmichaud as it is, I already get notification of the diff via the svn-commits mailing list
21:05 pmichaud (although I'm thinking of unsubscribing as it's becoming very non-useful to me)
21:06 moritz_ but it's not in the ticket, so you have to make the connection yourself when you get back to it 3 months later
21:06 pmichaud right, which is why a url to the diff would be fine.
21:06 pmichaud or even just the svn revision number.
21:06 pmichaud as it stands now, though, just knowing the name of the file is a huge help.
21:06 [particle] yeah, url to diff, or svn number would be great
21:15 buubot joined #perl6
21:15 moritz_ KyleHa: can you just put your current version into misc/commit-mails/ or so?
21:18 pmichaud looks like we need tests for <!> in t/spec/S05-*
21:19 moritz_ rakudo: say 'a' ~~ /<!>/
21:19 p6eval rakudo 03bc9d: OUTPUT«get_attr_str() not implemented in class 'String'␤in regex PGE::Grammar::_block51 (/tmp/QEGq3PtOb9:1)␤called from Main (/tmp/QEGq3PtOb9:2)␤»
21:21 moritz_ where do we put such tests?
21:21 KyleHa I rewrote S04-closure-traits/in-eval.t.  Can someone give me a san check?  I don't want to commit if nobody can look at it.
21:21 moritz_ S05-mass/stdrules.t?
21:21 moritz_ KyleHa: sure
21:21 meppl joined #perl6
21:22 KyleHa Thanks moritz_++
21:22 pmichaud I haven't committed <!> to rakudo yet... just noticed we didn't have tests.
21:22 pmichaud I'll be adding <!> as soon as my spectest run finishes.
21:22 pugs_svn r27537 | kyle++ | [t/spec] fix a copy/paste problem
21:22 pugs_svn r27538 | kyle++ | [t/spec] rewrite of S04-closure-traits/in-eval.t
21:24 moritz_ KyleHa: somehow I don't like the "eval first, then check $!" thing...
21:24 moritz_ either use eval_lives_ok, or ok(eval '...; 1')
21:24 hercynium joined #perl6
21:24 KyleHa I do that since eval_lives_ok eats $! and sometimes I want to look at it.
21:25 moritz_ (maybe it's just because in Perl 5 it's evil, because DESTROY blocks can change $!)
21:25 KyleHa So ok(eval '...; 1'...) it is.
21:25 KyleHa DESTROY eats $@ in Perl 5, but same thing.
21:25 moritz_ erm, yes
21:26 moritz_ is $end, undef, '...' is not a good idea either
21:26 moritz_ it warns
21:26 moritz_ ok $end ~~ undef, '...'; # better
21:26 KyleHa OK.
21:26 pmichaud ok !$end.defined, '...'  # better still
21:26 moritz_ from the quick review it seems fine otherwise
21:27 moritz_ pmichaud: that used to not work for some values of undef in Rakudo
21:27 pmichaud then flag it as a bug :-)
21:27 moritz_ it's long been in RT
21:27 moritz_ don't know if it's fixed by now
21:27 pmichaud me either.
21:28 moritz_ rakudo: my $x = try { 1/0 }; say $x.defined; say $!.defined
21:28 p6eval rakudo 03bc9d: OUTPUT«Null PMC access in isa()␤in Main (/tmp/8TxxQMh4Wf:2)␤»
21:28 moritz_ there you go.
21:28 KyleHa Ouch.
21:28 moritz_ so, ~~ undef it is for now :)
21:28 pmichaud okay, I'll go with that.
21:28 pmichaud my $x = try { 1/0 };  say $x.PARROT;
21:28 pmichaud rakudo: my $x = try { 1/0 };  say $x.PARROT;
21:28 p6eval rakudo 03bc9d: OUTPUT«Null PMC access in isa()␤in Main (/tmp/FU8DNNvOys:2)␤»
21:29 moritz_ rakudo: say (try { 1/0 }).PARROT
21:29 p6eval rakudo 03bc9d: OUTPUT«Null PMC access in find_method()␤in Main (/tmp/SjhovGP7u0:2)␤»
21:29 pmichaud rakudo:  my $x = 1/0;  say $x.PARROT;
21:29 p6eval rakudo 03bc9d: OUTPUT«Divide by zero␤»
21:29 moritz_ (I think the isa() points to the assignment op, but it's deeper than that it seems)
21:29 pmichaud that's wrong too.
21:29 moritz_ it should just fail(), right?
21:30 pmichaud oh, I suspect that try { 1/0 } is returning a null PMC
21:30 pmichaud yes, I think it should just fail()
21:31 Khisanth joined #perl6
21:31 Whiteknight joined #perl6
21:33 KyleHa My code passed to eval_lives_ok dies.
21:34 KyleHa passed to eval, however, it lives!
21:34 moritz_ wtf?
21:34 KyleHa lives_ok { eval_lives_ok 'nyuck nyuck nyuck' }, 'oh noes'
21:34 moritz_ rakudo: use Test; eval_lives_ok 'nyuck nyuck nyuck'
21:34 p6eval rakudo 03bc9d: OUTPUT«not ok 1 - ␤# Looks like you planned  tests, but ran 1␤# Looks like you failed 1 tests of 1␤»
21:35 KyleHa And it eats $!, so I don't know why.
21:35 KyleHa rakudo: use Test; eval_lives_ok '$handle = { $h ~= "1"; START { $h ~= "F" }; $h ~= "2" }';
21:35 p6eval rakudo 03bc9d: OUTPUT«not ok 1 - ␤# Looks like you planned  tests, but ran 1␤# Looks like you failed 1 tests of 1␤»
21:35 pmichaud those should die.
21:35 pmichaud $handle and $h aren't declared.
21:36 KyleHa rakudo: use Test;my $handle; my $h; eval_lives_ok ''$handle = { $h ~= "1"; START { $h ~= "F" }; $h ~= "2" }';
21:36 p6eval rakudo 03bc9d: OUTPUT«Statement not terminated properly at line 2, near "$handle = "␤in Main (src/gen_setting.pm:3340)␤»
21:36 moritz_ ''$handle seems wrong
21:36 pugs_svn r27539 | moritz++ | [t/spec] simple tests for <!> in regex
21:36 KyleHa rakudo: use Test; my $handle; my $h ; eval_lives_ok '$handle = { $h ~= "1"; START { $h ~= "F" }; $h ~= "2" }';
21:37 p6eval rakudo 03bc9d: OUTPUT«not ok 1 - ␤# Looks like you planned  tests, but ran 1␤# Looks like you failed 1 tests of 1␤»
21:37 KyleHa rakudo; use Test; my $handle; my $h; eval '$handle = { $h ~= "1"; START { $h ~= "F" }; $h ~= "2" }'; ok ! $!, 'oh hai';
21:39 KyleHa rakudo: say hi
21:39 p6eval rakudo 03bc9d: OUTPUT«Could not find non-existent sub hi␤»
21:39 KyleHa rakudo: use Test; my $handle; my $h; eval '$handle = { $h ~= "1"; START { $h ~= "F" }; $h ~= "2" }'; ok $! !~~ Exception, 'goodness';
21:39 p6eval rakudo 03bc9d: OUTPUT«ok 1 - goodness␤# Looks like you planned  tests, but ran 1␤»
21:40 KyleHa There.
21:40 KyleHa I shall now remain prejudiced against eval_lives_ok.
21:40 moritz_ KyleHa: please open a ticket for that
21:40 KyleHa Is that a bug in Rakudo or Test.pm?
21:40 moritz_ rakudo: try { 1 / 0 }; say $! ~~ Exception
21:41 p6eval rakudo 03bc9d: OUTPUT«1␤»
21:41 pmichaud rakudo:  eval '1 / 0';  say $! ~~ Exception
21:41 p6eval rakudo 03bc9d: OUTPUT«1␤»
21:41 pmichaud rakudo:  say $! ~~ Exception
21:41 p6eval rakudo 03bc9d: OUTPUT«0␤»
21:44 pugs_svn r27540 | kyle++ | [t/spec] adjust in-eval.t tests after review from moritz++
21:44 Tene rakudo: say $!.perl
21:44 p6eval rakudo 03bc9d: OUTPUT«undef␤»
21:46 pugs_svn r27541 | kyle++ | [misc] the script used to report tests to RT
21:47 KyleHa I'm going to postpone my eval_lives_ok bug report for a while.  It's time to commute home and do battle with family members under the age of 10.
21:49 moritz_ good luck then
21:49 KyleHa Thanks.
21:50 literal is this up to date? http://svn.pugscode.org/pugs/docs/Perl6/FAQ/Capture.pod
21:51 KyleHa literal: I don't know, but it sure would be nice if it were.
21:51 moritz_ I think so, mostly
21:51 KyleHa Made a pretty good read on the train one day.
21:52 moritz_ there has been lots of discussion here about captures, with many ideas
21:52 moritz_ but I don't think any of them made it into the specs yet
21:54 Limbic_Region joined #perl6
22:02 pmichaud Capture.pod is almost certainly _not_ up to date.
23:00 s1n pmichaud: ping
23:01 skids joined #perl6
23:02 Bruce1 left #perl6
23:07 jauaor joined #perl6
23:08 literal pmichaud: ok
23:08 kst joined #perl6
23:10 ihrd joined #perl6
23:11 ihrd left #perl6
23:14 literal I'm making a release of Perl6::Doc and I'm removing some things (for now) that aren't up to date
23:22 pmichaud s1n: pong
23:27 s1n pmichaud: i have a question or two about WALK
23:27 pmichaud they need to be quick -- I just got called to dinner
23:27 s1n is the :name parameter always required?
23:27 pmichaud I don't know.
23:27 s1n and if so, does it return the methods that match?
23:28 s1n it's used in S12 as if it returns the methods, not the classes
23:28 pmichaud I didn't write .WALK, nor the spec.  I can read up on it after dinner and perhaps give an answer, though.
23:28 pmichaud I'm fairly certain that .WALK walks methods, not classes.
23:28 s1n i thought it walked class hierarchy
23:28 pmichaud because we focus more on multimethods
23:28 pmichaud well, it walks class hierarchy to the degree that some methods overload others
23:29 s1n well if a method is overloaded, is it still a candidate?
23:29 pmichaud I think so.
23:29 s1n hmm interesting
23:29 pmichaud it's just a more specific candidate by virtue of the invocant type
23:29 s1n i would have thought an overloaded method in a derived class would mask the base class method of the same signiture
23:29 pmichaud (I may be way off here... I have not studied the spec closely)
23:30 s1n the spec is _very_ limited in it's discussion of WALK
23:30 pmichaud sure.
23:30 pmichaud anyway, I'll read it after dinner and maybe I can answer better later (or tomorrow at p6m)
23:30 s1n okay
23:31 pmichaud gotta run or I'll be in doghouse.
23:31 s1n i'll post my writeup, feel free to comment, i'm going to read it at p6m tommorrow
23:39 payload joined #perl6
23:57 s1n pmichaud: if i start at a base class, are the derived overloads available for dispatch as well (the opposite of the question i previously asked)
23:58 s1n i.e. can .WALK find derived class' overloaded methods when doing $base.WALK?

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

Perl 6 | Reference Documentation | Rakudo