Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-08-05

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:04 icwiener-_- joined #perl6
00:05 kthakore joined #perl6
00:05 kthakore rakudo:
00:05 kthakore where is rakudo bot?
00:08 kthakore hello?
00:08 ihrd joined #perl6
00:09 japhb rakudo: say 'hello'
00:09 p6eval rakudo 24b26a: OUTPUT«hello␤»
00:09 kthakore ofmg
00:09 kthakore awsome
00:10 kthakore rakudo: say <1 2 3>.WHAT
00:10 p6eval rakudo 24b26a: OUTPUT«List()␤»
00:10 kthakore genuis
00:10 kthakore !!!!
00:11 japhb heh
00:11 kthakore rakudo: (<a b> X <1 2>).say
00:12 p6eval rakudo 24b26a: OUTPUT«a1a2b1b2␤»
00:12 kthakore rakudo: qx/rakudo is god doing this (<a b> X <1 2>).say/
00:12 p6eval rakudo 24b26a: OUTPUT«operation not permitted in safe mode␤in Main (lib/Safe.pm:25)␤»
00:12 kthakore nooooo
00:15 eternaleye rakudo: multi infix:<ö>( Str $someone, Str $species ) { say "$someone is a $species!" }; ('Camelia', 'Barry' ) »ö« ( 'butterfly', 'camel' );
00:15 p6eval rakudo 24b26a: OUTPUT«Camelia is a butterfly!␤Barry is a camel!␤»
00:15 kthakore how do I do qx interpolation properly?
00:15 eternaleye kthakore: You did it properly, but it's disabled for security reasons
00:15 kthakore oh
00:15 Hale-Bopp joined #perl6
00:15 kthakore yayayay
00:16 ascent_ joined #perl6
00:16 eternaleye Although, qx runs thins in the shell, not perl6
00:17 eternaleye so qx/echo foo/ would work, but qx/say foo/ would only work on OSX (and even then, it would make the word 'foo' come out of the speakers on the computer
00:17 kthakore ok I have a real question now. I am currently working on SDL_perl for perl5 and I noticed a parrot implementation in CPAN. Can the parrot implementation be used in p6
00:18 kthakore ?
00:18 buubot joined #perl6
00:18 jhelwig joined #perl6
00:18 Tene kthakore: Yes.
00:18 eternaleye I think so. There have been a few demos using OpenGL directly, but I don't know if anyone's used SDL in Rakudo. You could try 'use SDL:from<parrot>'
00:18 eternaleye rakudo: use SDL:from<parrot>
00:19 p6eval rakudo 24b26a: OUTPUT«libSDL not found!␤in Main (src/gen_setting.pm:445)␤»
00:19 kthakore hmmm ....
00:19 Tene sdl isn't installed on feather
00:20 kthakore so if I wanted to have a common bind between p5 and p6 for SDL. Is  parrot or p5/XS better?
00:20 japhb And there's no point trying to use SDL remotely ....
00:20 kthakore japhb, lol
00:20 ruz_mac joined #perl6
00:20 eternaleye japhb: I was mainly checking if it would load
00:20 kthakore unless if rakudo can beam it to my Xserver
00:20 Tene kthakore: parrot doesn't interoperate with perl 5 at all.
00:20 kthakore Tene, no I mean
00:20 kthakore for p6 SDL module
00:21 kthakore is c -> parrot -> p6 or c -> p5 -> p6 better?
00:21 eternaleye kthakore: XS doesn't work on parrot. It uses something different called NCI
00:21 kthakore eternaleye, noted above
00:21 eternaleye and p5 -> p6 doesn't work yet
00:21 kthakore eternaleye, ok
00:21 kthakore thx
00:21 Tene kthakore: p5 -> p6 isn't an option
00:21 kthakore back to hacking ...
00:21 Tene ah, too late
00:21 kthakore lol
00:21 kthakore thx for rakudo bot
00:22 japhb So yes, you want to use the Parrot one.  The problem is that not all Parrot libraries have been brought up to date with current spec for loading from HLLs (High Level Languages)
00:22 japhb work in progress, that.
00:24 kthakore okie
00:25 kthakore ps we are WIP too . http://github.com/kthakore/SDL_perl/tree
00:36 payload joined #perl6
00:37 payload perl6:
00:38 payload perl6: say "something"
00:38 p6eval elf 27872, pugs: OUTPUT«something␤»
00:38 p6eval ..rakudo 24b26a:  ( no output )
00:45 ZuLuuuuuu joined #perl6
01:08 payload say "foo" ~~ m☃foo☄
01:08 payload perl6: say "foo" ~~ m☃foo☄
01:08 p6eval rakudo 24b26a: OUTPUT«foo␤»
01:08 p6eval ..pugs: OUTPUT«*** ␤    Unexpected end of input␤    expecting "\\", variable name or "\9731"␤    at /tmp/bLPWaSPnVG line 2, column 1␤»
01:08 p6eval ..elf 27872: OUTPUT«Parse error in: /tmp/jhQYJD3GXn␤panic at line 1 column 0 (pos 0): Can't understand next input--giving up␤WHERE: say "foo" ~~ m☃foo☄␤WHERE:/\<-- HERE␤  STD_red/prelude.rb:99:in `panic'␤  STD_red/std.rb:76:in `scan_unitstopper'␤  STD_red/std.rb:224:in `comp_unit'␤
01:08 p6eval ..STD_red/std.rb:210…
01:11 ihrd left #perl6
01:12 stepnem_ joined #perl6
01:14 stepnem_ joined #perl6
01:24 justatheory joined #perl6
01:52 KyleHa joined #perl6
01:53 rhr_ joined #perl6
01:54 zamolxes joined #perl6
02:00 meppl good night
02:11 alester joined #perl6
02:19 ruz_mac_ joined #perl6
02:28 Chillance joined #perl6
02:34 wayland76 Good morning all :)
02:34 wayland76 Well, no, Good Afternoon, sorry :)
02:35 zamolxes joined #perl6
02:38 agentzh joined #perl6
02:39 mikehh_ joined #perl6
02:51 azawawi joined #perl6
02:51 azawawi std: .
02:51 p6eval std 27872: OUTPUT«[31m===[0mSORRY![31m===[0m␤Obsolete use of . to concatenate strings; in Perl 6 please use ~ instead at /tmp/FvUHdPC800 line 1 (EOF):␤------> [32m.[33m⏏[31m<EOL>[0m␤FAILED 00:02 36m␤»
02:56 justatheory joined #perl6
03:19 missingthepoint joined #perl6
03:20 donaldh joined #perl6
03:23 wayland76 Ok, this is really cool :)
03:23 wayland76 I'm converting a program from P5 to P6, and it's eliminating half my code
03:24 wayland76 Just because it has a proper OO system :)
03:39 missingthepoint wayland76: i can relate, i'm trying to port text::csv, and P6 means a LOT of OO junk can be eliminated
03:39 wayland76 Well, I should've really mentioned the "subset" feature
03:39 wayland76 That's actually eliminating more code than anything else :)
03:40 missingthepoint subset?
03:40 wayland76 my subset Str_not2b of Str where /^[isnt|arent|amnot|aint]$/;
03:40 wayland76 (That example is from the docs)
03:40 missingthepoint does that work in rakudoL
03:40 missingthepoint err, ?
03:40 wayland76 There was a lot of code keeping out illegal values
03:40 wayland76 Not sure
03:41 wayland76 But I tend to code in P6, and only do workarounds where I have to
03:41 wayland76 When I hit bugs, if there isn't an obvious workaround, I tend to block on them
03:41 wayland76 rakudo: my subset Str_not2b of Str where /^[isnt|arent|amnot|aint]$/;
03:41 p6eval rakudo 24b26a:  ( no output )
03:42 missingthepoint think you need to instantiate sometthing there...
03:42 wayland76 rakudo: my subset Str_not2b of Str where /^[isnt|arent|amnot|aint]$/; my Str_not2b $text; $text = 'amnot';
03:42 p6eval rakudo 24b26a: OUTPUT«Null PMC access in type()␤in Main (/tmp/9Gge68acKK:2)␤»
03:42 wayland76 rakudo: my subset Str_not2b of Str where /^[isnt|arent|amnot|aint]$/; my Str_not2b $text; $text = 'whatever';
03:42 p6eval rakudo 24b26a: OUTPUT«Null PMC access in type()␤in Main (/tmp/XTmpf80pmG:2)␤»
03:43 wayland76 I'll take that as a "no" :)
03:43 wayland76 It parses, but fails to run
03:44 * missingthepoint wonders how it parses
03:44 wayland76 Well, there is that too :)
03:45 wayland76 Why are you doing Text::CSV?  Do you need it, or were you looking for a project?
03:45 zamolxes joined #perl6
03:45 missingthepoint Pm wanted it
03:45 missingthepoint (well, something to handle CSV data)
03:45 missingthepoint and it sure is a great way to find rakudobugs.
03:47 wayland76 Yeah, I've submitted more rakudobugs in the last week than ever before
03:47 wayland76 Actually, maybe only the same
03:47 wayland76 (2 over the past year, then two this last week)
03:48 wayland76 Once I get this project to a sticking point, though, then I'll have to work on some of the Rakudobugs myself if I want to make any progress
03:48 wayland76 I don't know PIR, though
03:48 ancients joined #perl6
03:48 wayland76 Or Rakudo's internals :)
03:49 missingthepoint it's fairly easy... have a look at the book on parrot.org
03:49 missingthepoint good docs are good
03:49 missingthepoint http://docs.parrot.org/parrot/latest/html/
03:49 missingthepoint "Book PIR"
03:49 missingthepoint just added i think
03:50 eternaleye rakudo: subset Negation of Str where { /^[isnt|arent|amnot|aint]$/; } my Negation $text; $text = 'amnot'; say $text; $text = 'yesiam'; say $text;
03:50 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near "my Negatio"␤in Main (src/gen_setting.pm:3363)␤»
03:50 wayland76 Yeah, I know there are docs, but I haven't had reason to use PIR yet
03:50 eternaleye rakudo: subset Negation of Str where { /^[isnt|arent|amnot|aint]$/; }; my Negation $text; $text = 'amnot'; say $text; $text = 'yesiam'; say $text;
03:50 p6eval rakudo 24b26a: OUTPUT«Use of uninitialized value␤Assignment type check failed; expected , but got Str␤in Main (/tmp/zCBaNqjxjY:2)␤»
03:50 wayland76 rakudo: subset Negation of Str where { /^[isnt|arent|amnot|aint]$/; }; my Negation $text; $text = 'amnot'; say $text;
03:50 p6eval rakudo 24b26a: OUTPUT«Use of uninitialized value␤Assignment type check failed; expected , but got Str␤in Main (/tmp/catVriGbtT:2)␤»
03:51 eternaleye rakudo: subset Negation of Str where { /^[isnt|arent|amnot|aint]$/; }; my Negation $text = 'amnot'; say $text; $text = 'yesiam'; say $text;
03:51 p6eval rakudo 24b26a: OUTPUT«Use of uninitialized value␤Assignment type check failed; expected , but got Str␤in Main (/tmp/ZHOa1Ue7wR:2)␤»
03:51 eternaleye Hm
03:51 eternaleye wayland76: You could use enums
03:52 wayland76 Yeah, in many cases I could
03:52 eternaleye rakudo: enum Negation <isnt arent amnot aint>; my Negation $foo; $foo = '
03:52 eternaleye gah
03:52 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near "= '"␤in Main (src/gen_setting.pm:3363)␤»
03:53 eternaleye rakudo: enum Negation <isnt arent amnot aint>; my Negation $foo; $foo = 'isnt'; say $foo'; $foo = 'yesiam'; say $foo
03:53 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near "'; $foo = "␤in Main (src/gen_setting.pm:3363)␤»
03:53 wayland76 In fact, maybe I should.  But I think this code will block on a lot of different things, so I'll only do it if I end up blocking on them
03:53 eternaleye rakudo: enum Negation <isnt arent amnot aint>; my Negation $foo; $foo = 'isnt'; say "$foo"; $foo = 'yesiam'; say $foo
03:53 p6eval rakudo 24b26a: OUTPUT«Assignment type check failed; expected Negation, but got Str␤in Main (/tmp/HpCRpE8SwE:2)␤»
03:53 * ancients is away (4[O.F.F.L.I.N.E])
03:54 eternaleye rakudo: enum Negation <isnt arent amnot aint>; my Negation $foo; $foo = isnt; say "$foo"; $foo = 'yesiam'; say $foo
03:54 p6eval rakudo 24b26a: OUTPUT«0␤Assignment type check failed; expected Negation, but got Str␤in Main (/tmp/dHUJySfYCB:2)␤»
03:55 eternaleye rakudo: enum Negation <<:isnt<isnt> :arent<arent> :amnot<amnot> :aint<aint>>>; my Negation $foo; $foo = 'isnt'; say "$foo"; $foo = 'yesiam'; say $foo
03:56 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near ">; my Nega"␤in Main (src/gen_setting.pm:3363)␤»
03:56 eternaleye rakudo: enum Negation <<:isnt('isnt') :arent('arent') :amnot('amnot') :aint('aint')>>; my Negation $foo; $foo = 'isnt'; say "$foo"; $foo = 'yesiam'; say $foo
03:56 p6eval rakudo 24b26a: OUTPUT«Assignment type check failed; expected Negation, but got Str␤in Main (/tmp/iGgZruYyLK:2)␤»
03:56 eternaleye Hmm
03:57 eternaleye According to $09, that should work
03:57 eternaleye *S09
03:58 wayland76 Looks like I can't use enums eiother then :)
03:59 kane_ joined #perl6
04:05 eternaleye rakudo: enum Negation <<:isnt('isnt') :arent('arent') :amnot('amnot') :aint('aint')>>; my Negation $foo; $foo = isnt; say "$foo"; $foo = 'yesiam'; say $foo
04:06 p6eval rakudo 24b26a: OUTPUT«Could not find non-existent sub isnt␤»
04:06 eternaleye rakudo: enum Negation <<:isnt('isnt') :arent('arent') :amnot('amnot') :aint('aint')>>; my Negation $foo; $foo = Negation::isnt; say "$foo"; $foo = 'yesiam'; say $foo
04:06 p6eval rakudo 24b26a: OUTPUT«Null PMC access in invoke()␤in Main (/tmp/c3iOVD7jOH:2)␤»
04:13 eternaleye rakudo: class MyClass { has $!handle = $*IN handles *; method coyote { say $.get; return True; }; }; my $e = MyClass.new; while $e.coyote() { True };
04:13 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near "handles *;"␤in Main (src/gen_setting.pm:3363)␤»
04:13 eternaleye rakudo: class MyClass { has $!handle = $*IN handles 'get'; method coyote { say $.get; return True; }; }; my $e = MyClass.new; while $e.coyote() { True };
04:13 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near "handles 'g"␤in Main (src/gen_setting.pm:3363)␤»
04:13 SmokeMachine joined #perl6
04:14 eternaleye rakudo: class MyClass { has $!handle handles 'get'; submethod BUILD { $!handle = $*IN; }; method coyote { say $.get; return True; }; }; my $e = MyClass.new; while $e.coyote() { True };
04:14 p6eval rakudo 24b26a: OUTPUT«Land der Berge, Land am Strome,␤Land der Äcker, Land der Dome,␤Land der Hämmer, zukunftsreich!␤Heimat bist du großer Söhne,␤Volk, begnadet für das Schöne,␤vielgerühmtes Österreich,␤vielgerühmtes Österreich!␤␤Heiß umfehdet, wild umstritten␤liegst dem Erdteil du inmitten,␤einem
04:14 p6eval ..stark…
04:14 eternaleye There.
04:15 eternaleye (for reference: http://iiafw.com/2008/11/12/oop-meep/ )
04:25 Psyche^ joined #perl6
04:27 xinming joined #perl6
04:59 alester joined #perl6
05:09 tann_ joined #perl6
05:15 tann_ rakudo: say caller.perl; # :)
05:15 p6eval rakudo 24b26a: OUTPUT«Could not find non-existent sub caller␤»
05:16 diakopter rakudo: use v6; use v6;
05:16 p6eval rakudo 24b26a:  ( no output )
05:19 finanalyst joined #perl6
05:27 cotto joined #perl6
05:40 orafu joined #perl6
06:24 rfordinal joined #perl6
06:41 payload joined #perl6
07:09 meppl joined #perl6
07:13 Matt-W Goooooood morning
07:14 moritz_ oh hai
07:14 moritz_ http://perlgeek.de/blog-en/perl-6​/rakudo-star-announced.writeback
07:15 Su-Shee joined #perl6
07:15 Su-Shee good morning. :)
07:17 moritz_ Su-Shee: good morning; you just missed my advertisment: http://perlgeek.de/blog-en/perl-6​/rakudo-star-announced.writeback
07:20 donaldh joined #perl6
07:22 missingthepoint moritz_: VERY nice article.
07:22 missingthepoint moritz_++
07:23 Su-Shee moritz_: nice. I see a bright future in perl marketing. ;)
07:24 missingthepoint :)
07:24 rfordinal joined #perl6
07:24 * Su-Shee is going to fix the perl6 projects layout until the end of the week. I was thinking to make two download buttons (1) parrot, 2) rakudo - one needs both afterall...)
07:26 missingthepoint Su-Shee, good idea... since Pm is planning to move to building against installed Parrot
07:26 Su-Shee exactly. why force people to click two sites if they can have two download buttons. :)
07:27 missingthepoint Su-Shee: did you do the p6p.org design?
07:28 wayland76 Ooh, the dead lives again!  (#perl6 revives)
07:28 Su-Shee missingthepoint: yes.
07:29 Su-Shee missingthepoint: but I didn't invent the colouring of the butterfly! :)
07:30 moritz_ missingthepoint, Su-Shee: thank you
07:31 missingthepoint moritz_: np
07:31 missingthepoint Su-Shee: as someone who's been exposed to many website designs, that's a good one. Su-Shee++
07:32 missingthepoint and I do think camelia is a little bright for a language logo... but maybe that's apt :)
07:32 Su-Shee If I get a nice idea, I'll make some buttons like "rakudo love" and "I code butterflies" or something like that (contemporary version of "this site is made with vim" ;)
07:32 moritz_ you can still de-colorize it
07:33 moritz_ Su-Shee: that's a nice idea
07:33 Su-Shee moritz_: it's very memorable and NOT "hey, we're technology, let's make this site dark blue like everybody else" ;)
07:33 missingthepoint Su-Shee: that has me giggling!
07:34 missingthepoint i like
07:34 Su-Shee moritz_: and it's also "cute" enough to make p6 look less intimidating. ;)
07:34 moritz_ I'd also love to seem some Perl 6 "corporate identity" styles that people can use to design their Perl 6 sites
07:35 Su-Shee moritz_: that's not easy - will it be a camel again? take the butterfly? go with the "do" theme?
07:35 moritz_ currently rakudo.de and perl-6.de are stuck with their (non-)designs and I have no idea how to style them
07:35 moritz_ Su-Shee: camel is dangerous (copyright by O'Reilly)
07:35 moritz_ Su-Shee: what is the "do" theme?
07:35 missingthepoint avoid camel
07:36 Su-Shee moritz_: raku do ("path", "way" in japanese)
07:36 Su-Shee I was thinking along the line of a monk with a parrot on his shoulder. ;)
07:36 tann_ nice post, moritz
07:36 tann_ moritz++
07:37 * ancients is away (4[O.F.F.L.I.N.E])
07:37 moritz_ Su-Shee: I was thinking of something rakudo agnostic (not all Perl 6 is Rakudo), but that would be a good start nonethelss
07:37 moritz_ [ancients]: please don't announce that publicly, that's not very interesting for us
07:37 tann_ not that 1 more karma point would help moritz achieve nivarna any sooner
07:38 rfordinal3643 joined #perl6
07:38 Matt-W tann_: it's like zeno's paradox
07:38 moritz_ as the perlmonks quibs say "A journey to 1000 XP begins with a single point"
07:38 wayland76 moritz_++ for the article
07:39 Su-Shee moritz_: the interesting question will be: make a a) perl 6 CI and b) a rakudo one? Or make something which can take "perl 6" CI and transform it easily into rakudo, pugs, sexysixnew, whatever..
07:39 Su-Shee .oO(sexysix.org ;)
07:39 moritz_ something transformable would be awesome
07:39 wayland76 moritz_: I suspect that ancients' IRC client does it for him
07:40 missingthepoint wayland76: i doubt his client puts in O.F.F...
07:40 missingthepoint (but i could be wrong, there are more obnoxious things on the internet)
07:40 moritz_ Su-Shee: already taken :(
07:40 missingthepoint moritz_: let me guess...
07:40 wayland76 missingthepoint: I'm thinking he's programmed his client to do it
07:40 moritz_ well, IRC clients are configureable
07:40 Su-Shee moritz_: too controversy anyway. ;)
07:41 moritz_ missingthepoint: seems to be SFW
07:41 missingthepoint wayland76: exactly my point :)
07:41 missingthepoint moritz_: H==W, :)
07:42 tann_ it's heart-warming to see a set goal for perl 6 through rakudo ... dammit, i should quit spending hours playing at work and instead, use 'em on patching rakudo :)
07:42 missingthepoint tann_: i agree.
07:42 missingthepoint Pm++
07:43 Matt-W if only
07:43 * Matt-W is considering looking for another job, but doubts there's 'full time Perl 6 developer' available anywhere yet
07:43 tann_ Matt-W: indeed, those dudes keep challenging me at the pool table :)
07:43 wayland76 Matt-W: If you find one, I'll fight you for it
07:44 Su-Shee Matt-W: I think we have to found those companies on our own within the next years.
07:45 Su-Shee Matt-W: which leads to the more serious question on how to place Perl 6 as a "future programming language".
07:45 wayland76 tann_: Tell them you'll play them every day for a week if they make a Rakudo patch
07:45 tann_ wayland76: unfortunately, they're all java sellouts :)
07:45 Matt-W tann_: tell them that Perl 6 improves their pool
07:45 Matt-W boooo
07:46 Matt-W lots of java at my work too
07:46 * Matt-W scowls
07:46 wayland76 Tell them you like Perl 6 because it does objects better than Java :)
07:46 wayland76 And it's more readable :)
07:46 wayland76 (What are the other hot buttons for Java people? :) )
07:46 Matt-W operator overloading
07:46 tann_ not only do i have to withstand the ridicule on my pool skill, i also suffer from lots of java preaching :)
07:47 Matt-W unless they've swallowed the dreadful Java philosophy that they cause more trouble than they're worth
07:47 Matt-W roles
07:47 Matt-W multiple inheritance
07:47 Matt-W anonymous functions!
07:47 Matt-W closures!
07:47 moritz_ closures with just two characters!
07:47 Matt-W exceedingly flexible foreach loops
07:48 tann_ and the masterpiece autoboxing :P
07:48 Su-Shee "yes, but where are the support contracts?"
07:48 wayland76 Matt-W: I know they're cool features, but do Java people have them as hot buttons (I mean ways in which they think Java is better)?
07:48 Matt-W wayland76: closures are something lots of Java programmers wish they had
07:48 Su-Shee "and students don't learn it at university, how do I find developers?" ;)
07:48 moritz_ Su-Shee: point them to http://www.rakudoconsulting.com/main.html
07:48 Matt-W Su-Shee: you hire clever people who can learn it
07:49 Matt-W students don't learn Java at university anyway
07:49 Matt-W they're told they do
07:49 Matt-W but they don't really
07:49 wayland76 Su-Shee: Tell them that that means that only good people know P6, unlike Java :)
07:49 tann_ agree
07:49 Matt-W university puts you on track to learn how to program
07:50 tann_ my college only offers programming language classes as self-paced courses :)
07:50 Matt-W and, hopefully, gives you a solid theoretical basis for it
07:50 Su-Shee well that are the arguments I hear in job interviews or from CEOs.
07:50 Matt-W Su-Shee: yes unfortunately they went to university and think they know how to manage programmers...
07:51 Su-Shee Matt-W: sometimes, unfortunately c.s. techs from university think they can do business and manage people. :))
07:51 tann_ actually, it varies from one school to another though
07:51 wayland76 Is $/ supposed to be the last Match?
07:51 tann_ some schools teach "database" classes strictly  as playing with SQL :)
07:51 moritz_ wayland76: aye
07:52 wayland76 Hmm.  Because I've got soemthing like: /^(\w+|Configured with|Thread model)\:(.*)/ and do { say $/[0]; }
07:52 wayland76 And the "say" part says: Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'
07:52 moritz_ that means it didn't match
07:53 wayland76 Ok, so why is i
07:53 moritz_ remeber that whitespaces in regexes don't mean anythiing
07:53 wayland76 ah
07:53 wayland76 No, it matched
07:53 moritz_ put quote around 'Configured with'
07:53 wayland76 But I'm forgetting that the return value from // is not a boolean
07:53 moritz_ is it a different scope?
07:53 rfordinal joined #perl6
07:53 moritz_ it can be used as one
07:53 wayland76 ok
07:54 wayland76 Anyway, it's matching Target: i386-redhat-linux
07:54 wayland76 I think it matches the \w+ bit
07:54 moritz_ aye
07:55 moritz_ rakudo: 'Target: i386-redhat-linux' ~~ /^(\w+|'Configured with'|'Thread model')\:(.*)/ and say $/[0];
07:55 p6eval rakudo 24b26a: OUTPUT«Target␤»
07:55 wayland76 Anyway, if it didn't match, why is it running the code in "and do"?
07:55 moritz_ rakudo: 'Target: i386-redhat-linux' ~~ /^(\w+|'Configured with'|'Thread model')\:(.*)/ and do { say $/[0] };
07:55 p6eval rakudo 24b26a:  ( no output )
07:55 wayland76 Ah, thanks :)
07:55 moritz_ rakudo: 'Target: i386-redhat-linux' ~~ /^(\w+|'Configured with'|'Thread model')\:(.*)/ and do { say $/[0] };
07:55 p6eval rakudo 24b26a: OUTPUT«Target␤»
07:56 moritz_ don't know why it didn't work the first time
07:56 moritz_ maybe an evalbot timeout
07:56 wayland76 Yup
07:57 wayland76 Hmm.  I'm getting the input from a q:x/gcc -v/
07:57 wayland76 And I'm having trouble isolating the problem :(
08:01 wayland76 rakudo: @lines = ('Target: i386-redhat-linux'); for @lines { /^(\w+)\:(.*)/ and do { say $/[0] }; }
08:01 p6eval rakudo 24b26a: OUTPUT«Symbol '@lines' not predeclared in <anonymous> (/tmp/UowNqxQxgK:2)␤in Main (src/gen_setting.pm:3363)␤»
08:01 wayland76 rakudo: my @lines = ('Target: i386-redhat-linux'); for @lines { /^(\w+)\:(.*)/ and do { say $/[0] }; }
08:01 p6eval rakudo 24b26a: OUTPUT«Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'␤»
08:01 wayland76 There we go
08:01 wayland76 How come? :)
08:01 wayland76 Does bare // still match against $_?
08:04 finanalyst joined #perl6
08:07 moritz_ it does
08:07 moritz_ wayland76: please submit a bug report
08:08 moritz_ rakudo: @lines = ('Target: i386-redhat-linux'); for @lines -> $l { $l ~~ /^(\w+)\:(.*)/ and do { say $/[0] }; }
08:08 p6eval rakudo 24b26a: OUTPUT«Symbol '@lines' not predeclared in <anonymous> (/tmp/T8hWt3GoF0:2)␤in Main (src/gen_setting.pm:3363)␤»
08:08 moritz_ rakudo: my @lines = ('Target: i386-redhat-linux'); for @lines -> $l { $l ~~ /^(\w+)\:(.*)/ and do { say $/[0] }; }
08:08 p6eval rakudo 24b26a: OUTPUT«Target␤»
08:08 moritz_ that seems to be a workaround for now
08:09 moritz_ rakudo: given 'Target: i386-redhat-linux' { /^(\w+)\:(.*)/ and do { say $/[0] }; }
08:09 p6eval rakudo 24b26a: OUTPUT«Method 'postcircumfix:[ ]' not found for invocant of class 'Failure'␤»
08:09 moritz_ so matching against $_ seems to be the problem
08:21 rfordinal3643 joined #perl6
08:27 szabgab_mib joined #perl6
08:27 szabgab_mib hi
08:27 szabgab_mib pmichaud: IMHO http://use.perl.org/~Alias/journal/39406  better respond to this and other rumors
08:28 moritz_ unofficial response here: http://perlgeek.de/blog-en/per​l-6/rakudo-star-announced.html
08:28 moritz_ I should link to that from a comment on Alias' article
08:32 szabgab_mib moritz_: that would be good
08:32 moritz_ done
08:33 icwiener joined #perl6
08:35 Jedai joined #perl6
08:57 szabgab_mib moritz_: "announced the he'll "  on your blog
08:58 moritz_ szabgab_mib: fixed, thank you
09:04 [particle] joined #perl6
09:31 payload rakudo: sub foo { <1 2 3> }; for foo() { .print }
09:31 p6eval rakudo 24b26a: OUTPUT«123»
09:31 payload rakudo: sub foo { <1 2 3> }; for foo { .print }
09:31 p6eval rakudo 24b26a: OUTPUT«Could not find non-existent sub for␤»
09:31 payload is this a bug?
09:32 moritz_ std: sub foo { <1 2 3> }; for foo { .print }
09:32 p6eval std 27872: OUTPUT«[31m===[0mSORRY![31m===[0m␤Function 'foo' needs parens to avoid gobbling block at /tmp/n2Vpl2W10z line 1:␤------> [32msub foo { <1 2 3> }; for foo[33m⏏[31m { .print }[0m␤Missing block (apparently gobbled by 'foo') at /tmp/n2Vpl2W10z line 1 (EOF):␤------> [32msub foo { <1
09:32 p6eval ..2…
09:32 moritz_ payload: no, it's just a less-than-awesome error message
09:33 payload ah okay
09:38 wknight8111 joined #perl6
09:40 wayland76 And the Perl6 spec says that Perl will be officiall awesome :)
09:41 moritz_ and rakudo will get the awesome error message once it uses STD.pm as a front end
09:45 pugs_svn r27873 | lwall++ | [signature.t] remove Sorry!
09:47 moritz_ ouch, these were my fault
09:49 donaldh joined #perl6
10:03 wayland76 rakudo: my $thisval = 'gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)'; $thisval ~~ m:s/'gcc version ' (<[\.1..9]>+) (\d+)/ and do { say $/.perl; }
10:03 p6eval rakudo 24b26a: OUTPUT«Colons cannot be used as delimiters in quoting constructs at line 2, near ":s/'gcc ve"␤in Main (src/gen_setting.pm:3363)␤»
10:03 wayland76 Does anyone know if there's a way to do this in Rakudo yet?
10:05 dakkar joined #perl6
10:07 missingthepoint or this: my $data = q:x/dir c:\/; say for $data.split("\n")
10:07 missingthepoint wayland76: does the precedence there work the same as Perl 5?
10:08 wayland76 missingthepoint: I've used this successfully: my @lines = split(/\n/, q:x"gcc -v");
10:09 wayland76 You may need to use single quotes instead
10:09 missingthepoint rakudo: my @m = 'b'.^methods(); say ~ @m
10:09 wayland76 Or use \\
10:09 p6eval rakudo 24b26a: OUTPUT«sprintf Scalar pred encode succ ACCEPTS perl WHICH lcfirst roots reduce 1 trim map 1 cis 1 1 1 min rand max 1 bytes 1 1 1 grep 1 1 uc ceiling p5chomp unpolar samecase floor 1 ord round flip does 1 split 1 words srand reverse isa 1 ucfirst comb fmt trans first chop 1 values 2 1
10:09 p6eval ..1 1 …
10:09 missingthepoint rakudo: my @m = 'b'.^methods(); if ~@m ~~ /split/ { say 'there' }
10:09 p6eval rakudo 24b26a: OUTPUT«there␤»
10:10 missingthepoint so... why can't i:
10:10 missingthepoint rakudo: my $in = Q:b/foo\nbar\nbat/; my @lines = $in.split(Q:b/\n/); $_.say for @lines
10:10 p6eval rakudo 24b26a: OUTPUT«foo␤bar␤bat␤»
10:10 missingthepoint haha :)
10:11 wayland76 Does it not work for you at home?
10:11 missingthepoint no
10:11 wayland76 Need to update Rakudo then :|
10:11 missingthepoint the evalbot is blessed
10:11 missingthepoint yup
10:16 wayland76 Does anyone know how to use sigspace on a //   ?
10:17 dakkar (wild guess) «/<sigspace>/» ?
10:17 dakkar or <w> or whatever it's called (read STD.pm)
10:17 wayland76 my $thisval = 'gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)'; $thisval ~~ m/<sigspace>'gcc version ' (<[\.1..9]>+) (\d+)/ and do { say $/.perl; }
10:17 wayland76 rakudo: my $thisval = 'gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)'; $thisval ~~ m/<sigspace>'gcc version ' (<[\.1..9]>+) (\d+)/ and do { say $/.perl; }
10:17 p6eval rakudo 24b26a: OUTPUT«Unable to find regex 'sigspace'␤in regex PGE::Grammar::_block56 (/tmp/QtQCJc2RhK:1)␤called from Main (/tmp/QtQCJc2RhK:2)␤»
10:17 dakkar ok, I got the name wrong :/
10:18 wayland76 No, I'm talking about the :sigspace modifier
10:18 dakkar ow
10:18 dakkar rakudo: say ("foo bar" ~~ m:sigspace/
10:18 wayland76 The spec says: m:s/ next cmd '='   <condition>/      is the same as         m/ <.ws> next <.ws> cmd <.ws> '=' <.ws> <condition>/
10:18 p6eval rakudo 24b26a: OUTPUT«Colons cannot be used as delimiters in quoting constructs at line 2, near ":sigspace/"␤in Main (src/gen_setting.pm:3363)␤»
10:19 dakkar rakudo: say ("foo bar" ~~ m:sigspace/ \w+ \w+/)
10:19 p6eval rakudo 24b26a: OUTPUT«Colons cannot be used as delimiters in quoting constructs at line 2, near ":sigspace/"␤in Main (src/gen_setting.pm:3363)␤»
10:19 * dakkar re-reads the synopses
10:19 wayland76 std: my $thisval = 'gcc version 4.3.2 20081105 (Red Hat 4.3.2-7) (GCC)'; $thisval ~~ m:s/'gcc version ' (<[\.1..9]>+) (\d+)/ and do { say $/.perl; }
10:19 p6eval std 27873: OUTPUT«ok 00:03 39m␤»
10:19 wayland76 Looks like a Rakudo NYI
10:20 wayland76 Except I know that "rule" treats it as sigspace
10:20 wayland76 But when I tried using the word "rule" it complained.  Oh well :)
10:23 dakkar rakudo: say ("foo bar" ~~ mm/ \w+ \w+/)
10:23 p6eval rakudo 24b26a: OUTPUT«Statement not terminated properly at line 2, near "+/)"␤in Main (src/gen_setting.pm:3363)␤»
10:23 dakkar oh well
10:24 missingthepoint dakkar: mm// is NYI too :(
10:24 dakkar clearly…
10:24 missingthepoint incidentally, would you find a detailed list of what's NYI in Rakudo helpful?
10:24 dakkar I'd put it in the RT
10:25 missingthepoint well, you are not a newbie then :)
10:25 fridim_ joined #perl6
10:25 missingthepoint ... which is who I'm writing it for.
10:26 dakkar but yes,  having the list (kept up-to-date) would really help newbies
10:26 Su-Shee I've just read the rakudo roadmap and feel.. small.
10:27 wayland76 missingthepoint: There's already a list somewhere of what is and isn't implemented in Rakudo, but it needs an update
10:27 missingthepoint wayland76: would that be rakudo.org/status?
10:27 wayland76 I forget where it is, though.  moritz_ might remember?
10:27 wayland76 Su-Shee: Why's that?
10:27 missingthepoint (i've already incorporated that into mine)
10:28 wayland76 missingthepoint: Yeah, that's the one
10:28 wayland76 missingthepoint: Do you have write access to rakudo.org?
10:30 Grrrr joined #perl6
10:36 M_o_C joined #perl6
10:39 pmichaud Good morning, #perl6
10:40 TimToady ++
10:40 * szbalint enjoys the all too short few days when pmichaud's mornings aren't my afternoon :)
10:41 wayland76 o/
10:42 wayland76 pmichaud: We've all been finding bugs :)
10:43 pmichaud wayland76: +1
10:44 wayland76 Now that I have a Rakudo RPM, I've found more bugs in the last week than in the preceding year, I think :)
10:46 pugs_svn r27874 | lwall++ | [CORE.setting] add invert
10:46 pugs_svn r27874 | lwall++ | [Cursor.pmc] chop out much useless boilerplate
10:46 pugs_svn r27874 | lwall++ | [gimme5] translate invert -> reverse
10:46 pugs_svn r27874 | lwall++ | [gimme5] some viv -5 convergence
10:46 pugs_svn r27874 | lwall++ | [viv] some gimme5 convergence
10:46 pugs_svn r27874 | lwall++ | [STD] check use of colon and closers for delims
10:46 pugs_svn r27874 | lwall++ | [STD] attempt to chop the final phantom semicolon from $*ORIG when done
10:47 TimToady er, the boilerplate was in viv, not Cursor.pmc  orz
10:49 cognominal just curious about localisation, can it be done that way :
10:49 cognominal my Int enum day ('Dim','Lum','Mar','Mer','Jeu','Ven','Sam') where @*ENV<LC_ALL> ~~ /^fr/;
10:49 TimToady enum doesn't take 'where' currently
10:50 TimToady nor does normal expression code
10:50 literal and shouldn't that be %*ENV<LC_ALL> ?
10:50 moritz_ wayland76: remember where what is?
10:51 cognominal literal, yes, my bad.
10:51 TimToady my Int enum day do given @*ENV<LC_ALL> { when /^fr/ { ('Dim','Lum','Mar','Mer','Jeu','Ven','Sam') } }
10:52 wayland76 moritz_: Don't worry, he found it :)
10:54 cognominal Also I am learning scala and haskell, and I am not sure that pattern matching wise, Perl 6 is powerful enough...
10:55 dakkar cognominal: I'd keep internal values independent of presentation… it prevents lots of problems
10:55 cognominal What I like about scala is that xml has a composer.
10:56 cognominal dakkar, I suppose I would use that construct to "unparse" a enum according a locale.
10:56 dakkar oh. it might work…
10:57 cognominal I am not here to solve a specific problem but to map Perl 6 construct to whatever arbitrary (and possibly silly) use I can think  :)
10:57 cognominal that's my way to learn.
10:58 cognominal Speaking about xml, I suppose it easy to determine if  a  "<"  is an mere array composer or xml one.
10:59 wayland76 Where do I read about this XML composer?
10:59 cognominal I see that many haskell/scala pattern matching can be expressed in term of Perl 6 signature
10:59 wayland76 (or what does it do, if you prefer that?)
11:00 cognominal wayland, I will give you the pages of the scala spec... let me find
11:00 pugs_svn r27875 | lwall++ | [closure-parameters.t] missing semicolons
11:01 cognominal wayland, that Chapter 10 of  http://www.scala-lang.org/do​cu/files/ScalaReference.pdf
11:02 cognominal xml composers also exist in the e4x  javascript extension.
11:02 cognominal but one must use stuff like jsquery to pattern match DOM stuff.
11:04 cognominal xml in scala, that's 4 page of specs that pack a lot of power
11:04 wayland76 Is this sort of like XML heredocs?
11:05 wayland76 Or am I completely missing something?
11:06 cognominal heredocs in Perl 6 generates strings... or am missing  something?  :)
11:06 wayland76 No, I've got the wrong end of the stick -- when you said "composer", I was assuming irrelevant stuff :)
11:07 wayland76 Ok, let's try again -- are you saying this gives you easy pattern matching on XML?
11:07 cognominal maybe I got the wrong term
11:07 cognominal yes it gives that.
11:07 wayland76 Does it give us anything else?
11:08 cognominal but we can also see a xml node the Perl way, it is kind of a Signature    a string, an array and a hash
11:08 cognominal wayland76, nope, but I think it is a lot.
11:09 wayland76 So you're saying it turns the XML into a perl object that can be accessed usefully as an object too
11:09 cognominal I am now speaking Perl 6  and not scala anymore.
11:10 wayland76 (yes, I'm mixing metaphors, sorry :) )
11:10 wayland76 Are you saying that if we had something like this Scala stuff in P6, it would generate useful P6 objects for each XML node?
11:11 cognominal well, I try to map general concepts like pattern matching in scala and haskell to what Perl 6 gives us. It happened that XML pattern matching in scala is very congruent with the rest of the langage.
11:12 cognominal yes, something like a Perl 6 signature.
11:13 wayland76 Are we talking about method signatures here?
11:13 cognominal if we don't special case special attributes like "id"  and "class" that is an array.
11:13 molaf_x joined #perl6
11:13 wayland76 I'm confused :)
11:14 cognominal Well Signature seem to be a very ubiquitous type,  I don't quite see the different between a Signature and a Capture.
11:14 synth joined #perl6
11:14 cognominal Well, my  ideas are not very clear
11:15 wayland76 Well, I don't know enough about Signature to understand what you're saying, I think :)
11:16 cognominal "Ce qui se conçoit bien s'énonce  clairement et les mots pour le dire viennent aisément"  Boileau
11:16 wayland76 The one thing I'll mention is that masak and I have both been working on things that are related to accessing stuff in a Match object using XPath
11:17 wayland76 (Btw, cognominal, thanks for trying to explain in English -- I'd never have coped in French :) )
11:17 cognominal That would translate "What you think well can be said clearly and the word to say it come easily"
11:17 cognominal Just to say, a contrario, that my tought is muddy so my words are, and a lost is lost in translation :)
11:18 wayland76 I have enough French to be able to match some of the English up with the French, now that you've translated it :)
11:19 cognominal "lost in translation"  A good movie btw...
11:20 wayland76 Haven't seen many movies (including that one)
11:20 donaldh joined #perl6
11:21 cognominal It is not mentionned in the page I gave you but scala has \ and \\  that are the / and / equivalent of XPath
11:21 cognominal these are operators.
11:21 wayland76 Ok
11:21 cognominal I meant equvalent of / and //
11:22 wayland76 I'm looking at making a separate quoting context that lets you do XPath-like stuff on trees
11:22 wayland76 cognominal: Yeah, I see what you mean
11:22 wayland76 I considered doing the thing as XPath contexts, but in the end I decided quoted would be better :)
11:24 cognominal In fact the Chapter 10 is very terse, one cannot understanding the packed power if one does not know pattern matching in scala,
11:24 wayland76 Yeah, that's about what I thought while I was reading it :)
11:25 cognominal The two books about scala I have are more informative.
11:25 cognominal Maybe I can find you information in the scala wiki.
11:26 wayland76 An example would be best :)
11:27 wayland76 Hey everyone, does anyone know how to get/set class attributes while in the .new() method?
11:28 moritz_ wayland76: you mean, in a custom new method?
11:28 wayland76 Yeah, that's the one
11:28 moritz_ you pass them as named arguments to bless()
11:29 wayland76 Ok, so can I pass in a hash?
11:29 wayland76 my $instance = GCCFetcher.bless(GCCFetcher.CREATE(), %fieldmap);
11:29 moritz_ http://irclog.perlgeek.de/search.pl?ch​annel=perl6&amp;nick=masak&amp;q=bless
11:29 moritz_ wayland76: |%fieldmap
11:29 wayland76 Ok, I was wondering :)  Thanks
11:30 wayland76 bless you :)
11:30 moritz_ but if you do it that way, why do you write a custom new() method at all?
11:30 wayland76 Because I've got some other code before that
11:30 moritz_ if the order doesn't really matter, a BUILD submethod should do too
11:31 wayland76 Yay!  moritz_++
11:32 moritz_ rakudo: class A { submethod BUILD { say "hi" } }; A.new
11:32 p6eval rakudo 24b26a: OUTPUT«hi␤»
11:33 moritz_ Perl 6 is great at optimizing for the common case, and keeping all options open for other cases
11:39 moritz_ ouch, the rss feed of my blog gives me a 500 internal server error
11:39 moritz_ that's why planetsix didn't pick my newest post up yet
11:40 M_o_C joined #perl6
11:47 cognominal wayland,  http://nopaste.snit.ch/17472
11:48 cognominal I have commented some scala code to explain how pattern matching operates in scala on xml
11:48 cognominal My comments starts after  //START:QUERY4
11:50 cognominal wayland76, btw. tabbing helps
11:54 Molaf joined #perl6
11:54 wayland76 After looking at it, it seems like it's like what I'm trying to achieve with my Tree stuff, that is, being able to pull stuff out of XML using XPath-like notation
11:54 cognominal probably
11:54 wayland76 Obviously I think it's a great idea, but when I tried to get it into core, it was rejected
11:54 wayland76 But it can probably be done as a library
11:55 wayland76 if it's a popular enough library, it will become ubiquitous :)
11:55 wayland76 Maybe I can get it into Perl 6.1 :)
11:55 cognominal yes,, same for the xml composer, that a mere syntactical extension.
11:55 Matt-W There's no need for XML syntax support to be in core Perl
11:56 Matt-W in 20 years when XML is long forgot, we'll be pleased it was just a module
11:56 wayland76 Matt-W: My Tree idea is more than just XML, though
11:57 wayland76 It's supposed to be an abstract tree/graph type model that could model any tree-like structure, from XML to filesystems to LDAP to ...
11:57 wayland76 :)
11:57 cognominal I suppose it could work on anything that is an attributed tree
11:57 wayland76 cognominal: That's my plan :)
11:58 cognominal I see that Perl 6 achieve all or  (probably) part of it with signatures
11:58 Matt-W see that could potentially be amazing
11:59 takadonet morning all
11:59 cognominal wayland76, See =head2 Unpacking tree node parameters
11:59 cognominal in S06
12:00 wayland76 cognominal: Yeah, but I want to be able to do this on *any* kind of tree-like structure
12:00 wayland76 Anyway, my plan is to code something up, and see what happens :)
12:02 cognominal well, signatures  and context can do a lot of thing, I just want to be sure that pattern matching can be easily expressed in Perl 6.
12:02 cognominal And if it does, I understand Larry when refusing to add stuff that would be redundant.
12:03 cognominal On the other hand, we would need tutorials to map  haskell/scala pattern matching to Perl 6   signature+context as pattern matchers.
12:04 wayland76 I don't think "redundant" is the word you want, but I see what you mean :)
12:04 Matt-W That sort of translation could be tricky, they're not the same thing.
12:04 Matt-W Although you can get some of it with subsets
12:04 cognominal that's my point :)
12:12 cognominal =head2 Argument list binding   is also very particularly relevant
12:13 cognominal I need to understand all of S06 to answer my question
12:13 moritz_ if you write S06/Argument list binding/ the IRC logs will link to the correct section :-)
12:14 cognominal thx moritz_
12:15 cognominal It seems that does what the @  do in scala and haskell
12:17 cognominal that's  S06/Unpacking tree node parameters/ at 13:59  :)
12:27 KyleHa joined #perl6
12:27 cono joined #perl6
12:31 M_o_C joined #perl6
12:36 ruoso joined #perl6
12:37 ruoso it seems that teasing works...
12:42 wayland76 On who?
12:44 ruoso on françois perrad
12:45 ruoso he implemented a xml grammar based on the w3c spec, with sax-like actions
12:52 wayland76 I saw that :).  I'll have to nick it sometimes and add more actions :)
12:52 wayland76 (I'm trying to make it into something somewhat DOM-like :) )
13:09 skids_ joined #perl6
13:12 payload joined #perl6
13:26 pugs_svn r27876 | lwall++ | [hyper.t] missing semi
13:27 pugs_svn r27877 | kyle++ | [t/spec] add subset tests based on IRC backlog
13:28 moritz_ we long speculated about a mechanism to turn IRC conversations into tests - now we found one (KyleHa++)
13:29 KyleHa Heh.
13:29 ruoso wayland76, to make it more DOM-like you just need a SAX->DOM translator
13:29 KyleHa I was a bit surprised about what I found.
13:30 pmichaud mberends++   #  this is an *outstanding* talk
13:31 moritz_ what is he talking about?
13:31 moritz_ and where's the video stream? :-)
13:31 pmichaud "Perl 6 for Perl 5 programmers"  is the talk title
13:31 pmichaud but it's really not about code, it's about Perl 6 as a project
13:32 moritz_ cool
13:32 pmichaud it's quite a comprehensive review (as much as can be fit in 40 minutes)
13:32 moritz_ well, you can say quite some things in 40 minutes
13:33 pmichaud yes... but describe Perl 6 in 40 minutes?  ;-)
13:33 pugs_svn r27878 | lwall++ | [STD] add infix:<defines>
13:33 moritz_ pmichaud: I think the project is not quite as complex as the language :-)
13:34 pmichaud sure, but he's covering the language as well
13:34 moritz_ Oh.
13:34 pmichaud (and now we're into the code section)
13:34 moritz_ pmichaud: any objections to bumping the parrot revision to r40393 to get more testing after bacek's keys_$something branch merge?
13:35 moritz_ it tests OK on amd64 linux
13:35 pmichaud no objection if spectests pass
13:35 moritz_ as much as with the previous revision :-)
13:36 Jedai joined #perl6
13:36 KyleHa pmichaud: I sent a CLA to TPF.  It should be there now-ish.  I'm not in a rush for anything; I just wanted to put a bug in your ear.
13:39 stepnem joined #perl6
13:39 pmichaud KyleHa: It arrived.
13:40 moritz_ cool
13:40 KyleHa Cool, thanks for confirming that for me, pmichaud++
13:41 pmichaud if someone wants to nominate you for commit access to the rakudo repository (and assuming you'd like such access), we can arrange it.  :-)
13:41 moritz_ +1
13:41 pmichaud +1
13:41 moritz_ I want KyleHa to add new test files to t/spectest.data in the very least
13:41 moritz_ otherwise chances are that we forget those
13:42 moritz_ and for functional patches... in case of doubt you can still open a ticket with the patch
13:42 pmichaud I just need a github idea
13:42 pmichaud *id
13:44 stepnem joined #perl6
13:49 KyleHa My github id is 'kyleha'.
13:50 KyleHa moritz: Last time I had a spectest.data addition, I opened a ticket for it, and you got it without the ticket.  I could keep doing tickets, but I'd rather be able to commit directly.
13:51 pmichaud mberend's presentation is *by far* the best 40 minute introduction to p6 that I've seen.
13:51 moritz_ KyleHa: yes, that's more efficient
13:52 Patterner pmichaud: URL? :)
13:52 pmichaud (although it's actually about 45 minutes)
13:52 pmichaud Patterner: he says it will be going into the pugs repo
13:56 takadonet I would like to see that presentation as well
13:57 azawawi joined #perl6
14:00 azawawi std: "hi"
14:00 p6eval std 27878:  ( no output )
14:00 pmichaud masak's job title:  "Destroyer".   I think we need to add that to rakudo.org somewhere
14:00 cono :D
14:00 moritz_ I thought about a "people & jobs" page on p6proj.org
14:01 TimToady a 6th box would let us move the download button out-of-line
14:02 KyleHa Establishing a list of people and jobs might have some unintended consequences.
14:02 moritz_ KyleHa: for example?
14:02 KyleHa It has to be maintained.  If the list goes stale, we have newbies chasing phantoms.
14:03 moritz_ all of the links have to be maintained
14:03 Su-Shee TimToady: I keep it in mind, I planned a new design (and fancy advertisement buttons like "rakudo love" and the like) for the end of the week anyway.
14:03 KyleHa Establishing a Name next to a particular Job might lead a newbie to believe that the Job is already filled and no help in that area is needed.
14:03 moritz_ KyleHa: that's a good point
14:04 KyleHa Imagine if I showed up and thought, "oh, Moritz has the testing all covered."  8-)
14:04 Su-Shee he doesn't?! ;)
14:05 moritz_ Su-Shee: actually KyleHa does more testing than me these days
14:06 moritz_ I try to supervise him where necessary, and do some things that nobody else cares about
14:07 KyleHa I'm glad for the supervision.
14:09 moritz_ actually it's something I'd do for everybody who commits to the test suite. Maybe I should announce that publicly
14:09 azawawi joined #perl6
14:10 KyleHa It's probably a good idea for every tester to look at every other tester's work, if possible, either to learn something or catch possible problems.
14:11 azawawi TimToady: shall I work around the substr string length error in redspans?
14:11 azawawi TimToady: is it intentional or a side effect of upcoming viv changes?
14:13 azawawi moritz_: is the same STD process re-used in evalbot?
14:14 mikehh joined #perl6
14:15 moritz_ azawawi: no, it spawns a new process for every request
14:26 justatheory joined #perl6
14:27 KyleHa joined #perl6
14:28 colomon What's the P6 syntax equivalent for the good old P5 while (<>)?  I know I've seen it but I forget, and it's blocking me on paying work at the moment.  :)
14:28 colomon I tried "for $*IN.lines" but that doesn't seem to do it.
14:31 colomon "for $*ARGFILES.lines" --> "Method 'lines' not found for invocant of class 'Failure'"
14:31 takadonet colomon: I believe it's $*IN.get
14:32 colomon takadonet: That doesn't seem to do anything.
14:34 colomon Unless it tries to read all the lines first before starting the for?  Let me try a smaller file...
14:34 colomon No, that's still just sitting there.
14:35 takadonet colomon: are you trying to read a file or something from standard in?
14:35 colomon Read a file.
14:36 colomon I've just rewritten the script to actually take a file name and open it.  I was just hoping for the old Perl magic...
14:39 takadonet colomon: http://szabgab.com/talks/pe​rl6/perl6-process-file.html  Normally I would help you further but I have a meeting in a few
14:40 colomon Ack.  Judging by the timing, it does try to read the entire file in before starting the for loop.  With a 10 meg file and amazing Rakudo-speed, this may not be a practical solution.
14:40 takadonet One day it will
14:41 colomon Sure, but I need it today.  Time to switch back to Perl 5...
14:41 colomon takadonet++
14:41 colomon PS That link is actually out of data... readline is no longer there.  I believe "lines" (which is what I am using) is the current equivalent.
14:42 takadonet I just noticed after i posted it
14:48 M_o_C joined #perl6
14:51 Psyche^ joined #perl6
14:52 adamski joined #perl6
14:56 icwiener_ joined #perl6
15:02 Su-Shee oh my.. perl6.com and perl6.org aren't really pleasant websites...
15:06 SmokeMachine joined #perl6
15:07 colomon Wow, perl6.com is particularly awful.  "Join the long list of people who haven't donated!" in effect.
15:08 Su-Shee and already ended anyway. ;)
15:09 TimToady it's a squatter, basically
15:19 rfordinal joined #perl6
15:20 donaldh joined #perl6
15:22 sri_kraih joined #perl6
15:45 arthur-_ joined #perl6
16:03 nihiliad joined #perl6
16:11 synth joined #perl6
16:18 kane_ joined #perl6
16:18 Jedai joined #perl6
16:37 fridim_ joined #perl6
16:58 Chillance joined #perl6
17:01 cdarroch joined #perl6
17:16 SmokeMachine joined #perl6
17:18 tann joined #perl6
17:19 tann rakudo: say "hello #perl6"
17:19 p6eval rakudo 3c5210: OUTPUT«hello #perl6␤»
17:23 moritz_ in #perl6 we're too cool and lazy to talk, we let the bots do that for us ;-)
17:30 lucs joined #perl6
17:35 justatheory joined #perl6
17:38 payload joined #perl6
17:41 Su-Shee amazing what AI implemented in perl 6 can do.. ;)
17:42 moritz_ aye; not mmany people suspected me of being one
17:43 moritz_ which means that I pretty much passed the Turing test
17:43 Su-Shee can't you be a cooking robot and make my dinner tomorrow? ;)
17:44 moritz_ no, tomorrow night I'll pretend to eat pizza with a bunch of geeks
17:47 Su-Shee "bunch of other AIs" ;)
17:48 braceta joined #perl6
17:48 moritz_ no, just easily fooled
17:53 kane_ joined #perl6
17:55 literal moritz_: I've gotta be somewhere else so I probably can't make it to tonight's meeting. If you see masak, can you tell him I'll have an update for him tomorrow?
17:55 edpratomo joined #perl6
17:56 moritz_ literal: sure. Or you coudl tell phenny to tell it masak, she's a very willing bot ;-)
17:56 moritz_ phenny: tell literal like this
17:56 phenny moritz_: I'll pass that on when literal is around.
17:56 Chillance_ joined #perl6
17:56 literal phenny: tell masak I can't make it to tonight's meeting, will give you an update tomorrow.
17:56 phenny literal: I'll pass that on when masak is around.
17:56 phenny literal: 17:56Z <moritz_> tell literal like this
17:57 literal I wonder why there are two bots here that do that
17:58 literal phenny: tell lambdabot something
17:58 phenny literal: I'll pass that on when lambdabot is around.
17:58 tann sub/method following multi is optional...how can p6 tell if a multi is a sub or a method with a package with semiconlon form?
17:58 moritz_ timtowtdi and all
17:58 literal hehe
17:58 moritz_ tann: it's always a sub
17:58 moritz_ tann: unless you write 'multi method'
17:58 tann ah
17:59 edpratomo funny conversation :-)
18:00 edpratomo with phenny :-)
18:01 adamski left #perl6
18:01 tann phenny: tell phenny  phenny: tell phenny   :)
18:01 phenny Hey, I'm not as stupid as Monty you know!
18:01 edpratomo ha ha
18:02 edpratomo phenny: punch phenny in the face
18:05 tann perl6: my @a; my @b := @a = (1..100).pick(10); say @a.perl, @b.perl; @b[0]++; say @a.perl, @b.perl;
18:05 p6eval pugs: OUTPUT«\(50, 53, 47, 56, 76, 58, 2, 69, 80, 79)\(50, 53, 47, 56, 76, 58, 2, 69, 80, 79)␤\(51, 53, 47, 56, 76, 58, 2, 69, 80, 79)\(51, 53, 47, 56, 76, 58, 2, 69, 80, 79)␤»
18:05 p6eval ..rakudo 3c5210: OUTPUT«[1, 79, 96, 17, 47, 45, 56, 4, 7, 34][1, 79, 96, 17, 47, 45, 56, 4, 7, 34]␤[2, 79, 96, 17, 47, 45, 56, 4, 7, 34][2, 79, 96, 17, 47, 45, 56, 4, 7, 34]␤»
18:05 p6eval ..elf 27878: OUTPUT«syntax error at (eval 133) line 4, at EOF␤ at ./elf_h line 5881␤»
18:07 zamolxes joined #perl6
18:12 Chillance_ joined #perl6
18:19 nihiliad joined #perl6
18:37 icwiener-_- joined #perl6
18:38 icwiener joined #perl6
18:45 icwiener-_- joined #perl6
18:46 kane_ joined #perl6
18:50 cotto This needs some perl 6 representation: http://thedailywtf.com/Articles​/Nerds,-Jocks,-and-Lockers.aspx
18:52 icwiener_ joined #perl6
19:05 Student joined #perl6
19:08 colomon rakudo: my @lockers = (1..20).map({0}); @lockers.map({ ($_ % $n == 0) ?? !$_ :: $_ });
19:08 p6eval rakudo 3c5210: OUTPUT«ResizablePMCArray: Can't pop from an empty array!␤in Main (src/gen_setting.pm:3363)␤»
19:09 moritz_ colomon: try it with ?? ... !!
19:09 colomon rakudo: my @lockers = (1..20).map({0}); @lockers.map({ ($_ % $n == 0) ?? !$_ !! $_ });
19:09 p6eval rakudo 3c5210: OUTPUT«Symbol '$n' not predeclared in <anonymous> (/tmp/dXepcjHd3I:2)␤in Main (src/gen_setting.pm:3363)␤»
19:09 icwiener joined #perl6
19:10 colomon rakudo: my @lockers = (1..20).map({0}); my $n = 2; @lockers.map({ ($_ % $n == 0) ?? !$_ !! $_ }).say;
19:10 p6eval rakudo 3c5210: OUTPUT«11111111111111111111␤»
19:10 colomon moritz_++
19:11 colomon rakudo: my @lockers = (1..20).map({0}); my $n = 3; @lockers.map({ ($_ % $n == 0) ?? !$_ !! $_ }).say;
19:11 p6eval rakudo 3c5210: OUTPUT«11111111111111111111␤»
19:12 colomon rakudo: my @lockers = (1..20).map({0}); my $n = 2; @lockers.map({ (($_ % $n) == 0) ?? !$_ !! $_ }).say;
19:12 p6eval rakudo 3c5210: OUTPUT«11111111111111111111␤»
19:13 moritz_ colomon: you seem to want to get the index somehow
19:13 moritz_ colomon: $_ is always 0 in your case
19:13 colomon right!
19:13 colomon moritz_++ again
19:13 moritz_ and the initialization can be written as 0 xx 20
19:13 colomon I tried X and x.
19:14 colomon Would have worked it out sooner or later.  :)
19:15 colomon Ack!  So easy to do if I introduce a side-effect into the map.  But that makes me feel so dirty...
19:16 moritz_ hey, it's for the daily WTF ;-)
19:17 Student aah, that's what you're doing
19:18 lisppaste3 colomon pasted "Quick brute force to 20" at http://paste.lisp.org/display/84846
19:19 synth joined #perl6
19:20 colomon My CAD import is done, should get back to paying work, alas.
19:20 donaldh joined #perl6
19:23 tann rakudo: my %squares = (1..10).map: { $_ * $_ => 1 }; my @open_lockers = (1..100).grep: { %squares{$_}.exists }; say @open_lockers.perl;
19:24 p6eval rakudo 3c5210: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤Null PMC access in invoke()␤in Main (/tmp/m8SWwkZOTZ:2)␤»
19:26 molaf_x joined #perl6
19:29 alester joined #perl6
19:30 colomon tann: why that way of expressing it?
19:31 tann colomon: ?
19:31 colomon rakudo: my @open_lockers = (1..10).map({$_*$_}); say @open_lockers.perl;
19:31 p6eval rakudo 3c5210: OUTPUT«[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]␤»
19:33 colomon tann: Just seemed like your code was going the long way around, if you know what I mean.
19:34 tann colomon: yea...experimenting perl6's new and shiny thingies
19:34 colomon tann++  :)
19:35 tann though i can't figure how to use exists, delete etc with hashes and arrays in p6 :)
19:35 tann or rakudo
19:35 tann doesn't seem like the spec settles on those things?
19:35 colomon I have this vague memory it is direct: %squares.exists($_) instead of %squares{$_}.exists
19:35 moritz_ it does, but it uses a syntax that isn't supported in Rakudo yet
19:36 moritz_ it's %hash<foo>:exists
19:36 moritz_ and :delete
19:37 colomon I definitely used %hash.exists($_) in a script recently.  (The amazing powers of grep!)
19:37 tann pugs: my %h = a => 1; say %h.perl; %h<a>.delete; say %h.perl;
19:37 p6eval pugs: OUTPUT«\(\("a", 1),)␤*** Argument is not a Hash or Array element or slice in delete: VInt 1␤    at /tmp/FJdfm8H3QL line 1, column 30-42␤»
19:37 moritz_ yes, that's what Rakudo does
19:38 tann rakudo: y %h = a => 1; say %h.perl; %h.delete('a'); say %h.perl;
19:38 p6eval rakudo 3c5210: OUTPUT«Symbol '%h' not predeclared in <anonymous> (/tmp/yEK7OZMbl3:2)␤in Main (src/gen_setting.pm:3363)␤»
19:38 tann rakudo: my %h = a => 1; say %h.perl; %h.delete('a'); say %h.perl;
19:38 iblechbot joined #perl6
19:38 p6eval rakudo 3c5210: OUTPUT«{"a" => 1}␤{}␤»
19:43 REPLeffect joined #perl6
19:53 xiaoyafeng joined #perl6
19:59 lucs joined #perl6
20:24 payload joined #perl6
20:29 __ash__ joined #perl6
20:29 arthur-_ joined #perl6
20:31 moritz_ I've got a shiny (well, not really, but interesting) and completely useless toy
20:31 moritz_ http://rakudo.de/architecture
20:31 moritz_ reasonably modern browsers will display a chart on the left side
20:31 moritz_ that's an SVG
20:31 moritz_ and the boxes are (mostly) clickable, and point to appropriate sections of the document
20:32 moritz_ (you might know both the text and the image already from my blog, it's just the clickability that's new)
20:36 colomon pretty.
20:37 __ash__ does perl6 have a dbi interface? just curious
20:38 Su-Shee moritz_: well that's a pink perl pretty star for you! :)
20:38 moritz_ __ash__: not yet
20:38 Su-Shee __ash__: they're working on it.
20:40 __ash__ okay, just making sure, google lead me to a few mailing list / cpan places but none showed up the a place if that had a working copy of anything thats going on with that that seemed recent, i noticed http://svn.perl.org/modules/dbi2/trunk/ but i have no idea when that was last touched
20:41 moritz_ __ash__: svn log says 2008-05-17
20:45 Su-Shee left #perl6
20:46 moritz_ __ash__: anyway, Tim Bunce announced that he'll pick up the work on something DBI-like for parrot...
20:46 __ash__ i have another perl 6 related question, can you have executable code anywhere? (eg. in ruby inside a class definition you can include an if statement for instance)
20:46 moritz_ __ash__: and once that's working, it should be relatively straight forward to add a Perl 6 layer - I already volunteered for that
20:46 moritz_ rakudo: class A { say "hi" };
20:46 p6eval rakudo 3c5210: OUTPUT«hi␤»
20:47 japhb No masak, damn.
20:47 moritz_ __ash__: is that answer enough? ;-)
20:47 japhb Who's the message bot here?
20:47 __ash__ moritz_: cool, yeah i found that announcement, i was just curious about its current state thats all
20:47 [particle] __ash__: rakudo is an implementation of perl 6
20:47 moritz_ japhb: 'phenny: tell masak ...'
20:47 __ash__ [particle]: i know i have it, and pugs
20:47 japhb moritz_: thx.  ETOOMANYCHANNELS
20:48 moritz_ __ash__: I haven't read a new announcment; that one was made at a conference on which I was not :/
20:48 pugs_svn r27879 | kyle++ | [t/spec] Another Null PMC test inspired by IRC
20:49 moritz_ but he wants to continue discussing it at the Italian Perl Workshop, which is pretty soon
20:49 japhb phenny: tell masak Please ping me when you're back; I need to pick your brain re: proto and various forms of World Domination
20:49 phenny japhb: I'll pass that on when masak is around.
20:50 scrottie left #perl6
20:56 donaldh_ joined #perl6
20:59 M_o_C joined #perl6
21:01 justatheory joined #perl6
21:15 Whiteknight joined #perl6
21:16 frederico joined #perl6
21:29 SmokeMachine joined #perl6
21:34 __ash__ moritz_: you wouldn't know how you'd go about compiling and dynamically linking a parrot extension into say Rakudo?
21:35 moritz_ __ash__: no
21:43 maja joined #perl6
21:46 jan_ joined #perl6
21:55 kborer_ joined #perl6
21:59 cognominal TimToady, in SO4 line 64, it should be nice to say that the simple way out of an error is a mere comma, meaning that the {}  and [] composers can include a final comma.
21:59 cognominal > say +{ a =>1, }
21:59 cognominal 1
21:59 cognominal > say +[ 1, ]
21:59 cognominal 1
21:59 cognominal >
21:59 lambdabot not an expression: `'
21:59 lambdabot mueval-core: Prelude.read: no parse
21:59 lambdabot mueval: ExitFailure 1
21:59 lambdabot <no location info>: parse error on input `]'
21:59 phenny lambdabot: 17:57Z <literal> tell lambdabot something
22:01 M_o_C joined #perl6
22:01 REPLeffect joined #perl6
22:02 moritz_ cognominal: feel free to add such changes yourself
22:02 moritz_ cognominal: you have a commit bit, I assume?
22:03 cognominal I don't think so
22:03 moritz_ that should be fixed.
22:03 cognominal and I am not a native speaker so I prefer not.
22:03 moritz_ /msg me your email address, and I can send you one
22:03 moritz_ cognominal: that's not a good excuse, I'm not one either
22:03 moritz_ neither is masak
22:04 moritz_ or many other committers
22:04 cognominal ho, that is pugs, I probably have one but I have lost the password.
22:04 moritz_ cognominal: password re-sent
22:05 moritz_ anyway, bed time here
22:08 REPLeffect joined #perl6
22:23 braceta joined #perl6
22:34 __ash__ left #perl6
22:38 __ash__ joined #perl6
22:44 SmokeMachine joined #perl6
22:49 wayland76 cognominal: Let me know your Pugs ID and I'll try to remember to review your commits for good English.  Keep in mind that all commits to the specs are sent to the mailing list, and if the people on that list are anything like the people in the IRC channel, there will be some people with excellent English reviewing it and fixing any English errors, so as long as you are communicating what you want, people will fix the
22:49 wayland76 English :)
22:53 ancients how do i convert a decimal number to a binary number ? :-s
22:56 Student joined #perl6
22:57 ruoso joined #perl6
23:05 synth joined #perl6
23:06 wayland76 Should this work?  $filename ~~ :e or next;
23:06 wayland76 ancients: Can't it be done with sprintf?
23:07 japhb wayland76: ISTR that's $filename.IO ~~ :e, but I don't know if that's NYI in Rakudo
23:09 wayland76 ancients: Or it could be done with bitwise operators; the best method depends on what you want to do with the binary number (print it, or access particular bits, or what?)
23:11 leedo joined #perl6
23:11 fridim_ joined #perl6
23:15 leedo joined #perl6
23:20 donaldh joined #perl6
23:25 braceta left #perl6
23:36 leedo joined #perl6
23:46 leedo joined #perl6
23:46 ihrd joined #perl6
23:56 * ruoso has problems with irc.perl.org

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

Perl 6 | Reference Documentation | Rakudo