Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-01-27

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:08 Amateurbr joined #perl6
00:08 pugs_svn r25048 | lwall++ | [STD, S05] converge spec and parse of character classes
00:09 Amateurbr BEGIN failed--compilation aborted at ./ilbot2.pl line 4.
00:09 Amateurbr how to fix it?
00:11 [particle] Amateurbr: /join #perl
00:11 [particle] ask there.
00:11 Amateurbr I'm talking about irclog perl script
00:12 Amateurbr ilbot
00:12 Amateurbr http://moritz.faui2k3.org/en/ilbot
00:12 [particle] try: cpan Config::File
00:17 Amateurbr cool
00:17 Amateurbr unfortunately, I'm not the root :~~
00:18 Amateurbr script discarded
00:20 [particle] http://www.perlmonks.org/?node_id=303958
00:26 spx2 joined #perl6
00:30 km2 joined #perl6
00:34 silug joined #perl6
00:35 alester joined #perl6
00:36 Amateurbr too hard for me, anyway thank you
00:40 Cassull joined #perl6
00:40 Cassull left #perl6
00:44 s1n pmichaud: concerning rakudo on git, have you looked into git-svn?
00:44 pugs_svn r25049 | lwall++ | [S29] expand on use of * in orderings
00:44 pugs_svn r25049 | lwall++ | sort, min, and max shouldn't have an optional positional before a slurpy
00:44 pugs_svn r25049 | lwall++ | junctional functions take *@array, not a single @array parameter
00:44 pugs_svn r25049 | lwall++ | hence the corresponding methods are not exported
00:58 Caelum joined #perl6
01:01 Caelum joined #perl6
01:03 pjcj joined #perl6
01:11 pratez joined #perl6
01:12 frew pugs: sub l ($a) { my StrLen $len = StrLen.new($a); return $len }; say l(1)
01:12 p6eval pugs: OUTPUT«*** No such subroutine: "&StrLen"␤    at /tmp/T5HiXZi0kH line 1, column 26-45␤»
01:12 pratez left #perl6
01:12 pratez joined #perl6
01:12 frew rakudo: sub l ($a) { my StrLen $len = StrLen.new($a); return $len }; say l(1)
01:12 p6eval rakudo 36042: OUTPUT«Scope not found for PAST::Var '$len' in l␤current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (src/PCT/HLLCompiler.pir:102)␤»
01:14 pratez left #perl6
01:18 frew rakudo: sub l (Int $a) { my StrLen $len = StrLen.new($a); return $len }; say l(1)
01:18 p6eval rakudo 36042: OUTPUT«Scope not found for PAST::Var '$len' in l␤current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (src/PCT/HLLCompiler.pir:102)␤»
01:35 frew blaaarg!
01:36 frew What does Unable to set lvalue on PAST::Val node mean?
01:36 hercynium_ joined #perl6
01:43 [particle] a past val is a constant, usually.
01:43 [particle] you really shouldn't be trying to do 3 = ...
01:46 bradb joined #perl6
01:47 shinobi-cl joined #perl6
01:50 frew yeah
01:50 frew It's a test in substr
01:50 frew substr($str, 4, 5) = "frew"
02:00 shinobi-cl left #perl6
02:02 jhuni joined #perl6
02:06 pugs_svn r25050 | frew++ | [t] Added tests for substr(Int, StrPos) and substr(Int, StrLen)
02:15 spx2 joined #perl6
02:27 frew Does anyone here know if "[opp] @list" is just a shortcut for "@list.reduce: {$^a opp $^b}" ?
02:28 frew in which case it really only needs to be tested once
02:30 frew nevermind
02:31 frew I see that it's already tested
02:33 frew pugs: (1,3,2).delete(2)
02:33 p6eval pugs: RESULT«2»
02:33 frew pugs: (1,3,2).delete(1)
02:33 p6eval pugs: RESULT«3»
02:33 eternaleye joined #perl6
02:33 frew pugs: delete((1,3,2), 1)
02:33 p6eval pugs: RESULT«3»
02:35 frew pugs: ~delete((1,3,2), 1)
02:35 p6eval pugs: RESULT«"3"»
02:36 frew pugs: @foo = (1,3,2); delete(@foo, 1).say; @foo.say;
02:36 p6eval pugs: OUTPUT«*** ␤    Unexpected " ="␤    expecting "::"␤    Variable "@foo" requires predeclaration or explicit package name␤    at /tmp/iiHewKFDGV line 1, column 5␤»
02:36 frew pugs: my @foo = (1,3,2); delete(@foo, 1).say; @foo.say;
02:36 p6eval pugs: OUTPUT«3␤12␤»
02:37 frew pugs: my @foo = (1,3,2); delete(@foo, 1).say; @foo.join(',').say;
02:37 p6eval pugs: OUTPUT«3␤1,,2␤»
02:38 shinobi-cl joined #perl6
02:44 pugs_svn r25051 | frew++ | Added tests for delete as a function with and without named arguments
02:48 frew pugs: elems(1,2,3,4)
02:48 p6eval pugs: OUTPUT«*** No compatible multi variant found: "&elems"␤    at /tmp/9RCzkBLrbj line 1, column 1 - line 2, column 1␤»
02:48 km3 joined #perl6
02:48 frew pugs: elems((1,2,3,4))
02:48 p6eval pugs: RESULT«4»
02:50 TimToady frew: it's not an exact equivalent, since [op] pays attention to associativity to decide whether to do things right-to-left or left-to-right
02:51 frew ok
02:51 frew well, either way there's already a test for it
02:51 frew speaking of, I was wondering if there was a reduce that you can use when the order doesn't matter
02:52 frew like with * and + but not / or ~
02:52 TimToady it doesn't matter for * only in theory
02:52 frew ??
02:52 TimToady computer numbers are not real numbers
02:52 frew oh
02:52 frew right.
02:52 frew that's true
02:53 justatheory *
02:53 frew well that would still be cool
02:53 justatheory * * *  * * * *  *
02:53 frew what if the computer could pick up on that and act appropriately?
02:53 SamB TimToady: this is why they told you in school not to use floating point ;-P
02:53 frew like for [+] (@huge_list) it could actually do @huge_list.sort.reduce({...})
02:55 pugs_svn r25052 | frew++ | [t] added named argument test for elems
02:55 frew also: I really wish vim were better at parsing perl
02:56 frew I tried the perl6.vim that's in the pugs repo, but the pod still makes the whole file look commented out a lot
02:56 avar literal: fix it
02:56 Tene_ joined #perl6
03:02 pugs_svn r25053 | frew++ | [t] Added named argument tests for keys and values
03:12 frew std: frew(:bar($baz))
03:12 p6eval std 25053: OUTPUT«Unknown routines:␤     frew called at 1 ␤00:05 86m␤»
03:12 frew std: kv(:array(@foo))
03:12 p6eval std 25053: OUTPUT«00:05 86m␤»
03:12 frew std: kv(:array @foo)
03:12 p6eval std 25053: OUTPUT«############# PARSE FAILED #############␤Unable to parse argument list; couldn't find final ')' at /tmp/RUsttf2buJ line 1:␤------> [32mkv(:array [31m@foo)[0m␤    expecting any of:␤      infix or meta-infix␤      infix stopper␤    standard stopper␤ terminator␤00:05 85m␤»
03:13 frew std: kv(array => @foo)
03:13 p6eval std 25053: OUTPUT«00:05 86m␤»
03:17 REPLeffect joined #perl6
03:18 pugs_svn r25054 | frew++ | [t] added named arguments to the kv test
03:26 hercynium_ joined #perl6
03:28 rabbits77 joined #perl6
03:30 rabbits77 left #perl6
03:32 pugs_svn r25055 | frew++ | [t] added named args and functional tests to pairs
03:50 kisu joined #perl6
03:50 s1n TimToady: ping
03:53 xinming joined #perl6
03:56 s1n rakudo  my $t = "junk"; say $t :d;
03:57 shinobi-cl left #perl6
03:59 s1n rakudo: my $t = "junk"; say $t :d;
03:59 p6eval rakudo 36042: OUTPUT«Statement not terminated properly at line 1, near ":d;"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
03:59 s1n rakudo: my $t = "junk"; say "hmm" if $t :d;
03:59 p6eval rakudo 36042: OUTPUT«Statement not terminated properly at line 1, near ":d;"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
04:04 alanhaggai joined #perl6
04:14 s1n can someone explain to me the current state of adverbs in rakudo
04:15 s1n and also, (TimToady maybe) i'm looking for an explanation of what methods such as :by act as
04:18 mtnviewmark joined #perl6
04:44 TimToady :by is not a method
04:44 TimToady it's just a named argument
04:44 s1n to what? Range's constructor?
04:45 TimToady to the function known as infix:<..>
04:46 TimToady which happens to construct a Range object, yes
04:46 s1n okay
04:46 s1n what is a circumfix method/noun?
04:47 TimToady all of the prefix/infix/circumfix thingies are macros that map to functions
04:48 TimToady a circumfix is just a macro that looks for its delimiters on both ends
04:48 s1n i figured it had something to do with positioning
04:48 TimToady and leaves the parser in the state of expecting an infix
04:49 s1n so if i get a parse error that backtraces to a circumfix statement, it's reasonable to assume it's treating it as a circumfix method?
04:49 TimToady a prefix, in contrast, leaves it in the state of expecting more noun
04:49 TimToady if it says it couldn't find the closing delimiter, it just means it got confused somewhere in the middle
04:49 s1n hmm ok, not sure that makes perfect sense to me
04:49 TimToady the green/red transition of STD tells you where it got confused
04:50 s1n rakudo: 1..10 :by(3)
04:50 p6eval rakudo 36042: OUTPUT«Statement not terminated properly at line 1, near ":by(3)"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
04:50 TimToady which is a problem if you're colorblind :)
04:50 TimToady rakudo doesn't do :by yet
04:50 s1n right
04:50 s1n i'm trying to understand why and how this sort of thing works :)
04:51 s1n what is the green/red transition of STD?
04:51 ChrisDavaz joined #perl6
04:51 TimToady std: $foo $bar
04:51 p6eval std 25055: OUTPUT«############# PARSE FAILED #############␤Syntax error (two terms in a row?) at /tmp/ruqSphfN3f line 1:␤------> [32m$foo [31m$bar[0m␤    expecting any of:␤        infix or meta-infix␤      infix stopper␤    standard stopper␤ statement modifier loop␤  terminator␤00:05 86m␤»
04:51 SamB s1n: it's a special feature designed to confuse the color-blind
04:51 TimToady do you see the green and red there?
04:52 TimToady just after the arrow?
04:52 s1n gaim's coloring feature doesnt appear to work
04:52 s1n i see a box with "001B" or "0018" in small font
04:52 s1n s/gaim/pidgin/
04:52 TimToady ansi colors
04:53 TimToady well, if you cd src/perl6; make; tryfile foo
04:53 TimToady where foo contains $foo $bar
04:53 TimToady you'll see the error in real life
04:53 s1n i'll keep that in mind
04:54 s1n TimToady: do you know if rakudo supports named parameters though?
04:54 TimToady to some extent it does
04:54 TimToady I'm not an expert on it though
04:54 TimToady biab & # picking up kid from karate
04:55 SamB s1n: it's not gaim
04:55 SamB it's that these bots are sending ANSI escapes and not mIRC colors
04:56 SamB someone told me the reason for this was that I had not implemented the mIRC color support in the botss, but then told me that I shouldn't use that here anyway
04:56 s1n i just learned to ignore it and assume it was something pidgin didn't support
04:57 SamB nothing supports it, as far as I know
04:57 s1n then why have it?
04:57 SamB it's just passed through from CLI programs, I guess
04:57 s1n seems like it should be converted for the bots
04:57 SamB to clarify, terminals support it
04:58 s1n not very useful for a bot though
04:58 SamB some people didn't like the idea of having that happen in this channel for some reason
04:59 s1n the colors work? that's bad why?
04:59 SamB well, then they would see colors
05:00 SamB some people have strong feelings about colors on IRC, dunno why!
05:00 SamB well, I mean, you don't want people using them like teenaged girls might ...
05:02 s1n well, pidgin allows me to force a format
05:09 mtve joined #perl6
05:09 bacek joined #perl6
05:10 jnthn joined #perl6
05:10 Sepheebear joined #perl6
05:10 araujo joined #perl6
05:11 edenc_ joined #perl6
05:11 wolverian joined #perl6
05:11 Matt-W joined #perl6
05:12 dalek joined #perl6
05:31 ilbot2 joined #perl6
05:31 Topic for #perl6is now http://pugscode.org/ http://planetsix.perl.org/ | nopaste: http://sial.org/pbot/perl6 | evalbot: perl6: say 3; (or rakudo:, pugs:, elf:, etc) | irclog: http://irc.pugscode.org/ | ~330 days 'til Xmas
05:32 spinclad joined #perl6
05:32 dh joined #perl6
05:33 yahooooo joined #perl6
05:34 jjore joined #perl6
05:34 awwaiid joined #perl6
05:35 charsbar joined #perl6
05:35 idemal joined #perl6
05:36 zev joined #perl6
05:37 Caelum joined #perl6
05:37 wolverian joined #perl6
05:37 kisu joined #perl6
05:37 LCamel joined #perl6
05:37 ilogger2 joined #perl6
05:37 clkao joined #perl6
05:37 hcchien joined #perl6
05:39 Matt-W joined #perl6
05:40 estrabd joined #perl6
05:40 tcliou|Away joined #perl6
05:41 khatar joined #perl6
05:41 Maddingue joined #perl6
05:41 frew joined #perl6
05:42 Gothmog_ joined #perl6
05:42 Caelum_ joined #perl6
05:42 namenlos joined #perl6
05:44 edenc joined #perl6
05:44 jnthn joined #perl6
05:45 kisu joined #perl6
05:46 IRSeekBot joined #perl6
05:48 araujo joined #perl6
05:49 Caelum joined #perl6
05:56 jhuni joined #perl6
06:03 rabbits77 joined #perl6
06:04 rabbits77 left #perl6
06:08 mtnviewmark joined #perl6
06:11 TimToady joined #perl6
06:24 ChrisDavaz joined #Perl6
06:26 r0bby joined #perl6
06:31 preflex joined #perl6
06:32 felipe joined #perl6
06:32 [cotto] joined #perl6
06:40 baest joined #perl6
06:44 mberends joined #perl6
06:48 ashizawa joined #perl6
06:57 PZt joined #perl6
07:00 rakudo_svn r36044 | petdance++ | consting and localizing
07:08 moritz joined #perl6
07:18 broquaint joined #perl6
07:19 rabbits77 joined #perl6
07:19 rabbits77 left #perl6
07:29 kanru joined #perl6
07:31 agentzh joined #perl6
07:40 moritz_ rakudo: class A { has $.x; method s { $.x.say } }; my $a = any(A.new(:x(2)), A.new(:x(3)); $a.s
07:40 ilbot2 joined #perl6
07:40 Topic for #perl6is now http://pugscode.org/ http://planetsix.perl.org/ | nopaste: http://sial.org/pbot/perl6 | evalbot: perl6: say 3; (or rakudo:, pugs:, elf:, etc) | irclog: http://irc.pugscode.org/ | ~330 days 'til Xmas
07:51 samlh joined #perl6
07:53 BinGOs joined #perl6
07:56 iblechbot joined #perl6
08:03 DemoFreak joined #perl6
08:16 moritz_ frew++ # adding many tests
08:28 Grrrr joined #perl6
08:34 Eevee joined #perl6
08:36 Ehtyar joined #perl6
08:57 ejs joined #perl6
09:26 literal joined #perl6
09:28 schmalbe joined #perl6
09:36 masak joined #Perl6
09:55 plash joined #perl6
10:01 bacek joined #perl6
10:09 ejs joined #perl6
10:23 shinobi-cl joined #perl6
10:24 sunnavy joined #perl6
10:27 ejs1 joined #perl6
10:42 buu joined #perl6
10:47 rabbits77_ joined #perl6
10:48 lisppaste3 joined #perl6
11:11 ruoso joined #perl6
11:35 shinobi-cl joined #perl6
11:36 shinobi-cl left #perl6
11:42 Matt-W Quiet in here today
11:43 shinobi-cl joined #perl6
11:43 moritz_ freenode has (or had) a large hiccup
11:43 masak I'm here.
11:44 masak just not working on anything p6y right now.
11:44 moritz_ that's why p6eval isn't in here, I assume it's on a netspliit
11:44 Matt-W aah
11:45 moritz_ and it has lost its connection a few times already today
11:46 Matt-W networks
11:46 Matt-W who'd touch them, eh?
11:46 Matt-W oh wait, that's what I do for a living...
11:57 ejs joined #perl6
11:58 masak http://en.wikipedia.org/wiki/Hype_cycle
11:58 masak I didn't know this was more wide-spread than the Haskell and Perl 6 worlds :)
11:58 Matt-W I looked at the u4x TODO
11:58 shinobi-cl left #perl6
11:58 masak Matt-W: great!
11:58 Matt-W it's quite a long list isn't it
11:58 masak Matt-W: yes. no need to deny that.
11:59 masak there's a lot of work ahead.
11:59 Matt-W hmm why is that a cycle
11:59 Matt-W it doesn't cycle
11:59 masak Matt-W: not for one single thing, perhaps.
11:59 masak it sort of cycles in that it comes back to populatiry
11:59 masak s/tiry/rity/
12:00 Matt-W mmm
12:00 Matt-W what we also need for u4x is some guidance on formats
12:00 Matt-W I hope that we can rely on the thing that processes the Pod to provide the inherited methods...
12:00 masak Matt-W: just so you know: my current plan for u4x is to prepare one thing from each category, and document that.
12:01 masak then we can sit down and discuss format requirements.
12:01 Matt-W that might be a good way to do it
12:01 masak I hope so.
12:01 Matt-W have a concrete thing sitting there telling us what we need to be able to do
12:01 masak aye.
12:01 shinobi-cl joined #perl6
12:02 masak at this stage, what I'd most appreciate is if people made the TODO as comprehensive as possible.
12:02 masak anything goes. I'll review commits that people make.
12:02 masak it's comparatively easy to find things that need to be added and add them.
12:06 dh_ joined #perl6
12:19 shinobi-cl left #perl6
12:23 rindolf joined #perl6
12:27 masak http://gist.github.com/53317 # an adequate way to do heredocs while waiting for the real thing
12:30 rakudo_svn r36053 | cotto++ | [pmc] update *IntegerArray to use ATTRs
12:37 jan joined #perl6
12:49 pmurias joined #perl6
12:51 pmurias ruoso: hi
12:51 ruoso hi pmurias
12:55 pmurias ruoso: how will be workaround int not having .infix<+> etc.?
12:56 ruoso pmurias, where is infix<+> used as a method now?
12:57 pmurias .postcircumfix:<++> is used by s1p_array_interator
12:57 ruoso right...
12:58 ruoso pmurias, the idea of the iterator being private to the list that generated it is important because of that...
12:58 ruoso we can cheat there without any problem
12:59 ruoso since that iterator is only going to be used for that specific array implementation
12:59 ruoso in fact...
13:00 meppl joined #perl6
13:00 pmurias adding a non-spec method to a native class is a particularly bad way to cheat because it's hard to hide it
13:00 gbacon joined #perl6
13:01 pmurias ruoso: the s1p_array_iterator is a generic one
13:02 pmurias as it uses the specced interface of any Array
13:03 ruoso pmurias, it's not really non-spec
13:04 ruoso multi method inifx:«<=»(int $other) is export
13:04 ruoso in int
13:07 ruoso postfix:<++> I agree to be a problem
13:08 ruoso but we might represent that in terms of infix:<+> instead
13:14 pmurias &
13:22 masak I found a bug.
13:22 masak rakudo: class A { has $.b; }; while shift [A.new( :b(0) )] -> $a { say $a.b; $a.clone( :b($a.b + 1) ); say $a.b; last; }
13:23 masak but p6eval isn't here. right.
13:31 DemoFreak joined #perl6
13:48 p6eval joined #perl6
13:49 iblechbot joined #perl6
13:53 masak perl6: class A { has $.b; }; while shift [A.new( :b(0) )] -> $a { say $a.b; $a.clone( :b($a.b + 1) ); say $a.b; last; }
13:53 p6eval elf 25059: OUTPUT«Useless use of reference constructor in void context at (eval 126) line 14.␤Undefined subroutine &Main::ARRAY called at (eval 126) line 8.␤ at ./elf_h line 4333␤»
13:53 p6eval ..pugs: OUTPUT«*** Cannot 'shift' scalar␤    at Prelude.pm line 736, column 48-75␤»
13:53 p6eval ..rakudo 36054: OUTPUT«0␤1␤»
13:53 masak Rakudo destroys the original object in this particular case.
13:53 masak Druid++ for exposing this bug.
14:00 ayrnieu pugs: sub List::rand { @_[rand +@_] }; <1 2 3>.rand
14:00 p6eval pugs: RESULT«\"1"»
14:00 ayrnieu rakudo: sub List::rand { @_[rand +@_] }; <1 2 3>.rand
14:00 p6eval rakudo 36054: OUTPUT«Null PMC access in invoke()␤current instr.: '_block14' pc 71 (EVAL_17:43)␤»
14:03 rhr joined #perl6
14:04 masak rakudo: sub a { @_ } a
14:04 p6eval rakudo 36054: OUTPUT«Statement not terminated properly at line 1, near "a"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
14:04 masak rakudo: sub a { @_ }; a
14:05 p6eval rakudo 36054: RESULT«[]»
14:05 masak rakudo: sub a { @_[+@_] }; a
14:05 p6eval rakudo 36054: RESULT«undef»
14:05 masak rakudo: sub a { @_[+@_] }; <1 2 3>.a
14:05 p6eval rakudo 36054: OUTPUT«Method 'a' not found for invocant of class 'List'␤current instr.: 'parrot;P6metaclass;dispatch' pc 287 (src/classes/ClassHOW.pir:145)␤»
14:06 masak rakudo: sub List::a { @_[+@_] }; <1 2 3>.a
14:06 p6eval rakudo 36054: OUTPUT«Null PMC access in invoke()␤current instr.: '_block14' pc 71 (EVAL_17:43)␤»
14:06 * masak submits rakudobug
14:07 masak rakudo: sub List::a {}; <1 2 3>.a
14:07 p6eval rakudo 36054: OUTPUT«Null PMC access in invoke()␤current instr.: '_block14' pc 71 (EVAL_16:40)␤»
14:08 masak hey, wait. 'sub'?
14:08 masak rakudo: method List::a {}; <1 2 3>.a
14:08 p6eval rakudo 36054: OUTPUT«Method 'a' not found for invocant of class 'List'␤current instr.: 'parrot;P6metaclass;dispatch' pc 287 (src/classes/ClassHOW.pir:145)␤»
14:12 DemoFreak joined #perl6
14:13 vixey joined #Perl6
14:14 pmichaud joined #perl6
14:17 pmichaud std:  say 'hello';  class Foo;  say 'oops';
14:17 p6eval std 25059: OUTPUT«00:05 82m␤»
14:20 masak pmichaud: good day.
14:22 masak [perl #62828] reminds me of the bad old #58392 days. I look forward to the explanation for that one; .clone behaves well in all other circumstances, but not that one.
14:25 PerlJam joined #perl6
14:30 mj41_ joined #perl6
14:32 p6paste joined #perl6
14:32 literal http://paste.nix.is
14:32 literal code highlighting courtesy of perl6.vim
14:33 literal line numbers don't work with highlighting yet, though
14:33 masak literal: awesome.
14:36 pmichaud #62828 just looks like some clone weirdness to me -- nothing fundamentally broken.
14:36 pmichaud I'm not even sure that we have named parameters working in 'clone' yet.
14:37 masak still shouldn't screw up the original.
14:37 pmichaud (by "nothing fundamentally broken" I mean that it's not a deep bug require huge fixes)
14:37 masak oh, good.
14:37 pmichaud (which would be different from #58392)
14:37 ruoso literal, wouldn't you like to support STD-based highlight?
14:39 literal sure
14:49 simcop2387 joined #perl6
15:09 Exodist joined #perl6
15:13 araujo joined #perl6
15:33 masak moritz_++ # Match.perl
15:44 zamolxes joined #perl6
15:53 pmichaud actually, I suspect that Test.pm will become our first prelude component.  :-)
15:56 masak combining November and u4x in some way would be awesome, I think.
15:56 literal what's u4x?
15:57 masak literal: it's a documentation project.
15:58 masak literal: http://use.perl.org/~masak/journal/38279
16:00 rakudo_svn r36055 | pmichaud++ | [rakudo]: spectest-progress.csv update: 295 files, 6546 passing, 0 failing
16:00 literal I see
16:02 alester joined #perl6
16:18 stephenlb joined #perl6
16:20 Tene_ joined #perl6
16:43 Patterner joined #perl6
16:44 rodi joined #perl6
17:03 dh_ joined #perl6
17:05 ejs joined #perl6
17:09 icwiener joined #perl6
17:15 dh_ joined #perl6
17:24 mtnviewmark joined #perl6
17:29 cognominal joined #perl6
17:32 dh_ joined #perl6
17:35 hercynium joined #perl6
17:37 justatheory joined #perl6
17:40 REPLeffect joined #perl6
17:41 Limbic_Region joined #perl6
17:47 dh_ joined #perl6
17:55 dduncan joined #perl6
17:58 dh_ joined #perl6
18:10 TimToady mtnviewmark: just added missing before/after chain ops
18:10 mtnviewmark ah - in S03 and STD.pm?
18:10 TimToady in STD
18:11 TimToady they're already in S03
18:11 mtnviewmark thanks for the heads up
18:11 mtnviewmark they are?
18:11 mtnviewmark okay
18:11 TimToady under Generic comparisons or some such
18:11 TimToady also note new metaoperator on $a -cmp $b
18:12 barney joined #perl6
18:12 mtnviewmark I see, like generic eqv
18:12 mtnviewmark okay
18:12 mtnviewmark will have to fit these in somewhere...
18:12 mtnviewmark :-)
18:13 jhorwitz joined #perl6
18:13 mtnviewmark hmm.. now eqv is different
18:13 mtnviewmark no generic equal?
18:13 mtnviewmark or is that eqv?
18:13 TimToady that's what eqv is
18:13 TimToady cmp == 0
18:13 mtnviewmark okay so, before, eqv, after
18:13 mtnviewmark are the generic versions of <, ==, >
18:13 TimToady yes
18:14 TimToady but generic <= is spelled !after
18:14 dh_ joined #perl6
18:14 mtnviewmark good - don't have room for beforeoreqv
18:15 PerlJam wait ...  $a -cmp $b is the same as $b cmp $a  ?
18:16 TimToady same as -($b cmp $a) modulo Order enum typing
18:16 TimToady er, no what you said
18:16 TimToady didn't see the reversal
18:17 PerlJam (I probably should have used $a and $b differently there :)
18:17 TimToady but you can pass infix:<-cmp> as a function, for instance
18:17 TimToady without generating a new closure
18:18 PerlJam That's neat I guess (though with my limited thought on the subject it looks like a solution in want of a problem)
18:23 TimToady shower &
18:30 rakudo_svn r36058 | particle++ | [rakudo] make Inf/NaN support portable
18:30 rakudo_svn r36058 | particle++ | +58 tests with msvc
18:32 diakopter joined #perl6
18:36 dh_ joined #perl6
18:36 Psyche^ joined #perl6
18:38 dh_ joined #perl6
18:40 rakudo_svn r36059 | moritz++ | [rakudo] add a few more passing tests to t/spectest.data.
18:40 rakudo_svn r36059 | moritz++ | Restore alphabetical ordering.
18:40 pugs_svn joined #perl6
18:48 masak joined #perl6
19:02 finanalyst joined #perl6
19:09 DemoFreak joined #perl6
19:11 masak they're slightly wasted on me, because I log out daily -- but thanks. :)
19:11 masak 哈哈
19:12 diakopter oh,
19:15 TimToady that should keep us going till the next major outage
19:15 TimToady which, given how last night went, might be soon...
19:16 masak moritz_: how can I tell RT "I care a lot about this bug"?
19:17 moritz_ masak: blog about it *g*
19:17 masak 哈哈
19:17 masak moritz_: no, but ISTR that you had a list on RT with such bugs.
19:17 masak or were those bugs that you owned?
19:18 moritz_ first, you can click on "Basics" and change the severity
19:18 masak ah. good idea.
19:18 moritz_ then you can take them (and they'll be displayed on the overview page when you#re logged in)
19:19 masak what does it mean, socially, to take them?
19:19 moritz_ that you will try to resolve it
19:19 masak thought so.
19:20 masak I would if I thought that was the fastest way to get them fixed. :P
19:24 [particle] aw, crud, i forget the field to add your email addr to
19:25 oskie joined #perl6
19:26 oskie hm, is perl6 (any variant) usable at the moment?
19:26 [particle] yes
19:26 [particle] for my definition of usable
19:26 [particle] try rakudo.
19:27 oskie ah, ok, thanks (you answered my question even before i asked it :)
19:27 moritz_ rakudo: say "Hi, this is Rakudo, and I'm usable from IRC"
19:28 p6eval rakudo 36059: OUTPUT«Hi, this is Rakudo, and I'm usable from IRC␤»
19:28 masak oskie: I'm doing a wiki application in Rakudo. and a board game. and various smaller tools.
19:28 finanalyst moritz_: still examining caller.t. Last section of code has function 'chain'. Cant find description of chain
19:28 masak I'd call it very usable.
19:28 oskie masak: nice!
19:28 masak oskie: however... :)
19:28 masak oh, you'll find out for yourself.
19:29 moritz_ finanalyst: it's declared in that test file
19:29 moritz_ sub chain { B.try_it_caller_B(@_)
19:29 moritz_ }
19:29 masak oskie: http://use.perl.org/~masak/journal/38184
19:30 oskie debian has a 0.4.13 version of parrot, i suspect that's quite old (seeing that the dev ver is 0.9.0)
19:30 masak oskie: yes, use svn.
19:30 moritz_ don't even think about using 0.4.anything
19:30 finanalyst thanx. been looking at the file and missed it
19:30 masak moritz_: I'm half-stuck implementing pack/unpack in Rakudo. do you think prototyping it in your guerilla Prelude project would be a good idea?
19:31 oskie masak: heh... 7 bugs in 1 hour.. sounds like me trying to compile some basic java code with the gnu java compiler (gcj) some years ago
19:31 moritz_ masak: sure.
19:31 masak oskie: those were closed bugs, however.
19:32 masak oskie: it's been a while since I could _find_ 7 bugs in an hour. :)
19:32 masak oskie: oh. nvm. yes, 7 bugs.
19:32 masak oskie: but that's about a month ago, so now it'd be more like 2 or 3. :)
19:33 oskie masak: hah ok, good enough :)
19:33 masak yes, most of the time.
19:35 masak oskie: if you're interested in runnable code, do check out http://github.com/viklund/november http://github.com/masak/druid http://github.com/eric256/perl6-examples http://perlgeek.de/blog-en/perl-5-to-6/
19:36 finanalyst moritz_: some more questions on caller.t
19:36 finanalyst why should is ~a_sub() on line 12 return 'foo'?
19:37 finanalyst regarding :undo, should this be moved to a fudge directive #?pugs undo
19:37 finanalyst also line 12 of caller.t
19:37 moritz_ yes
19:38 moritz_ uhm, I think that's wrong (return "foo")
19:38 masak finanalyst++ # doing test work
19:38 finanalyst trying, but not yet successfully
19:38 moritz_ the caller of b_sub is a_sub, so a_sub should return 'a_sub'
19:38 finanalyst that's what i thought
19:39 finanalyst so where does "foo" come from?
19:39 moritz_ finanalyst: perhaps a renamed test function
19:40 masak (copy/paste)--
19:41 moritz_ I'm wondering about line 18 also
19:41 finanalyst i thought that would work because it is line 18
19:41 moritz_ if caller reports the line of the calling *block*, then it works, but the previous test is wrong
19:42 moritz_ but if it reports the line of the calling *sub*, then there is no such thing
19:42 moritz_ so turning it into sub call_line { caller.line }; is call_line(), 18, 'caller.line works'; should do the trick
19:43 finanalyst but what about line 41
19:44 finanalyst viz. chain({ caller().line }, "29", "caller line");
19:46 moritz_ that's a bit trickier, I fear :/
19:47 moritz_ chain calls try_it_caller, which calls try_it
19:47 moritz_ and try_it executes a block, which contains caller().line
19:47 moritz_ so try_it_caller is the caller that caller() refers to
19:48 moritz_ and try_it_caller is on line 29
19:48 moritz_ so that's right, if you ask me
19:48 finanalyst mmm. and you told me caller.t was a good place to start on the test reviews :)
19:50 moritz_ I thought so, because it was about builtins (which are generally easier), and because it's easy to find the spec
19:50 finanalyst still its a good learning experience.
19:51 moritz_ glad to hear that ;)
19:52 hanekomu_ joined #perl6
19:54 masak rakudo: grammar G { regex TOP { foo } }; "foo" ~~ /<G::TOP>/; say $/.WHAT; G.parse("foo"); say $/.WHAT
19:54 p6eval rakudo 36059: OUTPUT«Match␤G␤»
19:54 masak sometimes I understand why it's called WHAT.
19:54 moritz_ shouldn't it be called WTF?
19:54 masak that'd be even more apt, yes.
19:54 masak I might make that my first Perl 6 Acme module.
20:00 moritz_ finanalyst: what I forgot to mention... since Rakudo doesn't implement caller() yet, there's no reason to try to fudge that file for rakudo
20:01 [particle] how much of t/ remains outside t/spec/ thee days?
20:01 [particle] 5k tests? 10k tests?
20:02 moritz_ 4k to 5k
20:02 [particle] sweet!
20:02 [particle] we're ~75% converted?
20:02 moritz_ http://sial.org/pbot/34738
20:02 masak moritz_++
20:02 moritz_ don't forget simon**
20:03 moritz_ erm, simon++
20:03 [particle] wow
20:03 moritz_ and apart from t/regex/p6regex/p6regex.t none of the remaining files has more than 100 tests in it
20:04 [particle] was p6regex.t stolen from pge?
20:04 moritz_ yes
20:04 [particle] ok, so we know those pass, anyway :)
20:04 moritz_ and probably rx.t is a much better replacement
20:04 [particle] yep
20:04 moritz_ so I think I'll delete p6regex.t
20:05 pugs_svn r25064 | moritz++ | [t] a small script that tells you how many tests are in which parts of the
20:05 pugs_svn r25064 | moritz++ | test suite
20:06 [particle] have you run t/examples via rakudo?
20:07 oskie masak: thanks for the links... the perl 5 to 6 one was particularly useful!
20:07 moritz_ [particle]: the main part of that was 99-problems, which I mostly ported to spec/integration/99*
20:07 masak oskie: moritz_++ again, then :)
20:08 * moritz_ blushes
20:09 [particle] ah, i didn't realize it's in spec/integration
20:09 [particle] i did notice spec/integration takes longer now, though :)
20:10 moritz_ I copied most of those files that actually contained tests (and not just stubs)
20:10 moritz_ and merged them, ten each into one file
20:10 ruoso joined #perl6
20:11 ruoso HellO!
20:11 masak ruoso: oh hai
20:14 pugs_svn r25065 | lwall++ | [README] no longer need TRE; now use YAML::Syck
20:18 oskie why do you still have $a,@b,%c when you can do $a,$b,$c assuming you initialize them to the correct type?
20:18 diakopter ruoso: howdy
20:19 ruoso diakopter, hi
20:20 ruoso diakopter, were you able to run mildew?
20:25 rindolf joined #perl6
20:25 [particle] <1 2 3>.a is a method call, not a sub call
20:26 [particle] of course it shouldn't give null pmc access
20:26 [particle] but it shouldn't work, should it?
20:27 ruoso as long as the list doesn't provide a "a" method, it should fial
20:27 moritz_ not unless there was 'class List is also { method a { ... } }' before ;-)
20:27 ruoso moritz_, with the "use MONKEY_PATCHING;" before that ;)
20:28 moritz_ ruoso: I know, but Rakudo doesn't to pragmas yet, so I ignore that bit
20:28 pbuetow joined #perl6
20:29 diakopter ruoso: well, no.
20:29 ruoso diakopter, because it failed? or because you didn't try?
20:30 diakopter ruoso: Bareword found where operator expected at ../../src/perl6/STD.pm line 4, near "$LANG is"
20:30 diakopter `make all`
20:30 ruoso do you have perl 5.10?
20:30 diakopter yeah
20:31 ruoso you need to run make in ../../src/perl6
20:31 ruoso it is trying to run the Perl 6 code, and you need STD.pmc to be built
20:32 diakopter oh ok
20:32 diakopter I was actually doing that now too.
20:33 ejs joined #perl6
20:39 diakopter preparing to, anyway. installing Moose.
20:47 finanalyst moritz_: not quite sure what you mean, not fudge for rakudo. Since rakudo doesnt impliment caller(), shouldnt the whole file be skipped?
20:48 finanalyst Also, for completeness, pugs requires eg., caller().sub but how to code this for implementation independence, but leave in code for pugs?
20:48 [particle] finanalyst: only files with a reasonable expectation of passing in rakudo are fudged
20:48 [particle] "fudge no file before its time"
20:49 moritz_ finanalyst: that's exactly what I meant - it won't run, so don't even try
20:49 Tene_ What is caller() ?
20:49 moritz_ Tene_: information about the caller of a sub
20:49 Tene_ What information?
20:49 moritz_ finanalyst: caller() seems fine
20:49 moritz_ Tene_: line number, file, name... much like in Perl 5
20:50 Tene_ I think we could implement that in rakudo pretty soon with the bytecode annotations.
20:50 moritz_ finanalyst: since caller is a function, calling it as caller() is valid Perl 6, and can be left as is
20:51 moritz_ Tene_: that would be great (especially if we finally got line numbers in run-time errors), but I think pmichaud++ needed to do some PGE rework first
20:51 Tene_ yeah
20:51 [particle] yep, need pge work to get line info, pge currently tracks only pos
20:51 finanalyst do you want caller.t moved to t/spec/S06-advanced_subroutine_features ?
20:52 moritz_ finanalyst: yes
20:53 diakopter ruoso: mildew can't find smop's .dll... I suppose I should install it someplace windows can find it...
20:53 ruoso diakopter, or use the windows equivalent for LD_LIBRARY_PATH
20:53 ruoso if there is such thing
20:54 diakopter tmp/Rf4Prebpgm:8: undefined reference to `_SMOP__S1P__Capturize'
20:55 diakopter and more
20:56 diakopter :( unfortunately I don't know how to get more verbosity or investigate/diagnose deeper.
20:56 diakopter so I'm grateful for any suggestions. :)
20:57 ruoso hmm
20:57 ruoso is it when running? or when compiling?
20:57 diakopter perl mildew -Cso  -o prelude/Prelude.mildew.so prelude/Prelude.pm
20:58 diakopter /cygdrive/c/Users/mwilson/Ap​pData/Local/Temp/ccmEaQCp.o: In function `init':
20:58 diakopter /tmp/Rf4Prebpgm:8: undefined reference to `_SMOP__S1P__Capturize'
20:58 ruoso ok, that's when compiling
20:58 diakopter it needs to know where some .h are?
20:59 ruoso hm.. well... undefined reference is usually a message of the linker, not the compiler
20:59 diakopter yeah, after 3 sets of those types of errors, this: collect2: ld returned 1 exit status
21:00 ruoso is there a way for you to check if smop.dll contains that symbol?
21:00 ruoso maybe the linker is being called incorrectly
21:02 diakopter yeah I can look at smop.dll's exports
21:04 diakopter smop.dll exports SMOP__S1P__Capturize
21:04 diakopter but not the one with leading _
21:05 diakopter sounds like yet another windows library building oddity.
21:05 ruoso yeah...
21:05 * ruoso commute &
21:05 diakopter on yours, does it have which or both
21:05 ruoso diakopter, I'll take a look at it when I get homew
21:07 masak http://use.perl.org/~masak/journal/38353
21:07 oskie I found a typo in http://perlcabal.org/~azawawi/html/s​pec/S03-operators/comparison.t.html, who can fix?
21:07 masak oskie: what's the typo?
21:08 oskie statementlist statement statement_modexpr statement_expr EXPR termish noun term term__S_393identifier identifier ident isstatementlist statement statement_modexpr statement_expr EXPR termish noun term term__S_393identifier args args_func_args (statementlist statement statement_modexpr statement_expr EXPR termish noun term term__S_393identifier args args_func_args semiarglist arglist EXPR EXPR termish PRE PRE_prepost PRE_prefix prefix pr
21:08 oskie oops
21:09 oskie stupid windoze clipboard... is(+Order::Decrease,  1, 'Order::Increase numifies to 1'); <- should read 'Order::Decrease numifies to 1');
21:09 masak aye, I see it.
21:09 masak fixing.
21:09 moritz_ oskie: the source is in t/spec/S03-operators/comparison.t - do you want a commit bit?
21:09 moritz_ oskie: then you can fix such things on your own
21:10 oskie moritz_: hehe, ah, there it is. sure, i can fix it!
21:10 pugs_svn r25066 | masak++ | [comparison.t] typo spotted by oskie++
21:10 moritz_ heh, masak was faster ;-)
21:10 * masak blows gun pipes
21:11 oskie moritz_: strange, i don't have t/spec (from daily snapshot)
21:11 masak oskie: Pugs repository?
21:11 oskie i should probably check out the code directly
21:11 masak oskie: you should.
21:12 masak oskie: in Rakudo, you'll get the latest t/spec tests by running 'make spectest' in the perl6 dir.
21:12 [particle] 'make testable' will get the latest t/spec
21:12 [particle] make spectest will do that, and run the tests
21:13 masak [particle]: thanks.
21:18 oskie ah, that's useful
21:19 masak oskie: all this is because the spectests really reside in the Pugs repository, which can also be svn-checked-out through 'svn co http://svn.pugscode.org/pugs'
21:21 oskie masak: ah, ok
21:22 jnthn masak: whiner! :-P
21:22 masak admittedly.
21:22 pugs_svn r25067 | putter++ | [elfparse] Now works with STD r25030 (dropped need for the r25041 patch).  Also added :foo('bar') - colonpair with parens.
21:22 masak please, please, please fix! :/
21:23 masak I'm suffering from the beginnings of Perl 6 withdrawal here.
21:23 finanalyst particle: still not clear on fudge/nofudge. Saying that no need to fudge, do you mean dont include #?rakudo: todo directives?
21:23 moritz_ finanalyst: that's right
21:23 jnthn masak: I'll bet the clone bug is to do with Perl6Scalar doing not-exactly-what-you-expect on clone...
21:24 masak jnthn: I'm glad you have an inkling on that one. Druid is sad because of it.
21:25 moritz_ and sad druids are dangerous ;-)
21:25 masak moritz_: especially the kind wielding large blocks of stone.
21:26 jnthn masak: Ah. On the paris one - I kinda knew full well that | on a hash didn't work...
21:26 jnthn I think the |@a one made it in because someone specifically needed that and it's not quite done the right way.
21:26 masak ok.
21:26 jnthn pm and I discussed how to do it right on a bus in San Francisco. Now I just need to remember what we said...
21:27 masak best of luck.
21:27 pugs_svn r25068 | finanalyst++ | [t] moved builtins/caller.t to spec/
21:28 jnthn masak: I'm a tad drowsy today, after late night yesterday (;-)) and flight today...will try and look tomorrow.
21:28 moritz_ finanalyst++
21:28 masak jnthn: no prob.
21:28 jnthn Was good to see you yesterday - thanks for coming down! :-)
21:29 masak jnthn: thank _you_ for inviting me. :)
21:29 pugs_svn r25069 | finanalyst++ | [t/spec] slight edits to S06-advanced_subroutine_features/caller.t
21:29 jnthn Erm. http://www.pmichaud.com/perl6​/rakudo-tests-2009-01-27.png
21:29 jnthn Where did all the new spectests come from?!
21:30 masak whoa.
21:31 jnthn somebody++ if it's for real.
21:32 moritz_ jnthn: pmichaud, you, Tene, [particle], masak, me...
21:32 finanalyst moritz_: pls review t/spec/S06-advanced_subroutine_features/caller.t
21:32 Tene_ What about me?
21:32 * masak didn't do nuttin'
21:32 moritz_ jnthn: I estimated it's an average of more than 70 per day since may 2008 - I should blog about it
21:33 moritz_ finanalyst: sure thing, I review (nearly) all commits to the test suite
21:33 jnthn moritz_: I was more noticing on that latest graph, that the grey jumped up by a _load_ of late.
21:33 jnthn Like, last day or two.
21:33 finanalyst i still dont think line 13 is right. Should be "a_sub", not "foo"
21:33 moritz_ finanalyst: right
21:33 finanalyst ok, will change
21:34 jnthn I've added more tests, but mostly ones that pass and exercise new but un[der]?tested features I'm putting in.
21:34 moritz_ finanalyst: the syntax is '#?pugs 2 todo "reason"', with no colon after the 'pugs' part
21:34 moritz_ jnthn: ah that - I'm quite sure it's bogus
21:34 jnthn moritz_: Ah.
21:34 moritz_ oh wait
21:34 moritz_ I did move 1.5k regex tests
21:35 moritz_ (Unicode props mostly)
21:35 jnthn That'd do it! ;-)
21:35 jnthn Or were they new ones?
21:35 moritz_ no
21:36 moritz_ they lived in t/regex/from_perl6/rules/properties.t (or similar)
21:36 jnthn Ah, OK.
21:36 jnthn Now we just need someone with PGE-foo to make 'em pass. ;-)
21:36 pugs_svn r25070 | moritz++ | [t] remove p6regex.t, spec/S05-mass/rx.t is much better and more up-to-date
21:37 pugs_svn r25071 | finanalyst++ | [t/spec] slight edits to S06-advanced_subroutine_features/caller.t
21:39 finanalyst moritz_: you said syntax #?pugs ... no colon. But t/spec/README line 38 specifies an optional colon.
21:40 finanalyst Is colon now not correct?
21:41 [particle] moritz_: +70 passing/day?
21:42 perlbot joined #perl6
21:47 masak rakudo: grammar G { regex TOP { ^ <token>* $ }; regex token { <foo>|<bar> }; regex foo { foo }; regex bar { bar} }; "foofoobarfoo" ~~ /<G::TOP>/; say $/<token>.WHAT
21:47 p6eval rakudo 36065: OUTPUT«Failure␤»
21:47 masak what should I do to get at the list of tokens inside $/ ?
21:47 moritz_ finanalyst: oh, I've never used it with colon, maybe it also works that way... sorry for the false alarm
21:48 moritz_ [particle]: on average, yes
21:48 moritz_ I'll just blog about it, with a chart and all
21:50 jnthn rakudo: grammar G { regex TOP { ^ <token>* $ }; regex token { <foo>|<bar> }; regex foo { foo }; regex bar { bar} }; "foofoobarfoo" ~~ /<G::TOP>/; say $/.WHAT; say ?$/;
21:50 p6eval rakudo 36065: OUTPUT«Match␤1␤»
21:51 jnthn rakudo:  grammar G { regex TOP { ^ <token>* $ }; regex token { <foo>|<bar> }; regex foo { foo }; regex bar { bar} }; "foofoobarfoo" ~~ /<G::TOP>/; say $/<TOP><token>.WHAT
21:51 p6eval rakudo 36065: OUTPUT«Method 'postcircumfix:{ }' not found for invocant of class 'Failure'␤current instr.: 'postcircumfix:{ }' pc 3556 (src/classes/Associative.pir:77)␤»
21:51 moritz_ jnthn: $/<G::TOP> is more intersting
21:52 jnthn rakudo:  grammar G { regex TOP { ^ <token>* $ }; regex token { <foo>|<bar> }; regex foo { foo }; regex bar { bar} }; "foofoobarfoo" ~~ /<G::TOP>/; say $/<G::TOP>
21:52 p6eval rakudo 36065: OUTPUT«foofoobarfoo␤»
21:52 jnthn aha
21:52 pmurias joined #perl6
21:52 jnthn rakudo: grammar G { regex TOP { ^ <token>* $ }; regex token { <foo>|<bar> }; regex foo { foo }; regex bar { bar} }; "foofoobarfoo" ~~ /<G::TOP>/; .say for @($/<G::TOP><token>)
21:52 p6eval rakudo 36065: OUTPUT«Method 'say' not found for invocant of class 'G'␤current instr.: 'parrot;P6metaclass;dispatch' pc 287 (src/classes/ClassHOW.pir:145)␤»
21:52 masak rakudo: grammar G { regex TOP { ^ <token>* $ }; regex token { <foo>|<bar> }; regex foo { foo }; regex bar { bar} }; "foofoobarfoo" ~~ /<G::TOP>/; say +$/<G::TOP><token>
21:52 p6eval rakudo 36065: OUTPUT«4␤»
21:52 masak moritz_++ # thanks
21:57 moritz_ [particle]: sorry, mis-remebered. 23 per day, 700 per month
21:57 jnthn That sounds more realistic!
21:57 [particle] wow. 700/mo
21:58 masak still very good, though.
21:58 jnthn But still, quite an achievement.
21:58 [particle] yep
21:59 * jnthn hopes we can keep it up
22:04 masak based on the current look of the spectest graph, if we _do_ keep it up, we'll run out of spectests in late May.
22:05 hanekom__ joined #perl6
22:05 jnthn masak: You're assuming that there won't be any new spectests.
22:05 moritz_ masak: ... which is why I struggle so badly to get new people involved with testing
22:05 masak jnthn: yes. or rather, not enough.
22:06 jnthn masak: For parametric roles, there were few existing tests to draw on.
22:06 jnthn So I had to write a bunch of new one.
22:06 jnthn So that work mostly ended up with new spectests rather than getting existing ones passing.
22:06 moritz_ jnthn: that's sadly a fair assumption. The number or really new tests (not moved tests) isn't all that big. Your parameterized roles stuff is a notable exception of that rule
22:06 masak jnthn: still, did you write 70 a day?
22:06 jnthn Junction auto-threading was a similar case.
22:07 moritz_ jnthn: speaking of which... do you know if we have any tests for threading over the invocant?
22:07 jnthn I doubt I wrote 70 a day. Maybe one day...
22:07 masak on _average_ :)
22:07 jnthn moritz_: as in, $a.foo when $a is a junction?
22:07 moritz_ jnthn: that's what I mean, yes
22:07 jnthn moritz_: Gah. I'm still not 100% clear on what the spec is.
22:08 moritz_ jnthn: TimToady says "autothread over any method not defined in Junction"
22:08 jnthn masak: Of course not. The point was just that, while sometimes making something new work results in an un-fudge, some of the time I end up adding more tests.
22:08 moritz_ jnthn: it works, I tested it with an rakudo: one-line
22:08 jnthn moritz_: It works? Wow.
22:08 moritz_ one-liner, that is
22:09 moritz_ rakudo: class A { method b { say (1..10).pick } }; (A.new, A.new, A.new).b
22:09 p6eval rakudo 36065: OUTPUT«Method 'b' not found for invocant of class 'List'␤current instr.: 'parrot;P6metaclass;dispatch' pc 287 (src/classes/ClassHOW.pir:145)␤»
22:09 moritz_ rakudo: class A { method b { say (1..10).pick } }; any(A.new, A.new, A.new).b
22:09 p6eval rakudo 36065: OUTPUT«Could not locate a method 'b' to invoke on class 'Junction'.␤current instr.: 'die' pc 16767 (src/builtins/control.pir:204)␤»
22:09 masak jnthn: point taken. such additions will postpone the 'late May' date, but not by very much. the spectests will eventually run out.
22:09 moritz_ uhm.
22:09 masak rakudobug?
22:09 moritz_ jnthn: seems I was temporarily insane when I thought it worked
22:09 moritz_ masak: if you please ;-)
22:09 jnthn moritz_: OK, it was either you or me. ;-)
22:09 * masak submits
22:10 jnthn moritz_: I *think* that once we are putting the correct invocant type into the signature, it *should* just fall out of what we already have...
22:11 jnthn Since methods inside Junction will match on the invocant type...and the rest won't and will just trigger the auto-threader.
22:11 jnthn The lack of invocant type checking is a bug anyway. Just not worked out the Right Way to fix it yet.
22:12 pugs_svn r25072 | masak++ | [u4x/TODO] added term 'autothreading'
22:16 masak rakudo: grammar Tokenizer { regex TOP { ^ <token>* $ }; regex token { <foo> | <bar> }; regex foo { foo }; regex bar { bar } }; "foobar" ~~ /<Tokenizer::TOP>/ or die "AOUCH"; $/ := $<Tokenizer::TOP>; .say for $<tokens>
22:16 p6eval rakudo 36065: OUTPUT«Use of uninitialized value␤␤»
22:16 masak what am I doing wrong? I want a list of tokens, i.e. "foo\nbar\n"
22:17 moritz_ try @( $<tokens> )
22:17 masak nope, no luck.
22:17 masak $<tokens> is actually undefined.
22:17 masak Failure.
22:17 PerlJam there is no "tokens" that I can see.
22:17 PerlJam just "token"
22:17 moritz_ ah, $<token>
22:17 masak PerlJam: thank you.
22:18 * masak is blind and shouldn't code
22:18 PerlJam It's just a brain-eye disconnect that happens sometimes
22:18 masak rakudo: grammar Tokenizer { regex TOP { ^ <token>* $ }; regex token { <foo> | <bar> }; regex foo { foo }; regex bar { bar } }; "foobar" ~~ /<Tokenizer::TOP>/ or die "AOUCH"; $/ := $<Tokenizer::TOP>; .say for $<token>
22:18 p6eval rakudo 36066: OUTPUT«Method 'say' not found for invocant of class 'Tokenizer'␤current instr.: 'parrot;P6metaclass;dispatch' pc 287 (src/classes/ClassHOW.pir:145)␤»
22:18 masak WTF?
22:18 masak did I call .say on a Tokenizer?
22:19 moritz_ masak: the things in $<token>[0] are also Match objects...
22:19 masak but hardly Tokenizer objects, right?
22:19 moritz_ masak: which by a bug you reported early are reported as of class Tokenizer, wrongl so
22:19 PerlJam surely that's the same ... right
22:19 masak it feels like the same bug, yes.
22:19 PerlJam G.parse makes $/ a G instead of a Match
22:20 moritz_ rakudo: ("a" ~~ /a/).say
22:20 p6eval rakudo 36066: OUTPUT«a␤»
22:25 justatheory joined #perl6
22:26 masak ok, heading home to sleep.
22:26 masak Rakudo has too many bugs right now, if y'ask me. :/
22:27 masak 'cetere censeo...'
22:27 moritz_ si tacuisses, philosophus...
22:30 jan_ joined #perl6
22:38 Limbic_Region joined #perl6
22:39 moritz_ http://perlgeek.de/blog-en​/perl-6/rakudo-rocks.html
22:40 PerlJam neat
22:41 moritz_ I wanted to add something about how Rakudo is at least as good as git and Obama together, but I forgot it, and safe it for another post
22:43 PerlJam I don't recall rakudo saying "Yes We Can" nor do I recall it being a force of "Change"  :)
22:43 moritz_ I didn't say it did the same, just that it's at least as good ;-)
23:33 japhb joined #perl6
23:39 Maddingue joined #perl6
23:41 preflex joined #perl6
23:41 justatheory joined #perl6
23:41 perlbot joined #perl6
23:41 finanalyst joined #perl6
23:41 dh_ joined #perl6
23:41 p6paste joined #perl6
23:41 kisu joined #perl6
23:41 ilogger2 joined #perl6
23:44 justatheory joined #perl6
23:44 perlbot joined #perl6
23:44 finanalyst joined #perl6
23:44 dh_ joined #perl6
23:44 p6paste joined #perl6
23:44 kisu joined #perl6
23:44 ilogger2 joined #perl6

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

Perl 6 | Reference Documentation | Rakudo