Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-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:07 am0c joined #perl6
00:11 fda314925 joined #perl6
00:11 lumi joined #perl6
00:26 TimToady rakudo: class A { method foo {say "foo"} }; class B {has A $.aaa handles 'foo' }; my B $b .= new; $b.foo
00:26 p6eval rakudo 1d4928:  ( no output )
00:26 breinbaas joined #perl6
00:26 TimToady same can't-do-class bug, I expect
00:27 TimToady hudnix: but it works with a .= new
00:29 ash_ joined #perl6
00:51 lumi joined #perl6
00:53 kraih_sri joined #perl6
01:12 diakopter ok, I've reproduced the can't-do-class bug outside of p6eval.  finally.
01:14 TimToady lemme guess, you used chroot
01:14 colomon \o/
01:21 p6eval joined #perl6
01:22 p6eval joined #perl6
01:23 diakopter rakudo: class A { method foo {say "foo"} }; class B {has A $.aaa handles 'foo' }; my B $b .= new; $b.foo
01:23 p6eval rakudo 1d4928: foo␤
01:23 colomon \o/
01:23 diakopter YA-TAA
01:23 davidfetter left #perl6
01:24 diakopter TimToady: it was the prefix "use Safe;\n"
01:24 hudnix ah
01:24 diakopter apparently when rakudo loads a module, it enters another level of repl
01:25 TimToady another run loop, you mean?
01:25 diakopter so 'use Safe;'.$user_code was dropping it back to a > prompt
01:25 * colomon verifies that adding use Safe; locally is slow as a slow dog.
01:25 diakopter so I inlined the contents of lib/Safe.pm instead of 'use Safe'
01:25 TimToady huh
01:26 diakopter I should specify
01:26 diakopter it drops it back to a > prompt when you do this:
01:26 diakopter export PERL6LIB=lib
01:27 diakopter echo 'use Safe; class A { }'|./perl6
01:27 lumi joined #perl6
01:27 diakopter oh.  I guess actually it's the 'class' declaration that enters another repl loop
01:27 diakopter maybe it's eval loop
01:27 diakopter I dunno
01:28 TimToady rakudo: run("ls /etc")
01:28 p6eval rakudo 1d4928: Too many positional parameters passed; got 1 but expected 0␤in Main (file src/gen_setting.pm, line 324)␤
01:28 diakopter heh
01:28 colomon seriously, the use Safe; version of that double class declaration is still just sitting there on my system.  (Sounds like it is ramping up the processor fan, too...)
01:29 TimToady rakudo: say qx[ls /etc]
01:29 diakopter yeah, it enters an unending eval("die") loop or something
01:29 p6eval rakudo 1d4928: Too many positional parameters passed; got 1 but expected 0␤in Main (file src/gen_setting.pm, line 324)␤
01:29 diakopter hey, it's my VPS; it's still protected.  you can still open sockets, though.
01:29 diakopter well, ok, brb
01:29 drbean joined #perl6
01:30 p6eval joined #perl6
01:31 diakopter rakudo: say qx[ls /etc]
01:31 p6eval rakudo 1d4928: operation not permitted in safe mode␤in Main (file /tmp/JbdQ6TvxT0, line 1)␤
01:31 diakopter rakudo: run("ls /etc")
01:31 p6eval rakudo 1d4928: operation not permitted in safe mode␤in Main (file /tmp/vzQMpNlV40, line 1)␤
01:32 diakopter rakudo: run('rm -Rf ~/')
01:32 p6eval rakudo 1d4928: operation not permitted in safe mode␤in Main (file /tmp/RAAB3feL0T, line 1)␤
01:32 diakopter rakudo: run("ls /etc", 'rm -Rf ~/')
01:32 p6eval rakudo 1d4928: operation not permitted in safe mode␤in Main (file /tmp/66bgq60PDY, line 1)␤
01:37 pugs_svn r29592 | diakopter++ | [evalbot] fix stuff
01:38 diakopter rakudo: my $ss_SS_S_S__S_S_s;
01:38 p6eval rakudo 1d4928: Redeclaration of variable $ss_SS_S_S__S_S_s␤
01:42 diakopter colomon: is it still running? ;)
01:45 diakopter http://huri.net/tech/pspec
01:45 dhaivat joined #perl6
01:51 _ash cool link diakopter
02:00 agentzh joined #perl6
02:05 _ash joined #perl6
02:15 payload joined #perl6
02:15 justatheory joined #perl6
02:15 payload joined #perl6
02:26 dhaivat left #perl6
02:41 orafu joined #perl6
03:01 colomon diakopter: sorry, I killed it and went downstairs to exercise before you asked the question.  :)
03:02 colomon never finished on its own, I think I let it run for 10 minutes or so before I kiolled it.
03:07 lumi joined #perl6
03:31 araujo joined #perl6
03:32 diakopter I just realized how to give the compiled edition of program compiled by sprixel access to a routine that can build a copy of each's own originating syntax tree.
03:37 diakopter (in addition to an emit() method, each node needs an emit_emitter() method, which just emits a CIL edition of each's regen() method)
03:39 diakopter oh, and, the same must be done for the originating grammar.
03:39 diakopter but not necessarily the compiler itself.
03:40 diakopter because that would get a little too circular.
04:04 jaldhar joined #perl6
04:09 lumi joined #perl6
04:14 jaldhar joined #perl6
04:20 tolkad joined #perl6
04:20 jaldhar joined #perl6
04:20 tolkad !help
04:21 tolkad @help
04:22 diakopter I don't think any of the bots reply to those
04:23 tolkad dalek did
04:23 diakopter oh :)
04:23 diakopter oh yeah
04:23 tolkad it asked me to log in
04:23 tolkad 0_o
04:23 diakopter yeah, and there aren't any users registered with it
04:23 tolkad lol
04:24 tolkad the website lies! lambdabot isn't in here
04:24 diakopter do you want to leave a message for someone?
04:24 lisppaste3 test1 pasted "test2" at http://paste.lisp.org/display/93982
04:25 tolkad no
04:28 jaldhar joined #perl6
04:29 smash_ joined #perl6
04:30 tolkad perl6: echo "test"
04:30 p6eval rakudo 1d4928: Could not find non-existent sub echo␤in Main (file src/gen_setting.pm, line 324)␤
04:30 p6eval ..elf 29592: Undefined subroutine &GLOBAL::echo called at (eval 124) line 3.␤ at ./elf_h line 5881␤
04:30 p6eval ..pugs: *** No such subroutine: "&echo"␤    at /tmp/2abhQXzqSZ line 1, column 1 - line 2, column 1␤
04:30 tolkad perl6: print "test"
04:30 p6eval elf 29592, pugs, rakudo 1d4928: test
04:31 tolkad rakudo: print "test"
04:31 p6eval rakudo 1d4928: test
04:31 diakopter ooo p6eval's rakudo is now much speedier (now that 'use Safe' is removed)
04:32 tolkad rakudo: print "test" x 100
04:32 p6eval rakudo 1d4928:
04:32 p6eval ..testtesttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttesttestt​esttesttesttesttesttesttesttesttesttesttesttestte​sttesttesttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttesttesttestt…
04:32 tolkad what was that 0_o
04:33 tolkad some strange unicode characters just confused my IRC client
04:33 diakopter oh, an ellipsis
04:33 tolkad no, before that
04:33 tolkad after the number
04:33 tolkad and the colon
04:33 diakopter it's whitespace to me
04:33 tolkad I get two newlines and then "p6eval" in blue
04:34 tolkad It shouldn't be able to force my client to print newlines
04:34 diakopter no one's reported that before.. which irc client do you use
04:34 tolkad xchat aqua
04:34 diakopter oh
04:34 diakopter take a look at the bottom of irc.pugscode.org
04:34 diakopter to see how it "should" appear
04:35 diakopter then again, I dunno
04:35 tolkad wait, was that two messages or one?
04:36 diakopter 2
04:36 diakopter maybe xchat aqua tried to "intelligently" combine them
04:36 tolkad nah, it never does that. I'm suspecting some control character in there
04:37 tolkad buubot: echo "test"
04:37 buubot tolkad: "test"
04:37 tolkad phenny: .o echo test
04:37 tolkad .o echo test
04:37 phenny test
04:38 tolkad hmm
04:38 tolkad phenny: o echo test
04:38 diakopter .o echo ␤␤␤
04:38 phenny ␤␤␤
04:39 diakopter do you see 3 "NL" chars?
04:39 tolkad I see 3 squigglies
04:39 tolkad oh they are NL
04:39 diakopter heh; small font
04:40 tolkad well, it's not important
04:40 tolkad x is foo
04:40 tolkad buubot: x is foo
04:40 buubot tolkad: Stored x is foo
04:40 diakopter x?
04:40 tolkad buubot: x
04:40 buubot tolkad: x is foo
04:41 diakopter buubot: x is buubot: x?
04:41 buubot diakopter: Stored x is buubot: x?
04:41 diakopter buubot: x?
04:41 buubot diakopter: x is buubot: x?
04:41 diakopter buubot: x? is x?
04:41 buubot diakopter: Stored x? is x?
04:41 diakopter buubot: x??
04:41 buubot diakopter: x? is x?
04:42 diakopter buubot: buubot: x? is buubot: x? is buubot: x?
04:42 buubot diakopter: Stored x? is buubot: x? is buubot: x?
04:42 diakopter buubot: x?
04:42 buubot diakopter: x? is buubot: x? is buubot: x?
04:42 diakopter hee
04:43 diakopter buubot: buubot?
04:43 buubot diakopter: buubot is a swiss army knife where each tool is a smaller swiss army knife.
04:43 tolkad x?
04:43 tolkad what is x?
04:43 diakopter buubot: those smaller swiss army knives... do they have smaller ones too?
04:43 buubot diakopter: Couldn't match input.
04:44 diakopter buubot: buu?
04:44 buubot diakopter: buu is qq
04:45 diakopter blah: buubot: x?
04:46 diakopter rakudo: human
04:46 p6eval rakudo 1d4928: Could not find non-existent sub human␤in Main (file src/gen_setting.pm, line 324)␤
04:48 diakopter rakudo: space
04:48 p6eval rakudo 1d4928: Could not find non-existent sub space␤in Main (file src/gen_setting.pm, line 324)␤
04:48 diakopter rakudo: strate
04:48 p6eval rakudo 1d4928: Could not find non-existent sub strate␤in Main (file src/gen_setting.pm, line 324)␤
04:49 diakopter rakudo: versives
04:49 p6eval rakudo 1d4928: Could not find non-existent sub versives␤in Main (file src/gen_setting.pm, line 324)␤
04:49 tolkad Could we get lambdabot in here?
04:49 tolkad lambdabot is the best bot ever
04:50 diakopter dunno.  maybe ask on #lambdabot
04:51 diakopter rakudo: conscious
04:51 tolkad nqp: say('x')
04:51 p6eval rakudo 1d4928: Could not find non-existent sub conscious␤in Main (file src/gen_setting.pm, line 324)␤
04:51 p6eval nqp: x␤
04:51 tolkad nqp: say('x' x 500)
04:51 p6eval nqp: Confused at line 1, near "say('x' x "␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤
04:51 tolkad nqp: say("x" x 500)
04:51 p6eval nqp: Confused at line 1, near "say(\"x\" x "␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤
04:51 tolkad wtf
04:51 diakopter nqp is a small subset
04:51 tolkad nqp: $x = "x" x 500;say($x)
04:51 p6eval nqp: Assignment ("=") not supported in NQP, use ":=" instead at line 1, near " \"x\" x 500"␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤
04:52 tolkad nqp: $x := "x" x 500;say($x)
04:52 p6eval nqp: Confused at line 1, near "$x := \"x\" "␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤
04:52 diakopter nqp doesn't have the x operator
04:52 tolkad phenny: tell tolkad test
04:52 phenny You can tell yourself that.
04:52 tolkad phenny: tell p6eval test
04:52 phenny tolkad: I'll pass that on when p6eval is around.
04:52 tolkad nqp: $x := "x" x 500;say($x)
04:52 p6eval nqp: Confused at line 1, near "$x := \"x\" "␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤
04:52 phenny p6eval: 04:52Z <tolkad> tell p6eval test
04:53 diakopter bots are good whipping boys after a rough day.
04:54 lumi joined #perl6
04:55 tolkad buubot: macro foo is [echo x]
04:55 buubot tolkad: Stored foo is [echo x]
04:55 tolkad foo
04:55 tolkad buubot: foo
04:56 buubot tolkad: x
04:56 diakopter buubot: macro foo is [echo x] [echo x]
04:56 buubot diakopter: Stored foo is [echo x] [echo x]
04:56 diakopter buubot: foo
04:56 buubot diakopter: Error: unmatched closing parenthesis in compose
04:56 FurnaceBoy joined #perl6
04:56 diakopter hee
04:57 diakopter buubot: macro foo is [echo x] [echo x])
04:57 buubot diakopter: Stored foo is [echo x] [echo x])
04:57 diakopter buubot: foo
04:57 buubot diakopter: Error: unmatched opening parenthesis in compose
04:57 diakopter buubot: macro foo is [echo x] ([echo x]
04:57 buubot diakopter: Stored foo is [echo x] ([echo x]
04:57 diakopter buubot: foo
04:57 buubot diakopter: x
04:57 diakopter buubot: macro foo is ([echo x] [echo x]
04:57 buubot diakopter: Stored foo is ([echo x] [echo x]
04:57 diakopter buubot: foo
04:57 buubot diakopter: Error: unmatched closing parenthesis in compose
04:58 diakopter buu: ^^
04:58 tolkad buubot: macro foo is ([echo x] [echo x])
04:58 buubot tolkad: Stored foo is ([echo x] [echo x])
04:58 tolkad buubot: macro foo is [echo x] [echo x]
04:58 buubot tolkad: Stored foo is [echo x] [echo x]
04:58 tolkad buubot: macro foo is [echo x]
04:58 buubot tolkad: Stored foo is [echo x]
04:58 tolkad buubot: macro foo is ([echo x] [echo x])
04:58 buubot tolkad: Stored foo is ([echo x] [echo x])
04:58 tolkad buubot: foo?
04:58 buubot tolkad: Compose failed to find a plugin named: [echo
04:59 tolkad buubot: quote x
04:59 buubot tolkad: Couldn't match input.
05:00 diakopter heh
05:00 diakopter bot fun is fun
05:00 diakopter rakudo: ject
05:00 p6eval rakudo 1d4928: Could not find non-existent sub ject␤in Main (file src/gen_setting.pm, line 324)␤
05:02 tolkad phenny: tell p6eval test
05:02 phenny tolkad: I'll pass that on when p6eval is around.
05:02 tolkad rakudo a
05:02 tolkad rakudo: a
05:03 p6eval rakudo 1d4928: Could not find non-existent sub a␤in Main (file src/gen_setting.pm, line 324)␤
05:03 phenny p6eval: 05:02Z <tolkad> tell p6eval test
05:03 diakopter phenny: tell rakudo liminal
05:03 phenny diakopter: I'll pass that on when rakudo is around.
05:03 rakudo hi
05:03 phenny rakudo: 05:03Z <diakopter> tell rakudo liminal
05:03 p6eval rakudo 1d4928: Leading 0 does not indicate octal in Perl 6␤Confused at line 10, near ":03Z <diak"␤in Main (file <unknown>, line <unknown>)␤
05:04 diakopter o
05:05 diakopter phenny: tell buubot is hihi
05:05 phenny diakopter: I'll pass that on when buubot is around.
05:05 diakopter buubot: hihi?
05:05 buubot diakopter: No factoid found. Did you mean one of these: [how]
05:05 phenny buubot: 05:05Z <diakopter> tell buubot is hihi
05:05 buubot phenny: Stored 05Z <diakopter> tell buubot is hihi
05:06 diakopter buubot: how?
05:06 buubot diakopter: how are you today?
05:06 diakopter buubot: GFY?
05:06 buubot diakopter: Couldn't match input.
05:10 gfx joined #perl6
05:13 tolkad print "buubot: macro "+str(time.localtime().tm_hour)+":​"+str(time.localtime().tm_min)+"Z <phenny> "
05:13 tolkad whoops
05:13 tolkad .o py print "buubot: macro "+str(time.localtime().tm_hour)+":​"+str(time.localtime().tm_min)+"Z <phenny> "
05:13 phenny buubot: macro 5:13Z <phenny>
05:13 buubot phenny: Couldn't match input.
05:13 tolkad hmm
05:14 tolkad .o py print "buubot: macro "+str(time.localtime().tm_hour)+":​"+str(time.localtime().tm_min)+"Z <phenny> is [echo [args]]"
05:14 phenny buubot: macro 5:14Z <phenny> is [echo [args]]
05:14 buubot phenny: Stored 5:14Z <phenny> is [echo [args]]
05:15 tolkad hmm I need a 3rd bot for this lets see what we have...
05:15 tolkad I forgot you can't do a tell to yourself : /
05:16 tolkad buubot: echo tell buubot x
05:17 buubot tolkad: tell buubot x
05:17 tolkad .o echo buubot: echo tell buubot x
05:17 phenny buubot: echo tell buubot x
05:17 buubot phenny: tell buubot x
05:17 phenny You can tell yourself that.
05:17 tolkad *sigh*
05:17 diakopter I don't think the bots are together turing-complete
05:17 tolkad diakopter: phenny is
05:17 tolkad diakopter: But yeah, the problem is phenny only responds to tell and help as far as I know
05:18 diakopter phenny: ?
05:18 tolkad phenny: help
05:18 phenny tolkad: Hi, I'm a bot. Say ".commands" to me in private for a list of my commands, or see http://inamidst.com/phenny/ for more general details. My owner is sbp.
05:18 diakopter phenny: help
05:18 phenny diakopter: Hi, I'm a bot. Say ".commands" to me in private for a list of my commands, or see http://inamidst.com/phenny/ for more general details. My owner is sbp.
05:18 tolkad phenny: echo z
05:19 diakopter phenny: "moi"?
05:19 phenny diakopter: "me" (fr to en, translate.google.com)
05:19 tolkad ooh
05:20 tolkad phenny: "me"?
05:20 phenny tolkad: Language guessing failed, so try suggesting one!
05:20 tolkad phenny: moi?
05:20 tolkad phenny: en "me"?
05:20 phenny tolkad: Language guessing failed, so try suggesting one!
05:20 tolkad phenny: es mi?
05:20 tolkad phenny: es "mi"?
05:20 phenny tolkad: "my" (es to en, translate.google.com)
05:20 diakopter phenny: "es mi"?
05:20 phenny diakopter: "my" (es to en, translate.google.com)
05:20 tolkad phenny: es en "mi"?
05:20 phenny tolkad: "my" (es to en, translate.google.com)
05:20 tolkad phenny: en en "mi"?
05:20 phenny tolkad: Language guessing failed, so try suggesting one!
05:20 tolkad phenny: en en "me"?
05:20 phenny tolkad: Language guessing failed, so try suggesting one!
05:21 tolkad phenny: en en "hat"?
05:21 phenny tolkad: Language guessing failed, so try suggesting one!
05:21 tolkad phenny: en es "hat"?
05:21 phenny tolkad: "sombrero" (en to es, translate.google.com)
05:21 tolkad oooh.... we can work with this
05:23 tolkad phenny: "moi?"?
05:23 phenny tolkad: "Me?" (fr to en, translate.google.com)
05:23 tolkad buubot: "Me? is x
05:23 buubot tolkad: Stored "Me? is x
05:23 tolkad buubot: Me??
05:23 buubot tolkad: "Me? is x
05:23 tolkad buubot: "Me??
05:23 buubot tolkad: "Me? is x
05:24 diakopter .val perl6.org
05:24 phenny diakopter: http://perl6.org is Valid
05:24 diakopter orly
05:24 diakopter .val perl.com
05:24 phenny diakopter: http://perl.com is Invalid (58 errors)
05:24 diakopter .val perlcabal.org
05:24 phenny diakopter: http://perlcabal.org is Invalid (36 errors)
05:24 tolkad buubot: "Me? is "moi?"?
05:25 buubot tolkad: Stored "Me? is "moi?"?
05:25 tolkad .o echo buubot "Me??
05:25 phenny buubot "Me??
05:25 buubot phenny: "Me? is "moi?"?
05:25 phenny buubot: "Me? is &quot;me?" (fr to en, translate.google.com)
05:25 buubot phenny: Stored "Me? is &quot;me?" (fr to en, translate.google.com)
05:25 tolkad -_-
05:25 tolkad hmm
05:25 diakopter .gc Perl 6
05:25 phenny Perl 6: 7,310,000
05:25 diakopter .gc "Perl 6"
05:25 phenny "Perl 6": 54,500
05:25 diakopter .gc "Perl6"
05:25 phenny "Perl6": 30,000
05:25 diakopter .gc "Perl 5"
05:25 phenny "Perl 5": 92,100
05:25 diakopter .gc "Perl5"
05:25 phenny "Perl5": 117,000
05:26 diakopter .gc "TimToady"
05:26 phenny "TimToady": 689
05:26 diakopter .gc "tolkad"
05:26 phenny "tolkad": 2,550
05:26 diakopter .gc "Randal Schwartz"
05:26 phenny "Randal Schwartz": 5,050
05:26 diakopter .gc "Randal L. Schwartz"
05:26 phenny "Randal L. Schwartz": 10,300
05:26 rekhajos joined #perl6
05:27 diakopter .gc "rekhajos"
05:27 phenny "rekhajos": 7
05:27 diakopter .gc "diakopter"
05:27 phenny "diakopter": 135
05:27 diakopter .gc "phenny"
05:27 phenny "phenny": 2,550
05:27 diakopter .gc "pmichaud"
05:27 phenny "pmichaud": 2,080
05:27 tolkad buubot: macro "Me? is [echo "Moi"?]
05:27 buubot tolkad: Stored "Me? is [echo "Moi"?]
05:27 tolkad .o echo buubot "Me?
05:27 phenny buubot "Me?
05:27 buubot phenny: "Moi"?
05:27 phenny buubot: "Me" (fr to en, translate.google.com)
05:27 buubot phenny: Couldn't match input.
05:28 tolkad buubot: macro "Me? is [echo "Moi?"?]
05:28 buubot tolkad: Stored "Me? is [echo "Moi?"?]
05:28 tolkad .o echo buubot "Me?
05:28 phenny buubot "Me?
05:28 buubot phenny: "Moi?"?
05:28 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:28 buubot phenny: Couldn't match input.
05:28 diakopter .bytes ㋡
05:28 phenny diakopter: '\xe3\x8b\xa1'
05:28 tolkad buubot: macro "Moi? is [echo "Moi?"?]
05:28 buubot tolkad: Stored "Moi? is [echo "Moi?"?]
05:28 tolkad .o echo buubot "Me?
05:28 phenny buubot "Me?
05:28 buubot phenny: "Moi?"?
05:28 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:28 buubot phenny: Couldn't match input.
05:28 diakopter sweet
05:28 tolkad buubot: "Moi?"
05:28 buubot tolkad: "Moi?"?
05:28 diakopter I think 4 is a new record
05:28 tolkad buubot: "Moi?" xlkjlksj
05:29 buubot tolkad: Couldn't match input.
05:29 tolkad buubot: "Moi? xlkjlksj
05:29 buubot tolkad: Couldn't match input.
05:29 tolkad humm
05:29 tolkad buubot: "Moi?" (fr to en, translate.google.com) is test
05:29 buubot tolkad: Stored "Moi?" (fr to en, translate.google.com) is test
05:29 tolkad buubot: "Moi?" (fr to en, translate.google.com)
05:29 buubot tolkad: "Moi?" (fr to en, translate.google.com) is test
05:29 diakopter phenny: doc doc?
05:29 phenny diakopter: Shows a command's documentation, and possibly an example.
05:29 phenny e.g. phenny: doc tell?
05:30 tolkad buubot: "Moi?" (fr to en, translate.google.com) is macro [echo "Moi?"?]
05:30 buubot tolkad: Stored "Moi?" (fr to en, translate.google.com) is macro [echo "Moi?"?]
05:30 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:30 phenny buubot "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?" (fr to en, translate.google.com) is macro [echo "Moi?"?]
05:30 tolkad gah I forgot
05:30 tolkad buubot: macro "Moi?" (fr to en, translate.google.com) is [echo "Moi?"?]
05:30 buubot tolkad: Stored "Moi?" (fr to en, translate.google.com) is [echo "Moi?"?]
05:30 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:30 phenny buubot "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?"?
05:30 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?"?
05:30 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?"?
05:30 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?"?
05:30 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:30 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:30 phenny buubot "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?"?
05:30 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:30 buubot phenny: "Moi?"?
05:30 phenny ...
05:30 tolkad lol
05:30 diakopter haha
05:31 tolkad phenny is well coded
05:31 diakopter ok, now get them to program each other with "is"
05:31 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:31 phenny buubot "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 phenny ...
05:31 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:31 phenny buubot "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 lumi joined #perl6
05:31 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:31 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:31 phenny buubot "Moi?" (fr to en, translate.google.com)
05:31 tolkad buubot x?
05:31 buubot tolkad: x? is buubot: x? is buubot: x?
05:31 tolkad .o echo buubot "Moi?" (fr to en, translate.google.com)
05:31 phenny buubot "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 phenny buubot: "Moi?" (fr to en, translate.google.com)
05:31 buubot phenny: "Moi?"?
05:31 phenny ...
05:32 diakopter I'll be impressed if you can get cyclical definitions going
05:32 tolkad diakopter: they only ever respond with one message, I don't think it's possible
05:32 tolkad oh wait
05:33 tolkad except buubot responds to anything
05:33 diakopter cyclical redefinitions, I mean
05:33 tolkad phenny: tell buubot lol
05:33 phenny tolkad: I'll pass that on when buubot is around.
05:33 tolkad buubot: macro I'll pass that on when buubot is around. is [echo tell buubot x]
05:33 buubot tolkad: Stored I'll pass that on when buubot is around. is [echo tell buubot x]
05:33 phenny buubot: 05:33Z <tolkad> tell buubot lol
05:34 buubot phenny: Couldn't match input.
05:34 tolkad phenny: tell buubot lol
05:34 phenny tolkad: I'll pass that on when buubot is around.
05:34 tolkad .o echo buubot: I'll pass that on when buubot is around.
05:34 phenny buubot: I'll pass that on when buubot is around.
05:34 buubot phenny: Stored I'll pass that on when buubot is around.
05:34 phenny buubot: 05:34Z <tolkad> tell buubot lol
05:34 buubot phenny: Couldn't match input.
05:34 tolkad hmm, not possible because of that pesky timestamp
05:34 diakopter phenny: Stored I'll pass that on when buubot?
05:35 diakopter phenny: "Stored I'll pass that on when buubot"?
05:35 phenny diakopter: Language guessing failed, so try suggesting one!
05:36 diakopter buubot: macro I'll pass that on when buubot is around. is [echo tell buubot x is x is x]
05:36 buubot diakopter: Stored I'll pass that on when buubot is around. is [echo tell buubot x is x is x]
05:36 diakopter phenny: tell buubot around is
05:36 phenny diakopter: I'll pass that on when buubot is around.
05:36 diakopter buubot: macro I'll pass that on when buubot is around. is [echo tell buubot x is x is x]
05:36 buubot diakopter: Stored I'll pass that on when buubot is around. is [echo tell buubot x is x is x]
05:36 phenny buubot: 05:36Z <diakopter> tell buubot around is
05:36 buubot phenny: No factoid found. Did you mean one of these: [05Z <diakopter> tell buubot]
05:37 diakopter fail :)
05:38 diakopter oh!
05:38 diakopter tolkad: buubot drops whatever's before the last :
05:38 diakopter buubot: 05:36Z <diakopter> tell buubot blah: around is
05:38 buubot diakopter: No factoid found. Did you mean one of these: [05Z <diakopter> tell buubot]
05:38 diakopter I mean phenny
05:39 diakopter phenny: 05:36Z <diakopter> tell buubot blah: around?
05:39 tolkad meh, I'm bored now that I know they have flood protection
05:39 diakopter oh.
05:39 diakopter actually
05:40 diakopter rakudo: print ("test" x 30) ~ " is tell phenny: around?"
05:40 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttest is tell phenny: around?
05:40 diakopter rakudo: print ("test" x 34) ~ " is tell phenny: around?"
05:40 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttesttestte​sttesttesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttest is tell phenny: around?
05:41 diakopter rakudo: print ("test" x 37) ~ " is tell phenny: around?"
05:41 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttesttesttestte​sttesttesttesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttesttest is tell phenny: around?
05:41 diakopter rakudo: print ("test" x 40) ~ " is tell phenny: around?"
05:41 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttest is tell phenny: around?
05:41 tolkad aaaah
05:41 tolkad that makes sense
05:41 diakopter rakudo: print ("test" x 44) ~ " is tell phenny: around?"
05:41 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttest is tell phenny: around?
05:41 diakopter rakudo: print ("test" x 50) ~ " is tell phenny: around?"
05:41 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttesttesttestte​sttesttesttesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttesttestte​sttesttesttesttesttesttesttesttesttesttesttesttest is tell phenny: around?
05:41 diakopter rakudo: print ("test" x 7\0) ~ " is tell phenny: around?"
05:41 p6eval rakudo 1d4928: Confused at line 10, near "\\0) ~ \" is"␤in Main (file <unknown>, line <unknown>)␤
05:41 diakopter rakudo: print ("test" x 70) ~ " is tell phenny: around?"
05:41 tolkad rakudo: print ("test" x 50 ^ 2)
05:41 p6eval rakudo 1d4928: testtesttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttesttesttestte​sttesttesttesttesttesttesttesttesttesttesttestt​esttesttesttesttesttesttesttesttesttesttesttest​testtesttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttesttesttest is
05:41 p6eval ..tell …
05:41 p6eval rakudo 1d4928: one("testtesttesttesttesttesttesttesttestt​esttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttesttestt​esttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttest", 2)
05:42 tolkad rakudo: print ("test" x (50 ^ 2))
05:42 diakopter rakudo: print ("." x 270) ~ " phenny: tell phenny: around?"
05:42 p6eval rakudo 1d4928: one("testtesttesttesttesttesttesttesttestt​esttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttesttestt​esttesttesttesttesttesttesttesttesttesttes​ttesttesttesttesttesttesttesttesttest", "testtest")
05:42 p6eval rakudo 1d4928: .............................................​.............................................​.............................................​.............................................​.............................................​............................................. phenny: tell
05:42 p6eval ..phenn…
05:42 diakopter rakudo: print ("." x 270) ~ " phenny: tell buubot around?"
05:42 tolkad rakudo: print ("test" x 500000000)
05:43 tolkad lol
05:43 tolkad >.>
05:43 diakopter rakudo: print "test" x 1E50
05:43 p6eval rakudo 1d4928: .............................................​.............................................​.............................................​.............................................​.............................................​............................................. phenny: tell
05:43 p6eval ..buubo…
05:43 tolkad rakudo: print ("test" x 500000000)
05:43 p6eval rakudo 1d4928:  ( no output )
05:44 diakopter tolkad: hang on
05:44 diakopter oh
05:45 p6eval rakudo 1d4928:  ( no output )
05:47 p6eval joined #perl6
05:47 diakopter ok, whoever's torturing p6eval in privmsg, please stop
05:48 diakopter my VPS isn't *that* resilient
05:49 sjohnson it's not in priv
05:49 sjohnson it was tolkad
05:49 diakopter no, I saw lots spawned after he left
05:49 sjohnson oh
05:50 p6eval joined #perl6
05:50 diakopter rakudo: sleep 16
05:51 p6eval rakudo 1d4928:  ( no output )
05:51 diakopter sigh
05:51 diakopter rakudo: sleep 30
05:51 p6eval rakudo 1d4928:  ( no output )
05:53 diakopter oh wait, sleep breaks the SIGALRM
05:53 diakopter rakudo: 1 while 1
05:53 p6eval rakudo 1d4928:  ( no output )
05:54 diakopter oh well.
05:54 diakopter I thought I re-enabled the TIMEDOUT
05:59 p6eval joined #perl6
06:00 p6eval joined #perl6
06:01 p6eval joined #perl6
06:02 p6eval joined #perl6
06:02 agentzh joined #perl6
06:03 * diakopter gives up
06:25 mssm joined #perl6
06:29 sjohnson heh
06:31 cognominal joined #perl6
06:35 TiMBuS joined #perl6
06:37 Chazz joined #perl6
06:54 Chazz joined #perl6
07:03 mikehh_ joined #perl6
07:04 pnate joined #perl6
07:04 saschi moin
07:04 saschi ^^
07:09 cjk101010 joined #perl6
07:09 cjk101010 morning.
07:13 Doser joined #perl6
07:17 kaare joined #perl6
07:20 lumi joined #perl6
07:20 jonasbn joined #perl6
07:26 pnate2 joined #perl6
07:29 Su-Shee joined #perl6
07:29 Su-Shee good morning
07:43 Baggiokwok joined #perl6
08:03 iblechbot joined #perl6
08:15 cognominal joined #perl6
08:22 japhb joined #perl6
08:24 vamped joined #perl6
08:25 Mantis joined #perl6
08:25 Mantis left #perl6
08:26 charsbar_ joined #perl6
08:54 Tene joined #perl6
08:54 charsbar_ joined #perl6
08:54 vamped joined #perl6
08:54 japhb joined #perl6
08:54 iblechbot joined #perl6
08:54 Baggiokwok joined #perl6
08:54 Su-Shee joined #perl6
08:54 jonasbn joined #perl6
08:54 lumi joined #perl6
08:54 Guest81783 joined #perl6
08:54 cjk101010 joined #perl6
08:54 Guest60782 joined #perl6
08:54 TiMBuS joined #perl6
08:54 mssm joined #perl6
08:54 agentzh joined #perl6
08:54 p6eval joined #perl6
08:54 rekhajos joined #perl6
08:54 smash_ joined #perl6
08:54 araujo joined #perl6
08:54 orafu joined #perl6
08:54 kraih_sri joined #perl6
08:54 breinbaas joined #perl6
08:54 fda314925 joined #perl6
08:54 hercynium joined #perl6
08:54 hudnix joined #perl6
08:54 RichiH joined #perl6
08:54 patspam joined #perl6
08:54 mtve joined #perl6
08:54 yves joined #perl6
08:54 colomon_ joined #perl6
08:54 meteorja1 joined #perl6
08:54 go|dfish joined #perl6
08:54 hugme joined #perl6
08:54 brrant joined #perl6
08:54 Patterner joined #perl6
08:54 kcwu joined #perl6
08:54 mj41 joined #perl6
08:54 tkr joined #perl6
08:54 takadonet joined #perl6
08:54 rjh joined #perl6
08:54 slavik joined #perl6
08:54 cls_bsd joined #perl6
08:54 xomas joined #perl6
08:54 xinming_ joined #perl6
08:54 c9s joined #perl6
08:54 cj joined #perl6
08:54 [particle] joined #perl6
08:54 simcop2387 joined #perl6
08:54 eternaleye joined #perl6
08:54 christine joined #perl6
08:54 spinclad joined #perl6
08:54 frioux joined #perl6
08:54 hatsefla1s joined #perl6
08:54 avar joined #perl6
08:54 Helios joined #perl6
08:54 _Jedai_ joined #perl6
08:54 debux joined #perl6
08:54 jnthn joined #perl6
08:54 huf joined #perl6
08:54 betterworld joined #perl6
08:54 wolverian joined #perl6
08:54 krakan joined #perl6
08:54 Woody2143 joined #perl6
08:54 yath joined #perl6
08:54 lestrrat joined #perl6
08:54 Maddingue joined #perl6
08:54 jql joined #perl6
08:54 ascent_ joined #perl6
08:54 Gothmog_ joined #perl6
08:54 krunen joined #perl6
08:54 constant joined #perl6
08:54 felipe joined #perl6
08:54 presh_ joined #perl6
08:54 c1sung joined #perl6
08:54 moritz_ joined #perl6
08:54 Trey joined #perl6
08:54 LionMadeOfLions joined #perl6
08:54 obra joined #perl6
08:54 szbalint joined #perl6
08:54 ilogger2 joined #perl6
08:54 sjn joined #perl6
08:54 silug joined #perl6
08:54 Intensity joined #perl6
08:54 allbery_b joined #perl6
08:54 TimToady joined #perl6
08:54 broquaint joined #perl6
08:54 buu joined #perl6
08:54 frettled joined #perl6
08:54 hanekomu joined #perl6
08:54 rhr joined #perl6
08:54 nsh joined #perl6
08:54 revdiablo joined #perl6
08:54 pjcj_ joined #perl6
08:54 mdxi joined #perl6
08:54 cxreg joined #perl6
08:54 omega__ joined #perl6
08:54 IRSeekBot joined #perl6
08:54 Grrrr joined #perl6
08:54 Caelum joined #perl6
08:54 mathw joined #perl6
08:54 diakopter joined #perl6
08:54 tarbo2 joined #perl6
08:54 eiro joined #perl6
08:54 buubot joined #perl6
08:54 literal joined #perl6
08:54 PZt joined #perl6
08:54 phenny joined #perl6
08:54 arnsholt joined #perl6
08:54 perigrin joined #perl6
08:54 tylerni7 joined #perl6
08:54 aesop joined #perl6
08:54 jan_ joined #perl6
08:54 synth joined #perl6
08:54 kst joined #perl6
08:54 dalek joined #perl6
08:54 Lorn joined #perl6
08:54 cottoo joined #perl6
08:54 PacoLinux joined #perl6
08:54 saschi joined #perl6
08:54 jettero joined #perl6
08:54 pmichaud joined #perl6
08:54 tomaw__ joined #perl6
08:54 yahooooo joined #perl6
08:54 nadim_ joined #perl6
08:54 BinGOs joined #perl6
08:54 ssm joined #perl6
08:54 lisppaste3 joined #perl6
08:54 awwaiid joined #perl6
08:54 sbp joined #perl6
08:54 zorgnax joined #perl6
08:54 sjohnson joined #perl6
08:54 pugs_svn joined #perl6
08:54 sunnavy joined #perl6
08:54 gbacon joined #perl6
08:54 elmex joined #perl6
08:54 Juerd joined #perl6
08:54 Exodist joined #perl6
08:54 PerlJam joined #perl6
08:58 lumi joined #perl6
09:03 colomon joined #perl6
09:09 dakkar joined #perl6
09:33 Chazz joined #perl6
09:35 meppl joined #perl6
09:37 lumi joined #perl6
10:04 rblasch joined #perl6
10:18 am0c joined #perl6
10:22 lumi joined #perl6
10:55 ejs joined #perl6
11:04 fridim_ joined #perl6
11:10 ejs1 joined #perl6
11:25 lumi joined #perl6
11:33 he_ joined #perl6
11:35 elgatito joined #perl6
11:36 BoyBs joined #perl6
11:39 lumi joined #perl6
11:42 k23z__ joined #perl6
11:44 payload joined #perl6
11:44 moritz_ good localtime fellow Perl 6 mongers and monks
11:44 jettero morning
11:51 Baggiokwok joined #perl6
11:53 drbean joined #perl6
11:54 elgatito left #perl6
12:00 SmokeMachine joined #perl6
12:13 Tene joined #perl6
12:13 SmokeMachine joined #perl6
12:13 drbean joined #perl6
12:13 Baggiokwok joined #perl6
12:13 payload joined #perl6
12:13 k23z__ joined #perl6
12:13 lumi joined #perl6
12:13 BoyBs joined #perl6
12:13 he_ joined #perl6
12:13 ejs1 joined #perl6
12:13 fridim_ joined #perl6
12:13 am0c joined #perl6
12:13 rblasch joined #perl6
12:13 meppl joined #perl6
12:13 Guest87460 joined #perl6
12:13 dakkar joined #perl6
12:13 colomon joined #perl6
12:13 PerlJam joined #perl6
12:13 Exodist joined #perl6
12:13 Juerd joined #perl6
12:13 elmex joined #perl6
12:13 charsbar_ joined #perl6
12:13 japhb joined #perl6
12:13 iblechbot joined #perl6
12:13 Su-Shee joined #perl6
12:13 jonasbn joined #perl6
12:13 Guest81783 joined #perl6
12:13 cjk101010 joined #perl6
12:13 mssm joined #perl6
12:13 p6eval joined #perl6
12:13 rekhajos joined #perl6
12:13 smash_ joined #perl6
12:13 araujo joined #perl6
12:13 orafu joined #perl6
12:13 kraih_sri joined #perl6
12:13 breinbaas joined #perl6
12:13 fda314925 joined #perl6
12:13 hercynium joined #perl6
12:13 hudnix joined #perl6
12:13 RichiH joined #perl6
12:13 patspam joined #perl6
12:13 mtve joined #perl6
12:13 yves joined #perl6
12:13 colomon_ joined #perl6
12:13 meteorja1 joined #perl6
12:13 go|dfish joined #perl6
12:13 hugme joined #perl6
12:13 brrant joined #perl6
12:13 Patterner joined #perl6
12:13 kcwu joined #perl6
12:13 mj41 joined #perl6
12:13 tkr joined #perl6
12:13 takadonet joined #perl6
12:13 rjh joined #perl6
12:13 slavik joined #perl6
12:13 cls_bsd joined #perl6
12:13 xomas joined #perl6
12:13 xinming_ joined #perl6
12:13 c9s joined #perl6
12:13 cj joined #perl6
12:13 [particle] joined #perl6
12:13 simcop2387 joined #perl6
12:13 eternaleye joined #perl6
12:13 christine joined #perl6
12:13 spinclad joined #perl6
12:13 frioux joined #perl6
12:13 hatsefla1s joined #perl6
12:13 avar joined #perl6
12:13 Helios joined #perl6
12:13 _Jedai_ joined #perl6
12:13 sunnavy joined #perl6
12:13 gbacon joined #perl6
12:13 pugs_svn joined #perl6
12:13 sjohnson joined #perl6
12:13 zorgnax joined #perl6
12:13 sbp joined #perl6
12:13 awwaiid joined #perl6
12:13 lisppaste3 joined #perl6
12:13 ssm joined #perl6
12:13 BinGOs joined #perl6
12:13 nadim_ joined #perl6
12:13 yahooooo joined #perl6
12:13 tomaw__ joined #perl6
12:13 pmichaud joined #perl6
12:13 jettero joined #perl6
12:13 saschi joined #perl6
12:13 PacoLinux joined #perl6
12:13 cottoo joined #perl6
12:13 Lorn joined #perl6
12:13 dalek joined #perl6
12:13 kst joined #perl6
12:13 synth joined #perl6
12:13 jan_ joined #perl6
12:13 aesop joined #perl6
12:13 tylerni7 joined #perl6
12:13 perigrin joined #perl6
12:13 arnsholt joined #perl6
12:13 phenny joined #perl6
12:13 PZt joined #perl6
12:13 literal joined #perl6
12:13 buubot joined #perl6
12:13 eiro joined #perl6
12:13 tarbo2 joined #perl6
12:13 diakopter joined #perl6
12:13 mathw joined #perl6
12:13 Caelum joined #perl6
12:13 Grrrr joined #perl6
12:13 IRSeekBot joined #perl6
12:13 omega__ joined #perl6
12:13 cxreg joined #perl6
12:13 mdxi joined #perl6
12:13 pjcj_ joined #perl6
12:13 revdiablo joined #perl6
12:13 nsh joined #perl6
12:13 rhr joined #perl6
12:13 frettled joined #perl6
12:13 buu joined #perl6
12:13 broquaint joined #perl6
12:13 TimToady joined #perl6
12:13 allbery_b joined #perl6
12:13 Intensity joined #perl6
12:13 silug joined #perl6
12:13 sjn joined #perl6
12:13 ilogger2 joined #perl6
12:13 szbalint joined #perl6
12:13 obra joined #perl6
12:13 LionMadeOfLions joined #perl6
12:13 Trey joined #perl6
12:13 moritz_ joined #perl6
12:13 c1sung joined #perl6
12:13 presh_ joined #perl6
12:13 felipe joined #perl6
12:13 constant joined #perl6
12:13 krunen joined #perl6
12:13 Gothmog_ joined #perl6
12:13 ascent_ joined #perl6
12:13 jql joined #perl6
12:13 Maddingue joined #perl6
12:13 lestrrat joined #perl6
12:13 yath joined #perl6
12:13 Woody2143 joined #perl6
12:13 wolverian joined #perl6
12:13 betterworld joined #perl6
12:13 huf joined #perl6
12:13 debux joined #perl6
12:13 lumi joined #perl6
12:13 plainhao joined #perl6
12:15 rjh left #perl6
12:18 mikehh joined #perl6
12:33 ruoso joined #perl6
12:38 renormalist|work joined #perl6
12:44 ignacio_ joined #perl6
12:44 lichtkind joined #perl6
12:44 lichtkind /msg NickServ identify pru.dence
12:45 lichtkind shit
12:45 lichtkind haha
12:45 moritz_ lol
12:51 lumi joined #perl6
12:56 takadonet morning all
12:58 sss joined #perl6
12:58 sss wow~
13:00 sss ....
13:00 sss wonderful~~
13:00 sss kkkk
13:00 sss 't'
13:00 sss 'ㅅ'
13:01 krakan joined #perl6
13:24 tkr joined #perl6
13:28 lumi joined #perl6
13:30 colomon morning!
13:30 patspam joined #perl6
13:34 takadonet colomon:morning
13:38 arnsholt_ joined #perl6
13:38 ascent__ joined #perl6
13:38 huf_ joined #perl6
13:39 wolverian joined #perl6
13:39 lestrrat joined #perl6
13:40 buubot joined #perl6
13:45 patspam joined #perl6
13:51 yath joined #perl6
13:57 kaare joined #perl6
14:00 payload joined #perl6
14:02 bluescreen joined #perl6
14:03 Woody2143 joined #perl6
14:04 Baggiokwok joined #perl6
14:09 lumi joined #perl6
14:27 hanekomu joined #perl6
14:28 payload joined #perl6
14:36 iblechbot joined #perl6
14:47 lumi joined #perl6
15:00 mssm joined #perl6
15:19 pmichaud good morning, #perl6
15:20 colomon o/
15:22 takadonet pmichaud:morning
15:27 colomon pmichaud: how goes ng1?
15:27 pmichaud colomon: it's coming along, albeit a bit slowly
15:27 pmichaud I'm drafting a RangeIterator class now that I'd like you to work on
15:27 colomon groovy!
15:28 pmichaud (it won't work yet, as there are other pieces needed, but I figure you can work on it a bit while I get the other pieces in place)
15:28 colomon I will try to get ng1 built here as soon as I get a couple of long-term tests running for $work.
15:28 pmichaud good deal
15:28 pmichaud ng1 still fails tests -- mainly anything using arrays
15:28 pmichaud or ranges
15:28 pmichaud or .map
15:29 colomon wow, the sun just broke through the clouds here, for what seems like the first time in days...
15:30 colomon ...and it's gone again.  :)
15:33 lumi joined #perl6
15:39 nihiliad joined #perl6
15:42 colomon building ng1, and trying to figure out how to rework a big hunk of my unit tests for $work.
15:44 Psyche^ joined #perl6
15:46 twbks joined #perl6
15:46 tadzik joined #perl6
15:46 tadzik hello there
15:46 colomon hello
15:47 twbks left #perl6
15:47 pmichaud colomon: just pushed a draft RangeIterator to ng1 -- your comments/improvements welcome
15:47 diakopter pmichaud: did you see I "fixed" class declarations in p6eval?
15:48 pmichaud diakopter: no, didn't see that
15:48 tadzik could someone give me a hand? I'm trying to compile some helloworld in rakudo and run it with parrot. Here are my attempts: http://wklej.org/id/269705/ What am I missing?
15:49 colomon pmichaud: isn't the last return; in RangeIterator.get incorrect?
15:49 diakopter rakudo: class A { method foo {say "foo"} }; class B {has A $.aaa handles 'foo' }; my B $b .= new; $b.foo
15:49 p6eval rakudo 1d4928: OUTPUT«foo␤»
15:49 pmichaud diakopter++
15:50 pmichaud what was the problem?
15:50 diakopter pmichaud: it was due to some problem with 'use Safe;'... I just inlined the contents of Safe.pm and it works
15:50 pmichaud colomon:  it's "$return" and not "return".  Feel free to improve.
15:50 colomon pmichaud: duh.  must not be awake yet this morning.
15:50 diakopter rakudo: run('rm -rf ~/')
15:50 p6eval rakudo 1d4928: OUTPUT«operation not permitted in safe mode␤in Main (file /tmp/FnGH2NqWot, line 1)␤»
15:51 diakopter it's a ton more responsive, too, after removing 'use Safe;'
15:51 pmichaud colomon: yeah, but you're correct it's easy to misread -- so we probably need to change it
15:54 lumi joined #perl6
15:55 diakopter pmichaud: see for yourself:  export PERL6LIB=lib ; echo 'use Safe; class A { }' | ./perl6
15:56 colomon pmichaud: I don't think the "return blah if" construct currently works in ng.
15:56 pmichaud ng:  return 1 if 0;
15:56 p6eval ng b8201f: OUTPUT«Missing block at line 1, near ";"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤»
15:56 pmichaud colomon: okay, we need to fix that then.
15:56 colomon pmichaud: but on the whole, this is nice code, IMO.
15:56 pmichaud ng:  (return 1) if 0;
15:56 p6eval ng b8201f:  ( no output )
15:56 pmichaud try parenthesizing the return for now, I guess.
15:57 pmichaud ng:   say 'yes' if 1;
15:57 p6eval ng b8201f: OUTPUT«yes␤»
15:57 pmichaud oh!
15:57 pmichaud I know the problem -- 'return' is still listed as a builtin
15:57 diakopter ng:   say 'yes' if 0;
15:57 p6eval ng b8201f:  ( no output )
15:57 diakopter ng:   say 'yes' if return 0;
15:57 p6eval ng b8201f: OUTPUT«Could not find non-existent sub &return␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
15:58 pmichaud yeah, looks like return is unimpl
15:58 pmichaud er,  &return is unimpl
15:58 pmichaud colomon: can also change it to a normal   if ... { return IterDone; }
15:58 pmichaud I was somewhat avoiding the extra block, but it's not a big deal in this case.
15:59 colomon pmichaud: right, that's how I've been doing it in ng.  :)
16:01 colomon after and before are the equivalent of > and < in the generic world of cmp ?
16:02 pmichaud right, they don't coerce
16:02 colomon that's brill, wonder how I managed to not notice them before.  :)
16:02 pmichaud so it'll work for string iterations as well as numerics
16:03 colomon ng: say  2 after 3
16:03 p6eval ng b8201f: OUTPUT«Confused at line 1, near "say  2 aft"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤»
16:03 pmichaud well, maybe not, since string iters are weird at the moment, but it's a good start for the moment.
16:03 colomon seems like most of the early work is going to go to making ng(1) actually support your pretty code.  :)
16:04 colomon I can work on getting before and after up and running in a few minutes.
16:04 alester joined #perl6
16:08 kaare_ joined #perl6
16:11 k23z__ joined #perl6
16:12 TimToady that backlog was...not worth backlogging...
16:14 colomon ng: say 2 cmp 3
16:15 p6eval ng b8201f: OUTPUT«-1␤»
16:17 pmichaud colomon: (ng support pretty code) -- right, that's why I thought I'd go ahead and draft it so you could fill in the details :)
16:17 pmichaud and others too :)
16:17 colomon tadzik: sorry for the lack of useful feedback so far.  personally, I never try to run perl6 code that way, and I don't have time to play around and figure it out at the moment.
16:18 pmichaud it's certainly okay to "cheat" for the moment and simply define    multi sub infix:<before>($a, $b) { $a < $b }    :-)
16:18 colomon pmichaud: what about multi sub infix:<before>($a, $b) { ($a cmp $b) == -1 }  ?
16:18 pmichaud == -1 is wrong
16:19 colomon == +1 ?
16:19 pmichaud no, it should be  Order::*
16:19 colomon Is that implemented yet?
16:19 pmichaud I suppose numifying it is okay
16:19 colomon (btw, these should go in operators.pm ?)
16:20 pmichaud there's a good question to be had as to whether   <before> and <after> are defined in terms of <cmp>  or vice-versa :-)
16:20 pmichaud I guess <cmp> is more fundamental.
16:21 TimToady one could apply the circularity saw either way
16:21 pmichaud right
16:21 colomon pmichaud: I reckon if cmp is already defined, then you define after and before in terms of them.  :)
16:21 pmichaud well, it kind of bugs me to define  before in terms of cmp and ==, when == is itself defined in terms of cmp
16:21 TimToady it is likely that an implementation will want cmp to be more fundamental
16:21 tadzik joined #perl6
16:22 tadzik damn this screen
16:22 TimToady I don't have that power
16:22 pmichaud I do, but it's highly ineffective.
16:22 tadzik colomon: My point is to compile this to bytecode, parrot /usr/lib/parrot/2.0.0/languages/perl6/perl6.pbc hello.pl works fine, still even in this case -o does nothing, so I'm compiling the code on every run, which is what I'm trying to avoid
16:23 colomon tadzik: right, but it
16:23 colomon 's certainly possibly to compile p6 to pir.
16:24 colomon but even if I do that, I always use the perl6 executable to run the pir.
16:24 colomon so I don't know the magic invocation to do it from parrot.
16:24 pmichaud perl6 --target=pir hello.pl
16:24 tadzik yep. Though, running it via "parrot /usr/lib/parrot/2.0.0/languages/perl6/perl6.pbc hello.pir" gives me the following: http://wklej.org/id/269723/
16:24 pmichaud oops
16:24 pmichaud perl6 --target=pir hello.pl >hello.pir
16:24 pmichaud parrot hello.pir
16:25 tadzik running pir from perl6 also fails for some reason
16:25 tadzik pmichaud: seen my previous paste?
16:25 pmichaud the perl6 compiler doesn't know how to compile straight pir
16:25 pmichaud if you have .pir, you just feed it directly to parrot
16:26 pmichaud as in  "parrot hello.pir"
16:26 tadzik pmichaud: http://wklej.org/id/269723/ last case
16:26 colomon ng: say "a" cmp "b"
16:26 p6eval ng b8201f: OUTPUT«-1␤»
16:26 pmichaud what does "hello.pir" look like?
16:26 tadzik pasting
16:27 tadzik http://wklej.org/id/269724/
16:27 justatheory joined #perl6
16:28 colomon pmichaud: good news: I've got after and before now.  bad news: if you hit them with strings, they appear to run afoul of the bug where the wrong version of a multi is called.
16:28 tadzik oh, I should be using paste.lisp.org
16:28 pmichaud tadzik:  what does   "parrot --version" report?
16:29 tadzik This is Parrot version 2.0.0 built for -linux.
16:29 tadzik I wrote this port today :)
16:30 hicx174 joined #perl6
16:30 colomon pmichaud: pushed before and after.  your ListIterator doesn't seem to build?
16:32 pmichaud tadzik: here's how it looks on my sys:  http://nopaste.snit.ch/19383
16:32 tadzik_ joined #perl6
16:32 tadzik weird
16:32 tadzik what the…
16:33 tadzik pmichaud: mind showing your rakudo and parrot build options, if available?
16:33 pmichaud tadzik: this was built using plain ol --gen-parrot from the rakudo command line
16:34 tadzik so no separate parrot installation?
16:34 pmichaud tadzik: correct.
16:34 tadzik darn
16:34 pmichaud tadzik: I tend to have several development branches going at once, and I want each one to have its own parrot (appropriate for the branch)
16:34 tadzik I see
16:34 pmichaud colomon: no problem on string before/after, we'll see about fixing it soonish
16:35 pmichaud colomon: no, ListIterator isn't configured into the build yet -- I'm still just drafting code
16:35 brrant joined #perl6
16:36 pmichaud oh, I see the problem, I forgot to take it out of Make
16:36 pmichaud fixing
16:37 brrant joined #perl6
16:37 lumi joined #perl6
16:49 _ash joined #perl6
16:49 pmichaud pushed fix for ListIterator
16:50 jackyf joined #perl6
16:52 _ash how are the iterator changes coming along?
16:53 pmichaud slowly but I'm pretty happy with the way things are looking
16:53 pmichaud I'll know more here shortly as I get arrays working again
16:53 TimToady have we settled on a name for the end of all things?
16:53 pmichaud for now I've got   IterDone
16:53 pmichaud reminds me of "git-r-done"  :-)
16:54 TimToady that's...easy to search for, fortunately
16:54 pmichaud right :)
16:54 pmichaud I decided I didn't want to bog down on a name, so I picked a name that was instantly recognizable, easy to search/replace, and either going to be obviously correct or obviously incorrect.  :)
16:55 TimToady it's good that somebody here is practical
16:55 colomon pmichaud++
16:55 pmichaud I'll let everyone else bikeshed the name.
16:56 pmichaud but so far, IterDone seems to read well in code
16:56 payload joined #perl6
16:56 TimToady at the moment I'm more interested in working out the best syntax on the receiver end, which may well end up an infix
16:57 TimToady and not mention the sentinal name at all
16:57 colomon pmichaud: with the latest, I'm still getting
16:57 colomon The opcode 'getprop_p_p_sc' (getprop<3>) was not found. Check the type and number of the arguments
16:57 colomon in file 'src/builtins/ListIterator.pir' line 52
16:57 pmichaud colomon: did you pull the most recent change?
16:57 colomon yes.
16:57 pmichaud just a sec
16:58 colomon it was to IterDone.pir, not ListIterator...
16:58 pmichaud oh, I didn't commit
16:58 PerlJam TimToady++  "Bags are really just histograms with a cute name."   :-)
16:58 pmichaud (sigh)
16:58 pmichaud too many things
16:58 pmichaud pushed.
16:59 TimToady there's nothing that can't be solved by another fork, except the problem of too many forks...
16:59 _ash i feel like i need to alias perl Configure --gen-parrot && make && make install since i do it almost twice a day
17:00 PerlJam _ash: luckily your shell has a built-in aliasing ability.
17:00 _ash yeah, but then i'd need to go edit the .bashrc file and well, i am lazy... but not so lazy i wana type that all the time
17:02 ignacio_ joined #perl6
17:03 _ash_ joined #perl6
17:05 colomon pmichaud++ # builds again
17:09 iblechbot joined #perl6
17:09 buubot joined #perl6
17:09 RichiH joined #perl6
17:11 cdarroch joined #perl6
17:17 lumi joined #perl6
17:17 alex15 joined #perl6
17:34 c0tt0 joined #perl6
17:47 hudnix rakudo: class A { method foo {say "foo"} }; role B {has A $.aaa handles <foo> }; class AB does B { };
17:47 p6eval rakudo 1d4928: OUTPUT«Null PMC access in get_string()␤in Main (file <unknown>, line <unknown>)␤»
17:48 hudnix can't have "handles" in a role...
17:49 SmokeMachine joined #perl6
17:58 TimToady ng: class A { method foo {say "foo"} }; role B {has A $.aaa handles <foo> }; class AB does B { };
17:58 p6eval ng b8201f:  ( no output )
17:58 TimToady ng: class A { method foo {say "foo"} }; role B {has A $.aaa handles <foo> }; class AB does B { }; AB.new.foo
17:59 p6eval ng b8201f: OUTPUT«Method 'foo' not found for invocant of class 'AB'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
17:59 TimToady closer than rakudo, I think
18:00 hudnix I've been away for a while... wot's ng? :)
18:00 TimToady No Good :)
18:00 TimToady officially, Next Generation
18:01 hudnix A rakudo fork?
18:01 TimToady a git fork that will eventually become rakudo master
18:01 TimToady where eventually is, we hope, very soon now
18:02 TimToady but yes, basically a large refactor that hasn't quite landed to extent of passing all the same tests yet
18:02 hudnix so which fork should I be using to play around, look for bugs, etc?
18:02 cotto_work joined #perl6
18:02 TimToady probably depends on what kind of bug you're hunting
18:03 TimToady won't do much good to hunt a bug in rakudo that's already fixed in ng
18:03 TimToady but anything systemic, doesn't matter which
18:03 colomon and the goal is to make incredible progress in ng over the next couple of weeks.
18:04 TimToady ng will become rakudo soon, so it's more bleeding edge
18:04 TimToady emphasis on the blood
18:04 pmichaud ng is the current development branch -- has a lot of major refactors in it
18:04 pmichaud so at the moment it's a significant regression from rakudo master
18:05 ShaneC joined #perl6
18:06 lumi joined #perl6
18:06 hudnix what I take away from this: rakudo  for trying to get something to work, ng for bug hunting.
18:07 pmichaud hudnix: yes, with the caveat that at the moment ng is a target rich environment :)
18:07 colomon hudnix: right, except that at the moment there are so many unimplemented things in ng... what pmichaud said.  :)
18:08 colomon hopefully that will change very rapidly, and then ng bug hunting help will be super useful.
18:08 TimToady and due to better underpinnings, easier to implement stuff, usually
18:08 TimToady and bug fixes tend to be easier too, except when they're not
18:09 colomon TimToady: the fact that I am able to add stuff to the grammar in ng is a shining example of how things are easier now.
18:09 colomon (even if admittedly I mostly just crib from STD.pm)
18:10 _ash hey, if ng can in the hopefully not so distant future use the STD.pm that would be awesome, so by all means use things from it :P
18:10 PerlJam colomon: Well, rakudo's grammar and STD should converge at some point, so you're just helping that happen. :)
18:11 _ash iPad was just announced btw
18:11 _ash thats going to be its name
18:13 colomon _ash++ # thanks for reminding me to follow that.
18:13 _ash i am at live.gizmodo.com
18:13 _ash its basically a 10.1 inch iPod touch
18:13 FurnaceBoy_ joined #perl6
18:18 _ash now i really wana finish seeing if i can build Parrot with the iphone sdk, it builds for the simulator fine, and others said it compiles fine on an arm, but i haven't figured out all the issues of cross compiling it using xcode
18:19 colomon :)
18:20 _ash cross compiling's annoying enough to begin with, but parrot likes to build parts of itself using itself :P but the bytecode should transfer from one architecture to another without modification
18:30 pmichaud ENOJNTHN :-(
18:31 pmichaud I guess I'll just figure it out on my own after lunch
18:31 colomon pmichaud: I'm going to try to get RangeIterator at least compiling here.
18:31 pmichaud colomon: excellent
18:32 colomon quick question -- what is the == equivalent for the cmp family?  eq?
18:32 pmichaud not infix:<eq>
18:32 pmichaud don't know that there is one
18:33 colomon Just so we're clear, I've got before and after, and want the $a cmp $b == 0 infix to go with them...
18:35 pmichaud I don't think there is one
18:35 pmichaud afk, lunch
18:38 PerlJam colomon: $a and $b are strings?
18:38 colomon PerlJam: $a and $b are anything.
18:38 colomon ng: say 3 cmp 4
18:38 p6eval ng b8201f: OUTPUT«-1␤»
18:38 colomon ng: say "a" cmp "b";
18:38 p6eval ng b8201f: OUTPUT«-1␤»
18:39 colomon I'm looking for the infix op which is true when cmp would equal 0.
18:39 pmichaud does there have to be one?
18:39 hjs joined #perl6
18:42 _ash ~~ ?
18:43 _ash if you don't know the types maybe ~~ will pick the right comparision
18:44 colomon pmichaud: nah, I can work around it.
18:44 colomon just seemed like the sort of thing that must be out there somewhere...
18:44 colomon probably can work around it very easily.
18:46 _ash are you trying to see if they equal eachother or if they are exactly the same object? you can use === for that if they are the exact same object
18:46 colomon trying to see if they equal each other.
18:47 PerlJam like eqv ?
18:47 colomon PerlJam: maybe?
18:48 colomon sounds like it would do what I want for value types.
18:49 _ash S03-operators/eqv.t has tests for that
18:50 stephenlb joined #perl6
18:51 colomon thanks.
18:51 lumi joined #perl6
18:58 kuiti joined #perl6
18:59 ejs joined #perl6
19:03 ckruse joined #perl6
19:04 colomon > my $a = RangeIterator.new(1..5); say $a.get; say $a.get; say $a.get;
19:04 colomon Type objects do not have state, but you tried to access attribute $!value
19:04 colomon > my $r = 1..5; say $r.WHAT;
19:04 colomon No such attribute '$!list'
19:07 _ash joined #perl6
19:09 _ash joined #perl6
19:13 pmichaud back from lunch
19:14 pmichaud 'say' is broken in ng1 right now
19:14 pmichaud because it relies on slurpy arrays
19:14 pmichaud use pir::say(...)   instead
19:14 colomon > my $a = RangeIterator.new(1..5); say $a.get; say $a.get; say $a.get;
19:14 colomon Method 'get' not found for invocant of class 'Parcel'
19:15 colomon is my latest error.
19:15 REPLeffect joined #perl6
19:15 colomon er, say broken, right.
19:15 pmichaud that's weird
19:15 pmichaud oh, right
19:15 pmichaud don't use say :-)
19:15 mariano__ joined #perl6
19:15 colomon one moment...
19:15 colomon .say doesn't work either, right?
19:15 pmichaud no, for the same reason
19:16 colomon > my $a = RangeIterator.new(1..5); pir::say($a.get);
19:16 colomon Method 'get' not found for invocant of class 'Parcel'
19:16 pmichaud can you commit+push what you have?
19:16 pmichaud that seems... odd.
19:16 colomon I've changed RangeIterator.new so that it does bless now.
19:16 pmichaud $a should be a RangeIterator, certainly
19:16 pmichaud oh, perhaps bless is returning a parcel
19:16 colomon it's a parcel
19:17 colomon I mean, $a is a parcel.
19:17 pmichaud it should be a RangeIterator, in that case
19:17 colomon trying to add debugging say to new at the moment.
19:17 colomon pir::say(self.WHAT);
19:17 colomon should do it, right?
19:17 pmichaud yes.
19:17 colomon recompiling....
19:18 pmichaud > my $a = Str.new('xyz');  pir::say($a.WHAT);
19:18 pmichaud Str()
19:18 colomon oh, I see.
19:18 colomon I've screwed up .new completely.  rewrite in a moment.
19:18 pmichaud so, the problem isn't strictly in assignment
19:18 colomon bad C++ habits, I fear.
19:18 pmichaud I'd go with a simple .new to begin with, until we get things working
19:18 pmichaud also, keep in mind that .bless is expensive
19:19 colomon pmichaud: without the bless, we got
19:19 colomon > my $a = RangeIterator.new(1..5); say $a.get; say $a.get; say $a.get;
19:19 colomon [2:04pm] colomon: Type objects do not have state, but you tried to access attribute $!value
19:19 TimToady loop { take @iters>>.get E last } # E returns values on left unless any of them are END
19:19 pmichaud colomon: oh, yeah
19:19 pmichaud okay, you're right.
19:19 pmichaud I'm so used to writing my own .new in PIR :)
19:19 pmichaud try it with .bless, then
19:20 colomon what happened was, I never really internalized that .new has to internally return the new object.
19:20 colomon so I wrote the bless, and then wrote some stuff after it.
19:21 colomon which is wrong wrong wrong, unless you return self at the end.
19:21 pmichaud not self
19:21 pmichaud in method new, self is the type object
19:21 colomon woot!
19:21 pmichaud (your C++ habits are showing through :-)
19:22 colomon really?
19:22 pmichaud TimToady: that seems plausible
19:22 colomon anyway, rewriting to have bless last was trivial.
19:22 colomon and now...
19:22 colomon > my $a = RangeIterator.new(1..5); pir::say($a.get);1
19:22 TimToady with possibility of extending metacharacter E& and E|
19:22 TimToady extending to
19:22 pmichaud E takes a slice on its lhs?
19:22 TimToady much like we could extend listop Z into a zipwith
19:23 TimToady it's a list infix precedence, I think
19:23 colomon > my $a = RangeIterator.new(1..5); pir::say($a.get); pir::say($a.get);pir::say(​$a.get);pir::say($a.get); pir::say($a.get); pir::say($a.get);
19:23 colomon 1
19:23 colomon 2
19:23 colomon 3
19:23 colomon 4
19:23 colomon 5
19:23 colomon Could not find non-existent sub &IterDone
19:23 pmichaud colomon: for that last part, you need to re-run configure
19:23 pmichaud then it'll say IterDone()
19:23 TimToady IterDone is probably going to turn into "END"
19:24 colomon hmmm.... I think I already did that, when I added RangeIterator.pm to the Makefile.in.  Let me see...
19:24 pmichaud possible pun with  =begin END ?
19:24 PerlJam TimToady: without conceptual conflation with END phasers?
19:24 pmichaud or yeah, END phasers?
19:24 TimToady hmm
19:24 lichtkind TimToady: are you happy with the name rakudo star?
19:24 TimToady yeah, that's a problem
19:24 athaba joined #perl6
19:24 PerlJam DONE works for me :)
19:25 TimToady doesn't fit so well with E  :)
19:25 TimToady E looks more like parallel streams than D does
19:25 pmichaud E might also be confused with  1.0E+12
19:25 TimToady I suppose End would work
19:25 TimToady or just E
19:26 PerlJam ETOOSHORT
19:26 TimToady E for empty
19:26 TimToady she's running on E
19:26 TimToady Empty
19:26 PerlJam E for the elephant in the room?
19:27 _ash so if i wrote my own iterator, when i was done i'd return End or E or IterDone?
19:27 pmichaud we've already consumed other single-letter caps:   S R Z Q   .... might as well grab E while we're at it :)
19:27 TimToady EMPTY is a valid Unix error name :)  Must Pass, Thank You
19:27 TimToady I tend to prefer uppercase for list infixes for visibility reasons
19:27 _ash is E going to be a magic object or a function or an op?
19:28 pmichaud magic object
19:28 pmichaud might also be an op :-)
19:28 TimToady Empty is probably a specific form of Failure
19:28 pmichaud we'll have a magic object to signal  "iteration completed"
19:28 TimToady E the operator is special in taking a thunk on the right like && and ||
19:28 _ash so, it could be impelmented as a child of Failure?
19:28 pmichaud we may also have an op to detect if an iterator (or iterators) have returned the magic object
19:29 TimToady E is the proposed op
19:29 TimToady also special in that it returns its left side unmolested if the E doesn't match
19:29 TimToady hence my take above
19:29 lumi joined #perl6
19:29 PerlJam oddly, I think of "empty" in an iterator context more like success than failure.
19:29 pmichaud speaking more generally
19:29 TimToady loop { take @iters>>.get E last }
19:30 TimToady the E is inside the take
19:30 pmichaud we already have   A || B   which returns B if A is false, and   A && B  which returns B if A is true, and  A // B  which returns B if A is undefined
19:30 pmichaud should there be a smart-match like thing also?
19:30 pmichaud (it'd have to be a ternary of some sort, I suppose)
19:31 pmichaud i.e.,   returns B if A doesn't smartmatch X ?
19:31 pmichaud (or if A does smartmatch X)
19:31 pmichaud or, a version of smart match that returns the lhs if matched, false otherwise?
19:32 TimToady would want to see a frequent enough use case
19:32 pmichaud right
19:32 pmichaud this isn't a valid usecase, but something like:      take  (@iters>>get !~~ IterDone) || last
19:32 colomon pmichaud: when I pulled latest and rebuilt everything I get IterDone().  \o/
19:33 * colomon just pushed RangeIterator.
19:33 pmichaud except that  the !~~ would need to return the lhs instead of just "True"
19:33 TimToady and it isn't hypered
19:33 pmichaud agreed that it might be obscure for now... but might be useful someday
19:33 TimToady E is implicitly hypered
19:33 Chillance joined #perl6
19:33 pmichaud ah
19:34 TimToady E is short for the theoretical E| rather than E&
19:34 pmichaud right.
19:34 TimToady unless it's the other way around :)
19:34 pmichaud to eliminate the need for any(...) and all(...)
19:34 TimToady which don't like to give up eigenstates, and disorder them anyway
19:35 pmichaud agreed.
19:35 TimToady and we want to optimize the heck out of E
19:35 pmichaud so, is "Empty" likely to be the replacement for IterDone ?
19:35 pmichaud or shall we wait a bit longer
19:35 pmichaud ?
19:35 uniejo joined #perl6
19:35 TimToady it'll be something with E, likely
19:35 TimToady ENEVERMORE
19:36 pmichaud ENOMORE
19:36 pmichaud EITERDONE :-)
19:36 TimToady I prefer the literary allusion
19:36 pmichaud or, even  ETERDONE :   "eternally done"
19:36 TimToady as in quote the raven
19:36 pmichaud I thought of the raven but decided not to quote it :-)
19:36 TimToady now we should rename iterators to ravens
19:37 TimToady or ravins
19:37 pmichaud as in "ravenous"?
19:37 pmichaud those would be the eager iterators, I guess.
19:37 TimToady yeah
19:38 TimToady EMPTY is nice and shouty
19:38 pmichaud 19:26 <TimToady> EMPTY is a valid Unix error name :)  Must Pass, Thank You
19:38 _ash my $pet is Raven does Revenous;
19:38 _ash $pet.get || ouch('it bit me')
19:38 pmichaud I'll wait until the naming settles a bit more :-)
19:39 TimToady EOUTOFAMMO
19:39 TimToady .getclip
19:40 [particle] EVERMORE # if you really want to quote the raven
19:46 RichiH joined #perl6
19:50 nihiliad joined #perl6
19:51 clintongormley joined #perl6
19:51 lumi joined #perl6
19:53 tadzik_ joined #perl6
19:56 pmichaud > for 1, 5..7, 12 { pir::say($_); }
19:56 pmichaud 1
19:56 pmichaud 5
19:56 pmichaud 6
19:56 pmichaud 7
19:56 pmichaud 12
19:56 pmichaud \o/
19:56 Tene :D
19:56 clintongormley joined #perl6
19:56 colomon \o/
19:56 colomon wait, that's with working range iteration!?!
19:56 pmichaud yes
19:56 pmichaud just pushed.
19:57 colomon sweet!
19:57 pmichaud now let's see if I can figure out what's up with slurpy args
19:58 colomon flatten says "use .iterator to get my iterator?" for this purpose?
19:58 pmichaud flatten says "I flatten in list context"
19:59 pmichaud > my $a = 5..7;  for 2, $a, 12 { pir::say($_); }
19:59 pmichaud 2
19:59 pmichaud 5..7
19:59 pmichaud 12
19:59 _ash pmichaud++ colomon++ TimToady++ # iterators are getting solidified
19:59 pmichaud > for 2, 5..7, 12 { pir::say($_); }
19:59 pmichaud 2
19:59 pmichaud 5
19:59 pmichaud 6
19:59 pmichaud 7
19:59 pmichaud 12
20:00 TimToady phone
20:00 pmichaud brt
20:00 _ash is there a way to get: for 2, $a, 12 to function like for 2, 5..7, 12 ?
20:00 pmichaud nyi, but
20:01 pmichaud for 2, @$a, 12 { ... }
20:01 pmichaud or
20:01 pmichaud for 2, $a.list, 12 { ... }
20:01 _ash like using @() or list 2, 5..7, 12 or something
20:01 _ash ah okay
20:01 TimToady or |
20:01 _ash so pipe before $a?
20:02 TimToady oughta work
20:02 _ash for 2, |$a, 12 { }   # where $a = 5...7 ?
20:02 _ash got ya
20:02 _ash cool
20:02 rblasch joined #perl6
20:02 patspam joined #perl6
20:03 _ash just in my primitive logic of things using $a seems like it should put its value in the place of the variable name, so saying for 2, 5..7, 12 functions different than for 2, $a, 12 is odd personally, but sigils make a difference i suppose, if that was an @a it would work the same, correct?
20:03 pnate joined #perl6
20:04 colomon pmichaud: for isn't actually lazy yet, right?
20:05 * colomon just tried for 1..100000000 and it just say there...
20:05 pmichaud right now I've made it eager to simplify things a bit
20:05 colomon sure.
20:05 colomon one step at a time.
20:05 pmichaud we'll have lazy for when we have lazy map (coming soon)
20:06 pmichaud > for 2, (5..7, 12) { pir::say($_); }
20:06 pmichaud 2
20:06 pmichaud 5
20:06 pmichaud 6
20:06 pmichaud 7
20:06 pmichaud 12
20:07 colomon btw, my perception just now was that for 1..100 { say; last if $_ > 10; } was very fast in ng1.
20:07 pmichaud yes, lists and iterators should be far faster than they were
20:07 pmichaud a lot fewer objects and slurpies are being created
20:08 colomon that's great news!
20:15 pnate2 joined #perl6
20:15 * colomon hates to get in the way of all the fun E names, but now wonders if Iterator::Done would be the best name...
20:16 _ash Done is pretty short and sweet
20:16 _ash > my $a = 1, 2, 3; for @($a) { pir::say($_.perl) }
20:16 _ash 1
20:16 _ash 2
20:16 _ash 3
20:16 _ash # is that correct according to the spec? I feel like i am beating a dead horse but i am still confused by list context a bit
20:17 pmichaud my $a = 1, 2, 3;  isn't correct
20:17 pmichaud that's a bug in rakudo
20:17 TimToady "Done" doesn't look so good if it shows up as a thrown exception
20:17 TimToady it will fool the user into thinking things went well
20:18 TimToady where as EMPTY at foo line 42 looks like a problem
20:18 TimToady not that the message has to be the type name
20:18 TimToady *whereas
20:19 _ash but what if it showed up as Iterator::Done ?
20:19 FurnaceBoy_ joined #perl6
20:19 TimToady I'm not fond of long names for primitives
20:20 _ash OverlyLongClassName::WithNestedOtherClasses eh? so java is out
20:21 colomon I was thinking the idea with having an special operator for it was that normally only Iterator developers would ever see the long name...
20:21 * _ash long names are the reason i never learned more java than was needed to pass my intro programming class
20:21 colomon but I admit that 21 years of C++ programming may have broken my sense of what is a long name, anyway...
20:23 jonasbn Copenhagen Perl 6 Hackathon site now online, for those of you interested, http://conferences.yapceurope.org/hack2010dk/
20:24 _ash cool, thanks for the link jonasbn will follow stuff remotely
20:24 jonasbn _ash: I hope we will be able to provide a nice 'almost like being there' experience
20:25 pmichaud jonasbn++  excellent
20:25 pmichaud jonasbn: I guess I should go ahead and book flights...?
20:25 * pmichaud hasn't read email today
20:27 pnate joined #perl6
20:30 pmichaud afk, kid pickup
20:30 lumi joined #perl6
20:32 frettled jonasbn++ - good info
20:33 jonasbn thanks, we are correcting speling errors etc. as we go along
20:36 FurnaceBoy_ left #perl6
20:40 pnate2 joined #perl6
20:58 nnunley joined #perl6
20:58 pugs_svn r29593 | colomon++ | [t/spec] Start test file for RangeIterator.
20:58 bluescreen joined #perl6
20:58 mariano__ joined #perl6
21:01 nnunley joined #perl6
21:02 lumi joined #perl6
21:03 ignacio_ joined #perl6
21:13 uniejo joined #perl6
21:14 lumi joined #perl6
21:17 diakopter rakudo: class A { }; class B is A { }; class C is A { }; class D is C { }; class C is also is B { }; my D $d .= new; say ($d ~~ B)
21:17 p6eval rakudo 1d4928: OUTPUT«Could not build C3 linearization: ambiguous hierarchy␤in Main (file <unknown>, line <unknown>)␤»
21:17 diakopter cool
21:18 diakopter 'cept it doesn't have to be ambiguous if the order of declarations is preserved
21:19 diakopter rakudo: class A { }; class B is A { }; class C is A { }; class D is C { }; class C is also does B { }; my D $d .= new; say ($d ~~ B)
21:19 p6eval rakudo 1d4928: OUTPUT«Method '!select' not found for invocant of class ''␤in Main (file src/gen_setting.pm, line 324)␤»
21:19 pnate joined #perl6
21:21 niros joined #perl6
21:22 hercynium joined #perl6
21:24 ignacio_ joined #perl6
21:27 diakopter std: class C { }; class C is also { };
21:27 p6eval std 29593: OUTPUT«[31m===[0mSORRY![31m===[0m␤Illegal redeclaration of symbol 'C' (from line 1) at /tmp/IRYU3FR9R6 line 1:␤------> [32mclass C { }; class C[33m⏏[31m is also { };[0m␤FAILED 00:01 105m␤»
21:28 diakopter TimToady: is 'is also' not the right thing?
21:28 pmichaud it's now 'augment'
21:28 diakopter oh
21:28 pmichaud std:  class C { };  augment class C { ... }
21:28 p6eval std 29593: OUTPUT«ok 00:01 105m␤»
21:29 diakopter ng: class C { }; augment class C does C { };
21:29 p6eval ng b8201f: OUTPUT«Method 'postcircumfix:<[ ]>' not found for invocant of class ''␤current instr.: 'perl6;ClassHOW;add_composable' pc 3495 (src/metamodel/ClassHOW.pir:149)␤»
21:29 pmichaud I don't think ng has "does" yet.
21:30 pmichaud (I could be very wrong about that)
21:31 diakopter ng: class C does Positional { };
21:31 p6eval ng b8201f:  ( no output )
21:31 diakopter ng: class C does Associative { };
21:31 p6eval ng b8201f: OUTPUT«Null PMC access in type()␤current instr.: 'perl6;C;!class_init_10' pc 157 (EVAL_1:83)␤»
21:33 colomon ng has does, doesn't it?
21:33 colomon More likely not to have Associative...
21:34 colomon in fact, I'm sure I saw code for does in operators.pm
21:34 lumi joined #perl6
21:35 tadzik left #perl6
21:35 diakopter classes and roles must not be distinguished when parsing 'does'
21:35 diakopter std: class C { }; augment class C does C { };
21:35 p6eval std 29593: OUTPUT«ok 00:01 105m␤»
21:35 diakopter std: class C { }; augment class C does Blah { };
21:35 p6eval std 29593: OUTPUT«ok 00:01 105m␤»
21:35 diakopter ng: class C { }; augment class C does Blah { };
21:35 p6eval ng b8201f: OUTPUT«Null PMC access in type()␤current instr.: 'perl6;C;!class_init_11' pc 268 (EVAL_1:130)␤»
21:35 diakopter ng: class C { }; augment class C is Blah { };
21:36 p6eval ng b8201f: OUTPUT«No applicable candidates found to dispatch to for '&trait_mod:<is>'␤current instr.: 'perl6;C;!class_init_11' pc 268 (EVAL_1:130)␤»
21:36 diakopter ng: class C { }; augment class C is C { };
21:36 p6eval ng b8201f:  ( no output )
21:36 diakopter ng: class C { }; augment class C is Int { };
21:36 p6eval ng b8201f: OUTPUT«Could not build C3 linearization: ambiguous hierarchy␤current instr.: 'parrot;P6metaclass;add_parent' pc 224 (runtime/parrot/library/P6object.pir:232)␤»
21:36 diakopter ng: class C is Int { };
21:36 p6eval ng b8201f:  ( no output )
21:36 diakopter ng: class C is Mu { };
21:36 p6eval ng b8201f:  ( no output )
21:36 diakopter ng: class C is Any { };
21:37 p6eval ng b8201f:  ( no output )
21:37 diakopter ng: augment class C is Any { };
21:37 p6eval ng b8201f: OUTPUT«Can't augment something that doesn't exist␤current instr.: 'perl6;Perl6;Grammar;add_name' pc 30760 (src/gen/perl6-grammar.pir:154)␤»
21:37 diakopter hmm, it checks for declaration on _that_ parse
21:40 pioto joined #perl6
21:41 pioto i remember hearing a while ago that rakudo was supposed to switch to using STD.pm to parse, and that it would then be able to parse a lot more. is that true and/or did that happen?
21:42 pmichaud rakudo and STD.pm are expected to converge
21:42 pmichaud there's no timeline for when that will happen
21:42 pioto so, that's a post rakudo star thing?
21:42 pmichaud definitely
21:42 pioto ok
21:42 pmichaud it _could_ happen before rakudo star, but it's not a target
21:42 pmichaud and so it's likely to be after
21:43 pmichaud (and part of me holds out a hubristic hope that STD will move closer to Rakudo's grammar than vice-versa :)
21:46 pioto pmichaud: thanks for the clarification.
21:47 pmichaud walk time here
21:47 pmichaud bbiab
21:51 lumi joined #perl6
21:56 jnthn joined #perl6
22:03 diakopter jnthn: wb
22:04 jnthn thanks...dunno how I vanished.
22:21 ash_ jnthn does ng have 'does' ?
22:25 jnthn ash_: Yes, it does.
22:26 diakopter it does does does.
22:26 diakopter and you can can can
22:30 jnthn but but but...
22:32 ash_ so... when this major list refactor lands back in ng, what there any other big issues that need resolving? jnthn did you figure out the role issue you were wondering about?
22:32 lumi joined #perl6
22:32 payload joined #perl6
22:36 jnthn ash_: No, didn't get a fix yet, but did discover an oddness (seems the outer of the lazy sig constructor block can end up looping back on itself or something else odd...)
22:37 jnthn ash_: Spent a couple of hours digging into it though. :-/
22:37 ash_ making things lazy seems like a lot of work, which is rather counterintuitive
22:39 jnthn No, no, it's work now to let others be lazy in the future. :-)
22:40 jnthn We're on the wrong side of the lazy fence. :-)
22:43 ash_ hehe, yeah, true
22:44 ash_ i like how there are 4 levels of lazy too, from super lazy to not lazy at all
22:50 uniejo left #perl6
22:52 wasy joined #perl6
22:53 redparchel joined #perl6
23:04 pmichaud back from walk... occurred to me during the walk that we have a potential pun between the Seq data type and the Seq (S+eq) infix operator.  :-)
23:07 colomon what would S+eq do that eq doesn't?  :)
23:07 pmichaud guarantee that evaluation occurs sequentially and isn't multithreaded somehow
23:07 pmichaud I agree, not common or likely, but it's there :-)
23:08 pmichaud could result in a confused parse
23:08 colomon sure.
23:08 colomon sorry, I'm just sitting here pondering how S interacts with user-defined operators.
23:09 pmichaud oh, I already decided we had a similar issue with Rafter :-P
23:09 colomon :p
23:09 pmichaud and if someone tries to do  a Req (request) data type.... well....
23:10 pmichaud hope they have their terms and operators straight :)
23:10 colomon I'm serious on the interaction, though.  Does S somehow set a flag that turns off threading in all functions called for the duration of processing the operator?
23:11 pmichaud dunno, haven't thought that far ahead yet.  I'm still trying to get a working list :-)
23:11 colomon :)
23:11 pmichaud afk for a bit
23:12 lumi joined #perl6
23:13 colomon TimToady: seriously, how is S supposed to work?  If I have infix:<+>(Vector $a, Vector $b) { $a.coords >>+<< $b.coords }, does S+ translate that to $a.coords S>>+<< $b.coords somehow?
23:18 Chillance joined #perl6
23:36 nnunley left #perl6
23:40 fridim_ joined #perl6
23:44 pnate joined #perl6
23:49 ihrd joined #perl6
23:56 lumi joined #perl6

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

Perl 6 | Reference Documentation | Rakudo