»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by Juerd on 28 August 2009.
diakopter rakudo: say 1,,3 00:09
p6eval rakudo 2953ac: ( no output )
diakopter rakudo: say 1,,3
p6eval rakudo 2953ac: ( no output )
diakopter well, it worked when I /msg 00:10
TimToady std: say 1,,3
p6eval std 28279: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix , instead at /tmp/iwlzkE2jue line 1:␤------> say 1,,⏏3␤FAILED 00:03 38m␤»
diakopter rakudo 2953ac: OUTPUT«13␤»
TimToady I think STD is correct here :)
a nullterm is only allowed at the end of the list 00:11
otherwise the semantics are unclear--people will expect it to pass an undef or something
diakopter rakudo: say 1;3, 00:14
p6eval rakudo 2953ac: OUTPUT«No result object␤in Main (src/gen_setting.pm:2815)␤»
TimToady o_O 00:15
diakopter one'd think it'd say 1 at least
(if it got that far, I mean) 00:16
TimToady rakudo: 3,
p6eval rakudo 2953ac: OUTPUT«No result object␤in Main (src/gen_setting.pm:2815)␤»
TimToady rakudo: 3
p6eval rakudo 2953ac: ( no output )
00:20 mdxi left, mdxi joined 00:21 sevvie joined 00:27 payload left 00:30 muixirt_ joined 00:35 jrtayloriv left 00:36 jrtayloriv joined
dalek kudo: a7ac444 | pmichaud++ | src/parser/grammar.pg:
Fix handling of twigil in param_var for anonymous invocant (RT #69206, masak++)
00:38
00:39 muixirt_ left 00:40 jrtayloriv left 00:41 jrtayloriv joined 00:42 athomason joined 00:44 cono left 00:47 muixirt left 00:51 _jaldhar joined 00:53 payload joined 00:55 maja_ joined, maja left 01:03 sm` left, sm` joined 01:10 nihiliad joined 01:18 justatheory left
dalek kudo: a969c9e | (Solomon Foster)++ | src/setting/Any-num.pm:
Add Any versions of the inverse trig functions.
01:25
01:45 __ash__ joined 01:46 JimmyZ joined
JimmyZ moritz_:<pre>DBI connect('database=moritz5;host=localhost','moritz',...) failed: Too many connections at lib/IrcLog.pm line 30 01:46
01:51 frew_ left 01:59 Helios- left 02:03 Helios- joined 02:07 ilbot2 left, ilbot2 joined 02:24 zpmorgan left 02:35 SmokeMachine joined 02:48 dukeleto left 02:51 JimmyZ left 03:01 frew_ joined 03:04 frew__ left 03:18 cdarroch left 03:33 saran joined
saran Good morning friends 03:33
KatrinaTheLamia I plead the fifth! 03:36
TimToady that only works here 03:38
up 03:40
saran Tim : Great to see the announcement of Rakudo Perl 6 development release #21 ("Seattle" 03:42
03:42 azawawi joined
azawawi good morning 03:42
moritz_: ping 03:43
TimToady I am Toady, not Tim
I am merely a Toady of Tims
saran Toady : am in windows..when i try to clone using "git clone git://github.com/rakudo/rakudo.git" it says <snip> $ git clone git://github.com/rakudo/rakudo.git <br> fatal: destination path 'rakudo' already exists and is not an empty directory. <snip> 03:45
azawawi moritz_: Moose on feather fails. Could you please fix it? Please see gist.github.com/188860
moritz_: feather1 ofcourse... 03:46
TimToady saran: alas, I know next to nothing about git, and little about Windows either 03:47
wayland76 I on the other hand, am a Tim, and know nothing of any Toadys other than TimToady :) 03:49
saran Toady : Hw shld i get the latest release of seattle in my machine 03:50
TimToady azawawi: try again with Moose 03:52
03:55 __ash__ left
azawawi TimToady: Yay! it works. Many thanks TimToady++ 03:57
03:57 synth^2 joined
azawawi releases the next Syntax::Highlight::Perl6 ... 03:57
03:58 synth^3 joined
TimToady saran: try going into rakudo dir and saying 'git pull' 04:01
04:02 frew__ joined
azawawi TimToady: building rakudo on win32 ? 04:05
TimToady so it would appear
saran TimToady : Thanks .. it works..any other svn steps to get the latest seattle in live
TimToady make realclean 04:06
perl Configure.pl --gen-parrot
should download the latest, I think
azawawi saran: padre.perlide.org/trac/wiki/Buildin...tandRakudo 04:07
saran: that's what use to build the latest. I will be releasing Seattle shortly as a zip file to work with almost-six msi distribution 04:08
saran azawawi : i have already installed strawberry and rakudo..am working to sync with the latest seattle release 04:10
azawawi saran: what version of strawberry? 04:11
04:12 dukeleto joined
azawawi saran: if you follow these instructions, you'll get a fully working rakudo installation under c:\strawberry\six 04:13
04:13 stephenlb left
saran azawawi : strawberry perl 5.10.0.6 04:15
04:15 synth left 04:16 synth^2 left
azawawi saran: for a ready-made PDX over Padre distribution, you can follow also these instructions ahmadzawawi.blogspot.com/2009/09/up...6-pdx.html 04:16
saran: that provides Perl 6 highlighting, STD error checking, and quick fixes for various STD warnings/errors... 04:17
saran: and you can run your Perl 6 script using rakudo through Padre IDE... 04:18
saran: almost six distro = strawberry + Padre + Padre::Plugin::Perl6 + rakudo 04:19
saran azawawi : back after 2 mins
pugs_svn r28280 | lwall++ | [multi.t] does isn't associative 04:21
s1n way off topic: anyone in here obtain a phd? 04:23
(aside from pmichaud)
saran azawawi : pls look at my blog twitter.com/perlsaran and am not sure what i am missing
azawawi takes a look 04:24
saran This is what the link followed before a week to install rakudo www.perlfoundation.org/perl6/index....evelopment 04:25
azawawi saran: vista or xp? 04:26
saran azawawi : xp 04:27
TimToady : How to check whether seattle release is updated and in sync 04:28
azawawi saran: git checkout Seattle
saran: git pull
saran: forget the last command, only 'git checkout Seattle' 04:29
TimToady that won't track the head though, I'd think 04:30
if you want that
04:31 justatheory joined
saran azawawi : i used "git pull" in rakudo folder 04:31
azawawi saran: then you have the latest...
04:31 Entonian joined
azawawi saran: git checkout master and then git pull 04:32
saran: that's HEAD
saran azawawi : but i missed "git checkout seattle" ..
azawawi saran: if you need to stay only on Seattle
saran: then git checkout Seattle
saran azawawi : got it 04:33
azawawi saran: switching branch/head is very fast in git
saran azawawi : back after breakfast 04:36
azawawi saran: i'll be in #padre @ irc.perl.org 04:37
saran: cya
04:42 azawawi left
saran TimToady : shall use "mingw32-make" and "mingw32-make test" and "mingw32-make install" after the "perl configure.pl --gen-parrot" success 04:45
04:51 zamolxes left 04:53 Entonian left 04:58 JimmyZ joined 05:02 meppl joined 05:06 nihiliad left 05:14 synth^2 joined 05:15 synth joined 05:19 frew__ left 05:29 azawawi joined
azawawi [particle]: ping 05:29
05:29 jrockway_ joined
saran test message 05:31
05:32 synth^3 left
clkao win 21 05:33
05:33 synth^2 left 05:40 jrockway left
azawawi moritz_: latest win32 rakudo binary for almost-six-0.41, feather.perl6.nl/~azawawi/six/six-seattle.zip , blog coming soon... 05:46
05:50 azawawi left 05:57 cmv left 05:58 arthur-_ left 06:03 spinclad joined 06:08 sm^^^ joined 06:12 justatheory left 06:15 ilbot2 left 06:16 ilbot2 joined 06:18 sm` left 06:27 justatheory joined, dukeleto left 06:30 justatheory left 06:31 am0c joined 06:35 tak11 left 06:41 orafu left, orafu joined
saran can some one give some link related with the hash implementation in perl6 06:41
JimmyZ saran: Do you mean rakudo? 06:44
saran jimmyz : yes 06:45
06:50 rfordinal joined 06:52 saran left 06:57 iblechbot joined 07:02 saran joined
saran Jimmyz : Did i missed out any of ur link or message? 07:02
JimmyZ saran: yes 07:03
saran jimmyz : Pls resend 07:04
07:05 bigpresh_ left, bigpresh_ joined
JimmyZ Is this what you want ? github.com/rakudo/rakudo/blob/maste...s/Hash.pir 07:05
or parrot hash pmc? 07:06
saran jimmyz : no..i just want a basic example and working of hash in parrot
07:10 rfordinal left
JimmyZ rakudo: my @a = (1); @a[0] := @a; @a.perl 07:13
p6eval rakudo a969c9: OUTPUT«rtype not set␤in Main (src/gen_setting.pm:3469)␤»
07:14 am0c left 07:20 donaldh left 07:22 donaldh joined
JimmyZ rakudo: my %a = (:a<A>, :b<B>); %a{a} = %a; %a.perl; 07:22
p6eval rakudo a969c9: OUTPUT«Could not find non-existent sub a␤» 07:23
07:23 snearch joined 07:26 rfordinal joined
TimToady std: my %a = (:a<A>, :b<B>); %a{a} = %a; %a.perl; 07:26
p6eval std 28280: OUTPUT«Undeclared routine:␤ a used at 1␤ok 00:03 39m␤»
TimToady std: my %a = (:a<A>, :b<B>); %a<a> = %a; %a.perl; 07:27
p6eval std 28280: OUTPUT«ok 00:03 39m␤»
07:31 muixirt joined
JimmyZ rakudo: my %a = (:a<A>, :b<B>); %a<a> = %a; %a.perl; 07:35
p6eval rakudo a969c9: ( no output ) 07:36
JimmyZ rakudo: my %a = (:a<A>, :b<B>); %a<a> := %a; %a.perl;
p6eval rakudo a969c9: OUTPUT«rtype not set␤in Main (src/gen_setting.pm:3469)␤»
TimToady zzz & 07:37
07:38 dukeleto joined 07:41 reqamst joined 07:48 desertm4x joined 07:52 xinming_ joined, xinming left 07:56 pdcawley joined 08:07 cmv joined
desertm4x Is there a generic way to create an own Container class either extending the List or Array class/role. I would like to add some methods that basically grep the array, but as some of the greps are lengthy and would occur at many different places, I'd like to avoid copying them to all these places. 08:15
08:20 dakkar joined 08:49 ssm joined 09:04 cotto left 09:06 snearch left 09:07 jauaor joined 09:08 cotto joined 09:10 rbaumer joined 09:13 zaphar_p2 left, pdcawley left 09:14 payload left 09:28 rbaumer left, saran left 09:33 Whiteknight joined
moritz_ re 09:39
clkao $66/win 21 09:42
09:50 pdcawley joined 10:01 payload joined 10:03 arthur-_ joined, masak joined
masak aloha, perl6ers. 10:03
moritz_ \ö/ 10:05
masak moritz_: the antennae suit you. 10:06
moritz_ hairs, actually ;-)
but thanks for the compliment
masak you only have two strands of hair? 10:09
JimmyZ hello, masak
masak JimmyZ: 你好, JimmyZ 10:10
JimmyZ masak: I think I found some bugs, but needs to review. 10:11
masak bring'em on. 10:12
JimmyZ rakudo: class Alpha { has @!a = < beta gamma >; method postcircumfix:<[ ]>($key) { return @!a[$key]; }; }; my $a = Alpha.new; say $a[1];
p6eval rakudo a969c9: OUTPUT«No such attribute '@!a'␤in method Alpha::postcircumfix:[ ] (/tmp/scXNRVM0V7:2)␤called from method Alpha::postcircumfix:[ ] (/tmp/scXNRVM0V7:2)␤called from Main (/tmp/scXNRVM0V7:2)␤»
JimmyZ rakudo: class Alpha { has @!a = < beta gamma >; method postcircumfix:<{ }>($key) { return @!a[$key]; }; }; my $a = Alpha.new; say $a{1};
p6eval rakudo a969c9: OUTPUT«gamma␤»
JimmyZ rakudo: class Alpha { has @!a = < beta gamma >; method postcircumfix:<( )>($key) { return @!a[$key]; }; }; my $a = Alpha.new; say $a(1);
p6eval rakudo a969c9: OUTPUT«gamma␤»
JimmyZ Is the first one a bug/
masak looks like. 10:13
JimmyZ another:
10:13 Woodi joined, am0c joined
JimmyZ rakudo: my $a = 1; repeat while $a<2 -> $b { $a++ } 10:13
p6eval rakudo a969c9: OUTPUT«Confused at line 2, near "$b { $a++ "␤in Main (src/gen_setting.pm:3469)␤» 10:14
JimmyZ rakudo: my $a = 1; repeat while $a < 2 -> $b { $a++ }
p6eval rakudo a969c9: OUTPUT«Confused at line 2, near "-> $b { $a"␤in Main (src/gen_setting.pm:3469)␤»
masak yes, bug. but that one I reported for you a few days back. :)
er, or a very close variant of it.
JimmyZ rakudo: my $a = 1; while $a< 10 -> $b { $b.defined.say; }; 10:15
p6eval rakudo a969c9: OUTPUT«Confused at line 2, near "$b { $b.de"␤in Main (src/gen_setting.pm:3469)␤»
JimmyZ rakudo: my $a = 1; while $a < 10 -> $b { $b.defined.say; };
p6eval rakudo a969c9:
..OUTPUT«1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1􏿽xE2
JimmyZ and this? 10:16
rakudo: my $a = 1; while $a<10{ $^b.defined.say; };
masak aye, the one I reported had $^a.defined in it.
p6eval rakudo a969c9: OUTPUT«too few arguments passed (0) - 1 param expected␤in Main (/tmp/sVh0tTxHbM:0)␤»
JimmyZ rakudo: my $a = 1; while $a<10 { $^b.defined.say; }; 10:17
masak that's the one.
p6eval rakudo a969c9:
..OUTPUT«1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1􏿽xE2
masak feel free to add any of those to the ticket from a few days back.
JimmyZ the space between '0{'
10:17 alexn_org joined
masak aye. 10:17
JimmyZ and like this: 10:18
rakudo: my $a = 1; while $a<10 -> $b { say $b.defined; $a++; }
p6eval rakudo a969c9: OUTPUT«Confused at line 2, near "$b { say $"␤in Main (src/gen_setting.pm:3469)␤»
JimmyZ rakudo: my $a = 1; while $a < 10 -> $b { say $b.defined; $a++; }
p6eval rakudo a969c9: OUTPUT«1␤1␤1␤1␤1␤1␤1␤1␤1␤»
JimmyZ the *space*
moritz_ phenny, tell azawawi I think Moose is fixed now on feather1 10:19
phenny moritz_: I'll pass that on when azawawi is around.
masak JimmyZ: aye. there are a couple of other known spacing issues reported too. 10:20
am0c my $a = 1; while $a < 10 { $^b.defined.say }
masak it's nice to keep track of them, becuase they are annoying when they bite people.
am0c rakudo: my $a = 1; while $a < 10 { $^b.defined.say }
p6eval rakudo a969c9: OUTPUT«1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1␤1
10:20 Woodi left
am0c rakudo: my $a = 0; say $a<10 10:21
p6eval rakudo a969c9: OUTPUT«1␤»
JimmyZ masak: I can't find why from the grammer. :(
10:21 Whiteknight left
masak JimmyZ: it's probably not so easy... then it would have been fixed already. 10:21
the grammar can be subtle. 10:22
JimmyZ yes. 10:23
masak rakudo: sub bar(:$foo) { say $foo }; class A { has $!foo = 'OH HAI'; method x { bar( :$!foo ) } }; A.new.x 10:26
p6eval rakudo a969c9: OUTPUT«Symbol '$1foo' not predeclared in x␤in Main (src/gen_setting.pm:3469)␤»
masak I'd be very interested to know where the '1' comes from.
moritz_ shift + 1 => ! 10:27
masak er. 10:28
JimmyZ masak: token pblock { [ <.ws> <lambda> <.ws> <signature> ]? <.ws> <block> {*} }
token xblock { <EXPR> <pblock> {*} }
moritz_ ;-)
masak rakudo: sub bar(:$foo) { say $foo }; class A { has $.foo = 'OH HAI'; method x { bar( :$.foo ) } }; A.new.x 10:29
p6eval rakudo a969c9: OUTPUT«Symbol '$1foo' not predeclared in x␤in Main (src/gen_setting.pm:3469)␤»
JimmyZ token pblock { [ <.ws> <lambda> <.ws> <signature> ]? <.ws> <block> {*} }
token xblock { <EXPR> <pblock> {*} }
masak moritz_: your theory falls apart with :$.foo. I think.
10:30 rgrau joined 10:33 payload left, JimmyZ left 10:38 pdcawley_ joined 10:42 M_o_C joined
moritz_ diakopter: ping 10:52
10:55 pdcawley left, pdcawley_ is now known as pdcawley 11:08 zamolxes joined 11:18 pdcawley_ joined, pdcawley left, pdcawley_ is now known as pdcawley 11:24 agentzh joined 11:32 payload joined 11:35 jauaor left
pugs_svn r28281 | moritz++ | [new perl6.org] two column layout for community/ 11:39
r28282 | moritz++ | [new perl6.org] two-column layout for compilers/
11:48 pdcawley_ joined
pugs_svn r28283 | moritz++ | [new perl6.org] introduction to specification page 11:53
11:58 pdcawley left, pdcawley_ is now known as pdcawley 12:01 ejs joined 12:08 SmokeMachine left 12:10 masak left 12:12 iblechbot left
takadonet morning all 12:12
moritz_ \o/
12:13 ruoso joined 12:17 abra joined 12:18 abra left, abra joined 12:21 masak joined 12:23 pdcawley_ joined, xinming_ is now known as xinming, rfordinal3643 joined
masak I don't know what to respond to this kind of tweet: twitter.com/augustl/status/4077483740 12:30
12:31 mberends joined, pmurias joined
masak I once saw a blogpost comment say something like "Sometimes I daydream that I have the power to choose one meme to remove forever from the minds of people. If I did have that power, I'd choose this one." -- referring to the eternal joke about DNF/Perl 6/Plan 9. 12:32
pmurias masak: what does the checkpoint part of the tote diagram do?
masak pmurias: it's basically a hook where you can plug in git-commit or whatever.
pmichaud: it's also the point where the state of the tests is registered, and subsequent runs are compared against that state to determine whether progress has been made. 12:33
erm, pmurias, not pmichaud. :/
(just re-activating my membership in the Club of People Who Can't Tab-complete)
mberends masak, I dreamt that tote is just REPL in the large: Review, Edit, Prove, Loop
masak 哈哈 12:34
I whipped up a proto-tote yesterday, for private purposes.
conclusion: it does work, at least for me.
ruoso bom dia
masak bom dia, ruoso. 12:35
12:35 TiMBuS joined
masak mberends: I see you left smiley-adorned comments for me in the proto git-log :P 12:37
TiMBuS rakudo question: does Set/Bag exist? and if so how would i use them.. 12:38
masak TiMBuS: they don't.
TiMBuS aw :(
masak I once wrote up a grant application to implement them.
and a few other things.
TiMBuS wanted to do the Right Thing and use not a hash for once
masak TiMBuS: tell us more about your use case. 12:39
mberends masak: nobody else reads 'em ;)
12:39 pdcawley left, pdcawley_ is now known as pdcawley
TiMBuS im just tracking irc nicks. 12:39
they're always unique. i dont need to keep any values tied to them, i just want to keep a list of nicks 12:40
masak sounds like a KeyHash to me. 12:41
TiMBuS oh?
masak yes, I think so.
let me check.
12:41 rfordinal left
TiMBuS yeah ive got that syn open 12:41
masak hm, maybe even a KeySet.
TiMBuS whats the difference between a keyset/keybag and set/bag 12:42
masak the former autodelete pairs whose values match the default. 12:43
oh! and Set and Bag are immutable. 12:44
TiMBuS oh 12:45
12:46 finanalyst joined
finanalyst hi to any(every)one 12:46
i keep running into <Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'> 12:47
12:47 mzedeler joined
finanalyst it means I have mispelt something 12:47
but I wish there was a little more information
masak join the club. :) 12:48
12:48 mzedeler left
masak the 'Failure' part indicates that whatever you're trying to index isn't there. 12:48
finanalyst rakudo: my %x=<a b> Z 1,[3,4]; say %x<bc>[0]
p6eval rakudo a969c9: OUTPUT«Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'␤»
masak right. 12:49
because there's no %x<bc>
that's going to be fixed eventually.
finanalyst but this is something i use quite alot, so it would be nice to know what the invocant was
masak indeed. 12:50
right now they only way to guard oneself against this is to develop in very small steps.
that way, you know with greater certainty what line caused the error.
finanalyst 'fixed eventually' == 'when it reaches the level of irritability for someone to fix' ?
i have tried to, but i just refactored something and this came up 12:51
12:51 sri_kraih left
finanalyst i wish there was some way even of tracing line numbers before the error 12:52
masak finanalyst: it wouldn't surprise me if fixing this is blocking on something.
finanalyst ah
masak finanalyst: I can assure you that pmichaud is aware of the degree to which it irritates people.
finanalyst by the way, does $*LINE or similar work?
masak that's $?LINE, I think. 12:53
moritz_ I don't think so
masak me neither.
finanalyst shame. it would be nice to sprinkle "say $?LINE" through the code 12:54
moritz_ rakudo: say $?LINE
p6eval rakudo a969c9: OUTPUT«Symbol '$?LINE' not predeclared in <anonymous> (/tmp/HGaimLr94M:2)␤in Main (src/gen_setting.pm:3469)␤»
finanalyst sigh 12:55
moritz_ at least the error message is quite good 12:56
masak don't just do something. stand there!
finanalyst rakudo: $*trace_line = 1 12:57
p6eval rakudo a969c9: ( no output )
moritz_ anybody's got a perl 6 related subdomain to spare?
finanalyst rakudo: say $*trace_line
p6eval rakudo a969c9: OUTPUT«Contextual $*trace_line not found␤␤»
moritz_ I'd like to make the new version of perl6.org available somewhere 12:58
and since it uses absolute links (in the form href="/community/") I can't easily put it into a subdirectory
finanalyst interesting. using REPL and setting $*xxx , I was able to get the value of the variable $*xxx back on the next line (if you see what i mean) 12:59
12:59 zamolxes left
moritz_ std: $*foo = 2 12:59
p6eval std 28283: OUTPUT«ok 00:02 38m␤»
moritz_ std: say $*foo
p6eval std 28283: OUTPUT«ok 00:02 37m␤» 13:00
TiMBuS its because the repl is compiling each line into its own block
so any globals stay
finanalyst yes, but it was irritating that variables would not persist over several lines 13:01
with globals this can be worked around
TiMBuS i wrote a patch a long while ago to make vars without 'my' autovivify on the repl, and set themselves in the outer namespace
finanalyst patch doesnt seem to be included in current repl 13:02
TiMBuS nope i didnt really submit it
13:03 sm^^^ left, sm` joined
TiMBuS was on git, i guess. i was looking for a way to modify the PCT so it could tell me when it was in REPL mode, instead of trying to guess from the arguments passed 13:04
13:05 abra left
TiMBuS and frankly i dont know how 'use strict/no strict' would be "properly" implemented anyway so i guess i ditched the idea =/ 13:05
masak could someone make an IRC client module in Perl 6 that makes this possible? gist.github.com/189041 13:07
TiMBuS i get the feeling this was pointed at me?
masak no, at everybody.
especially at the lurkers. come one people! :) 13:08
s/one/on/
TiMBuS well my irc bot already does that but, not so perl 6-y
masak oh, so maybe my idea isn't so new, then.
I like that my example code is very, um, succinct. 13:09
TiMBuS it is
masak it should be possible to write something like that.
maybe even today.
TiMBuS i use mmd to trigger events, based on the method name
masak I stole the regex idea from Tene++'s LolDispatch. 13:10
13:10 ihrd joined
moritz_ you could use traits 13:10
masak LolDispatch does.
13:10 ihrd left
moritz_ method foo handles rx{...} {...} 13:10
13:10 ejs1 joined
masak hm, even better. 13:10
13:10 rgrau left
TiMBuS i just used where 13:11
masak actually, the hard part is writing the IRC client itself, I wager.
TiMBuS multi method on_message ( $msg where { $^msg ~~ /^\!8ball/ }, $from, $channel )
masak um.
oh! in a signature. cool!
TiMBuS i dont know enough about perl6 :(
moritz_ the problem with 'where' is that it's only an epsilon tighter 13:12
masak TiMBuS: if you want to, you can write $msg where /.../
I think.
moritz_ so when sombody writes Str $msg, it always wins
TiMBuS i think i tried that and it didnt work =/
masak moritz_: well then, write Str $msg where /.../ :)
TiMBuS heh
masak TiMBuS: I think it should.
TiMBuS lemme see
i should probably make the bot join this irc i guess 13:14
moritz_ TiMBuS: beware, you'll get all sorts of feedback ;-) 13:15
TiMBuS aa
masak we have an advanced taste in bots in here.
because we've used them a lot. 13:16
TiMBuS hey the where thing worked
masak :)
moritz_ s/advanced/particular/ ;-)
13:17 ejs1 left, sri_kraih joined
TiMBuS well, you can suggest things to add to it if you want 13:17
the bot is fairly stunted in that it can't thread
masak moritz_: www.angryflower.com/advan.html :)
Tene masak: the problem with writing an IRC client is that Parrot doesn't have async IO support yet. 13:18
masak ah.
well, that kinda puts a damper on things.
TiMBuS and yeah that too
one irc server only
masak how come it doesn't? all I hear about with Parrot is asynch IO.
moritz_ asnch != threaded, in general 13:19
TiMBuS i wanted to make a twitter bot but it would ping out if it had to wait for the site
Tene masak: there's other IO cleanups that need to happen first, or something...
moritz_ POE is all asynchron, but single threaded
13:20 Jedai joined
TiMBuS how does it avoid locking? 13:20
13:20 Jedai left, ejs left
devin non-blocking i/o 13:20
13:20 ejs1 joined
Tene exactly 13:20
13:21 psychoschlumpf left, meteorjay joined 13:23 punter joined, Jedai joined
TiMBuS hm. slightly back to my topic. moritz_ im using .* to dispatch events. so would Str $msg still override plain ol $msg 13:23
13:24 punter left
TiMBuS or would they both get called 13:24
13:27 Jedai left
masak sounds like a job for science! 13:27
rakudo: class A { method x($msg) { say "untyped $msg" }; method x(Str $msg) { say "Str-typed $msg" } }; A.new.*x("OH HAI")
p6eval rakudo a969c9: OUTPUT«Str-typed OH HAI␤»
masak there you go. :)
TiMBuS aw
wait you didnt declare them multi 13:28
masak o_O
hold on.
rakudo: class A { multi method x($msg) { say "untyped $msg" }; multi method x(Str $msg) { say "Str-typed $msg" } }; A.new.*x("OH HAI")
p6eval rakudo a969c9: OUTPUT«Str-typed OH HAI␤untyped OH HAI␤»
TiMBuS woot
jnthn Yes, .* calls all multi variants too :-)
jnthn has weak-fi, may vanish at any moment 13:29
13:29 molaf joined
TiMBuS its practically made for an event model 13:29
masak the comments in proto will befuddle future archeologists: "# YES: cheese speleology!" 13:30
mberends YES!
13:30 am0c left
masak I propose a new unit. it measures poetic weirdness. 13:31
I call it... the _why.
proto just increased its poetic weirdness by a few milli_whys.
moritz_ #69202 is really obscure, masak 13:32
masak++
jnthn wonders if he even wants to look
masak yes, that one was very strange.
13:33 SmokeMachine joined, pdcawley_ joined
TiMBuS masak, so how did you expect .reply to work? i currently use '.msg(@replies.pick, $channel)' but i assume your example assumes the object will instead keep the state of the current event... which is not a bad idea 13:33
masak it took a separate git branch to isolate it.
TiMBuS: I just stuffed every thing away in the Session object $_ in the signature.
TiMBuS oooh right
masak beams 13:34
jnthn masak: wow, ouch
masak jnthn: any idea why?
jnthn Yeah.
masak that's even sicker. :)
jnthn ;-) 13:35
13:35 pdcawley left, pdcawley_ is now known as pdcawley
jnthn It's because sig construction builds a junction of the types at the moment. 13:35
And I guess for some reason it's finding your all method.
:-/
masak ah!
yes, I believe there's a Parrot bug that confuddles methods and global subs.
jnthn Yeah, may be Parrot bug too. 13:36
masak yuck.
jnthn I'm not sure *why* it's happening, just that it's calling your all instead.
So you end up trying to get the $!a of a Str.
masak fortunately, all our problems will go away by April... :/
jnthn: note that I'm not even calling A.x 13:37
jnthn Given that signature creation is getting an epic re-write soon anyway, this one probably will be. :-)
Yeah, the sig object is built before then.
erm, sorry
is built at BEGIN time
13:38 ejs2 joined
ruoso rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say $a.find_possible_candidates(1,2); 13:38
p6eval rakudo a969c9: OUTPUT«Attributes of type 'MMD_Cache *' cannot be subclassed from a high-level PMC.␤in Main (/tmp/aojiQ2pM9V:0)␤»
ruoso just checking... 13:39
13:39 agentzh1 joined, agentzh left, xinming left
jnthn heh 13:39
not sure what to do about that one.
13:39 pdcawley left
ruoso having a way to get the entire list of candidates would probably be a viable workaround 13:40
13:40 pdcawley joined
dalek kudo: 4b141a8 | mberends++ | tools/test_summary.pl:
[tools/test_summary.pl] implement some simple relative benchmarking
13:40
jnthn ruoso: .candidates
ruoso: you can probably iterate over that.
we could probably do with getting such thingies into the spec at some point. 13:41
ruoso rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say join ", ": grep { $_.signature ~~ :(1,2) }, $a.candidates
13:41 agentzh1 left, agentzh joined
p6eval rakudo a969c9: OUTPUT«Confused at line 2, near ": grep { $"␤in Main (src/gen_setting.pm:3469)␤» 13:41
ruoso oops
rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say join ", ", grep { $_.signature ~~ :(1,2) }, $a.candidates
p6eval rakudo a969c9: OUTPUT«Null PMC access in type()␤in Main (/tmp/k770kDLnAm:2)␤»
ruoso rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say join ", ", $a.candidates
p6eval rakudo a969c9: OUTPUT«Null PMC access in type()␤in Main (/tmp/5ntl23v2XH:2)␤»
jnthn Hmm. 13:42
rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say $a.candidates.perl
p6eval rakudo a969c9: OUTPUT«Null PMC access in find_method()␤in Main (/tmp/66K19yHqOh:2)␤»
jnthn rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say $a.candidates
p6eval rakudo a969c9: OUTPUT«Null PMC access in type()␤in Main (/tmp/JSNebHBeLm:2)␤»
jnthn ...eww...
ruoso rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say "Alive" 13:43
p6eval rakudo a969c9: OUTPUT«Alive␤»
masak jnthn: rakudobug?
jnthn masak: npmca always is 13:44
13:44 simcop238 joined
masak :) 13:44
masak goes through the motions
jnthn Feel free to submit; I'd like to try and get some "official" introspection interface agreed on for multis though.
Then we can have spectests. 13:45
masak \o/
jnthn And then it's more worthwhile fixing it (because we'll then be sure not to break it again...)
ruoso I think .candidates is consusus
jnthn ruoso: consensus?
mberends masak: I'm thinking of refactoring proto into MVC form. Ecosystem.pm is the Model, and Installer is View and Controller. How about separating those roles? 13:46
jnthn ruoso: Agree though that it's fine.
masak mberends: soudns good.
mberends :)
masak that's how I think about it anyway.
Matt-W as in &my-multi.candidates ?
ruoso jnthn, I mean, having $multi.candidates as spec is "general agreement" 13:47
13:47 ejs1 left
ruoso consensus in portuguese only means that 13:47
13:47 simcop2387 left
jnthn ruoso: OK, then we're agreeing. :-) 13:47
masak I'm getting back to my usual level of bug submitting. there's been a drought lately, for unknown reasons. 13:50
ruoso adding a new section on S06 for Introspection 13:51
jnthn masak: getting harder to find bugs? ;-)
masak jnthn: the past month indicates it is. the past two days indicate it isn't. :) 13:52
jnthn ruoso: Great. I want to try and get some filling out of and consensus on signature introspection at some point in the future too.
(now now...)
jnthn enjoys probably the most spacious room he's going to have in his entire stay in Japan. 13:54
Matt-W where are you?
jnthn Matt-W: Nara.
Which after Kyoto is a wonderfully peaceful city.
Matt-W :)
Not heard of it
jnthn It was once the capital.
But these days, quite small and not so significant. 13:55
Thus I only decided to have a single night here. Turns out it's really quite a nice place though.
Not so much jaw-dropping sights, but unlike Kyoto it's fairly consistently nice.
Kyoto has some awesome things to see, but walking between them it's kinda "meh". 13:56
So I spent my time jumping between the nice bits. Here it was nice to just stroll, sit in a park, etc.
13:56 Jedai joined
masak I like such places. 13:57
Lisbon was great for walking, too.
13:58 agentzh left
devin the best way to get around kyoto is taxi, bicycle, or bus 13:58
you can rent bicycles
masak mberends: tell me a bit about projects.state 14:00
ruoso jnthn, I just realized we could rename $multi.find_possible_candidates to $multi.cando
jnthn ruoso: find_possible_candidates was really an internal-ish thing that I never expected to become public API anyway, but yes, we could rename it. 14:01
devin: The subway was vaguely useful too.
But quite limited in coverage.
14:03 FCO joined
pugs_svn r28284 | ruoso++ | [spec/S06] add a section for Introspection, with three proposed methods... 14:04
ruoso jnthn, ^^
rakudo: my $a = Multi.new; $a.push(sub (1,2,3) { }); $a.push(sub (1,2) { }); say $a.signature 14:05
p6eval rakudo 4b141a: OUTPUT«No signature found␤␤»
ruoso TimToady, you probably want to take a look at the change I made in S06 14:06
masak rakudo: 3, 14:12
p6eval rakudo 4b141a: OUTPUT«No result object␤in Main (src/gen_setting.pm:2815)␤»
masak was this ever reported?
finanalyst rakudo: my $y=3; for ^$y { .say }; my %x=<a b c> Z 1,3,3; $y = %x.delete('b'); say 'new ' ~ $y; for ^$y { .say }
p6eval rakudo 4b141a: OUTPUT«0␤1␤2␤new 3␤0␤» 14:13
masak submits rakudobug
finanalyst masak: is there any reason the second ^$y should not be a range? 14:14
masak finanalyst: don't think so. 14:15
finanalyst so this is a bug?
masak rakudo: my %x=<a b c> Z 1,3,3; my $y = %x.delete('b'); say $y.WHAT;
p6eval rakudo 4b141a: OUTPUT«Array()␤»
14:15 agentzh joined
masak rakudo: my %x=<a b c> Z 1,3,3; my $y = %x.delete('b'); say (^$y).WHAT; 14:15
p6eval rakudo 4b141a: OUTPUT«Range()␤» 14:16
ruoso there has been a recent spec change in that respect, hasn't it?
masak rakudo: my %x=<a b c> Z 1,3,3; my $y = %x.delete('b'); say (^$y).perl;
p6eval rakudo 4b141a: OUTPUT«0..^1␤»
masak ah.
it's an empty range.
I don't know whether it's a bug or not.
finanalyst rakudo: my %x=<a b c> Z 1,3,3; my $y = %x.delete('b'); say $y 14:17
p6eval rakudo 4b141a: OUTPUT«3␤»
finanalyst so what changes?
masak finanalyst: it looks like a number when printed, but it's an Array.
see above.
finanalyst should it be an Array? 14:18
masak that's the 1M$ question.
carlin JimmyZ++ # following up that bug that I never bothered too ... I should probably do something about the others
finanalyst rakudo: my %x=<a b c> Z 1,3,3; my $y = + %x.delete('b'); say $y.WHAT 14:19
Tene rakudo: $*msg = "O HAI"; say $*msg;
p6eval rakudo 4b141a: OUTPUT«Num()␤»
rakudo 4b141a: OUTPUT«Contextual $*msg not found␤␤»
carlin rakudo: my $socket = IO::Socket::INET.socket(2,1,6); $socket.bind('127.0.0.1', 4242); $socket.listen(); $socket.recv(); while $socket.accept() {}; 14:20
p6eval rakudo 4b141a: OUTPUT«Null PMC access in get_bool()␤in Main (/tmp/RDL9C5b1po:2)␤»
14:20 agentzh2 joined
finanalyst my %x=<a b c> Z 1,3,3; $y = %x.delete('b'); say 'new ' ~ $y; for ^+$y { .say } 14:20
carlin Known?
14:20 SmokeMachine left
masak carlin: probably not. feel free to report it. 14:20
finanalyst rakudo: my %x=<a b c> Z 1,3,3; $y = %x.delete('b'); say 'new ' ~ $y; for ^+$y { .say }
p6eval rakudo 4b141a: OUTPUT«Symbol '$y' not predeclared in <anonymous> (/tmp/KpGhPVjw0s:2)␤in Main (src/gen_setting.pm:3469)␤» 14:21
carlin masak: Okay, sure :)
finanalyst rakudo: my %x=<a b c> Z 1,3,3; my $y = %x.delete('b'); say 'new ' ~ $y; for ^+$y { .say }
carlin How about ...
p6eval rakudo 4b141a: OUTPUT«new 3␤0␤»
carlin rakudo: grammar foo { rule TOP { 'lorem' | <.panic> }; method panic { die "The sky is falling!"; }; }; foo.parse('blah');
p6eval rakudo 4b141a: OUTPUT«Null PMC access in find_method()␤in method foo::panic (/tmp/DbgEqS8ZnV:2)␤called from regex foo::TOP (/tmp/DbgEqS8ZnV:2)␤called from Main (/tmp/DbgEqS8ZnV:2)␤»
14:21 finanalyst left
masak carlin: never seen it before. that's two, way to go! carlin++ 14:21
package them up nicely and send them to RT. 14:22
carlin Right-e-o. One more, not sure what is supposed to happen here
jnthn yeah, I hate it when people package bugs up carelessly 14:23
:-)
carlin rakudo: class Alpha { has $!beta; method gamma { my $!beta = 'omega'; while $!beta { say 'Delta'; }; }; }; my $a = Alpha.new; $a.gamma;
p6eval rakudo 4b141a: ( no output )
carlin Or even 14:24
masak my $!beta; o_O
carlin rakudo: class Alpha { has $!beta; method gamma { $!beta = 'omega'; say $!beta; }; }; my $alpha = Alpha.new(beta => 'delta'); $alpha.gamma;
p6eval rakudo 4b141a: OUTPUT«omega␤»
masak carlin: that last one looks fine by me. 14:25
carlin rakudo: class Foo { method bar { my $!baz = 'lorem'; say $!baz; }; }; Foo.bar;
p6eval rakudo 4b141a: OUTPUT«No such attribute '$!baz'␤in method Foo::bar (/tmp/VN8Cw2TD55:2)␤called from Main (/tmp/VN8Cw2TD55:2)␤»
masak I don't think 'my $!attr;' should be allowed in methods.
carlin Yeah, rakudo just silently ignores it 14:26
masak maybe that can be submitted as a ticket.
carlin Oh and 14:28
my $s = IO::Socket::INET.new; $s.open('127.0.0.1', 123456); $s.send('foo'); say "Lorem ipsum"; # try it from the REPL, evalbot seems to handle it 14:29
rakudo: my $s = IO::Socket::INET.new; $s.open('127.0.0.1', 123456); $s.send('foo'); say "Lorem ipsum"; # try it from the REPL, evalbot seems to handle it
p6eval rakudo 4b141a: OUTPUT«Lorem ipsum␤»
14:32 sm^^^ joined
carlin here the REPL silently exits 14:35
14:37 agentzh left 14:40 Psyche^ joined 14:41 sm` left 14:43 nihiliad joined, carlin left
mberends masak: er, projects.state will store metadata about projects that proto has worked with locally, and which cannot be obtained from the project files themselves. It is formatted like projects.list so that the same routines handle reading and writing. The possible values of state are to be laid down by a specially convened bikeshed meeting. 14:44
14:44 riffraff joined
masak oki. 14:44
moritz_ mberends++ # 'specially convened bikeshed meeting'
14:45 kidd_ joined
masak as long as proto itself can be installed, I'm fine with that. 14:45
mberends ...but never uninstalled 14:46
masak :) 14:47
mberends never thought about installing proto itself ;) 14:49
masak hm, as soon as I said it I started questioning whether it's that important... 14:50
I think I'm getting too attached to proto. I shouldn't let that happen.
14:51 TiMBuS left
mberends raps masak over the knuckles 14:52
masak whimpers
Matt-W throws custard
masak o_O 14:53
mberends yum!
masak sigh, someone re-Tweeted the Perl 6/DNF joke. :(
mberends don't let them bait you
masak mberends: i.e. don't reply at all, just let them be? 14:54
14:54 __ash__ joined
mberends yeah, they may be out to taunt you 14:54
14:54 KyleHa joined, __ash__ left
mberends isn't really paranoid, they really _are_ out to get us 14:55
masak mberends: I've had that thought too. it's something Heisenbergian over it all: if I and others start a grassroots drive to defend/hype Perl 6 on Twitter, then people might catch on and try to actively taunt us. 14:56
mberends :)
14:57 jan__ left, Patterner left, Psyche^ is now known as Patterner
masak but there are a couple of successes already. I especially like the "eeew, Perl 6 has hyphens in identifiers" guy. 14:57
TimToady maybe I should get quietfanatic to rename is gaming platform to DNF...
*his
masak I replied "it's got apostrpohies too :)"
and the guy actually sent a nice tweet back, saying "thanks! apostrophes, eh... well i suppose one benefit is that perl poetry will look more like english ;)" 14:58
Matt-W Does it?
I thought apostrophes were gone...
TimToady usually the best approach is something self-deprecating and aikidoish, unless the best approach is to ignore it :)
masak rakudo: my $ka'pla = 42; say "Alive!"
p6eval rakudo 4b141a: OUTPUT«Alive!␤» 14:59
TimToady apostrophes as :: is gone
it's just part of the name
14:59 sri_kraih_ joined
Matt-W aaah okay 14:59
Getting my wires crossed
TimToady std: $ain't
p6eval std 28284: OUTPUT«Potential difficulties:␤ Variable $ain't is not predeclared at /tmp/TnwknAz8iq line 1:␤------> $ain't⏏<EOL>␤ok 00:02 37m␤»
Matt-W So I can call my variables $arthur's-weight
masak yup.
Matt-W woooooo
TimToady in both cases there must be a letter following
masak $arthur's-wizard
TimToady though people keep asking for trailing ' 15:00
masak but personally, I'd just go with $merlin.
15:00 Exodist joined
masak TimToady: don't cave in! :) 15:00
Matt-W I think trailing would be scary
However
Haskell programmers would love it
because they like calling functions things like f'
or they would, if Haskell would let them 15:01
they do in their research papers
Tene TimToady: aw, c'mon...
or should that be: cmon'
Matt-W no it should be c'mon 15:02
TimToady I wish I knew what I was doin'
Matt-W you can't respell things just to make a point
unless it's about spelling, I suppose
15:02 justatheory joined
Matt-W suddenly feeling quite keen on the idea of being able to say sub f'() { } 15:02
this is probably an evil urge and should be dealt with at once 15:03
mdxi there's also nothing to contract there :)
15:03 hanekomu left
TimToady it's short for ", no, the other one" 15:03
Tene ♪ I've got a theory... ♪
15:05 sri_kraih__ joined
Matt-W Tene: no, it's not a dancing demon 15:05
Tene Yeah, something isn't right there. 15:06
mdxi geh, can you imagine if, because of the apostrophe which represents the elision of the terminal G in many English words, people started putting them after words which actually *end* in an N, the way they seem to have decided that the genitive apostrophe-S actually means "WARNING: AN S IS APPROACHING!"
Tene ...
mdxi now i'm depressed
Tene Me too. 15:07
sjohnson pats both you guys on the back
there there
masak :)
15:07 agentzh joined
Matt-W haha 15:08
I tweeted about apostrophes in identifiers
TimToady hugme: hug mdxi
hugme hugs mdxi
Matt-W a friend replies that's nothing, you can have spaces in PHP identifiers... although you probably shouldn't 15:09
masak moritz_++ # perlgeek.de/blog-en/perl-6/when-we-...wrong.html
Matt-W -> singing lesson &
moritz_ thanks
masak: it seems you're quite a bit behind with your bagblogging ;-)
masak moritz_: oh, you have no idea. :( 15:10
moritz_: it's been a week since I opened my feed reader. I'll _get_ to these tabs in little over two months.
15:10 riffraff left
masak yup, I'm a packrat. 15:10
moritz_ Rat.pack('I2') 15:11
15:12 agentzh left, agentzh1 joined
diakopter std: my $_'_ 15:14
p6eval std 28284: OUTPUT«ok 00:02 37m␤»
TimToady std: my $_-_-_-_-_-_-_-_-_-_-_-_ 15:15
p6eval std 28284: OUTPUT«ok 00:02 37m␤»
Juerd Is _ considered alphanumeric or has the spec changed? 15:16
diakopter yes?
Juerd Or have I remembered it wrong :)
moritz_ _ is alphanumeric 15:17
masak strange, but true.
15:18 sri_kraih left, sri_kraih__ is now known as sri_kraih
Juerd Is it alpha or number? :) 15:18
masak alpha, methinks. 15:19
good news! spectesting only took 71 minutes today. 15:20
masak goes home to prepare for tonight's pancake party 15:21
o/
15:21 masak left
diakopter >o 15:21
moritz_ pancakes++ 15:22
sjohnson pancakes? 15:24
heh
i hate it when people criticize me for eating pancakes at night
they looked at me like they wanted to burn me at the stake
TimToady sjohnson: call them Swedish Pancakes and then it's perfectly acceptable 15:25
devin it's always morning somewhere
15:25 agentzh2 left
TimToady or if they're round pancakes, call them ebelskivers 15:25
s/round/spherical
sjohnson heh 15:27
15:33 zpmorgan joined, ejs2 left 15:36 sri_kraih_ left 15:39 pdcawley left
mdxi pancakes are *always* acceptible, as are waffles 15:41
TimToady mdxi: except for those of us who are allergic to them... 15:43
15:44 M_o_C left
mdxi i was thinking within a social context, not a medical one -- my apologies 15:44
TimToady 'sokay, I believe in context sensitivity :) 15:46
half my jokes come from taking things out of context
15:46 desertm4x_ joined
sjohnson postpones the surprise pancake party 15:46
15:46 desertm4x left 15:51 mofino joined 15:53 snearch joined 15:56 agentzh joined, agentzh1 left 16:07 agentzh left, agentzh joined 16:14 ejs joined 16:18 azawawi joined
araujo didn't know TimToady told jokes 16:20
azawawi hi 16:21
phenny azawawi: 10:19Z <moritz_> tell azawawi I think Moose is fixed now on feather1
azawawi moritz_: thank you
moritz_++
moritz_: ping
pugs_svn r28285 | lwall++ | [viv] always assume --pos, make args entries for diakopter++ 16:23
16:23 Exodist left 16:25 cmv left
diakopter whee 16:28
sjohnson hey
diakopter hey 16:30
diakopter retweets my own tweet 16:31
16:34 donaldh left 16:36 ejs1 joined, ejs1 left 16:37 jan_ joined
moritz_ azawawi: pong 16:39
16:39 [particle] left
azawawi moritz_: i nearly finished my Six win32 updater for Padre::Plugin::Perl6 :) 16:40
moritz_ what does it do? 16:41
azawawi moritz_: with it you can select rakudo's release that you need to play with...
moritz_: and it downloads it and installs it to c:\strawberry\six...
moritz_ nice
azawawi moritz_: i need your help about a couple of things regarding seattle's announcement 16:42
moritz_ shoot
azawawi moritz_: '=$handle' is deprecated in favor of '$handle.get' (one line), do rakudo actually output a warning that it is deprecated? 16:43
moritz_: do/does
moritz_ rakudo: say =$*IN
p6eval rakudo 4b141a: OUTPUT«prefix:<=> has been superseded by $handle.lines and $handle.get␤in Main (/tmp/na5RKIPFbF:2)␤»
sjohnson just told my boss that i am starting to hate my job and life because anything that isn't Perl is not fun to program in
moritz_ sjohnson: what did he say? 16:44
16:44 stephenlb joined
sjohnson he seemed to tell i wasn't happy at work 16:44
he might let me go, which would cause a dire catastrophe in my life 16:45
is it okay to hate javascript?
diakopter no
sjohnson i am wondering if i am the only one, and soemthing is wrong with me
diakopter :)
TimToady you should program JS using Perl 6, is all...
diakopter or vice versa.
azawawi std: say =$*IN; 16:46
TimToady which is what diakopter is workin on at the moment
p6eval std 28285: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix = instead at /tmp/0sjFtIcjgW line 1:␤------> say =⏏$*IN;␤FAILED 00:02 37m␤»
diakopter and fglock
sjohnson i wonder if i should phon a suicide hotline
phone*
they probably wouldn't understand my complaint
TimToady if you're thinking suicidal thoughts, then yes
if you're on antidepressants, you should call your doctor and talk about it 16:47
sjohnson ahh i would never kill myself, just get pretty bummed out from time to time 16:48
TimToady if you're simply *unhappy*, then probably not
16:48 _jaldhar left
sjohnson having to work with PHP and javascript 90% of the day, everyday 16:48
TimToady it's quite possible to be unhappy without being clinically depressed
azawawi moritz_: perfect, now i have a couple of examples regarding Six updater 16:49
moritz_: thanks, moritz_++
TimToady it's also quite possible to be clinically depressed and blame it on your unhappiness :)
mofino sjohnson, at least you have that, you could be stuck with a lifetime of manual labour
not that there is anything wrong with manual labour...
huf i beg to differ
sjohnson true, i did that a lot in highschool
diakopter sjohnson: let's get to the bottom of your JS hatred. :) What about JS gets to you? I suspect there's a way to Perlify it...? 16:50
sjohnson got paid dick all and was made fun of all the time for being smarter than them :)
mberends perldoc Timer::Hires
sjohnson things like declaring $string = '';
to instantiate a string
mberends er, wrong window :|
sjohnson and forgetting to do that, and everything hanging if i do a += opperand
variables being null when passed by functions having to always be "babysitted" 16:51
in the functions themselves
mofino doesn't sound so horrendeous 16:52
diakopter anything else?
16:52 azawawi left
mdxi sjohnson: have you thought of something like shunting yourself sideways a little, like starting a test suite for your javascript codebase? becoming the Testing Guru or something like that? 16:52
pugs_svn r28286 | moritz++ | [new perl6.org] design fixes; more camlia goodness
sjohnson window.top.window. type scoping calls 16:53
mdxi sjohnson: and are you using a tool like firebug to help with the debugging?
sjohnson yes, i also hate firebug
pugs_svn r28287 | moritz++ | [new perl6.org] added images, and index.html
diakopter sjohnson: me 2
mdxi nevermind that, then :)
sjohnson trying to edit CSS properties in firebugs from its interface is like pulling teeth
diakopter sjohnson: do you use a Windows machine?
sjohnson yes, windows XP
diakopter have you tried IE8's JS debugger? it's *many* times faster than firebug, and much much easier to navigate imho. 16:54
sjohnson interesting...
does it come with IE8?
diakopter yeah
hit F12
pugs_svn r28288 | moritz++ | [new perl6.org] fix link 16:55
diakopter the function call profiler with it is also excellent
moritz_ what I don't like about js is that new blocks don't introduce new scopes
diakopter every time I try to use the JS "dev tools" in Safari, Chrome, or Firefox, I'm severely disappointed by breakage, ugliness, and slowness, and end up going back to IE8's debugger. 16:56
but I keep giving the latest builds' another chance every week or two 16:57
:)
mdxi (opera has one now, too, called dragonfly. don't know anything about its quality or workings though)
diakopter builds no trailing apostrophe
well, maybe trailing apostrophe with implied "dev tools"
moritz_
.oO( trailing catastrophy )
sjohnson diakopter: will try 16:58
moritz_ sandbox.rakudo.de/ (early) preview of the new perl6.org site
sjohnson firebug's clunkyness definitely was part of my JS rant
diakopter mdxi: I haven't tried Opera's... thanks for the reminder about it. 16:59
TimToady moritz_: nice. maybe the MORE links should be white 17:03
and possibly right justified 17:04
or centered
sjohnson TimToady: do you like any other languages besides Perl?
TimToady English is pretty okay 17:05
Japanese is kinda fun
moritz_ TimToady: I'll see how that looks 17:06
sjohnson i like Japanese a lot too
it's "cute"
diakopter I tried speaking in tongues once, but I glossed over its lexicon too quickly. 17:07
araujo thinks japanese girls are cute too 17:09
mdxi moritz_: nice. i like the splitting-out of things 17:10
17:10 cdarroch joined
pugs_svn r28289 | moritz++ | [new perl6.org] make the box headings link to the sub pages 17:12
moritz_ mdxi: thanks
sjohnson pugs_svn's + sign is cute
:)
moritz_ I'm not sure what to do with the download box
17:13 alexn_org left, ChanServ sets mode: +o pugs_svn 17:14 syntheticore joined
moritz_ I hope you looked at the sub pages too (only some of them exist right now) 17:14
17:15 [particle] joined 17:16 M_o_C joined
mdxi i did 17:16
17:17 syntheticore left
pugs_svn r28290 | moritz++ | [new perl6.org] center the »MORE« links, make them white. TimToady++ 17:20
17:20 syntheticore joined, moritz_ sets mode: -o pugs_svn 17:21 moritz_ sets mode: +v pugs_svn 17:23 syntheticore left
TimToady moritz_: no fun :) 17:25
17:26 syntheticore joined
moritz_ TimToady: I know :( 17:26
ruoso TimToady, I know you probably saw it already... but I've made some changes in S06 that need your review.... 17:28
17:30 syntheticore left
moritz_ ruoso: the bindability check can already be made with smart matching against .signature 17:30
ruoso moritz_, it's a bit more than that... it's about getting the list of possible candidates 17:31
ruoso assuming moritz_ was talking about .cando($capture) 17:32
diakopter rakudo: say(eval('blahblah')); say('hi'); 17:33
p6eval rakudo 4b141a: OUTPUT«␤hi␤»
ruoso one thing that should be noted is that the API is the same for only vs multi routines...
17:38 rfordinal3643 left
chturne Apologies if this is a FAQ, but where is the help needed at the moment in Perl 6? 17:38
(Or, wheres a good place to start)
TimToady chturne: well, here on irc, and perl6.org, and all the links you find there 17:41
are you familiar with Perl 5?
chturne Yes 17:42
17:43 alexn_org joined
chturne Ah, I didn't see that link before. I guess a good starting place would be to write lots of Perl 6 code then! And file good bug reports :D 17:43
TimToady then perlgeek.de/blog-en/perl-5-to-6/ is useful as a bootstrap
chturne: yes, real code finding real bugs is The Best 17:44
chturne Thanks TimToady.
TimToady chturne: note, on the perl-5-to-6 link, you want to visit in the order down on the left margin 17:46
since it bloggily comes up in reverse order
chturne Heh, yes, it start looking weird quickly before I figured that out! 17:47
17:47 jrtayloriv left 17:55 rfordinal joined 17:56 agentzh left
pugs_svn r28291 | lwall++ | [STD] revise LTA message on $x<10 18:03
r28291 | [Cursor] provide reliable way of resetting position before panic
18:04 timbunce joined
Tene HI TIM 18:06
TimToady almost types /kick
Tene who's being kicked? 18:07
TimToady sorry, just a C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[Cstartle reflex when someone shouts 18:09
o.O 18:10
Tene o.O
huf that's an odd reflex there
TimToady O.o
huf and who took my fork!
Tene Hmm. Apparently you are startled.
timbunce Has any thought been given to teaching the ohloh.net code scanner how to recognize perl6 code? 18:11
TimToady universal negatives are difficult
timbunce um, how about has it been discussed? 18:12
TimToady not that I know of
(difficult to prove, but not difficult to disprove) 18:13
Tene TimToady: should closures and subs be printable?
TimToady (except for the part about finding the disproof....)
Tene: I'd think the default should be yes, though exactly what you mean by "closure" is subject to ambiguity 18:14
we can certainly get at the original code, at least until it's thrown away
but I suspect that throwing away the source code will not be default, is what I mean 18:15
Tene What do you think about: sub f ($a, $b) { say $a, $b }; my $c = &f.assuming(5); say $c;
TimToady however, a real closure is also all the lexical state it captures around it
18:16 jauaor joined
jauaor :) 18:16
18:16 alexn_org left
timbunce In the hope I can tickle someone into contributing a perl6 recognizer for ohloh, the project page is sourceforge.net/apps/trac/ohcount/ 18:17
TimToady well, there's always (sub f ($a, $b) { say $a, $b }).assuming(5) 18:18
or some such
Tene Eh, true.
TimToady but one would perhaps like the simplified form
which you could also do for closures with known bindings, presumably
it's just a matter of traversing the AST and doing all the substitutions in the right order :) 18:19
easy...
Tene Would "-> $b { say 5, $b }" be valid?
TimToady I'd think something like that would be okay 18:20
Tene Hmm. Okay.
TimToady likewise if $a had been in the outer lexical scope instead of a param
well, except for the rw-ness of $a 18:21
hmm
if we lose the container identity it could be problematic
Tene Well, it's probably relevant to ask what the purpose of stringification is. Is it just to provide information to the programmer? an attempt at serialization?
TimToady I'm thinking that, at least within a process, we have a way of designating a particular lexical scope frame with an opaque (autogenned?) designator 18:23
so you'd end up with -> $b { say SOMEMAGICdeadbeef::<$a>, $b } for the lexical $a
Tene Hmm. That doesn't seem like it would be particularly useful for serialization or for the programmer... 18:24
TimToady and serializing that would probably assume some kind of snapshot of the current value
it's potentially useful to distinguish two different $a values in the debugger 18:25
if you see that deadbeef isn't hte same as deadface
Tene although, should ~ and .perl() of &c be different? 18:26
are there implied different purposes for those?
TimToady there's no guarantee that ~ has to be parseable
merely human readable
it's okay for ~ to be ambiguous for non-essential details, for instance 18:27
~%hash is ambiguous if keys or values contain tab, for instance
Tene So, for example, ~ could have '5' and .perl could have deadface::
TimToady yeah 18:28
Tene Okay. :) 18:29
18:29 timbunce left
muixirt hmm ... Arrays are lists of data of the same type that are indexed by number? 18:33
TimToady where "same type" is often just Object 18:34
jauaor wonders if there is a way to induce his former employer to use perl6 :P 18:35
TimToady yes, but it might take a few more years 18:36
has something to do with world domination first
jauaor haha
TimToady: former employer wants me to get into ruby
mmm....
18:37 stephenlb left
TimToady well, you could be a double agent, I suppose 18:38
muixirt "Arrays are lists of data objects that are indexed by number" would be a better explanation? 18:39
jauaor TimToady: haha
muixirt was looking at en.wikibooks.org/wiki/Perl_6_Progra...s_and_Data 18:44
TimToady it's probably wrong
cognominal TimToady, can MAD in Perl 5 can be used for syntactic highligting? How to get the output anyway? 18:46
TimToady it could, but you need to compile Perl 5 specially to get MADSKILLS 18:47
18:47 syntheticore joined
TimToady and it's slightly bitrotted 18:47
cognominal I recompiled it I just don't know how to use it. 18:48
colomon rakudo: given 1.5 { when 1..2 { say 'between one and two' }; say 'not'; }; 18:51
p6eval rakudo 4b141a: OUTPUT«between one and two␤»
mdxi heh :) 18:53
TimToady cognominal: offhand, I don't remember all the details, but you set PERL_MADSKILLS in the environment, and then a debug dump of some sort spits out raw mad xml
cognominal thx
TimToady which you run through nomad to move things around to sane locations on the tree 18:54
other than that, you'll have to look at the source code
I'm not sure how much it has mutated since I last looked at it
18:54 stephenlb joined
cognominal that's probably enough to get me started... 18:55
I see indeed to env vars PERL_XMLDUMP and PERL_MADSKILLS
TimToady most of the code can be found by greping for MAD or mad 18:56
the basic idea is that it modifies the actual Perl 5 tree as little as possible, just annotating all the places where Perl lied to itself
nomad is what does the "unlying" 18:57
colomon rakudo: given 1.5 { when Range.new(from => 1, to => 2, by => 1/3) { say 'between one and two' }; say 'not'; };
p6eval rakudo 4b141a: OUTPUT«between one and two␤»
cognominal The lexer lies a lot, I have read toke.c a long time a go
18:58 M_o_C left
colomon rakudo: say Range.new(from => 1, to => 2, by => 1/3).list.perl 18:58
TimToady the parser also lies to itself :)
p6eval rakudo 4b141a: OUTPUT«[1, 2]␤»
TimToady gah, how did it get to be lunch time already?!? 19:01
19:02 integral left 19:03 kidd_ left 19:04 sm^^^ left 19:06 sri_kraih_ joined 19:07 sri_kraih_ left 19:10 ejs1 joined, sri_kraih_ joined, ejs1 left
pugs_svn r28292 | diakopter++ | [vijs] implement Concatenation, Comma; generalize .args calling convention 19:11
19:11 integral joined 19:14 kidd_ joined
diakopter vijs: say 'howdy ' ~ 'world' 19:18
p6eval vijs 28291: OUTPUT«howdy world␤␤ time in interpreter: 0.045004 s␤»
diakopter vijs: say 'Meesa ' ~ '»ö«' 19:19
p6eval vijs 28291: OUTPUT«Meesa »ö«␤␤ time in interpreter: 0.044941 s␤»
muixirt vijs?
diakopter 6js
this little Perl 6 interpreter I'm toying 19:20
cognominal written in javascript?
diakopter yeah
uses TimToady's STD parser in Perl 5, which is linked to Google's V8 JS VM 19:21
muixirt sounds complicated 19:22
cognominal in what format is the STD parse tree? I guess I have already asked, by my memory is volatile
diakopter there's a YAML emitter and a "JSON" (not really JSON, but JS) emitter I wrote... 19:23
cognominal Perl 6 in a browser is definitively yhe way to
diakopter but viv (6->5) uses the VAST system to construct/post-process it 19:24
cognominal your stuff is in the pugs repository?
19:24 iblechbot joined
diakopter yeah; see perlcabal.org/svn/pugs/revision/?rev=28292 for hints 19:25
19:27 justatheory left
cognominal the V8 source is independent of chrome? 19:27
diakopter yep; see perlcabal.org/svn/pugs/view/src/perl6/js/README it builds with gcc on several platforms/architectures 19:28
also msvc++
19:28 sri_kraih left, sri_kraih_ is now known as sri_kraih
diakopter sorry g++ 19:28
cognominal why the python requirement? 19:29
diakopter v8 uses scons to build..
cognominal that's like the cons a make in Perl I read in TPJ a long time ago? 19:30
syntheticore rakudo: class Bar { 19:31
has %!foo;
method blub {
%!foo = { 1 => 2, 3 => 4 };
say "init";
phenny syntheticore: 04 Sep 02:28Z <TimToady> tell syntheticore sets should be defined in terms of === so that sets of objects work; === should autothread; === is defined as $x.WHICH eqv $y.WHICH to compare identity
syntheticore say %!foo.{1};
p6eval rakudo 4b141a: OUTPUT«Unable to parse block; couldn't find final '}' at line 2, near ""␤in Main (src/gen_setting.pm:3469)␤»
syntheticore }
method postcircumfix:<{ }> ( $key ) {
say "postcircumfix";
say %!foo.perl;
}
}
Bar.new.blub;
diakopter oo
cognominal: I don't know 19:32
syntheticore can somebody tell me why the above doesn work? 19:33
diakopter on irc? b/c it's more than 1 line
19:33 ejs left
syntheticore <{}> gets called after init and i get this: No such attribute '%!foo' 19:33
sorry 19:34
diakopter try paste.lisp.org/new/perl6
19:35 azawawi joined
azawawi hi 19:35
syntheticore thnx
azawawi moritz_: here is the final thing feather.perl6.nl/~azawawi/six_updater.png , I am going to blog about it in the morning. 19:36
19:39 finanalyst joined
lisppaste3 syntheticore pasted "wrong postcircumfix method called?" at paste.lisp.org/display/87292 19:39
19:43 syntheticore left, syntheticore joined 19:52 azawawi left 19:56 snearch left 19:58 molaf left 20:02 takadonet left 20:11 sri_kraih left 20:20 dakkar left
TimToady syntheticore: you call it as %!foo.{}, which is not the same as self.{} 20:22
syntheticore TimToady: exactly 20:23
so I think my own implementation of {} shouldn't even be called, as I mean the Hash method with this 20:24
TimToady I agree
syntheticore nice ;) 20:25
moritz_ [email@hidden.address] for bug reports
TimToady oh, wait...
moritz_ hasn't really been paying attention
syntheticore so how can I work around this for the moment? Not use the operator at all?
TimToady %!foo()() should work 20:26
er, try %!foo().{}
nope, but at least a different error 20:27
syntheticore => invoke() not implemented in class 'Hash'
TimToady well, at least we know it knows it's a Hash now... 20:28
syntheticore say $!foo.perl in the postcircumfix method also fails with "No such attribute '%!foo'"
so it seems the operator is not seen as a real method right now 20:29
20:30 cmv joined
TimToady well, it's simply dispatching to the wrong routine somehow 20:30
syntheticore ok, I guess I'll just use a regular method instead for now 20:32
TimToady if you declare $self explicilty as Bar it just fails when it calls the wrong routine 20:33
oh, here's sort of a workaround 20:34
make it: class Bar does Associative {...}
you get a warning, but the right answer
20:35 ruoso left
syntheticore hmm, doesn't work for me.. 20:37
same result
incidentally, the real code where this happens already uses "does Associative" 20:38
TimToady oh, I also have it %!foo{1} without hte . 20:39
strange
it's possible that it's getting mixed up with %!foo() notation somehow too 20:40
but it'll probably take jnthn++ or pmichaud++ to chase it down
in any case, definitely a bug 20:41
syntheticore yeah, I'm getting that feeling too ;)
TimToady syntheticore++
syntheticore another question: How is the syntax for set operations supposed to work: && and ||, AND and OR, something entirely different? 20:42
20:44 zerhash joined 20:45 finanalyst left 20:47 DiegoAltheman joined 20:48 stephenlb left
TimToady pugs/ext/Set/lib/Set.pm seems to have some notions about that, though maybe we'd have ASCII workarounds for the Unicode challenged 20:51
I think we'd also at one time discussed (+) (*) (-) and such as ASCII set op 20:52
ops 20:53
20:58 muixirt left
syntheticore thanks, I'll have a look at that tomorrow, have to leave now unfortunately 21:00
21:05 syntheticore left 21:07 arthur-_ left, arthur-- joined, DiegoAltheman left 21:09 Woodi joined 21:40 zerhash left 21:43 jrtayloriv joined 21:48 chturne left 21:52 justatheory joined, KyleHa left 21:53 zerhash joined 21:54 Whiteknight joined, pmurias left 22:07 iblechbot left 22:08 stephenlb joined 22:13 nihiliad left 22:17 stephenlb left 22:31 cdarroch left 22:37 meppl left 22:46 kidd_ left 23:24 frew__ joined 23:32 sri_kraih joined
diakopter would anyone like to write a test driver/harness against the spectests for vijs? 23:41
23:42 M_o_C joined 23:44 avar left 23:45 avar joined 23:46 desertm4x__ joined 23:50 cmv left 23:54 desertm4x_ left 23:56 FCO left