»ö« | perl6-projects.org/ | evalbot: 'perl6: say 3;' | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moritz_ on 17 June 2009.
00:01 Caelum left 00:04 lichtkind left, DemoFreak left 00:05 Caelum joined 00:14 tann_ joined, tann left 00:21 bacek left 00:22 frew joined 00:27 s1n1 joined 00:46 mikehh left
amoc eval: say 'may i test' 01:18
rakudo: say 'again'
p6eval rakudo 1b06df: OUTPUT«again␤»
amoc rakudo: say 'again 2'
p6eval rakudo 1b06df: OUTPUT«again 2␤»
01:21 kst left 01:22 kst joined 01:27 agentzh left 01:31 cotto left 01:38 netfish joined 01:42 twigil joined 01:47 mycelium joined 01:49 molaf_xx joined, synth joined 01:51 molaf_x left 01:56 payload left 02:02 dukeleto joined 02:04 amoc left 02:07 amoc joined 02:08 jonathanturner joined 02:11 agentzh joined 02:34 amoc__ joined 02:35 amoc__ is now known as am0c 02:44 amoc left 02:45 tann_ left 02:48 ihrd left, cotto joined 02:52 am0c left, amoc joined 02:53 cotto left 02:57 kst left 02:58 kst joined 03:01 meppl joined 03:07 azawawi joined
azawawi hi 03:07
phenny azawawi: 21 Jun 21:07Z <japhb> tell azawawi In ahmadzawawi.blogspot.com/2009/06/pa...ptic.html, the last bullet point is incorrect: "Use of C++ constructor syntax (in Perl 6 new Foo should be written Foo->new)."
azawawi scratches his head
03:08 cotto joined 03:11 netfish left 03:13 frew left
Tene azawawi: wh? 03:14
eh?
03:16 agentzh left
azawawi Tene: what's wrong in my last bullet point in your opinion? 03:16
03:17 agentzh joined
Tene It should be Foo.new instead of Foo->new, yes? 03:17
azawawi lol 03:18
i just woke up
thanks
Tene can you quick fix it?
;)
03:20 donaldh left
azawawi done 03:20
03:20 donaldh joined
azawawi japhb: thanks. fixed :) 03:20
Tene: now it is time to continue creating quick fixes for more popular STD errors/warnings. 03:22
so once grok is ready, i think the process of tying STD error reporting to Perl 6 documentation would be very interesting. 03:28
03:29 frew joined 03:35 frew left 03:40 s1n1 left, justatheory left 03:42 meppuru joined, meppl left, meppuru is now known as meppl 03:44 alester joined
azawawi std: "abc" ~~ //; 03:56
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Null regex not allowed at /tmp/xAegvdquFJ line 1:␤------> "abc" ~~ //;␤FAILED 00:04 36m␤»
azawawi what's a good quick fix to null regex "abc" ~~ // ? 03:57
amoc rakudo: Block.does(Code).say 04:04
p6eval rakudo 1b06df: OUTPUT«1␤»
awwaiid azawawi, your nick is the closest to mine as any I've ever seen! 04:07
azawawi cool 04:08
Tene azawawi: why would someone try to match against //? 04:11
azawawi Tene: im going through all of STD's errors/warnings and im trying to find quick fixes for them 04:12
Tene: so if a user types a null //, what possible fixes is there? 04:13
Tene in Perl 5, // means "the most-recent successful match" 04:14
That doesn't exist in Perl 6, afaik.
04:14 twigil left
TimToady which is /<prior>/ 04:14
Tene Ah.
As a special case, // in 'split' means "split on every character"
japhb TimToady: Oh sure, have all the answers. 04:15
Tene so you could look to see if it's being used in 'split'
TimToady otherwise you want /<?>/ or some such
Tene and suggest '' as an alternate
TimToady '' works in split
Tene can you check for 'split' in your quick fix thing?
04:16 twigil joined
azawawi Tene: only if std warns/panics about it atm 04:16
TimToady: i cannot replicate "Precedence too loose within ??!!; use ??()!! instead ". my Perl $foo is weak :) 04:18
04:20 kst left 04:21 kst joined
azawawi Tene: anything that generates warnings/errors can be a possible source for quick fixes (like PerlCritic for instance) 04:22
Tene compile time only, or runtime also?
azawawi Tene: currently, compile time. 04:24
Tene: but there is no reason not to extend it to runtime also (in debugging mode for instance)... 04:25
Tene: for instance we can quick fix a file that has trailing whitespace, hard tabs, inconsistent new lines,... 04:28
amoc rakudo: multi sub infix:<,> { ... } 04:33
p6eval rakudo 1b06df: ( no output )
amoc rakudo: multi sub infix:<,> { ... }; say "foooo~~" 04:34
p6eval rakudo 1b06df: ( no output )
azawawi moritz_: any idea how to find a regex for a Perl 6 identifier? 04:36
04:36 skids left
azawawi std: eval { }; 04:38
p6eval std 27168: OUTPUT«ok 00:02 36m␤»
azawawi TimToady: regarding eval { }; should STD warn about it? see S04-control, ...Perl 6's C<eval> function only evaluates strings, not blocks. 04:40
rakudo: eval { }
p6eval rakudo 1b06df: OUTPUT«Parameter type check failed on call to 'eval'.␤in Main (/tmp/dwbqAuIcXH:2)␤»
azawawi rakudo: eval { };
p6eval rakudo 1b06df: OUTPUT«Parameter type check failed on call to 'eval'.␤in Main (/tmp/VDG6FGmOnn:2)␤»
azawawi rakudo: eval "";
p6eval rakudo 1b06df: ( no output )
azawawi rakudo seems to handle it better 04:41
04:43 azawawi left 04:47 nihiliad left
eternaleye_ std: 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6; 04:48
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Precedence too loose within ??!!; use ??()!! instead at /tmp/SKCgZbyi2t line 1:␤------> 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6;␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix or meta-infix (with precedence tighter than item
..assignment)…
eternaleye_ phenny: tell azawawi std: 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6; # re Precedence too loose within ??!! 04:49
phenny eternaleye_: I'll pass that on when azawawi is around.
04:49 eternaleye_ is now known as eternaleye
eternaleye (grep'able backlogs)++ (postgres \o command)++ 04:50
amoc rakudo: 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6; 04:52
p6eval rakudo 1b06df: OUTPUT«Ternary error␤»
eternaleye rakudo: 42 ?? ( 1,2,3 Z 4,5,6 ) !! ( 1,2,3 X 4,5,6 ); 04:54
amoc rakudo: 1 ?? 1,2 !! 1,2
p6eval rakudo 1b06df: ( no output )
rakudo 1b06df: OUTPUT«Ternary error␤»
eternaleye rakudo: say( 1 ?? 1,2 !! 1,2 ) 04:55
p6eval rakudo 1b06df: OUTPUT«Ternary error␤»
eternaleye rakudo: say 42 ?? ( 1,2,3 Z 4,5,6 ) !! ( 1,2,3 X 4,5,6 );
p6eval rakudo 1b06df: OUTPUT«142536␤»
amoc "," has looser precedence then '??', '!!'. but it doesn't handle the error properly. 04:58
twigil can somebody help me with parrot? it says "parrot revision r39599 required" 05:00
amoc twigil: what are you trying to do? 05:01
if you are compiling rakudo, just type "perl ./Configure --gen-parrot" then "make". 05:03
twigil the problem is that the machine i'm doing it on doesn.t have a direct connection to the internet
maybe i should get the newest version from svn 05:07
Tene twigil: the issue is that the rakudo you have requires a newer parrot than you have 05:10
twigil Tene: thanks 05:11
05:27 alester left 05:34 finanalyst joined 05:36 jjore_ joined 05:37 jjore_ left 05:38 jjore_ joined 05:41 justatheory joined 05:46 twigil left 05:49 meppl left, twigil joined 05:52 justatheory left 06:01 wormphlegm left 06:06 kst left 06:07 kst joined 06:11 rfordinal left, rfordinal joined 06:32 pmurias joined 06:34 rfordinal left 06:40 user` joined 06:41 user` left
Matt-W eww 419 scam in RT 06:42
06:46 twigil left
moritz_ moved one to the spam queue, thanks 06:47
06:56 rfordinal joined, pmurias left 07:03 viklund joined, wayland76 joined, iblechbot joined
moritz_ rakudo: class A { }; say A.new() === A.new(); 07:04
p6eval rakudo 1b06df: OUTPUT«0␤»
moritz_ rakudo: class A { }; say A.new().WHAT === A.new().WHAT; 07:07
p6eval rakudo 1b06df: OUTPUT«1␤»
07:17 baest joined 07:20 donaldh left 07:21 donaldh joined 07:35 ejs joined 07:38 rfordinal left 07:40 beggars joined 07:42 azawawi joined
azawawi hello 07:42
phenny azawawi: 04:49Z <eternaleye_> tell azawawi std: 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6; # re Precedence too loose within ??!!
azawawi eternaleye: thx 07:43
std: 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6;
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Precedence too loose within ??!!; use ??()!! instead at /tmp/WKIVxdegxO line 1:␤------> 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6;␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix or meta-infix (with precedence tighter than item
..assignment)…
07:46 kst left, kst joined 07:47 DemoFreak joined 07:51 ejs left 07:52 barney joined
amoc azawawi: the error is the right behavior according to S03. but rakudo just dies. #66840 07:54
07:58 hanekomu joined, hanekomu left, eMaX joined 08:01 rfordinal joined, rfordinal left 08:02 azawawi left
eternaleye std: 1 ?? 1, 2 !! 3, 4; 08:03
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Precedence too loose within ??!!; use ??()!! instead at /tmp/Cnnizs0gTs line 1:␤------> 1 ?? 1, 2 !! 3, 4;␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix or meta-infix (with precedence tighter than item assignment)␤
.. infix stopper␤ po…
08:04 masak joined
eternaleye H H masak 08:04
O AI
masak ahoj, scurvy parrotcamels!
moritz_ oh hai 08:05
masak: I filled your role yesterday :-)
masak moritz_: I would expect nothing less. :) 08:06
moritz_: seems we'll have a second-ever #perl6-soc meeting on Wednesday 19:00 UCT, me and literal++.
moritz_ masak: I'll join, unless I forget it. Feel free to ping me on #perl6 08:07
masak goodie.
08:07 azawawi joined
masak I'll announce it shortly before, so others who might have forgotten can join, too. 08:07
azawawi masak: Hello captain :) 08:08
moritz_ masak++ 08:09
masak azawawi: I'm not the captain, just one of the first mates. :)
azawawi masak: so who's the captain here then? :)
masak azawawi: who could it be? :)
azawawi wonders :) 08:10
moritz_ perl6 is a fleet, not just a ship
masak an armada.
moritz_ obra_ used to be the admiral
azawawi the borg... :)
moritz_ TimToady, pmichaud, ruoso are certainly captains of their ships 08:11
azawawi so how can i match a perl 6 identifier in p5 regex correctly? 08:12
i need it to change new Foo-Bar::C to Foo-Bar::C.new
masak azawawi: is "identifier" here limited to namespaces?
azawawi masak: just a quick hack to get "Use Perl 6 constructor instead of C++'s" quick fix working correctly 08:13
masak is that a yes? :) 08:14
azawawi yeah
masak I'd imagine peeking in STD.pm and/or Rakudo's parser.pg might help here.
moritz_ tries: (?:pL|_)w*(?:(?=pL|_)['-'(?:pL|L)w*)*
masak o_O 08:15
azawawi that's really complicated :)
moritz_ sorry, (?:\pL|_)\w*(?:(?=\pL|_)['-](?:\pL|L)\w*)*
masak Perl 5 is scary... :/
at least use /x :P
azawawi it is easy to write it in Perl 6 :) 08:16
azawawi tries it...
masak is Pair parametrized like Hash? 08:17
moritz_ good question 08:18
08:21 beggars left
azawawi moritz_: thx and i think i need to extract that info from STD directly which would make it more robust and predictable than regex replacements 08:24
08:26 ejs joined
moritz_ :-) 08:26
masak I'm back to thinking about grok and about naming/classifying/storing things. 08:31
people are encouraged to help me think this through.
as an example, I'm trying to enumerate all instances of '+' in the Perl 6 grammar.
08:32 ejs left
masak there's the binary op, and the prefix (numifying) op... 08:32
azawawi masak: im thinking of going simple and adding topic labels/tags like in blogs...
08:32 ejs joined
masak azawawi: yes. that sounds right. I hope to be able to co-opt Pod to do that. 08:32
and then there's a postfix '+' in the grammar slang. 08:33
I don't know how the latter is classified.
STD.pm calls _something_ assertion:sym<+>. it might be that one.
no, wait. it's gotta be quantifier:sym<+>. 08:34
wonder what the assertion thing is.
azawawi masak: like i said going simple :) 08:35
masak yes, I'm all for simple too. that's my default design criterion. :)
08:36 zamolxes left
masak but I think using the grammatical categories of STD.pm would be a good way to label things. 08:36
we need to do that anyway, to separate the different forms of operators.
azawawi one thing while looking at STD, it does not go deeper than a literal; so it does not say this is a decimal_literal or a hex_literal... 08:38
moritz_: when will rakudo be able to run STD.pm? what is stopping it at the moment? 08:40
masak azawawi: I believe protoregexes is one big blocker.
STD.pm uses them liberally.
08:41 meppl joined
moritz_ and LTM 08:42
masak oh, right. 08:43
azawawi: I bet the Rakudo ROADMAP details the things missing quite well.
moritz_ btw 1) I compiled parrot and rakudo with clang on llvm. it works when configured --without-gmp, but a few tests fail 08:45
2) when I add Perl 6 multis of operators the setting, I get a Null PMC Acess in find_method 08:46
azawawi std: eval { }; 08:50
p6eval std 27168: OUTPUT«ok 00:02 36m␤»
azawawi rakudo: eval "this is right";
p6eval rakudo 1b06df: ( no output )
azawawi is eval a routine (part of the settings)? 08:51
masak azawawi: I sense a slight confusion of terminology in your question. 08:55
azawawi: eval is a sub AFAIK, and hence a routine.
azawawi: it's more common to talk about 'the setting' in singular, and I'm not sure it's specified what's part of it. by my understanding, that's up to individual implementations. 08:56
in the case of Rakudo, eval is not in the setting. 08:57
it's defined in src/builtins/control.pir
azawawi masak: you sensed right :) 08:58
masak (which, by the way, surprises me every time. I'd think a much likelier candidate would be src/builtins/eval.pir)
azawawi rakudo: eval { };
p6eval rakudo 1b06df: OUTPUT«Parameter type check failed on call to 'eval'.␤in Main (/tmp/lWAie5uf7g:2)␤»
moritz_ that's now written as try { ... }; 09:00
rakudo: multi eval(Int $a) { say $a}; eval 3; 09:01
p6eval rakudo 1b06df: ( no output )
azawawi i know but shouldnt STD/rakudo flag it as an error or something? 09:02
moritz_ azawawi: it's a run time error
azawawi moritz_: from S04, ...Perl 6's eval function only evaluates strings, not blocks
moritz_ which STD.pm doesn't handle in any way, and rakudo does ist (mostly) correctly
azawawi: right, that's why you gute a "Parameter type check" failure 09:03
azawawi: the parser doesn't know about eval, and doesn't have to
azawawi moritz: i get it
azawawi hits his forehead
moritz_ it seems today is the first day of YAPC::NA 09:06
09:06 eMaX left
masak moritz_++ # work on '...' operator 09:06
azawawi @karma 09:07
lambdabot You have a karma of 160
moritz_ masak: today I also tried to add multis for infix:<eqv> (which is already parsed), same failure
09:07 eMaX joined
masak @karma 09:07
lambdabot You have a karma of 224
moritz_ yapc10.org/yn2009/talk/2101 "Expect the unexpected." - like, a complete Perl 6 implementation? 09:08
masak moritz_: yes, multis are not quite there yet.
moritz_ it severly limits the usefulness of the setting, sadly 09:10
I think we've reached the point where most built-ins that can easily be written as subs and methods are already implemented 09:16
masak some kind of saturation. maybe.
moritz_ next should be operators (blocking on said error) and implementation types
masak a few things are eagerly awaiting laziness. :)
moritz_ I don't know what you need to get implementation types done 09:17
09:17 bsb joined
moritz_ masak: btw I saw your Druid+3D post. VeryB cool. 09:19
s/B//
masak :)
I should have done that long ago.
there's nothing especially tricky involved.
viklund wonders why S02 is so looong 09:20
moritz_ viklund_: because it explains the syntax, not just "bits and pieces" 09:21
masak maybe we should rename it.
S03, S05, and S06 are almost as long.
viklund I decided I should read all the synopses at least once 09:23
I'm halfway through S02 now
masak I did that when I was home for Christmas.
boy, have things happened since then. 09:24
I remember feeling a sincere urge to update S29 at the time.
that was before S32.
viklund ;)
masak I bet S32 is still incomplete, by the way.
viklund incomplete in what sense? 09:28
masak viklund: that things mentioned in the rest of the synopses are missing in S32.
that's only a feeling, though.
viklund ok, that's what I thought you meant
09:30 payload joined, viklund_ left 09:31 kst left 09:32 kst joined 09:35 viklund left 09:55 bacek joined 10:08 synth left 10:26 bacek left 10:30 bacek joined 10:42 Whiteknight joined 10:59 mizioumt joined
masak after the latest discussion on Str and Buf, can we say anything more about .pack and .unpack? 11:02
should .unpack only be defined on Buf?
moritz_ presumably, yes 11:03
and pack() should return a Buf
masak right.
11:03 b_jonas joined
masak could there be an .unpack() method on Str, if that Str knows how it was encoded, or if the encoding is provided as an argument? 11:04
11:04 aindilis left
moritz_ you mean one that does the same as $str.encode.unpack? 11:04
masak essentially, yes. 11:05
maybe that's overkill.
11:05 gabiruh left
moritz_ the more I think about Perl 6 design the more I regret that multi dispatch doesn't have to consider named arguments 11:05
they'd make some things so much neater
11:06 mycelium left
masak moritz_: I looked through STD today. seems it uses multi dispatch on named arguments. 11:07
moritz_ masak: have an example? 11:08
11:08 zpmorgan joined
masak moritz_: aye, the things starting at line 4809. 11:09
that's multiple declarations of the method 'tweak', each with a different named parameter.
moritz_ aye
masak (also, with a useless/inecplicable comment on top) 11:10
"begin tweaks" -- yes, I can see that.
moritz_ that might be for gimme5
masak oh.
it's definitely some kind of magic. 11:11
moritz_ TimToady: see discussion above. multi method tweak(:$named_param) (found in STD.pm:4809) is not a requirement for Perl 6 - is it some kind of temporary hack? 11:12
masak moritz_: your suspicion about gimme5 seems correct. on line 667 it matches against 'multi method tweak'. 11:13
moritz_ ok 11:14
b_jonas heh
I just found an old quote from this channel on irseek
moritz_ please share
b_jonas from 2007-01-27
"TimToady: cbstream.rb is the irc gateway that's feeding PerlMonks' chatterbox to #cbstream on freenode." 11:15
"TimToady: anyway, the implicit cbstream.rb challenge is at www.perlmonks.org/?node_id=596867"
"TimToady: seems like a good chance to see how async {...} works"
"TimToady: and, of course, to show how much prettier Perl 6 is... :)"
of course, since then it's become easier to write this kind of thing in perl5 because now Coro is more stable and there are three Coro-able http client modules, unlike when I started to write cbstream 11:16
I'm still unsure what language I shall use when I rewrite cbstream (it's a long-term plan only, vaporware) 11:17
probably whatever I fancy when I actually start rewriting it
araujo hpaste.org/fastcgi/hpaste.fcgi/view...6143#a6143 11:18
tiny stack based language i am working on
araujo just got quicksort working!
b_jonas how does that work?
araujo b_jonas, you mean?, the flow of the computation? 11:19
b_jonas no, the language
araujo oh
b_jonas what do those punctuation mean
araujo it is a stack based language
b_jonas the %% and &% and &
araujo right
it is what i call ... operator-message composition
b_jonas + appends two arrays, right?
araujo correct
11:20 donaldh left
araujo so, % is an operator that means 'dup' or duplicate the value in the stack 11:20
so
%%head means , dup dup head
& is swap
and so on
b_jonas oh
and what does the (<) o do? 11:21
11:21 iblechbot left
b_jonas wait, I think o is composition 11:21
araujo the language is what I call .. a stack based object oriented language
b_jonas and you push that function for filter?
araujo correct b_jonas !
b_jonas or something
araujo correct
b_jonas but what's bk then
araujo what i am about to explain 11:22
the language works with blocks
b_jonas oh, it's postscript-like
araujo like the smalltalk blocks
b_jonas so you can just use a constant
11:22 donaldh joined
araujo blocks are units of delayed computations 11:22
b_jonas and composing means making a function of two executable objects
makes sense
araujo right
:)
b_jonas funny
11:23 kst left, kst joined
b_jonas and how does the definition part works? is it the dot that assigns the function to the name qsort or something? 11:23
araujo blocks are kind of delayed computations delayed ... they are also the way to define 'functions' and stuff
correct b_jonas
qsort [ .... ] .
the [ ] is multi-line block 11:24
b_jonas does this still work if qsort already has the same value?
araujo the ( ) is single-line block
they are the same
b_jonas or so you have to quote qsort in that case?
hmm, [] and () is the same?
strange
araujo yeah, because of the nature of the language
well
[ ] is for multi-line 11:25
( ) single line
you can get that quicksort example in a single line with ( )
b_jonas so how do variables work?
11:26 lichtkind joined
araujo well, so far ... the language contains what i call links ... it links a stack to a specific name 11:26
b_jonas I don't really like this postscript-like execution when data can just stand in stead of code and is pushed
araujo i am mixing some ideas here, ideas from stack based languages and object-oriented languages 11:27
everything is an object, and the main object representation is a Stack
when you say something like:
qsort [ ] .
b_jonas so what's the plan? you write an interpreter then put up an evalbot and evangelize everyone to the language by showing with it how some programs can be written more easily in this language? (great way to get kicked out of all channels)
araujo qsort is a symbol pointing to a stack containing a block 11:28
11:28 Whiteknight left
b_jonas and then... how do you call that function on a list or array or something? 11:28
araujo not really interested to .. evangelize really , just commenting in the channels i know there are people interested on designing languages
b_jonas how do you even create an array and print it
araujo i am not really interested on competition , but fun
like this: 11:29
moritz_ araujo++ # very nice attitude
araujo { 2 3 87 3 4 387 38 2 } qsort
then you get the list sorted
moritz_, :)
masak moritz_: we'll soon be hitting 400 new/open tickets! \o/
azawawi std: my @a; @a[-1];
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Obsolete use of [-1] subscript to access final element; in Perl 6 please use [*-1] instead at /tmp/CGm1vUDph7 line 1:␤------> my @a; @a[-1];␤FAILED 00:02 38m␤»
azawawi std: my @a; @a[ -1 ]; 11:30
p6eval std 27168: OUTPUT«ok 00:02 38m␤»
moritz_ masak: I'll do my very best
masak :)
Geburtstag.
azawawi moritz_: does whitespace matter in [-1] warning?
rakudo: my @a; @a[ -1 ];
p6eval rakudo 1b06df: ( no output )
moritz_ I've always wondered if that message doesn't collide with custom array indexes
azawawi rakudo: my @a; @a[-1];
masak std: use v5; my $x = 'foo '; $x .= 'bar';
p6eval rakudo 1b06df: ( no output ) 11:31
std 27168: OUTPUT«Potential difficulties:␤ Possible obsolete use of .= as append operator; in Perl 6 please use ~= instead at /tmp/rG4gukX47o line 1:␤------> use v5; my $x = 'foo '; $x .= 'bar';␤ok 00:02 37m␤»
moritz_ azawawi: it seems to, yes
azawawi so it is an std bug right? :)
moritz_ I'm not sure.
azawawi std: my @a; @a[ -1];
p6eval std 27168: OUTPUT«ok 00:02 38m␤»
azawawi std: my @a; @a[-1 ]; 11:32
p6eval std 27168: OUTPUT«ok 00:02 38m␤»
moritz_ it might be intential
azawawi std: my @a; @a[ -1 ];
p6eval std 27168: OUTPUT«ok 00:02 38m␤»
masak intentional, even.
moritz_ aye :-)
masak TimToady: bug above?
TimToady nope
masak whoa!
azawawi really? :)
masak don't sneak up on me like that!
TimToady which one? 11:33
the v5 one is unimpl
masak @a[-1] giving a warning, but not @a[ -1 ]
lambdabot Unknown command, try @list
TimToady yes, that's intentional
masak lambdabot: oh, shut up.
TimToady: what's the rationale?
azawawi listens
moritz_ allowing @a[ -1 ] when custom array indexes are defined?
TimToady just leaving wiggle room 11:34
could generalize later when we do more semantic analysis
masak not sure I understand. wiggle room for making mistakes?
TimToady but for now, any bogus p5 code will likely use [-1]
moritz_ TimToady: so how's YAPC going? 11:35
TimToady and we're only dealing in probabilities
moritz_ did you alread hold your keynote?
TimToady I'm still writing my talk, so I shouldn't be here
moritz_ oh :-)
masak don't let us keep you. :)
TimToady but if you want to be on the screen in a bit under two hours...
in fact, I'm giving a talk about error messages 11:36
masak yes, STD.pm is leading in the field on that.
TimToady so I might show std: to them
moritz_ uhm, it looks much better on an ordinary terminal
TimToady I went through all the panics, obs, worrys to see if I could actually produce them 11:37
so think of it as a down payment on some error testing
masak TimToady: you should have a test suite or something.
TimToady what a concept
but it's hard for an error message to run itself and spit out "ok" :)
moritz_ throw some X::Syntax::Redeclaration error objects or whatever 11:38
masak ah, the old 'if you try to fail and fail, what have you done?' paradox.
moritz_ and then type-check
TimToady moritz_: std does not execute anything, how can it throw? :) 11:39
moritz_ TimToady: with die() :-)
it won't be catchable from within Perl 6 code for now 11:40
masak I'm running teststd right now. I'm getting a few failures.
moritz_ but from the perl 5 code which runs STD.pm
11:41 payload1 joined, payload left 11:44 s1n1 joined
moritz_ rakudo: say 1 11:45
p6eval rakudo 1b06df: OUTPUT«sh: ./perl6: No such file or directory␤»
11:48 Whiteknight joined
moritz_ rakudo: sub postfix:<..>(Str $x) { $x.subst(rx{ / <-[/]>+ $ }, '') }; say "/foo/bar/baz".. 11:48
p6eval rakudo 1b06df: OUTPUT«Statement not terminated properly at line 2, near "(rx{ / <-["␤in Main (src/gen_setting.pm:0)␤»
moritz_ rakudo: sub postfix:<..>(Str $x) { $x.subst(rx{ \/ <-[/]>+ $ }, '') }; say "/foo/bar/baz".. 11:49
p6eval rakudo 1b06df: OUTPUT«Statement not terminated properly at line 2, near ".."␤in Main (src/gen_setting.pm:0)␤»
moritz_ hm. ENOLTM (LTM = longest token matching)
11:49 Whiteknight left
moritz_ der probiert das als "string". und dann methodenname zu parsen 11:49
11:49 ejs1 joined
moritz_ sorrz, wrong language 11:50
and wrong channel :-)
std: sub postfix:<..>(Str $x) { $x.subst(rx{ \/ <-[/]>+ $ }, '') }; say "/foo/bar/baz"..
p6eval std 27168: OUTPUT«ok 00:06 50m␤»
11:51 twigil joined
b_jonas std: sub parentdir(Str $x) { $x.subst(rx{ \/ <-[/]>+ $ }, '') }; say parentdir("/foo/bar/baz") 11:51
p6eval std 27168: OUTPUT«ok 00:04 42m␤»
moritz_ rakudo: sub parentdir(Str $x) { $x.subst(rx{ \/ <-[/]>+ $ }, '') }; say parentdir("/foo/bar/baz") 11:52
p6eval rakudo 1b06df: OUTPUT«/foo/bar␤»
11:55 hanekomu joined
b_jonas I guess in perl6 you'll be actually able to define a greeting-suffix context so the statement 'good localtime' can work because good evaluates its argument in greeting-suffix context 11:57
wayland76 I had a ENOLTM a bit ago too, I suspect; it didn't no proto token whatever rules, and IIRC those depend on LTM :) 11:58
azawawi std: rand(10); 11:59
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Obsolete use of rand(N); in Perl 6 please use N.rand or (1..N).pick instead at /tmp/XxGfKnF6uX line 1:␤------> rand(10);␤FAILED 00:02 35m␤»
11:59 ejs left
azawawi std: 1..10..rand; 11:59
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤".." is not associative at /tmp/1xChtiH2ti line 1:␤------> 1..10..rand;␤ expecting any of:␤ infix__S_364DotDot␤ whitespace␤FAILED 00:02 36m␤»
azawawi std: 1..10.rand; 12:00
p6eval std 27168: OUTPUT«ok 00:02 36m␤»
masak azawawi: though that parses as 1..(10.rand), methinks. 12:02
azawawi masak: i noticed
b_jonas I guess so 12:03
azawawi prepares another batch of quick fixes for release :)
b_jonas that's why you have to write (1..10).each in ruby all the time
masak method-call '.' binds really tightly. I guess that's sane.
b_jonas yep 12:04
and .. has to bind weakly so 1 .. $x - 1 works
moritz_ right
b_jonas though there you'd just write 1 ..^ $x of course
moritz_ that's what I just wanted to write, but b_jonas was faster :-) 12:05
b_jonas but in general you sometimes want + and - stuff
moritz_ b_jonas: note that that's not the same
rakudo: say 1..2 ~~ 2.5
azawawi another interesting whitespace case
p6eval rakudo 1b06df: OUTPUT«0␤»
azawawi std: rand( 10 )
moritz_ rakudo: say 1..^3 ~~ 2.5
p6eval std 27168: OUTPUT«ok 00:02 36m␤»
rakudo 1b06df: OUTPUT«0␤»
12:05 s1n1 left
moritz_ uhm, shouldn't the last one say 1 instead? 12:05
b_jonas raduko: 1..5 ~~ 2.5
azawawi TimToady: rand(10) and rand( 10 ) give different warnings 12:06
masak moritz_: no, I don't think so.
b_jonas rakudo: 1..5 ~~ 2.5
p6eval rakudo 1b06df: ( no output )
moritz_ rakudo: say 1..5 ~~ 2.5
p6eval rakudo 1b06df: OUTPUT«0␤»
moritz_ rakudo: say 1..5 ~~ 2
p6eval rakudo 1b06df: OUTPUT«0␤»
moritz_ rakudo: say 2 ~~ 1..5 12:07
p6eval rakudo 1b06df: OUTPUT«1␤»
moritz_ rakudo: say 2.5 ~~ 1..5
p6eval rakudo 1b06df: OUTPUT«1␤»
moritz_ rakudo: say 2.5 ~~ 1..^3
p6eval rakudo 1b06df: OUTPUT«1␤»
moritz_ that was the problem
the range has to go on the right
("of course" :-)
b_jonas oh yeah, perl6' ~~ works the other way from ruby's ===
rakuso: 2.5 ~~ 1..2
rakudo: say 2.5 ~~ 1..2 12:08
p6eval rakudo 1b06df: OUTPUT«0␤»
azawawi std: rand(10)
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Obsolete use of rand(N); in Perl 6 please use N.rand or (1..N).pick instead at /tmp/NCBYyoJ49q line 1:␤------> rand(10)␤FAILED 00:02 35m␤» 12:09
azawawi std: rand( 10 )
p6eval std 27168: OUTPUT«ok 00:02 35m␤»
azawawi std: rand( 10)
p6eval std 27168: OUTPUT«ok 00:02 35m␤»
azawawi std: rand(10 )
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Obsolete use of rand(N); in Perl 6 please use N.rand or (1..N).pick instead at /tmp/LmQIg9HwJN line 1:␤------> rand(10 )␤FAILED 00:02 35m␤»
azawawi thinks leading whitespace causes warning to go on/off in rand(10) 12:12
std: rand (10) 12:13
p6eval std 27168: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/WyLbHPgTte line 1:␤------> rand (10)␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ statement modifier loop␤ term__S_296rand␤ terminator␤FAILED 00:02
..36m␤»
moritz_ std: ~ 1 12:16
p6eval std 27168: OUTPUT«ok 00:02 37m␤»
masak running teststd takes 31 minutes on my machine. 12:18
I get failures in 8 test files.
moritz_ I'm looking at these now 12:19
some of them seem to be reall problems iin STD.pm
some are plain sytanx errors
masak aye.
the one in t/spec//S06-advanced_subroutine_features/stub.t is a member of the former set, I believe. 12:20
moritz_ aye
12:21 payload1 left 12:22 ejs1 left
pugs_svn r27169 | moritz++ | [t/spec] fix some problems found by STD.pm, TimToady++ 12:23
Matt-W Afternoon 12:25
masak tips hat 12:26
wayland76 rakudo: slurp("filename"}; 12:32
p6eval rakudo 1b06df: OUTPUT«Statement not terminated properly at line 2, near "(\"filename"␤in Main (src/gen_setting.pm:0)␤»
wayland76 rakudo: slurp("filename");
p6eval rakudo 1b06df: OUTPUT«Unable to open filehandle from path 'filename'␤in Main (/tmp/Z8xqkrnCfh:2)␤»
moritz_ oh, slurp() is another one that should be forbidden in safe mode 12:33
12:33 bacek_ joined
wayland76 Hmm. Looks like I need to update my rakudo again :( 12:33
12:33 Whiteknight joined
wayland76 I was just checking whether it gives a Null PMC access like mine does 12:33
12:34 bacek left 12:36 zamolxes joined
wayland76 pmichaud: Regarding the makefile change, can you send me some kind of a link to your branch? Preferably to somewhere where I can get it in standard diff format, but whatever works for you 12:37
(I'm presuming here that he backlogs his own handle at least)
moritz_ git checkout origin/ins 12:39
git diff master
12:41 pmurias joined 12:48 payload joined 12:49 alester joined 12:53 kst left, kst joined
azawawi std: (1 == 1) ?? 1 :: 2 12:56
p6eval std 27169: OUTPUT«##### PARSE FAILED #####␤Please use !! rather than :: at /tmp/OzLBOc5wlv line 1:␤------> (1 == 1) ?? 1 :: 2␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ terminator␤FAILED 00:02 36m␤» 12:57
azawawi std: (1 == 1) ?? 1 !! 2
p6eval std 27169: OUTPUT«ok 00:02 36m␤»
azawawi std: #(1 == 1) ?? 1 !! 2
p6eval std 27169: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/Fv7KLlnU9v line 1:␤------> #(1 == 1) ?? 1 !! 2␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ infix_prefix_meta_operator␤ standard stopper␤ statement modifier loop␤
..terminator␤FAILED 00:03…
12:57 s1n1 joined
azawawi rakudo: (1==1) ?? 1 !! 2 12:58
p6eval rakudo 1b06df: ( no output )
azawawi rakudo: #(1==1) ?? 1 !! 2
p6eval rakudo 1b06df: OUTPUT«Can't use embedded columns in column 1 at line 2, near "(1==1) ?? "␤in Main (src/gen_setting.pm:0)␤»
azawawi rakudo: # (1==1) ?? 1 !! 2
p6eval rakudo 1b06df: ( no output )
azawawi what's wrong with #(1 == 1) ?? 1 :: 2 ?
shouldnt it be a comment? 12:59
12:59 eMaX left
azawawi moritz_: what's wrong with #(1 == 1) ?? 1 :: 2' 13:00
std: #(1 == 1) ??
p6eval std 27169: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/U5c7wHQE8M line 1:␤------> ␤ expecting noun␤FAILED 00:02 37m␤» 13:01
azawawi std: #(1 == 1) ?
p6eval std 27169: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/zvHHiyKdAn line 1:␤------> ␤ expecting noun␤FAILED 00:02 37m␤»
moritz_ azawawi: no, #( is forbidden at start of line
azawawi: because it's ambigous - it could be either a line or a block comment
13:01 alester left
azawawi moritz_: but the error message was obscure 13:02
so in perl 6, if i want to "comment error line" quick fix; the best solution is to add a # and then a space before it... 13:03
moritz_ azawawi: right 13:04
(to both)
13:04 frew joined
azawawi moritz_: where can i find more docs about that? 13:04
moritz_ azawawi: S02, I'd assume 13:05
masak S02:166. 13:06
13:07 gbacon joined
masak I've gotten into the habit of commenting out lines with two '##' instead of just one. 13:07
dalek kudo: 6eb3554 | pmichaud++ | docs/spectest-progress.csv:
spectest-progress.csv update: 404 files, 11532 passing, 4 failing

   S12-enums/basic.rakudo 27 - short name of the enum without parenthesis is an enum
   S32-num/rand.t aborted 3 test(s)
masak every time I do that, I think "well, _I_ don't mind, but boy are people in general going to hate this..."
then again, it's not like I have an alternate solution. 13:08
13:12 DemoFreak left
pmurias TimToady: may i put a .gitignore in src/perl6? 13:13
moritz_ somehow the newer GD::Graph versions don't seem to use the full width of the drawing area 13:15
dalek kudo: 0677565 | moritz++ | tools/progress-graph.pl:
[tools/progress-graph.pl] better label spacing
13:19
masak moritz_++
I've been looking at the progress graph and thinking about that spacing from time to time. moritz_ JFDIs. 13:20
moritz_ actually I've been anoyed for quite some time now.
most annoying is that without any option GD::Graph tries to plots *all* captions 13:21
pmurias rakudo: &infix:<\<>
p6eval rakudo 1b06df: ( no output )
masak moritz_: aye, that's an ungood default. 13:22
13:22 rjh left 13:24 skids joined 13:25 synth joined, sitaram joined 13:27 synthEEEE joined
s1n1 masak, moritz_: has there been an effort to use smolder instead? 13:27
13:27 s1n1 is now known as s1n_yapc
moritz_ s1n: I think I saw that that on somebody's TODO list 13:28
masak rakudo: class Month {}
p6eval rakudo 1b06df: ( no output )
masak std: subset A of Int; 13:29
p6eval std 27169: OUTPUT«ok 00:02 35m␤»
masak rakudo: subset A of Int;
p6eval rakudo 1b06df: OUTPUT«Statement not terminated properly at line 2, near "of Int;"␤in Main (src/gen_setting.pm:0)␤»
masak submits rakudobug
13:29 Whiteknight left 13:30 Whiteknight joined
b_jonas so how many of you are on that YAPC::NA conference/ 13:39
13:39 sitaram left
kolibrie is at YAPC::NA 13:40
s1n_yapc obviously 13:41
moritz_ not, sadly
s1n_yapc moritz_: if no one is working it, i might be interested 13:42
masak also not, also sadly
pmurias moritz_: will you be at YAPC::EU? 13:43
13:43 synth left
azawawi std: 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6; 13:44
p6eval std 27169: OUTPUT«##### PARSE FAILED #####␤Precedence too loose within ??!!; use ??()!! instead at /tmp/9kk3J7TVFt line 1:␤------> 42 ?? 1,2,3 Z 4,5,6 !! 1,2,3 X 4,5,6;␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix or meta-infix (with precedence tighter than item
..assignment)…
moritz_ pmurias: also not, also sadly
13:44 twigil left
azawawi std: 42 ?? 1,2,3 Z 4,5,6 !! (1,2,3 X 4,5,6); 13:44
p6eval std 27169: OUTPUT«##### PARSE FAILED #####␤Precedence too loose within ??!!; use ??()!! instead at /tmp/wGnxCKdDpG line 1:␤------> 42 ?? 1,2,3 Z 4,5,6 !! (1,2,3 X 4,5,6);␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix or meta-infix (with precedence tighter
..than item assignmen…
pmurias moritz_: why?
azawawi std: 42 ?? (1,2,3 Z 4,5,6) !! 1,2,3 X 4,5,6;
p6eval std 27169: OUTPUT«ok 00:02 37m␤»
masak moritz_: that _is_ sad. how will we ever meet if you keep not showing up at conventions? :)
moritz_ pmurias: time constraints :( 13:45
masak: I'll try very hard next year, I promise!
masak you'd better.
these things add up, you know.
:P
moritz_ and I did show up at german perl workshop '08, and met jnthn 13:46
13:46 twigil joined
masak that's something, I guess. 13:48
13:49 bacek_ left 13:51 bacek_ joined 13:52 KyleHa joined 13:57 PacoLinux joined 14:04 meppuru joined
finanalyst moritz_: i found GD::Graph had problems. are you porting to perl6? 14:04
azawawi masak: List of new quick fixes so far: padre.perlide.org/trac/log/trunk/Pa...m?rev=5470 14:06
moritz_ finanalyst: no, I'm using to generaate graphs :-) 14:07
finanalyst moritz_: i also tried the procedure on your blog to make an executable. it did not work, even in rakudo directory.
moritz_ finanalyst: in particular the one on rakudo.de is not wide enough 14:08
finanalyst moritz_: for graphs, i found ploticus to be easier
moritz_ finanalyst: I know, that broke a few days after I posted it :-(.
azawawi finanalyst: rt.perl.org/rt3/Public/Bug/Display.html?id=65994
masak azawawi: nice! KUTGW. 14:09
azawawi moritz_: not fair, i wrote gui for that :)
masak no-one said it would be fair. 14:10
finanalyst but precompiling modules into PIR does work!
i really would like some way of generating graphical output from perl6. 14:11
presently, i generate a ploticus script, then run it 14:12
moritz_ like, rendering SVG? :-)
b_jonas how about gnuplot?
14:12 iblechbot joined
moritz_ there are opengl bindings for parrot 14:12
with some effort they should be usable from Perl 6
14:12 ejs joined
b_jonas eg. www.perlmonks.com/index.pl?node_id=740055 14:13
finanalyst looking to see opengl bindings
b_jonas: to use gnuplot from perl6, you need to generate a script, then run the script. I found ploticus easier to use to generate what I needed. 14:14
TimToady everyone say hi to YAPC::NA 14:15
kolibrie hi YAPC!
s1n_yapc big screen hello
moritz_ rakudo: say "OH HAI"
p6eval rakudo 067756: OUTPUT«OH HAI␤» 14:16
s1n_yapc moritz_: now you're at yapc::na
masak YAPC: \o
moritz_ s1n_yapc: kinda.
finanalyst hi YAPC::NA
pmurias hi ;)
b_jonas hi YAPC
masak weather is beautiful, wish we were there.
frew Hello YAPC!
14:17 deafferret joined
moritz_ you see, we're not only lurkers in here :-) 14:17
deafferret HI YAPC! (jhannah)
oh, bummer. missed the projector
masak moritz_: or, at least, this is how you bring the lurkers out. :)
s1n_yapc moritz_: that's right, some of us like to be annoying on the big screen :)
frew haha, sucker
deafferret why isn't this on irc.perl.org?
masak deafferret: for hysterical raisins.
moritz_ deafferret: 1) historical reasons 2) to not encapsulate ourselves too much 14:18
14:18 pmichaud joined
pmurias freenode is considered friendlier 14:18
masak hi pm.
moritz_ ask audreyt, she created it (I think)
14:18 wigfield joined
frew ... 14:18
b_jonas I think it depends on where the evalbots are
well in the start at least 14:19
moritz_ my evalbot is both on freenode on irc.perl.org, so that's not an issue
masak moritz_: I'm not 100% sure, but I think #perl6 might predate audreyt. 14:20
14:20 stDavid joined, meppl left
masak but I wasn't there in the very-very beginning, just after a month or so of audreyt's appearance. 14:20
b_jonas I see
14:21 alester joined
s1n_yapc is TimToady is going to code in his keynote? 14:21
masak s1n_yapc: he said he's to talk about errors. 14:22
KyleHa I hope talking about errors isn't a mistake. 14:23
14:23 payload1 joined 14:24 payload left
azawawi is there going to be a video of TimToady's speech? 14:24
finanalyst is it online now? 14:25
moritz_ maybe on yapc.tv
14:25 ejs1 joined
azawawi cool 14:26
14:26 payload1 left, payload joined 14:27 kst left, donaldh left 14:28 kst joined
finanalyst doesnt seem to be 14:28
b_jonas maybe he'll upload some text or slides
14:30 ejs left, rfordinal joined
finanalyst i'm trying to use parrot from the rakudo installation, specifically to run ./parrot examples/opengl/shapes.pir but getting "error:imcc:No such file or directory". Should I have something else installed? 14:33
moritz_ finanalyst: that seems like a bug... care to ask on #parrot? 14:35
14:35 ejs1 left
s1n_yapc masak: yup, error messages 14:35
finanalyst moritz_: just checking. trying to find an opengl example that works 14:36
moritz_ opengl_defines.pasm is missing. 14:37
finanalyst: ah, it might get generated by Configure.pl if it detects your opengl installation correctly 14:38
14:38 ejs1 joined
finanalyst so if I dont have it, then opengl not detected? 14:38
14:39 sitaram joined, ruoso joined
moritz_ presumably. 14:39
14:39 sitaram left
moritz_ auto::opengl - Does your platform support OpenGL....................no. 14:40
on one of my machines
which is why there's no such file
pmurias ruoso: hi 14:41
ruoso Hello!
finanalyst i have ubuntu and seem to have opengl installed
but not dev files.
masak announcement: proto, the extremely humble installer, now defaults to fetching Rakudo Pittsburgh. 14:42
,,,and it fails (!) to install on my box. 14:44
ruoso hi pmurias
masak that's not good.
s1n_yapc rakudo: #{ } 14:46
p6eval rakudo 067756: OUTPUT«sh: ./perl6: No such file or directory␤»
s1n_yapc ouch
no build?
masak s1n_yapc: it comes and goes, rebuilds every hour. 14:47
s1n_yapc masak: it should build elsewhere and copy over the old one 14:49
masak s1n_yapc: indeed. patches welcome.
14:49 rfordinal left
s1n_yapc masak: what exactly would i be patching? 14:53
masak s1n_yapc: the build process, I guess.
but it occurs to me now that those build scripts might not be puclicly accessible. 14:54
pugs_svn r27170 | pmurias++ | [re-smop] infix + < == and != are multis 14:55
r27170 | pmurias++ | started creating Test.pm
r27170 | pmurias++ | started working on ModuleLoader
s1n_yapc masak: then i can't patch anything
ruoso pmurias, that looks promising ;)
masak s1n_yapc: no. sorry, I was too quick. please patch something else. :)
s1n_yapc: in return, I'll try and have a look at the build process. 14:56
ruoso pmurias, you added the .so in svn
14:56 azawawi left
s1n_yapc masak: that's fine, i dont have a feather account, so i can't really help 14:56
not without the source anyways
masak s1n_yapc: p6eval isn't on feather.
s1n_yapc masak: where is it? 14:57
14:57 sri_kraih_ joined
pugs_svn r27171 | pmurias++ | [re-smop] .so files have no place in the repo 14:57
masak on timtowtdi.org
s1n_yapc wow, never knew about that site
pmurias ruoso: i'm having my uni end-of-term exams atm so my gsoc project is progressing slowly atm 14:58
ruoso pmurias, I think it's ok... since we're doing much better than I initially expected
15:00 sri_kraih left
pmurias in a couple of days i'll have much more time so it should progress faster 15:01
ruoso pmurias, btw... Test.pm won't need to have the $LexicalPrelude{...} thing 15:02
I think at the time we have Test.pm, we'll also have "is export" working too 15:03
TimToady rakudo: say "\c[WHITE SMILING FACE]"
p6eval rakudo 067756: OUTPUT«☺␤»
15:03 ejs1 left
Whiteknight TimToady++ 15:03
phenny Whiteknight: 21 Jun 12:56Z <masak> tell Whiteknight yes, I'm coming to YAPC::EU. will do a talk about Web.pm.
15:05 ejs0 joined
ruoso moved back from Lisbon to Brasil right before a YAPC there... what a shame... 15:05
15:11 hercynium joined
pmurias ruoso: that Test.pm works a bit 15:13
ruoso pmurias, I see... but I mean... you're installing the symbols in the CORE... 15:14
15:14 nihiliad joined 15:16 bacek_ left 15:19 s1n_yapc left
skids ruoso: FWIW, on smop install, you can get most of the libs in debian now through libhugs packages. Sid currently has some version issues with the "network" library, but almost there without any local packages. 15:19
ruoso skids, there are only two libs that are installed locally I think 15:20
zip
15:20 donaldh joined
skids zip can be got by package now. 15:21
ruoso and some other I don't recall right now
ah... right... in sid...
skids Right now the only thing holding back pure-package install is that libghc6-network requires an older version of ghc than what is installed, and ghc won't find the hugs version of "network" library for some reason. 15:22
pmurias skids: doesn't libhugs imply hugsiness? 15:23
skids There's "bundle" packages that autoinstall stuff.
15:24 deafferret left
pmurias hugs and ghc are seperate implementations, and i can't imagine them being binary compatible 15:25
15:26 masak left
pmurias there seems to be a lighc-utf8-string-dev package and that's the only library we use 15:26
15:26 stepnem left
finanalyst moritz_: ping 15:27
skids pmurias: well, if that's the case then someone screwed up because pugs config picks up hugs libraries after the packages are installed. 15:29
skids hasn't actually had time to fix the network lib and try a build yet. 15:30
pmurias maybe the hugs ones are not compiled...
15:32 stDavid left, frew left
pmurias ruoso: re Test exporting stuff do we have the way it should be implemented worked out? 15:32
15:32 Whiteknight left
ruoso pmurias, there's still the issue about the pacakge 15:33
15:35 rfordinal joined, hercynium left
skids ruoso: you won't take offense if I clean up some english grammar as I read through things, right? :-) 15:36
15:36 wigfield left
ruoso skids, on the contraire... I'd appreciate it 15:37
15:42 justatheory joined
pmurias skids: what are you reading through? 15:44
15:46 kst left 15:47 kst joined 15:49 cotto left 15:54 stDavid joined 15:56 rindolf joined
rindolf Hi all. 15:56
In Firefox 3.0.x the CSS here is all wrong - rakudo.org/how-to-get-rakudo
On Linux at least.
I mean in the buttons at the upper nav-menu.
15:56 hanekomu left 16:00 stDavid left 16:04 azawawi joined
PerlJam rindolf: It looks fine for me until you get a window below a certain width, then it looks messed up. 16:09
rindolf PerlJam: oh, I see. 16:11
Well, my browser window is pretty wide at the moment.
PerlJam that certain width looks to be about 1005 pixels. Above that, it looks fine. 16:12
16:13 Psyche^ joined 16:14 rfordinal left, rfordinal joined 16:17 payload left
azawawi what's the difference between +> and ~> ? 16:17
std: 2 >> 1; 16:18
p6eval std 27171: OUTPUT«##### PARSE FAILED #####␤Obsolete use of >> to do right shift; in Perl 6 please use +> or ~> instead at /tmp/DkWqQmpNKQ line 1:␤------> 2 >> 1;␤FAILED 00:02 36m␤»
azawawi rakudo: 2 +> 1;
p6eval rakudo 067756: ( no output )
azawawi rakudo: say 2 +> 1; 16:19
p6eval rakudo 067756: OUTPUT«1␤»
azawawi rakudo: say 2 ~> 1;
16:19 mtkatwork joined, mtkatwork left
p6eval rakudo 067756: OUTPUT«Could not find non-existent sub infix:~>␤» 16:19
16:21 zamolxes left
pmurias azawawi: one is a numeric and the other string bit shift 16:22
azawawi pmurias: can u give me an example of the second one? 16:23
pmurias rakudo: say 100 ~> 2 16:24
p6eval rakudo 067756: OUTPUT«Could not find non-existent sub infix:~>␤»
pmurias azawawi: it shifts all the bits in a string 16:25
pugs: say 100 ~> 2
p6eval pugs: OUTPUT«␤»
pmurias pugs: say 100 +> 2
p6eval pugs: OUTPUT«25␤»
16:26 donaldh left
azawawi pugs: say 1000 ~> 2 16:27
p6eval pugs: OUTPUT«␤»
azawawi pugs: say "1000" ~> 2
p6eval pugs: OUTPUT«␤»
azawawi pugs: say "1000" ~> 0
p6eval pugs: OUTPUT«1000␤»
azawawi pugs: say "1000" ~> 1
p6eval pugs: OUTPUT«␤»
16:29 stDavid joined, Patterner left, Psyche^ is now known as Patterner
azawawi pmurias: thx 16:30
16:30 pmurias left
moritz_ finanalyst: pong 16:33
finanalyst moritz_: thanx for responding.
moritz_: about OpenGL and parrot, there is no one on #parrot to talk to :(
could you help a little? 16:34
16:35 nihiliad left
finanalyst i got a window to open with one of the parrot examples, but nothing appeared in the window 16:35
moritz_ finanalyst: I don't really know much about it... a mail to the parrot list (including output from Configure.pl) might be more helpful 16:36
finanalyst ok, i'll do that. 16:37
16:41 ejs joined 16:43 stDavid left 16:44 REPLeffect joined 16:45 payload joined
KyleHa I'm looking at the bug #66840 that came in on perl6-compiler. The test I came up with is: eval_dies_ok q[ 1 ?? 2,3 !! 4,5 ], 'Ternary error (bug #66840)'; 16:46
Even that makes rakudo upchuck and die, so I'd have to fudge it with a skip, right?
moritz_ KyleHa: exactly 16:47
16:47 ejs left
moritz_ t/spec/S03-operators/precedence.t would be a good place for a test 16:47
KyleHa Is it OK to put that in the file with the other ternary op tests, or...Oh, thanks!
moritz_ that would also be fine. 16:48
there's more than one way to do it ;-)
KyleHa OK. I'll stick it there since I already have it there.
moritz_ sure
KyleHa: do you have a commit bit already?
KyleHa Yes. 16:49
moritz_ great.
16:49 mtkatwork joined
moritz_ ah, removing the Ha$ makes the name more familiar ;-) 16:49
moritz_ dumb.
KyleHa *grin*
16:50 mtkatwork left 16:52 kst left, kst joined
rindolf Hmmm.... make spectest runs three processes that consume over 50% of my CPU each. 16:53
So it's becoming somewhat sluggish.
The computer I mean.
moritz_ three processes are expected 16:55
(if your TAP::Harness is sufficiently new)
rindolf moritz_: ah.
And there are still no line numbers in Rakudo errors.
moritz_ rindolf: there are, mostly. 16:56
rindolf: cases that don't include them are worth a ticket 16:57
pugs_svn r27172 | kyle++ | [t/spec] Add test for bug #66840
16:57 Chillance joined
rindolf moritz_: ah. 16:57
16:58 wigfield joined
rindolf moritz_: erxz.com/pb/18409 16:58
moritz_: the point is that .hok() is non-existent. 16:59
moritz_ rindolf: yes. Feel free to submit to [email@hidden.address]
rindolf moritz_: OK.
17:02 s1n1 joined, Whiteknight joined, frew joined, cdarroch joined 17:03 s1n2 joined
rindolf moritz_: is there any way I can tell TAP::Harness to only use one process? 17:03
moritz_ rindolf: you can try the TEST_JOBS env var 17:04
rindolf moritz_: ah. 17:05
17:05 hercynium joined 17:06 s1n1 left
rindolf moritz_: submitted the bug. 17:08
moritz_ it seems I have to patch t/harness to honour TEST_JOBS
rindolf Man svn from many http:// (not ) repositories is very slow here.
https:// works fine.
17:11 finanalyst left 17:12 alester_ joined
Trey where's the spectest repo? not in pugs anymore? 17:13
rindolf There's some spam here - rakudo.org/how-to-help 17:14
Trey: it is in pugs.
Trey ok, i was wondering why i kept getting updates :)
dalek kudo: 10f2235 | moritz++ | t/harness:
[t/harness] honour TEST_JOBS environment variable
17:15
17:17 jaldhar joined
azawawi std: $]; 17:18
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Obsolete use of $] variable; in Perl 6 please use $::PERL_VERSION instead at /tmp/KFd8cEsMoY line 1:␤------> $];␤FAILED 00:02 36m␤»
17:18 alester_ left
azawawi std: $::PERL_VERSION; 17:18
p6eval std 27172: OUTPUT«ok 00:02 35m␤»
azawawi rakudo: say $::PERL_VERSION;
p6eval rakudo 067756: OUTPUT«say requires an argument at line 2, near " $::PERL_V"␤in Main (src/gen_setting.pm:2416)␤»
azawawi pugs: say $::PERL_VERSION; 17:19
p6eval pugs: OUTPUT«*** Undeclared variable: ("$PERL_VERSION",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xb653118d>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xb655ea09>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xb6…
azawawi std: say $::PERL_VERSION;
p6eval std 27172: OUTPUT«ok 00:02 36m␤»
17:21 hercynium left 17:22 spx2 joined
spx2 is the do BLOCK construct present in p6? 17:22
this one perldoc.perl.org/functions/do.html
moritz_ std: do { 1 }
p6eval std 27172: OUTPUT«ok 00:02 36m␤» 17:23
spx2 omfg
spx2 runs away
moritz_ rakudo: do { say 1 }
p6eval rakudo 067756: OUTPUT«1␤»
moritz_ what's wrong with it?
spx2 almost everything ?
perlmonks.org/?node_id=773663
check it out
and the fact that BrowserUK which is an usual on perlmonks 17:24
moritz_ I don't see an "almost everything"
spx2 thought it was ok to have something like this
do{{
last unless $a==4
}} while 1;
which is really beyond my worst nigthmares
</rant>
moritz_ that's nothing wrong with the do BLOCK syntax. 17:25
what's unexpected is that last() doesn't work in statement-modifying loops in Perl 5
spx2 moritz_: why do we have this do BLOCK ? I never used it and I've written a fair amount of p5 code
moritz_ spx2: timtowtdi. It allows you to write code in the verb-followed-by-object form 17:26
if you don't need it, don't use it.
rakudo: my $x; do { $x++; last } for 1..3; say $x 17:27
p6eval rakudo 067756: OUTPUT«1␤»
moritz_ spx2: does that DWIM, in your opinion?
17:27 bizb joined 17:28 nihiliad joined
spx2 I get some garbled characters on my screen 17:28
is that normal ?
except for the garbled characters yes it's ok
moritz_ spx2: when your client or terminal doesn'T handle UTF-8 that's normal.
spx2: see irclog.perlgeek.de/perl6/2009-06-22#i_1257256 for a non-garbled version 17:29
17:29 ejs joined
moritz_
.oO( assuming your browser handles UTF-8... ;-)
17:29
spx2 yeah it does :P
moritz_: do you use "do BLOCK" in your code ? 17:30
moritz_: do you find it useful in any way ?
moritz_ sometimes, and yes.
17:31 meppuru is now known as meppl
spx2 needs to learn some new langauges :) 17:31
other than p5/p6 that is
moritz_ though it's less useful in Perl 6, because you can write loops as repeat { ... } while $condition;
if the presence of a single construct deters you, good luck!
spx2 aaah yes ! post-condition
I like that 17:32
moritz_ (I'm also picky with languages; I abandoned python as soon as I learned it had no "use strict;"
)
spx2 but maybe python has some form of "lint"
isn't "use strict" a lint ? 17:33
moritz_ no
lint is a different tool
spx2 I think they both serve the same purpose
moritz_ use strict is something that modifies the behaviour of the compiler
yes
17:33 ejs left
moritz_ cars and bicycles serve the same purpose too 17:33
17:33 mikehh joined
moritz_ (also note that "use strict" has runtime effects) 17:34
spx2 moritz_: you mean run-time like this ? perl -Mstrict -e 'eval "$a = 3";' 17:35
it didn't tell me that I did not use "my" for $a
moritz_ spx2: no, I mean the effeccts of use strict 'refs'; 17:36
anyway, I'm off to play some table tennis
have the appropriate amount of fun
azawawi std: $*; 17:37
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Obsolete use of $* variable; in Perl 6 please use ^^ and $$ instead at /tmp/sQr9HpuCSL line 1:␤------> $*;␤FAILED 00:02 36m␤»
17:39 Whiteknight left, Whiteknight joined
azawawi what are ^^ and $$? 17:40
PerlJam that's how you match the start and end of lines within a string.
azawawi and $* 'was' supposed to do their functionality before? 17:43
rindolf moritz_: I'm not getting many <<<Use of uninitialized value>>> warnings without line numbers.
Trey rakudo: sub foo() { 1 } ; foo; 17:44
p6eval rakudo 067756: ( no output )
Trey rakudo: sub foo() { 1 } ; foo(3);
p6eval rakudo 067756: ( no output )
17:44 hercynium joined
Trey is that right? how do you specify foo taking zero args? 17:45
azawawi PerlJam: thx
PerlJam azawawi: $* was how you did multi-line matching. You see it to a true value.
s/see/set/
But that's *really* old perl. pre-/m days 17:46
azawawi finished a couple of quick fixes for today: padre.perlide.org/trac/log/trunk/Pa...ocument.pm
szabgab azawawi, your blog made it to IronMan 17:48
Trey rakuda sub foo($a) { say $a }; foo; 17:49
azawawi szabgab: cool thx
Trey rakudo: sub foo($a) { say $a }; foo;
p6eval rakudo 10f223: OUTPUT«too few arguments passed (0) - 1 params expected␤in sub foo (/tmp/zXmkJZjcUF:1)␤called from Main (/tmp/zXmkJZjcUF:2)␤»
Trey rakudo: sub foo($a) { say $a }; foo('hi', 'mom');
p6eval rakudo 10f223: OUTPUT«too many arguments passed (2) - 1 params expected␤in sub foo (/tmp/r0oiTiXyDf:1)␤called from Main (/tmp/r0oiTiXyDf:2)␤» 17:50
Trey rakudo: sub foo() { say $a }; foo('hi', 'mom');
p6eval rakudo 10f223: OUTPUT«Symbol '$a' not predeclared in foo (/tmp/3xzc8AtR53:2)␤in Main (src/gen_setting.pm:3225)␤»
17:51 japhb left
Trey rakudo: sub foo() { say $^a }; foo('hi', 'mom'); 17:51
p6eval rakudo 10f223: OUTPUT«Cannot use placeholder var in block with signature. at line 2, near " }; foo('h"␤in Main (src/gen_setting.pm:1966)␤»
Trey rakudo: sub foo() { say 'hi'}; foo('hi', 'mom'); 17:52
p6eval rakudo 10f223: OUTPUT«hi␤»
Trey rakudo: sub foo() { @_.say }; foo('hi', 'mom'); 17:53
p6eval rakudo 10f223: OUTPUT«himom␤»
Trey rakudo: sub foo { @_.say }; foo('hi', 'mom');
p6eval rakudo 10f223: OUTPUT«himom␤»
rindolf If I have a list (or two) and want to find all elements that appear an odd number of times in the list - how can I do that? 17:54
For starters, one can assume the list will have at most two elements of every number.
uniq(5,5,5) == [5]
rakudo: uniq(5,5,5).perl().say 17:55
p6eval rakudo 10f223: OUTPUT«[5]␤»
rindolf rakudo: uniq(5,5).perl().say
p6eval rakudo 10f223: OUTPUT«[5]␤»
rindolf rakudo: ones(5,5).perl().say
p6eval rakudo 10f223: OUTPUT«Could not find non-existent sub ones␤»
rindolf Is it my imagination or has rakudo become much slower lately?
Trey what's the rakudo bug email? [particle] is sitting next to me and said to send that output, but he can't remember the address :)
PerlJam rindolf: say [+^] 5, 5; say [+^] 5, 5, 5; 17:56
rindolf: perhaps
rindolf PerlJam: let me try.
PerlJam Trey: [email@hidden.address]
Trey PerlJam: danke
rindolf rakudo: ([+^] (5,5)).perl.say
p6eval rakudo 10f223: OUTPUT«0␤»
rindolf rakudo: ([+^] (5,5,5)).perl.say
p6eval rakudo 10f223: OUTPUT«5␤»
rindolf PerlJam: I want a list, not a number. 17:57
rakudo: ([+^] (5,5,5,4)).perl.say
p6eval rakudo 10f223: OUTPUT«1␤»
PerlJam rindolf: yeah, that was meant more as a direction to go in rather than an answer to your problem.
rindolf PerlJam: OK.
17:58 kst left, acajou joined 17:59 kst joined, Molaf left, Molaf joined
KyleHa Is there any reason to keep the empty directories in pugs/t ? 17:59
rindolf I can write it like I wrote it in p5 - using a loop. 18:00
How can rakudo's command-line (./perl6) preserve its history across invocations? 18:04
18:06 Casan joined
PerlJam rindolf: you're talking about the REPL? I'm not even sure how it keeps its history from one iteration to the next. On some systems it seems to, on others it doesn't. 18:08
rindolf PerlJam: ah.
PerlJam: yes, the REPL.
18:11 bizb left 18:13 FurnaceBoy joined
rindolf rakudo: do { my @h = (5,6,7); @h[-1].perl().say } 18:13
p6eval rakudo 10f223: OUTPUT«undef␤»
rindolf WTF?
Isn't it a bug? 18:14
rakudo: do { my @h = (5,6,7); @h[@h-1].perl().say }
p6eval rakudo 10f223: OUTPUT«7␤»
rindolf moritz_: here?
OK, and some of the make spectest failed too. 18:15
PerlJam rindolf: no, that's not a bug.
rakudo: my @h = (5,6,7); @h[*-1].perl.say; 18:16
p6eval rakudo 10f223: OUTPUT«7␤»
18:16 nihiliad left
rindolf PerlJam: what is the reason for breaking compatibility this way? 18:17
TimToady removes an error-prone discontinuity, and naturally falls out from the meaning of * 18:20
PerlJam TimToady: Here I was typing lots of words to say the same thing as "error-prone discontinuity" 18:21
rindolf OK, now my program works. 18:22
18:24 DemoFreak joined
rindolf But it's much slower than the p5 version. 18:24
KyleHa Is there any reason to keep the empty directories in pugs/t ?
18:24 icwiener joined
b_jonas don't they remind you that you should write tests for those things/ 18:27
rindolf b_jonas: what? 18:28
KyleHa No. They're leftovers from tests that got moved into spec/
I went looking for Pugs tests to ponder moving into spec/ and I found some empty directories. I'm looking for permission from someone more senior than me to get rid of them. 18:29
18:29 spx2 left 18:30 spx2 joined 18:32 mizioumt1 joined 18:34 athomason joined
rindolf www.shlomifish.org/Files/files/code...-rakudo.p6 18:35
18:39 kidd_ left 18:40 kidd_ joined 18:41 mizioumt left, nihiliad joined 18:45 payload left 18:47 barney left, japhb joined 18:49 _jaldhar joined, jaldhar left 18:53 mizioumt joined 19:02 pnu left, pnu joined 19:03 jaldhar_ joined 19:04 cotto joined
s1n2 std: my $prove = '\\\"foo \\\"bar\\\", \\\"baz\\\")\\\" \\\"barz\\\"'; 19:06
p6eval std 27172: OUTPUT«ok 00:02 36m␤»
19:06 s1n2 is now known as s1n_yapc
s1n_yapc rakudo: my $prove = '\\\"foo \\\"bar\\\", \\\"baz\\\")\\\" \\\"barz\\\"'; 19:06
p6eval rakudo 10f223: ( no output )
s1n_yapc huh?
pugs: my $prove = '\\\"foo \\\"bar\\\", \\\"baz\\\")\\\" \\\"barz\\\"'; say $prove 19:07
p6eval pugs: OUTPUT«\\"foo \\"bar\\", \\"baz\\")\\" \\"barz\\"␤»
s1n_yapc hmm
rakudo: my $prove = '\\"foo \\"bar\\", \\"baz\\")\\" \\"barz\\"'; 19:08
p6eval rakudo 10f223: ( no output )
s1n_yapc rakudo: my $prove = '\\\"foo \\\"bar\\\", \\\"baz\\\")\\\" \\\"barz\\\"'; say $prove
p6eval rakudo 10f223: OUTPUT«\\"foo \\"bar\\", \\"baz\\")\\" \\"barz\\"␤»
s1n_yapc is braindead
19:10 DemoFreak left 19:11 mizioumt1 left, hercynium left 19:12 wigfield left 19:13 stDavid joined, _jaldhar left 19:14 kst left, kst joined 19:18 wigfield joined 19:20 donaldh joined 19:22 DemoFreak joined 19:32 azawawi left 19:35 azawawi joined, its joined 19:43 stDavid left
s1n_yapc dalek only post commit feed items? 19:43
we should make it hand out commitbit
19:45 hercynium joined 19:49 frew left
meppl good night 19:51
19:51 frew joined 19:56 meppl left 19:57 ruoso left 20:00 pmurias joined
azawawi std: rand(10) 20:00
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Obsolete use of rand(N); in Perl 6 please use N.rand or (1..N).pick instead at /tmp/boYoB54voi line 1:␤------> rand(10)␤FAILED 00:02 35m␤»
azawawi std: rand(10 ) 20:01
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Obsolete use of rand(N); in Perl 6 please use N.rand or (1..N).pick instead at /tmp/CZbQ3UcH29 line 1:␤------> rand(10 )␤FAILED 00:02 35m␤»
azawawi std: rand( 10)
p6eval std 27172: OUTPUT«ok 00:02 35m␤»
azawawi TimToady: i think we have a leading space STD bug in rand( 10)
std: rand( 10); 20:02
p6eval std 27172: OUTPUT«ok 00:02 35m␤»
azawawi std: rand(10 );
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Obsolete use of rand(N); in Perl 6 please use N.rand or (1..N).pick instead at /tmp/2tumXSTsxm line 1:␤------> rand(10 );␤FAILED 00:02 35m␤»
azawawi TimToady: and what's the difference between [-1] and [ -1] ? 20:03
std: [-1];
p6eval std 27172: OUTPUT«ok 00:02 37m␤»
20:03 nihiliad left
azawawi std: my @a; @a[-1]; 20:03
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Obsolete use of [-1] subscript to access final element; in Perl 6 please use [*-1] instead at /tmp/EFSgrB1Rzy line 1:␤------> my @a; @a[-1];␤FAILED 00:02 38m␤»
azawawi std: my @a; @a [-1];
p6eval std 27172: OUTPUT«##### PARSE FAILED #####␤Unable to parse infix or meta-infix; couldn't find final ']' at /tmp/Qv3wuafxDv line 1:␤------> my @a; @a [-1];␤FAILED 00:02 36m␤»
azawawi std: my @a; @a[ -1]; 20:04
p6eval std 27172: OUTPUT«ok 00:02 38m␤»
20:07 nihiliad joined
TimToady what, you expect me to be consistent :) 20:08
KyleHa Consistently inconsistent? 20:09
Expect the unexpected!
moritz_ KyleHa: (re empty directories) they can be deleted 20:10
KyleHa moritz_: Thank you.
moritz_ they are a left-over from me using git-svn, and git doesn't deal with directories at all
pugs_svn r27173 | kyle++ | [t] remove empty directories 20:16
KyleHa Pewf!
pugs_svn r27174 | moritz++ | [t] remove test that seems so wrong to me (and has no smartlink) 20:17
20:17 icwiener left
KyleHa If I have an AoH, can I say 'foreach my %x ( @aoh )', or is it still my $h ? 20:22
moritz_ in Perl 6 you say 'for %aoh -> %h { ... }' 20:23
KyleHa Thank you.
moritz_ siince the item is bound to %h, the derefencing step that you need in Perl 5 is gone
likewise:
Tene for @aoh -> %h { ... } 20:24
moritz_ rakudo: my $a = [1, 2, 3]; sub f(@a) { say @a.elems }; f($a);
p6eval rakudo 10f223: OUTPUT«3␤»
20:24 REPLeffect left
moritz_ rakudo: for ({ a => 2 }, { b => 1 }) -> %h { say %h.perl } 20:24
p6eval rakudo 10f223: OUTPUT«{"a" => 2}␤{"b" => 1}␤»
KyleHa Hmmm, no need for 'my' ? 20:25
moritz_ not in signatures
in -> $x, $y { ... } the '$x, $y' part is actually a signature
just like when you say 'my $anon = sub ($x, $y) { ... }'
20:26 kst left
moritz_ std: my Cat $a; 20:26
p6eval std 27174: OUTPUT«##### PARSE FAILED #####␤In "my" declaration, typename Cat must be predeclared (or marked as declarative with :: prefix) at /tmp/Q20ynaHXVM line 1:␤------> my Cat $a;␤FAILED 00:02 35m␤»
20:26 twigil left, kst joined
pugs_svn r27175 | lwall++ | [STD] allow whitespacey forms on rand and .[-1] checkers 20:27
r27175 | lwall++ | [Cursor] reinit setting on reparse
moritz_ std: class Cat { }; class Dog { }; class Fish { }; my Cat|Dog Fish $mitsy = new Fish but { Bool.pick ?? .does Cat !! .does Dog }; # example from S02
p6eval std 27174: OUTPUT«##### PARSE FAILED #####␤Malformed my at /tmp/tP7IIsgUad line 1:␤------> }; class Dog { }; class Fish { }; my Cat|Dog Fish $mitsy = new Fish but { Bool.p␤ expecting any of:␤ multi_declarator␤ typename␤ whitespace␤FAILED 00:02 36m␤»
moritz_ TimToady: please either fix S02 or STD.pm ;-) 20:28
it looks rather like two terms in a row
TimToady it's only possible in theory :)
moritz_ (actually I was just looking of '$obj but { closure }' is really allowed 20:29
and that's the only example in the spec)
TimToady the parser doesn't care what's on either side of 'but' 20:30
std: () but () 20:31
p6eval std 27175: OUTPUT«ok 00:02 36m␤»
moritz_ that's only half of an answer ;-)
does the rest of the compiler needs to handle closures on the RHS?
TimToady beats me
moritz_ well, let's say "yes" for the moment ;-) 20:32
pmurias TimToady: figured out a solution for the use Foo;use Foo::Bar; problem? 20:33
moritz_ upon further review that test is mostly borked anyway 20:34
KyleHa rakudo: my %x=(a=>1); say "interpolate, I say: %x<a>"
p6eval rakudo 10f223: OUTPUT«interpolate, I say: %x<a>␤»
moritz_ KyleHa: NYI
PerlJam KyleHa: for now you can use "interpolate, I say: {%x<a>}" 20:35
KyleHa When you say "for now", does that mean it is sure to break?
moritz_ no
curly braces interpolate as closures in double-quoted strings. 20:36
PerlJam KyleHa: no, that means that you way that is currently broken will eventually work
20:36 mizioumt left
KyleHa Oh, cool. 20:36
Thank you all.
pugs_svn r27176 | moritz++ | [t] remove oo/syntax-but.t
r27176 | moritz++ |
r27176 | moritz++ | There were two kinds of tests in there. Some used $value but { closure }, but
r27176 | moritz++ | the closure didn't return a role or an enum (so they were wrong). The other
r27176 | moritz++ | onces were of the form '$value but True', which we test elsewhere anyway.
moritz_ damn, I can't type. "onces" :/ 20:37
20:37 hercynium left 20:38 ejs0 left 20:39 hercynium joined 20:45 deafferret joined, jan___ left, bennymack joined 20:47 jan_ joined 20:48 deafferret left 20:49 _jaldhar_ joined 20:50 jaldhar_ left 20:55 bennymack left, jaldhar joined 20:56 azawawi left 20:57 _jaldhar_ left
rindolf www.shlomifish.org/Files/files/code...-rakudo.p6 - any comments? 21:00
21:01 nihiliad left
pugs_svn r27177 | kyle++ | [t/spec] Make autoincrement string tests data driven. This should make it 21:02
r27177 | kyle++ | easier to add tests for, e.g., Greek characters.
KyleHa That autoincrement.t oughta be broken up, I reckon. 21:03
21:04 b_jonas left
KyleHa I just now figured out that NYI = 'not yet implemented'. 21:05
moritz_ KyleHa: the reason not to use data driven testing is very often that it's harder to fudge individual tests without botching the plan() 21:06
KyleHa: that doesn't mean it's bad, it's just something you should be aware of
KyleHa Indeed, I hadn't thought of that.
21:07 nihiliad joined
moritz_ rindolf: I prefer to use dashes instead of underscores in identifiers 21:09
rindolf moritz_: ah.
KyleHa Now I'm wondering if I should add fudgy features to my test data structure. Probably not. There were a couple of tests that I didn't put in the data set because they were fudged already.
21:09 s1n_yapc left
KyleHa So I guess if any of those in the array need fudging, they'll have to be factored back out again. 21:09
moritz_ that works for now
(and in the long run it has to be all implemented anyway ;-) 21:10
21:10 stDavid joined
KyleHa Yeah, well, no sense making it hard on implementers in the short run. 21:10
21:16 lichtkind left 21:19 azawawi joined
azawawi hello 21:19
kolibrie ua 21:20
21:22 frew left
azawawi Padre's Perl 6 plugin in action: ahmadzawawi.blogspot.com/2009/06/pa...ction.html 21:22
japhb phenny: tell finanalyst I wrote the OpenGL bindings. They do work from both PIR and Perl 6 (in Rakudo). Or at least, WFM. :-) The black window problem is a (really long-standing) bug in Parrot NCI when JIT is enabled. You need to configure parrot with --jitcapable=0. 21:26
phenny japhb: I'll pass that on when finanalyst is around.
moritz_ I just tested shapes.pir with current rakudo - works, albeit *very* slow 21:29
japhb moritz_: how slow? I find it ~75x times slower than the PIR version.
moritz_ japhb: how did you measure the speed? 21:30
japhb let it run until the design has rotated at least one full turn, then hit Esc to quit and look at the average frame rate printed there. 21:31
21:31 lambdabot left
japhb s/there/in your terminal/ 21:31
I should probably add a --benchmark option that runs it until it rotates exactly one full time, to make sure the comparison is as valid as possible. 21:32
moritz_ rakudo: 3.9 fps, parrot: 197 fps
japhb Right now, they're *so* different, I'm only worried about order of magnitude.
p6eval rakudo 10f223: OUTPUT«Statement not terminated properly at line 2, near "fps, parro"␤in Main (src/gen_setting.pm:0)␤»
moritz_ rakudo: 197 / 3.9
p6eval rakudo 10f223: ( no output )
moritz_ rakudo: say 197 / 3.9
p6eval rakudo 10f223: OUTPUT«50.5128205128205␤» 21:33
japhb So, within variability of architectures and build day.
moritz_ yes, the order of magnitude has stayed the same
japhb Also, I compile Parrot with --jitcapable=0 --optimes.
er --optimize
moritz_ speaking of which, I could try opengl with clang... ;-) 21:34
japhb :-)
If clang manages to get a working compile with --jitcapable=1 on 32-bit Intel, I'm all for switching *today*
21:34 lambdabot joined
moritz_ I only have amd64 to test 21:35
21:35 hercynium left
japhb I have one of each. 21:35
Because I bought my laptop about one season before Core 2 came out. :-( 21:36
moritz_ if you have no more than 3GB ram, 64bit rarely has practical benefits 21:37
21:38 hercynium joined
moritz_ never try to compile parrot with --optimize with a debug build of clang 21:38
it's just infintely slow
japhb True, but Core 2 was intrinsically a much faster chip than the original Core, even for 32-bit stuff. And I wouldn't constantly be getting skipping watching 720p or larger videos ...
heh
21:39 kst left
moritz_ I have to confess I don't know much about individual processors/processor families 21:40
21:40 kst joined
moritz_ just general statements about broader families 21:40
21:40 azawawi left
moritz_ s/families/architectures/ 21:41
21:49 jaldhar left
pugs_svn r27178 | kyle++ | [t/spec] Reduce my own test bloat. One test per case instead of three. 21:50
japhb moritz_: did you manage to get a clang build with OpenGL? 21:52
21:52 bacek joined
moritz_ japhb: not yet. With --optimize it seems to hang somewhere... 21:54
japhb nod
21:56 KyleHa left
moritz_ and on the machine with clang I don't have the opengl headers yet *sigh* 21:56
japhb oops
21:56 hercynium left 21:57 nihiliad left
moritz_ uhm, what packages do I need on debian for that? 21:58
I have libl1-mesa-dev and all dependencies 21:59
ah, freeglut3-dev is missing 22:03
Tene I still get FAIL with OpenGL.
:(
japhb moritz_: sorry, multitasking 22:04
Tene: remind me again what the FAIL form was?
22:04 iblechbot left
Tene japhb: paste in #parrot 22:04
japhb Tene: Ah yes, that one 22:05
frack.
That really seems to be a freeglut error. 22:06
Tene How could I test that?
japhb Oh yes, I recall, I was going to suggest trying an app that used freeglut to rule it out.
lemme see if I can find a good one.
moritz_ will any app do that depends on freeglut? 22:09
Tene probably
japhb moritz_: yeah, I was filtering the output of apt-cache just now
22:09 pmurias left
moritz_ if you're on debian: adanaxisgpl depends on freeglut3 22:09
japhb: 'debtags search hardware::opengl' is a real helper
Tene I'm on Fedora. 22:10
moritz_ meh.
Tene but I have that package
moritz_ or ssystem, if you want to download less ;-) 22:11
22:11 last left
japhb Tene: I generally assume that Debian has a first approximation of the union of all other (free) distros, so this produces a list of which some are likely to exist for you. :-) 22:12
Tene :)
japhb moritz_: apt-get install debtags :-) 22:13
I started with Debian long before such tags were all that useful, and never got in the habit
ah, nice 22:14
moritz_ I first did 'debtags tagsearch opengl' to find hardware::opengl 22:15
22:17 donaldh left, skids left 22:35 rfordinal left 22:36 rfordinal joined 22:41 xomas is now known as shanker|away, kst left 22:42 kst joined, shanker|away left, xomas joined 22:43 wigfield left 22:49 nErVe joined 22:54 rfordinal left, alester left
amoc rakudo: my $o = IO::A.new 22:55
p6eval rakudo 10f223: OUTPUT«Null PMC access in invoke()␤in Main (/tmp/vgehkLTATe:2)␤»
22:56 jaldhar joined
amoc submits [perl #66878] 22:57
nErVe "Has 9 duplications and 24 losses, D/L Score is 37.5" i wan to extract lines like these any regex that wld do the trick..?? 22:58
23:08 Whiteknight left 23:13 jferrero joined 23:26 bsb left 23:30 kidd_ left 23:31 kidd_ joined 23:39 cotto left 23:49 kst left 23:52 justatheory left 23:53 skids joined 23:56 jaldhar left, nihiliad joined 23:57 kst joined 23:58 justatheory joined