pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/
Set by Tene on 29 July 2008.
00:03 bacek joined 00:04 bacek left, bacek joined 00:23 felipe joined 00:26 ggoebel left 00:28 LimbicRegion joined 00:30 Limbic_Region left, LimbicRegion is now known as Limbic_Region 00:32 ggoebel joined 00:37 Schwern left 00:47 Limbic_Region left 01:07 ruoso left 01:18 Schwern joined 01:29 lambdabot joined 01:33 drbean_ left 01:34 drbean_ joined 01:47 SamB joined 01:54 kanru left 02:34 wknight8111 left, kanru joined 02:47 alester_ joined 02:51 xinming_ joined 03:01 elmex_ joined 03:03 xinming left 03:17 elmex left, elmex_ is now known as elmex 03:23 Schwern left 03:29 Blasi left 03:39 penk joined 03:40 snooper joined 03:48 pbuetow_ left 03:59 JoaquinFerrero left 04:12 xinming joined 04:24 xinming_ left 04:30 BinGOs left 04:35 BinGOs_ joined 04:45 cathyal left, cathya joined 05:36 baest left 05:40 baest joined 05:43 baest left, baest joined 05:44 PZt joined 05:57 justatheory left 06:01 Psyche^ joined, Psyche^ is now known as Patterner 06:22 alester_ left 06:29 cognominal_ left 06:34 ashizawa joined 06:58 Alias_ joined 07:00 Alias_ left, Alias_ joined 07:07 kst left, kst joined, xinming_ joined 07:10 BinGOs_ is now known as BinGOs 07:12 davidwhitewings joined 07:13 davidwhitewings left, xinming__ joined 07:19 xinming left 07:25 xinming_ left 07:39 kst left, kst joined 07:54 Alias_ left 08:25 sri_work joined 08:58 smg joined 09:02 xinming joined 09:06 sri_work_ joined 09:10 Schwern joined 09:11 xinming_ joined, xinming left 09:16 xinming__ left, xinming joined 09:21 sri_work left 09:23 rindolf joined 09:25 bacek left 09:29 xinming_ left 09:36 pmurias joined 09:37 jan__ left 09:42 pmurias left 10:01 ludan joined 10:03 ZuLuuuuuu joined 10:09 meppl joined 10:11 ashizawa left 10:32 penk left 10:37 zamolxes joined 10:40 redicaps joined, redicaps left 10:44 ZuLuuuuuu left 10:52 meppl left 11:27 ludan left 11:28 jferrero joined 11:43 vixey joined 12:03 jan__ joined 12:57 Zapad joined, Lorn_ joined 13:09 Lorn left 13:12 luqui joined 13:22 cmarcelo joined 13:32 ZuLuuuuuu joined 13:38 Lorn_ left 13:42 ruoso joined 13:44 cathya left 13:52 jferrero left, TJCRI joined 13:57 donaldh joined 14:10 ZuLuuuuuu left 14:16 xinming_ joined 14:27 xinming left 14:34 hercynium joined
ggoebel drops stone down well 14:44
.
.. 14:45
pugs_svn r21897 | ruoso++ | [smop] putting some comments on test/27, explaining how the defaultblocksignature should work! 14:50
14:52 Lorn joined 14:55 meppl joined
ruoso Considering every block is a closure, is it a known side effect that the entire outer-scope-tree of that block is going to be preserved while the closure is preserved? or should it explicitly check which values are in use in the inner block and make a new scope with that values? 14:55
i.e.: placing the same restrictions on what goes into the closure that p5 has... 14:56
15:01 jferrero joined, donaldh left, donaldh joined 15:04 ron_ joined
ruoso pugs: class Foo { has Code $.code; method foo { say $.code.() }; my $b; { my $a = 1; $b = Foo.new({ return eval '$a + 1' }); }; $b.foo; 15:06
p6eval pugs: OUTPUT[*** ␤ Unexpected end of input␤ expecting ";" or "}"␤ at /tmp/BdWQUK8Jqv line 2, column 1␤]
ruoso pugs: class Foo { has Code $.code; method foo { say $.code.() }; }; my $b; { my $a = 1; $b = Foo.new({ return eval '$a + 1' }); }; $b.foo; 15:07
p6eval pugs: OUTPUT[*** Must only use named arguments to new() constructor␤ Be sure to use bareword keys.␤ at /tmp/mwQ0VRevbf line 1, column 83-121␤]
ruoso pugs: class Foo { has Code $.code; method foo { say $.code.() }; }; my $b; { my $a = 1; $b = Foo.new(code => { return eval '$a + 1' }); }; $b.foo;
p6eval pugs: RESULT[2]
ron_ perl6: class Foo { method fooey { say 'fooey'} } ; class goo { } ; sub goo() { return 'Foo' }; my $goo = goo.new; $goo.fooey;
p6eval pugs: OUTPUT[*** No such method in class Str: "&fooey"␤ at /tmp/56bboXlcSp line 1, column 108-118␤]
..elf 21897: OUTPUT[fooey␤]
..rakudo 29834: RESULT[fooey␤1]
ruoso pugs: class Bar { method DESTROY { say 'destroyed' } }; class Foo { has Code $.code; method foo { say $.code.() }; }; my $b; { my $a = 1; my $unused = Bar.new(); $b = Foo.new(code => { return eval '$a + 1' }); }; say 'before'; $b.foo; 15:08
p6eval pugs: OUTPUT[before␤destroyed␤]
ruoso pugs: class Bar { method DESTROY { say 'destroyed' } }; class Foo { has Code $.code; method foo { $.code.() }; }; my $b; { my $a = 1; my $unused = Bar.new(); $b = Foo.new(code => { return eval 'say $a + 1' }); }; say 'before'; $b.foo; 15:09
p6eval pugs: OUTPUT[before␤2␤destroyed␤]
ruoso pugs seems to preserve the entire outer-scope-tree.... 15:10
which is what I also plan to do
15:11 Exodist joined
ruoso later & 15:15
15:15 ruoso left 15:17 ZuLuuuuuu joined, kanru left
ron_ perl6: class Foo { method fooey { say 'fooey'} } ; class goo { } ; sub goo() { return Foo }; my $goo = goo.new; $goo.fooey; 15:21
p6eval elf 21897, pugs, rakudo 29834: OUTPUT[fooey␤]
15:23 zamolxes left, justatheory joined 15:31 donaldh left 15:38 dalek joined 15:42 kanru joined
moritz_ re (just for a short time) 15:58
16:05 vixey left 16:08 cjfields joined
pugs_svn r21898 | Auzon++ | [gsoc_spectest] adding test for :$whatever notation (added 4 tests) 16:10
Auzon (hi moritz_. Hope you're having fun) 16:11
moritz_ hi Auzon 16:12
yes, vacations were very nice
still have a few days off ;)
16:13 vixey joined
Auzon enjoy the rest of your time off then :) 16:13
moritz_ I will - and then I'll backlog (only the commits, not all of IRC) 16:14
how is your project going?
Auzon I think I'm doing OK. I think I'll end up with 700+ commits, which is about what I predicted 16:15
err, s/commits/tests/
moritz_ perlbot: karma Auzon
perlbot Karma for Auzon: 160
moritz_ expectations exceeded in terms of karma ;)
Auzon Hopefully it'll help out my real karma :P 16:16
16:17 ZuLuuuuuu left, iblechbot joined 16:30 rdice joined 16:37 vixey left 16:44 vixey joined 16:50 iblechbot left 16:54 funktio joined
moritz_ afk again 17:03
ttfn folks
17:20 revdiablo left, jferrero left, revdiablo joined 17:21 jferrero joined 18:05 ron_ left 18:07 luqui left 18:11 Zapad left
rindolf Hi all. 18:34
18:47 zamolxes joined 18:58 Lorn_ joined 19:10 Lorn left 19:23 vixey left
Auzon Is there a way to combine two files and preserve history in SVN? 19:25
pugs_svn r21899 | Auzon++ | [deprecated-syntax] added a note about :todo<bug> being Pugs-specific 19:33
Auzon StephenPollei++ for bringing this to my attention
rindolf Auzon: I don't think so. 19:39
Auzon: I don't think any version control system can do that.
Auzon I suppose it's not often needed. Well, I guess I'll just do this as cleanly as possible and take the svn blame for all of it 19:41
SamB Auzon: move the bigger file to the right name and merge in the smaller file
or something
Auzon Problem with that is that the smaller file is the correct name. 19:42
19:53 vixey joined
pmichaud pugs: say 1[0].WHAT; 20:08
p6eval pugs: OUTPUT[Int␤]
pmichaud pugs say 1[1].WHAT;
pugs: say 1[1].WHAT;
p6eval pugs: OUTPUT[Scalar␤]
pmichaud pugs: my @a; say @a[0].WHAT; 20:09
p6eval pugs: OUTPUT[Scalar␤]
pmichaud pugs: say 1[].WHAT;
p6eval pugs: OUTPUT[Int␤]
pmichaud pugs: my @a; say @a[].WHAT;
p6eval pugs: OUTPUT[Array␤]
pmichaud pugs: my @a; say @a[0,1].WHAT; 20:10
p6eval pugs: OUTPUT[Array::Slice␤]
pmichaud pugs: say 1[0,1].WHAT;
p6eval pugs: OUTPUT[Array::Slice␤]
[particle] i'm thinking 42[1] should return an out of bounds error
rather than, say, 0
pmichaud yes, an auto-promoted array could certainly have a shape that does bounds checking
if no bounds checking, then it would at least return undef 20:11
TimToady I guess it depends on whether such an array counts as autovivifiable
pmichaud I'm just seeing what pugs does
TimToady @foo[1] would return an autovifiable undef
lambdabot Unknown command, try @list
[particle] agreed on @foo
TimToady looks like it's treating zen slice as a noop
pmichaud pugs: say 1[].WHAT; # this one is weird
p6eval pugs: OUTPUT[Int␤]
TimToady which seems reasonable 20:12
[particle] but 42[1] = 23??
pmichaud oh, I could probably live with that
well, 42 is readonly, so we can't really assign to it
although I suppose the List that gets auto-created might not be readonly. But it probably could be as well.
TimToady but maybe 42[1] just promotes to indexable list or some such, but not autoviv... I dunno 20:13
pmichaud anyway, I'm not trying to drive spec here -- just trying to come up with a reasonable first step
[particle] 42 is Int, which doesn't do Enumerable
42.keys ?? 20:14
TimToady pugs: say 42.kv 20:15
p6eval pugs: OUTPUT[*** Not a keyed value: VInt 42␤ at /tmp/tboJZaGPjW line 1, column 5 - line 2, column 1␤]
pmichaud pugs: say 42.values
p6eval pugs: OUTPUT[*** Not a keyed value: VInt 42␤ at /tmp/PQZ5RwVhv2 line 1, column 5 - line 2, column 1␤]
pmichaud rakudo: say 42.values
p6eval rakudo 29834: OUTPUT[Method 'values' not found for invocant of class 'Int'␤current instr.: '_block11' pc 21 (EVAL_13:13)␤]
pmichaud (just haven't implemented it yet.)
TimToady pugs: say 42.elems
p6eval pugs: OUTPUT[1␤]
[particle] so, a scalar constant will autopromote to a constant, read-only array? 20:16
"foo".elems
rakudo: "foo".elems
p6eval rakudo 29834: RESULT[1]
TimToady well, the question is what $foo.elems and $foo[0] guaratee 20:17
*guarantee
and does that guarantee extend to when you're not sure what's in $foo
42 is a just a silly degenerate case of $foo 20:18
pmichaud particle: we already have that "foo".grep(...) acts the same as ("foo",).grep(...) :-)
[particle] pugs: $foo = (1,"bar",$object).pick; say $foo[0]
p6eval pugs: OUTPUT[*** ␤ Unexpected " ="␤ expecting "::"␤ Variable "$foo" requires predeclaration or explicit package name␤ at /tmp/MQTliqwIvx line 1, column 5␤]
[particle] pugs: my $foo = (1,"bar",$object).pick; say $foo[0]
p6eval pugs: OUTPUT[*** ␤ Unexpected "$foo"␤ expecting "=", "::", context, ":" or "("␤ Variable "$object" requires predeclaration or explicit package name␤ at /tmp/qFijdsHKlc line 1, column 4␤] 20:19
[particle] pugs: my $object; my $foo = (1,"bar",$object).pick; say $foo[0]
p6eval pugs: OUTPUT[␤]
[particle] pugs: my $object; my $foo = (1,"bar",$object).pick; say $foo[0]
p6eval pugs: OUTPUT[␤]
TimToady yes, there's a strong tagmemic undercurrent throughout Perl that if you use something as if it's something else, it goes out of its way to behave that way
[particle] yep, like tcl's shimmering
TimToady using a scalar as if it's a list is just one of those things
but number as a string and string as a number are also fundamental 20:20
[particle] and that may commute to number as list and string as list
but not list as number
TimToady and [0] is useful for getting the first element if someone forgot to wrap a scalar into a list
20:21 cjfields left
[particle] $foo[<a b c>] # $foo[3] ? 20:21
TimToady that's a slice
it's a *bad* slice, of course
$foo{<a b c>} would be better 20:22
[particle] or $foo[<1 2 3>]
TimToady $foo<a b c> is the same thing
you have to say $foo[+<a b c>] to get a 3 20:23
[particle] so i'm getting at the fact that scalars can act as list, but not vice-versa
TimToady a list in item context turns into an array
my $x = 1,2,3 is the same as my $x = [1,2,3]
well, except it wouldn't parse 20:24
my $x = (1,2,3) though
[particle] instead of perl 5, where $x = 3
but not because that's the size of the list
TimToady nothing in p6 ever returns the last element by default
[particle] yep. sane.
TimToady that was residual C brain damage
[particle] ok, i think the edge cases are fleshed out 20:25
TimToady I'm sure you'll find some more. :)
[particle] 42[0] is workable
rindolf Hi TimToady
TimToady howdy
rindolf TimToady: how do you like Copenhagen so far?
TimToady not bad at all, though we got rained on this morning a bit
but that's our fault for walking in the park :) 20:26
20:27 ryanc joined 20:30 luqui joined 20:35 wknight8111 joined
TimToady <thunk> & 20:35
rindolf TimToady: BTW, did your wife come with you to Israel back in OSDC::Israel::2004?
20:50 TJCRI left
rindolf How freaky! Someone blogged about the Danish band Alphabeat in regard to YAPC-EU and now lastfm-player puts them as the first song. 20:56
21:02 rdice left 21:19 explorer__ joined 21:22 explorer__ left 21:23 explorer__ joined 21:28 jferrero left 21:32 explorer__ is now known as jferrero 21:42 Limbic_Region joined
StephenPollei rakudo: my Int @foo; 22:19
p6eval rakudo 29834: OUTPUT[get_iter() not implemented in class 'Integer'␤current instr.: '_block11' pc 60 (EVAL_6:32)␤]
StephenPollei pugs: my Int @foo;
p6eval pugs: RESULT[\()]
22:26 xinming joined
rindolf is listening to t.A.T.u. - Gomenasai-aL6dsH BYsI 22:37
Wonderful song. 22:38
It's my Tatu favourite up to now.
22:38 xinming_ left 23:09 cmarcelo left 23:22 cotto_work joined 23:34 Exodist left 23:45 sri_work_ left 23:50 bacek joined