Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-07-30

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:00 kid51 Well, I did 'cd parrot-2.6.0 && make clean && cd .. && ./perl6 -e 'say q|Hello World|' and it worked
00:00 kid51 Then I cleaned out the build/ dir and hello world still worked.
00:01 kid51 This is on linux/i386.
00:01 kid51 Although not much space was actually cleaned up.
00:01 kid51 Am still at 94% full.
00:01 kid51 I was about 86% before the install.
00:02 tylercurtis kid51: I'm pretty sure build/ just has build scripts and such.
00:08 frobnitz left #perl6
00:09 shirtless So if there is a class with no constructor (other than the implicit new), and it has $.variable; and no setter method. Is there a way to ever set that attribute?
00:09 brian joined #perl6
00:11 tadzik joined #perl6
00:11 shirtless tadzik: there is no way to set the $.path attribute in your IO::Stat is there?
00:11 shirtless I used the pir::* stuff successfully, but
00:11 tadzik shirtless: what do you mean?
00:11 tadzik oh
00:12 tadzik shirtless: well, why would you want to do that?
00:12 shirtless tadzik: what is the appropriate usage? I cannot figure out how to give it a path
00:12 shirtless been at it for a good 30m
00:12 shirtless heh
00:12 tadzik shirtless: '/some/path'.IO.stat.size
00:12 shirtless oh
00:12 shirtless damn
00:12 shirtless I was doing my $stat = IO::stat.new() *facepalm*
00:13 tadzik that was the point of putting it in core :)
00:13 shirtless I guess i have to learn a bit more about what it means for something to be in the core, thanks.
00:13 tadzik well
00:14 tadzik for me it means 'it's fun and useful enough'
00:14 tadzik at least in this case
00:14 shirtless I like it a lot better than having to instantiate a new stat, that is for sure.
00:14 shirtless I would be satisfied with a wrapper function but this is nice
00:15 shirtless once I pick up the feel of perl6 more I will adapt
00:16 tadzik I thought it was nice if it was integrated with .IO method
00:16 tadzik and doing stat('file'.IO) would seem just wrong to me
00:17 shirtless yeah, that's goofy
00:17 shirtless either way it's better than writing 50 lines of equivalent C code :)
00:17 betterworld joined #perl6
00:17 tadzik well, it'd be one line of pir anyway :)
00:17 shirtless well, not really 50
00:18 shirtless it is, but I didn't even know pir existed until I read the source of IO::Stat
00:18 shirtless still don't know wtf it is. I am guessing it's a namespace of parrot things.
00:19 tadzik PIR is a Parrot Intermediate Representation, a language of Parrot opcodes
00:20 shirtless so all the functions in pir:: are probably written in parrot opcodes
00:20 shirtless I was looking at some stuff that looked like vm opcodes, it didn't look too complicated
00:20 sorear Rakudo compiles Perl 6 to PIR
00:20 shirtless Looked easier than x86 asm
00:20 sorear pir::XXX() is a trap for doing expression style inline access to pir ops
00:21 sorear Q:PIR { ... } is more traditional "inline assembly"
00:21 shirtless I feel like a child in a candy store
00:22 tadzik sweet, isn't it? :)
00:22 timdemkowsky shirtless: haha, i know that feeling. :)
00:24 ruoso joined #perl6
00:26 pmichaud good evening, #perl6
00:26 pmichaud actually, being called to dinner -- bbiaw
00:26 davidfetter bon appetit, pmichaud
00:26 Tene shirtless: pir:: are pir opcodes
00:28 brian i'm off to bed. thanks to pmichaud and all the rest of the rakudo team
00:29 timdemkowsky phew, i just saw how much memory rakudo eats up... from 755mb to 864mb on my x64 linux box. tested this with 'say "hello world";'. :D
00:30 timdemkowsky i think thats a parrot problem after all
00:30 jnthn timdemkowsky: er, hundreds of megs for "hello world"?
00:30 * jnthn gets in the tens, but not hundreds :-)
00:31 shirtless anyone here from around boston?
00:33 LaVolta joined #perl6
00:33 LaVolta morning, everybody :)
00:33 Tene Hi!
00:34 timdemkowsky jep, source is http://gist.github.com/499590 and perl6 --version is http://gist.github.com/499592
00:34 ashleydev joined #perl6
00:36 timdemkowsky jnthn: it takes a little more than one second to start up too
00:36 jnthn timdemkowsky: Yes, I can match that here.
00:37 whee lucky ;D
00:37 jnthn timdemkowsky: That can certainly be (drastically) improved on.
00:37 timdemkowsky jnthn: seems like there is a big room for speeding up :) but i guess its a 'problem' on the side of parrot
00:37 cotto_work and one that we're working
00:37 [particle] timdemkowsky: that's not entirely accurate
00:38 [particle] unoptimized code exists in both the rakudo compiler and the parrot vm
00:38 ingy greetings fine *s
00:39 ingy congrats
00:39 timdemkowsky [particle]: maybe both need more love :) i'm shure it will be better someday
00:39 jnthn timdemkowsky: Not entirely.
00:40 jnthn Yes, what [particle] said
00:40 jnthn In many cases we're doing some stuff the "easy way"
00:40 jnthn Now it works, it's time to do it the more optimal way.
00:40 snarkyboojum joined #perl6
00:40 timdemkowsky jnthn: sounds good
00:40 [particle] working trumps good
00:41 sorear good trumps working. if it doesn't work, it's not good.
00:41 jnthn [particle]: Oh, exactly. But we're not doing too bad on "working" :-)
00:41 samlh joined #perl6
00:41 jnthn sorear: :P
00:41 [particle] don't congratulate yourself until you see how many bug reports come rolling in :P
00:42 sorear [particle]: We can't lose, the bug reports are the point
00:42 ingy fun/good/working trumps paper/scissors/rock
00:42 tadzik oh, is it time for another infix operator? :)
00:42 [particle] fun has trumped working and good for 10 years with perl 6 :)
00:43 snarkyboojum oohh .. 10 d/ls to go until star hits 1k :P
00:43 timdemkowsky do we have our own RT or do we use the one at rt.perl.org?
00:43 [particle] it really is a spectacular treat to see a p6 distribution hit the intertubes
00:44 jnthn snarkyboojum: If you add on the Windows binary downloads we already passed it.
00:44 snarkyboojum well I guess if you add the windows installer, we're already way past :)
00:44 snarkyboojum jnthn++ :)
00:44 jnthn timdemkowsky: rt.perl.org
00:44 ingy jnthn: where are you living now?
00:44 jnthn timdemkowsky: To submit bug it's mail to rakudobug@perl.org
00:44 jnthn ingy: Lund, Sweden at the moment.
00:45 [particle] 7,500+ visits to rakudo.org today
00:45 ingy jnthn: is that near masak?
00:45 timdemkowsky jnthn: ok, thanks! i'll take a lot.
00:45 timdemkowsky *look
00:45 jnthn timdemkowsky: Yes, please take a lot of tickets. ;-)
00:45 jnthn ingy: Well, in global terms yes. :-)
00:45 * [particle] runs off to play soccer &
00:45 ingy haha
00:45 shirtless How can I find the implementation of something in pir:: ? I am looking with grep and find only prototypes
00:45 jnthn ingy: masak is about 6 hours of train journey from me.
00:46 jnthn ingy: The other side of Sweden and about a third of the way up.
00:46 ingy jnthn: it looks like I'll be in Europe for osdc.fr. we should meet up possibly.
00:46 timdemkowsky shirtless: i guess they are implemented in the parrot source.
00:46 jnthn shirtless: Those are implemented in Parrot.
00:46 jnthn ingy: Oh, I'll be at osdc.fr.
00:46 ingy !
00:46 samlh rakudo: my @a=1..5; @a >>+>> 1; @a >>->> 2 #bug?
00:46 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Confused at line 22, near "@a >>->> 2"␤»
00:46 ingy then we shall!
00:46 shirtless jnthn, timdemkowsky that confirms my suspicion. I will have to look harder there
00:46 shirtless thanks
00:47 jnthn shirtless: Look in files with a .ops extension.
00:47 jnthn ingy: \o/
00:47 ingy jnthn: \o/\o/
00:47 jnthn ingy: You heading Europe-wards for winter this year?
00:48 shirtless jnthn: nice, I am now seeing what I was looking for. Thanks.
00:48 snarkyboojum [particle]: that's insanely cool :) (re 7500+ hits on rakudo.org)
00:48 ingy jnthn: not planned yet. chamonix would be a nice spot, again...
00:48 jnthn :-)
00:49 jnthn rakudo: my @a=1..5; @a >>+>> 1;
00:49 p6eval rakudo da16b5:  ( no output )
00:49 ingy \oXo/
00:49 jnthn rakudo: my @a=1..5; @a >>+>> 1; @a >>->> 2
00:49 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Confused at line 22, near "@a >>->> 2"␤»
00:49 jnthn rakudo: my @a=1..5; @a >>+>> 1; @a >>+>> 2
00:50 p6eval rakudo da16b5:  ( no output )
00:50 jnthn rakudo: my @a=1..5; @a >>->> 1
00:50 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Confused at line 22, near "@a >>->> 1"␤»
00:50 jnthn rakudo: my @a=1..5; @a <<->> 1
00:50 p6eval rakudo da16b5:  ( no output )
00:50 jnthn samlh: Looks like one.
00:50 jnthn std: my @a=1..5; @a >>->> 1
00:50 p6eval std 31863: OUTPUT«ok 00:01 117m␤»
00:50 jnthn Yes, certainly bug.
00:51 samlh jnthn: k'
00:51 high left #perl6
00:51 jnthn samlh: I've opened a ticket for it.
00:52 jnthn rakudo: my @a=1..5; @a <<*>> 1
00:52 p6eval rakudo da16b5:  ( no output )
00:52 jnthn rakudo: my @a=1..5; @a >>*>> 1
00:52 p6eval rakudo da16b5:  ( no output )
00:52 jnthn rakudo: my @a=1..5; @a >>/>> 1
00:52 p6eval rakudo da16b5:  ( no output )
00:52 jnthn rakudo: my @a=1..5; @a >>~>> 1
00:52 p6eval rakudo da16b5:  ( no output )
00:52 jnthn huh...just for -? :
00:52 jnthn :S
00:52 samlh rakudo: my @a=1..5; @a>>->>1
00:52 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Unsupported use of -> as postfix; in Perl 6 please use either . to call a method, or whitespace to delimit a pointy block at line 22, near ">1"␤»
00:53 jnthn Oh, I wonder if we're getting some false positive on that...
00:53 jnthn Seems odd though.
00:53 sorear std: 1 >>->> 2
00:53 p6eval std 31863: OUTPUT«ok 00:01 116m␤»
00:55 jnthn rakudo: 1 >>->> 2
00:55 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Confused at line 22, near "1 >>->> 2"␤»
00:55 pmichaud I'm guessing that rakudo is confusing >>->>  with ->
00:55 jnthn pmichaud: I'd be more inclined to think that if it spat out the -> error, not confused.
00:55 pmichaud rakudo:  1 »-» 2
00:56 p6eval rakudo da16b5:  ( no output )
00:56 pmichaud either that or it's getting confused by &infix:<>>
00:56 sorear don't use texas hyper.  problem solved.
00:57 jnthn pmichaud: Maybe that, yeah
00:58 jnthn pmichaud: Way to turn on <?DEBUG> without compiling it into the grammar?
00:58 pmichaud jnthn: I haven't come up with a way to do it
00:59 pmichaud jnthn: I'm open for suggestions
00:59 pmichaud we could potentially add a few <?DEBUG($*FLAG)> points in the grammar, and then set $*FLAG
00:59 jnthn Yeah
00:59 jnthn 'cus if I compile it in then it'll dump the parse of the whole setting ;-)
01:00 pmichaud right -- I ran into that problem also.
01:00 jnthn Oh, well, not if I just try the stage 1 I guess
01:00 jnthn But the stage 1 compiler does, well, not much. :-)
01:01 pmichaud jnthn: I ended up making it work once by simply calling Perl6::Grammar.parse( ... )
01:01 jnthn Hmm, OK.
01:01 jnthn Meh. I only slept 3 hours last night and it's 3am now so I don't think I have the concentration to bug hunt this one tonight. :-)
01:02 jnthn I ticketed it, anyways.
01:02 pmichaud which one is that ... the >>->> bug?
01:02 jnthn Yes
01:02 pmichaud I'll take a look
01:02 jnthn Cool
01:02 jnthn It's parsing, so you'll probably find it way quicker than I would.
01:03 pmin joined #perl6
01:03 tadzik g'night #perl6
01:04 jnthn pmichaud: I'll write a reply to that parrot-dev thread tomorrow.
01:04 pmichaud the one about freeze/thaw?
01:04 mikehh joined #perl6
01:04 jnthn pmichaud: Yeah
01:04 jnthn pmichaud: I've got a pretty good idea of what I'd kinda like to see.
01:04 pmichaud sounds very good
01:04 jnthn Thought about it a bit when I went out for dinner tonight, but didn't get to writing it.
01:05 jnthn I'm *so* glad we have a YAPC coming up.
01:05 jnthn I've lots of ideas to discuss and it'll be way easier in meatspace. :-)
01:05 pmichaud me too :)
01:05 pmichaud (glad to have a YAPC coming up)
01:05 shirtless left #perl6
01:05 pmichaud I don't think I have a lot to discuss :)
01:06 shirtless joined #perl6
01:07 jnthn pmichaud: Well, I figure we kinda want to come away with a plan/priorities from here.
01:07 jnthn pmichaud: Enough for a ROADMAP update.
01:07 ingy does the star repo have a release tag?
01:08 ingy I don't see one
01:08 pmichaud I'll set one
01:08 ingy pmichaud++
01:08 samlh rakudo: (class {has $.doo = $.loo; has $.loo = 12}).new().perl.say  # is this right?
01:08 p6eval rakudo da16b5: OUTPUT«.new(doo => Any, loo => 12)␤»
01:09 ingy moritz_: you should add a 'star' to evalbot
01:09 jnthn samlh: Yes
01:09 ingy star: say "O HAI"
01:09 jnthn samlh: Order matters.
01:10 jnthn rakudo: (class {has $.loo = 12; has $.doo = $.loo; }).new.perl.say
01:10 ingy phenny: tell moritz_ Add a "star" to the evalbot please. KTHXBAI
01:10 phenny ingy: I'll pass that on when moritz_ is around.
01:10 p6eval rakudo da16b5: OUTPUT«.new(loo => 12, doo => 12)␤»
01:11 samlh jnthn: okay, cool. Makes sense
01:11 snarkyboojum star target would be esp. cool once rakudo releases start diverging from latest star
01:11 snarkyboojum until the next star release anyway :)
01:12 jnthn snarkyboojum: Well, it's also that rakudo: target is not just latest release, but latest from git, modulo an hour or so
01:12 am0c__ joined #perl6
01:13 jnthn Anyways, sleep time for me I think :-)
01:13 jnthn night all o/
01:13 samlh jnthn: sleep well :)
01:13 jnthn samlh: thanks :)
01:14 snarkyboojum jnthn: yep
01:14 shirtless In the parrot source, what is the difference between the dynpmc and dynoplibs directories?
01:15 pmichaud dynpmcs are new PMC types
01:15 pmichaud dynops are new opcodes
01:17 shirtless new as in experimental?
01:17 pmichaud new as in "not part of the Parrot static core"
01:17 shirtless yeah
01:17 pmichaud basically those are pmcs and opcodes that get loaded at parrot runtime
01:17 pmichaud (via various load operations)
01:17 shirtless and there are some people who have an approval process for moving things into the core
01:17 shirtless I would guess
01:17 shirtless right?
01:17 pmichaud actually, most of those *were* core and got moved out
01:18 shirtless heh
01:18 shirtless I was wondering why it all looked like fundamental stuff.
01:18 pmichaud lots of things were moved from opcodes to being methods on various objects
01:31 [Coke] (bug reports). we've had no bug reports yet from folks we didn't see before yesterday.
01:32 pmichaud it may take a day or two for people to get to the bug report stage
01:33 shirtless I think I found a bug
01:33 colomon we are seeing indications new people are out there trying it, which is great.
01:33 shirtless I've been trying to fix it, or find the right way to do it
01:34 shirtless doing IO.stat.isdir on a symbolic link fails, no such file or directory
01:34 shirtless is that a bug?
01:34 shirtless I've been reading the parrot code and stuff to see if it's possible to implement the other stat features, but it looks like lstat is somewhere in the dynpmc directory
01:34 shirtless I'm just not sure how to get at it.
01:36 [Coke] lstat is a method on the parrot OS dynpmc.
01:36 shirtless So is the behavior of isdir on symbolic links considered a bug?
01:37 [Coke] which is already loaded and used in src/core/IO.pm
01:37 snarkyboojum it'd be worth updating http://rakudo.org/how-to-get-rakudo with details on getting Star perhaps?
01:38 snarkyboojum apologies if that's already been discussed/in the works :)
01:39 Tene shirtless: personally, I'd start by straceing it to see what it's actually doing.
01:40 shirtless [Coke]: lstat doesn't appear to be used in src/core/IO.pm
01:40 [Coke] no, but it's a method on teh OS pmc that's used there.
01:40 shirtless Tene: I can just read the code, i don't need to strace it...
01:40 [Coke] so you can just call it like they do.
01:40 shirtless [Coke]: ok, forgive my noobishnes
01:41 Tene shirtless: Sure, that's fine too.  Personally, it's often helpful to me when I can know the answer I'm working towards, as I read the code.
01:41 shirtless [Coke]: or I could make a wrapper for it like they did, right?
01:41 shirtless [Coke]: and then submit a patch for it?
01:41 shirtless Tene: i already read all the C code that did stat calls in parrot ;)
01:42 pmichaud snarkyboojum: yes, worth updating how-to-get-rakudo
01:42 shirtless thanks for your help and patience, i think I see what to do now.
01:43 shirtless Tene: yeah, you are right. strace is a bit faster.
01:47 * pheuter walks into his perl-powered rocket ship, and BLAST OFF to the moon
01:48 orafu joined #perl6
01:52 [Coke] shirtless: I guess I don't know what you're trying to do. =-)
01:52 [Coke] if you're trying to expose more lstat functionality in rakudo, then yes, that sounds reasonable.
01:52 shirtless [Coke]: it actually looks like stat fails when it gets a *broken* link
01:53 shirtless due to the fact that I was upgrading my system while doing all this *facepalm*
01:53 shirtless [Coke]: cool I am going to see what I can do
01:53 shirtless thanks for the help
01:59 hobbs joined #perl6
01:59 ingy pmichaud: you make that tag yet?
01:59 hobbs If I'm already following rakudo master branch, is there any special reason I would want to checkout star?
02:00 sorear hobbs: R* = Rakudo + Parrot + the beginnings of a standard library
02:00 sorear if you like writing code without use statements, you don't need star
02:01 sorear (or, if you already have all the modules you need installed)
02:02 hobbs alrighty
02:03 hobbs left #perl6
02:03 shirtless looks like IO.stat was throwing execeptions in my cases,  I just was not aware of the syntax of try/catch
02:04 shirtless Which is pretty freaking simple try/catch syntax...
02:06 _macdaddy joined #perl6
02:08 pmichaud ingy: not yet
02:11 tylercurtis joined #perl6
02:12 pmichaud now tagged.  it's not precisely correct (because I had a couple of unpushed changes), but probably isn't worth trying to get exactly right.
02:13 shirtless exceptions don't work for me as described in http://dev.perl.org/perl6/rfc/63.html is there a better document describing how they work in rakudo?
02:13 pmichaud there are some issues with exception handling, yes.  S04 has most of the details, iirc
02:13 shirtless pmichaud: ok cool, i'll take a look.
02:14 shirtless there's no throw?
02:15 whee joined #perl6
02:15 whee_ joined #perl6
02:15 pmichaud "die" does a throw
02:16 pmichaud I think there's also a .throw method
02:16 shirtless alrgiht
02:16 shirtless alright*
02:16 sorear shirtless: the RFCs are all essentially obsolete now
02:18 Visitor99 joined #perl6
02:19 Visitor99 just joined to say congratulations to the rakudo team :)
02:19 [Coke] wow. how did you come across the rfc, shirtless ?
02:19 Visitor99 today i talked about autothreading and roles to muy bosses and they inmediately thought in a product based on that :) they were certainly impressed
02:19 shirtless [Coke]: by using google for perl6 exception
02:20 Visitor99 anyway.. good work all and thanks!
02:20 Visitor99 left #perl6
02:20 PerlJam Anyone else notice that rakudo/star is a "trending repository" on github's main page?
02:21 sorear cute, the CLR has native support for UNDO blocks
02:22 shirtless are you writing IronPerl6?
02:23 shirtless does rakudo go by the spec hosted on the pugscode site?
02:23 shirtless or does it have its own spec somewhere
02:23 sorear yes
02:23 shirtless ok
02:23 sorear there is a single common spec that we all strive to reach
02:24 sorear rakudo is the closest but it still has a long way to go
02:24 [Coke] PerlJam: nifty.
02:24 sorear also, the spec isn't holding still
02:24 lue hello o/
02:24 acup joined #perl6
02:24 sorear shirtless: if by IronPerl6 you mean a p6 implementation targetting the CLR, then yes
02:25 shirtless sorear: can you link me to that?
02:25 sorear git://github.com/sorear/niecza.git
02:25 shirtless cool
02:25 sorear niecza: on the evalbot
02:25 p6eval niecza 01680b9: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routines:␤        'evalbot' used at line 1␤ 'on' used at line 1␤      'the' used at line 1␤Check failed␤»
02:28 achromic joined #perl6
02:35 high joined #perl6
02:35 CSJewell joined #perl6
02:51 high left #perl6
02:55 zhicheng joined #perl6
02:56 cbk I had so much fun today!  Thanks Rakudo*
02:58 CSJewell2 joined #perl6
02:58 avuserow cbk: the fun is what Perl 6 is all about :D
02:59 kuroishi joined #perl6
03:00 sorear -Ofun
03:01 pmichaud cbk: glad you had fun.  that's what we all aim for :)
03:02 kuroishi Can I install Rakudo to my home directory (~/xxx). How should I do?
03:05 LaVolta kuroishi:  you can just simple type perl Configure.pl --gen-parrot && make && make install
03:05 LaVolta it will generate a perl6 executable for you
03:06 LaVolta pardon my pool english...
03:07 kuroishi LaVolta: thank you. Where will it installed?
03:07 h1gh joined #perl6
03:07 LaVolta kuroishi:  take myself as an example the perl6 exectuble will be in the same directory
03:07 pheuter kuroishi: install dir
03:08 pheuter inside the rakudo dir
03:08 LaVolta sorry...I didnt make it clearer for you
03:08 shirtless ie ~kuroishi/rakudo/parrot_install/
03:09 pheuter ~/rakudo/install/bin will have all the binaries you need
03:09 tylercurtis kuroishi: you can also supply the --prefix option to the Configure.pl.
03:09 pheuter kuroishi: http://cl.ly/9665a297c092bb6330ae
03:10 pheuter then you could export PATH=~/rakudo/install/bin:$PATH
03:11 shirtless pheuter: it's parrot_install
03:11 shirtless pheuter: on the latest revision, anyway
03:11 pheuter oh, k, well, that is rakudo * from http://github.com/rakudo/star/downloads
03:12 shirtless yeah, I didn't bother to build star
03:12 shirtless when I looked in there there were no different source files
03:12 shirtless so I was like. forget it.
03:12 pheuter yeah
03:12 shirtless I did install the msi on windows
03:12 shirtless and that was good
03:12 pheuter windows :(
03:13 shirtless What the hell is your problem with windows?
03:13 shirtless :)
03:13 kuroishi thanks all. I've issued the command line perl Configure.pl --gen-parrot --gen-parrot-option='--prefix=/Users/kuroishi/local/'
03:14 shirtless Most of the windows hatred is thoughtless religion.
03:14 shirtless In the days on windows 7, anyway.
03:14 eternaleye Hey everybody. For a while now I've been looking at existing project hosting solutions, and all of them strike me as being suboptimal in various ways. Lauchpad seems to be the one closest to what I would like, but the way the community is handled and the There Is One Right Way To Do It philosophy rub me the wrong way. Thus, I've started writing up a design document on what I am tentatively calling Canaveral for now, which I hope others will help
03:14 eternaleye me hammer out. The general idea is to be a modular, P6-based, TIMTOWTDI-embracing project hosting solution. The current state of the document is in this paste: http://ix.io/16a . I would appreciate any and all input. I came to #perl6 with this because a.) I intend to write it in Perl 6 b.) This channel is a perfect example of the community I would like to arise around it someday and c.) I know that quite a few very smart people hang out in here
03:14 eternaleye and value the input of the members of this channel.
03:14 shirtless I have been using linux for like 6 years, but I don't hate windows for no good reason.
03:14 pheuter oh, not much, just that it isn't an optimal development environment (permission handling is terrible, NTFS is terrible, ...). Don't get me wrong, Windows is best for gaming, but development, not so much...
03:15 eternaleye Sorry for the wall of text :/
03:15 HarryS joined #perl6
03:15 pheuter I need my shell
03:15 pheuter powershell doesn't cut it
03:15 shirtless pheuter: you use OS X, i am guessing
03:16 pheuter minigw isn't up there yet
03:16 shirtless pheuter: tried it for 5 minutes, thought it sucked.
03:16 pheuter yes, i do
03:16 pheuter shirtless: what did u try?
03:16 shirtless mingw = waste of time no offense to mingw devs.
03:16 shirtless it's good
03:16 shirtless but, I doubt there will be enough development steam behind it to compete with native microsoft tools.
03:16 shirtless which have tons of cash behind them
03:16 pheuter shirtless: lol? xcode is 5 times the IDE VS is
03:17 pheuter especially xcode 4 with the llvm backend
03:17 shirtless I wouldn't know: i don't have $2000 dollars to buy a suitable mac ;)
03:17 pheuter you can get a very decent mac mini for much less
03:17 shirtless the reason I don't have a mac is because the floor price of a mac is much higher than a PC
03:17 shirtless yeah a mac mini, for that cash I could have a much sicker pc.
03:17 zhicheng left #perl6
03:18 shirtless I have a USFF computer right now, it gets way too hot
03:18 shirtless I am going to get rid of it and never buy one again.
03:18 pheuter shirtless: sicker, maybe, longer lasting and worthwhile in the long run, maybe not
03:18 shirtless my first computer ever was a PC and I still use it to this day. Infact I'm using it right now.
03:19 * shirtless counts.. 9 year old computer here.
03:19 shirtless since it's x86 it can run a lot of widely supported software.
03:19 shirtless the equivalent 9 year old mac I don't think I could say the same.
03:19 shirtless you're lucky they got off of PPC?
03:19 shirtless ;)
03:20 pheuter sure, you can use it for that long, but after 9 years, os x is still the same os x you started with. With Windows, its mnot (at least if you don't re-install it, and come one, operating systems shouldn't depend on re-installations to maintain juice)
03:20 pheuter plus, os x is posix.
03:21 shirtless I never argued for windows, just against buying apple hardware.
03:21 shirtless I mostly use linux
03:21 pheuter i could see what you can have against the hardware and the apple mentality
03:21 shirtless OS X is nice, I had a macbook g4 for a few weeks before I uninstalled it and installed gentoo.
03:21 pheuter lol
03:21 pheuter gnetoo
03:21 pheuter gentoo*
03:21 shirtless Then someone stole it
03:21 pheuter i learned how linux works with that distro...good times
03:21 shirtless and they got gentoo, ROFL!
03:23 wooden joined #perl6
03:23 LaVolta rakudo: say localtime;
03:23 p6eval rakudo da16b5: OUTPUT«Could not find sub &localtime␤  in main program body at line 22:/tmp/tfmGuXpEh7␤»
03:25 eternaleye rakudo: say now;
03:25 p6eval rakudo da16b5: OUTPUT«Could not find sub &now␤  in main program body at line 22:/tmp/Uc9XrLWIiv␤»
03:25 eternaleye rakudo: say DateTime.new(now);
03:25 p6eval rakudo da16b5: OUTPUT«Could not find sub &now␤  in main program body at line 22:/tmp/pLQ4FVL2_3␤»
03:25 eternaleye rakudo: say DateTime.new(time);
03:26 p6eval rakudo da16b5: OUTPUT«2010-07-30T03:05:43Z␤»
03:48 shirtless Does anyone know where I can find a working try/catch snippet of perl6?
03:49 shirtless for rakudo
03:50 LaVolta rakudo: try {die "test";} CATCH {say "test";}
03:50 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Confused at line 22, near "try {die \""␤»
03:51 LaVolta errr...
03:51 shirtless see what I mean.
03:51 LaVolta rakudo: try {die "test"; CATCH {say "test";}}
03:51 p6eval rakudo da16b5: OUTPUT«test␤»
03:51 shirtless Oh, it's nested!?
03:51 LaVolta done
03:51 LaVolta yep
03:51 shirtless I wouldn't have figured that out.
03:51 LaVolta the same here
03:52 LaVolta :)
03:52 shirtless thanks
03:52 sorear You would if you had read the first paragraph of the "Exception Handlers" section of S04
03:53 LaVolta you're welcome, might be a gotcha for all? :-p
03:53 sorear Unlike many other languages, Perl 6 specifies exception handlers by
03:53 sorear placing a C<CATCH> block I<within> that block that is having its exceptions
03:53 sorear handled.
03:55 shirtless sorear: well the problem is that that document was making my head spin, and I just wanted to see regular documentation ;D
03:55 shirtless I tried to read some of that and lost attention.. I'm going back to it later
03:56 LaVolta shirtless:  5-to-6 is a good place to read
03:56 shirtless I think I need to read the appendix that explains their markup.
03:56 shirtless also i don't have a pod file tool to generate docs withj
03:57 shirtless I am going to have to find one of those.
03:57 alester joined #perl6
03:58 shirtless well thanks to everyone's patience i was able to write a perl6 program.
03:58 LaVolta sorry if i misunderstood, but you can have pod2html? or pod2X?
03:58 shirtless I'll find those
03:58 shirtless thanks
03:58 shirtless ok here it is: http://gist.github.com/499866
03:58 shirtless I guess the code was mostly crowdsourced
04:00 sorear shirtless: http://perlcabal.org/syn/S04.html
04:01 sorear LaVolta: the correct tool for perl6pod is http://search.cpan.org/perldoc?grok
04:08 claye joined #perl6
04:13 aplens joined #perl6
04:13 aplens left #perl6
04:20 xinming joined #perl6
04:20 LaVolta sorear:  oh, thanks...and once I was wondering how the html are generated, and there's also a util/podhtml.pl :)
04:21 LaVolta I should check that out already
04:24 lucash joined #perl6
04:25 lucash anybody here ?
04:34 lucash joined #perl6
04:36 h1gh_ joined #perl6
04:39 ashleydev joined #perl6
04:46 h1gh joined #perl6
04:57 wamba joined #perl6
05:01 jaldhar joined #perl6
05:01 plobsing joined #perl6
05:06 molaf joined #perl6
05:13 kaare joined #perl6
05:13 galf joined #perl6
05:15 galf joined #perl6
05:35 * sorear is back, still not *quite* understanding exception handling in Perl 6
05:38 dalek nqp-rx: a3386d1 | pmichaud++ |  (2 files):
05:38 dalek nqp-rx: Fix general quantifier in regexes with charclasses (RT #76792).
05:38 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/a3386d1d4c25bd5ac8fc22322b48034b94d01c1b
05:38 dalek nqp-rx: a9afc70 | pmichaud++ | src/stage0/ (4 files):
05:38 dalek nqp-rx: Update bootstrap.
05:38 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/a9afc708cac0685bf834af2382e09c772b10a64b
05:40 Su-Shee joined #perl6
05:42 songmaster joined #perl6
05:44 [particle] pmichaud: 9000+ visitors to rakudo.org today, 1,500 downloads at github.  awesome.
05:44 [particle] and we won our soccer game, playing 8 against 11 :)
05:44 sorear How many of them are just doing it to chew up bandwidth?
05:45 [particle] how much bandwidth can you chew up with a 5MB distro?
05:46 sorear how many times can you download it?
05:46 avuserow well, github pays for that :)
05:48 songmaster Hi all. If $v = all(1..9) and @x = (1, 3, 5) say, how do I exclude the elements in @x from $v, giving $v = all(2, 4, 6..9)?
05:48 [particle] wow, even someone in lhasa visited rakudo.org :)
05:48 songmaster (yes, I am trying to solve Sudoku puzzles using Junctions)
05:49 sorear You can't.
05:49 sorear That's not what junctions are designed to do.
05:49 sorear That is, however, exactly what Set is designed to do.
05:51 sorear rakudo: say Set.new(1..9) (-) Set.new(1,3,5)
05:51 p6eval rakudo da16b5: OUTPUT«Set()<0x7e8cce0>␤»
05:52 sorear rakudo: say (Set.new(1..9) (-) Set.new(1,3,5)).perl
05:52 p6eval rakudo da16b5: OUTPUT«Set.new(2, 4, 6, 7, 8, 9)␤»
05:52 uniejo joined #perl6
05:53 avuserow perl6: say "\v"
05:53 p6eval pugs: OUTPUT«␤»
05:53 p6eval ..rakudo da16b5: OUTPUT«===SORRY!===␤Unrecognized backslash sequence: '\v' at line 22, near "\""␤»
05:54 wooden aww, no more '$empty ||= "full!";' syntax.  :(
05:54 songmaster sorear: Thanks, I'll look at Set instead.
05:55 avuserow wait what?
05:55 sorear songmaster: I couldn't find the documentation so I'm looking at src/core/Set.pm in Rakudo... it's a pretty straightforward class and overloads
05:55 avuserow rakudo: $empty ||= "full"; say $empty
05:55 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Symbol '$empty' not predeclared in <anonymous> (/tmp/zXiEu2rLla:22)␤»
05:55 avuserow rakudo: my $empty; $empty ||= "full"; say $empty
05:56 p6eval rakudo da16b5: OUTPUT«full␤»
05:56 avuserow rakudo: my $empty = "hats"; $empty ||= "full"; say $empty
05:56 p6eval rakudo da16b5: OUTPUT«hats␤»
05:57 sorear wooden: ?
05:57 wooden avuserow: sorear: hmm, i get "Confused at line 27, near "$empty ||=""
05:57 wooden running rakudo
05:57 songmaster rakudo: my $empty; $empty //= 'full'; say $empty
05:57 p6eval rakudo da16b5: OUTPUT«full␤»
05:57 sorear wooden: check every other line in the file
05:58 sorear rakudo's error locator needs work
05:58 wooden oh, yeah...missing semicolon.  my bad.  ><
05:58 wooden love that syntax.
05:59 avuserow yeah, I'm pretty sure that all the foo= syntax is back and more (where foo is any random operator)
05:59 avuserow rakudo: my $foo = 1; $foo &&= 0; say $foo
05:59 p6eval rakudo da16b5: OUTPUT«0␤»
05:59 avuserow rakudo: my $foo = 1; $foo xor= 1; say $foo
05:59 wooden \o/
05:59 p6eval rakudo da16b5: OUTPUT«Null PMC access in invoke()␤  in main program body at line 1␤»
05:59 avuserow rakudo: my $foo = 1; $foo = $foo xor 1; say $foo
05:59 p6eval rakudo da16b5: OUTPUT«1␤»
06:00 mynick003 joined #perl6
06:00 avuserow I'm thinking that xor does not do what I want right now
06:00 avuserow oh, that's logical, not bitwise
06:00 avuserow no
06:00 * avuserow is confused.
06:06 pmichaud rakudo:  say 3 xor 4;
06:06 p6eval rakudo da16b5: OUTPUT«3␤»
06:06 pmichaud hmmmm
06:06 pmichaud oh, right
06:06 pmichaud xor is low precedence
06:06 avuserow rakudo: say(3 xor 4)
06:06 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
06:06 avuserow rakudo: say (3 xor 4)
06:06 p6eval rakudo da16b5: OUTPUT«␤»
06:06 avuserow rakudo: say (3 xor 0)
06:06 p6eval rakudo da16b5: OUTPUT«3␤»
06:07 pmichaud rakudo: say(3)
06:07 p6eval rakudo da16b5: OUTPUT«3␤»
06:08 pmichaud rakudo: say(3 xor 4)
06:08 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
06:08 pmichaud ... o_O
06:08 pmichaud rakudo: say(3 and 4)
06:08 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
06:08 pmichaud that's.... weird.
06:08 avuserow rakudo: say(3+4)
06:08 avuserow rakudo: say(3 + 4)
06:08 p6eval rakudo da16b5: OUTPUT«7␤»
06:08 p6eval rakudo da16b5: OUTPUT«7␤»
06:09 pmichaud rakudo: say(3 && 4)
06:09 p6eval rakudo da16b5: OUTPUT«4␤»
06:09 pmichaud rakudo: say(3 ^^ 4)
06:09 p6eval rakudo da16b5: OUTPUT«␤»
06:09 pmichaud that's an interesting problem.
06:09 avuserow rakudo uses STD.pm, right?
06:09 pmichaud no.
06:10 avuserow std: say(3 xor 4)
06:10 p6eval std 31863: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse argument list at /tmp/V6PChdx2ml line 1:␤------> [32msay[33m⏏[31m(3 xor 4)[0m␤Couldn't find final ')'; gave up at /tmp/V6PChdx2ml line 1:␤------> [32msay(3 [33m⏏[31mxor 4)[0m␤    expecting an infix operator with precedence
06:10 p6eval ..tigh…
06:10 pmichaud rakudo is based on std.pm, yes.
06:10 pmichaud but it doesn't use it directly.
06:10 pmichaud and looks like std gives the same message :-)
06:12 mynick003 joined #perl6
06:13 diegoviola joined #perl6
06:13 diegoviola left #perl6
06:16 dalek rakudo: 50e0e7e | pmichaud++ | build/PARROT_REVISION:
06:16 dalek rakudo: Bump PARROT_REVISION to get fix for RT #76792.
06:16 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/50e0e7ee7263b401ffe95aa7585ee07ee7188d6d
06:17 avuserow pmichaud: where is the commitbit site? I want to see if I remember my credentials...
06:18 pmichaud avuserow: don't recall, alas.
06:18 pmichaud (I hardly use the commitbit site myself)
06:18 avuserow aha! I guessed it. http://commitbit.pugscode.org/
06:20 * moritz_ back
06:20 phenny moritz_: 01:10Z <ingy> tell moritz_ Add a "star" to the evalbot please. KTHXBAI
06:22 LaVolta perl6: my $x = "测试"; say $x;
06:22 p6eval pugs, rakudo da16b5: OUTPUT«测试␤»
06:23 pugssvn r31864 | avuserow++ | hoping to come back, but with a different handle.
06:23 avuserow hi, moritz_!
06:24 pmichaud phenny: tell jnthn I know where the problem is with $a >>->> $b, will fix it shortly-ish.
06:24 phenny pmichaud: I'll pass that on when jnthn is around.
06:25 * moritz_ still sleepy
06:27 moritz_ \o/ > 1.1k R* downloads, + 350 msi downloads
06:28 avuserow 'say(3 xor 4)' should parse the same as 'say (3 xor 4)', correct?
06:28 moritz_ in general, no
06:28 moritz_ say (1, 2) # pass one Parcel to say()
06:28 moritz_ say(1, 2) # pass two Ints to say()
06:29 avuserow oh, now I see how it can get confused
06:30 pugssvn r31865 | moritz++ | [evalbot] star target
06:30 moritz_ this is to make  say (1 + 2) * 3  print 9
06:30 moritz_ instead of 3, as perl 5 does
06:30 moritz_ with which it confuses a lot of beginners
06:30 moritz_ and sometimes me too
06:32 bjarneh joined #perl6
06:32 LaVolta does rakudo star have default encoding settings or from env?
06:32 cxreg joined #perl6
06:32 moritz_ yes, UTF-8
06:33 Su-Shee ui, shiny download numbers. :)
06:33 Su-Shee good morning.
06:34 ashleydev joined #perl6
06:35 LaVolta moritz_:  I tested some inputs here, and it seems to be okay, but if I use my local perl6 copy, it will output some strange characters...
06:35 LaVolta (I mean perl6 from rakudo star)
06:35 moritz_ LaVolta: note that UTF-8 is a bit broken on the REPL, but should work fine in proper scripts
06:36 MattMAn joined #perl6
06:36 MattMAn Hi
06:36 MattMAn I'm playing with the new Rakudo Star
06:36 avuserow Hi MattMAn
06:37 LaVolta moritz_:  thanks, it's the repl, so, the bot here will run a script copy of our inputs, right?
06:37 MattMAn In Perl5 I used to do assign the result of a match to an array
06:37 MattMAn But that doesn't seem to be working in Rakudo
06:37 MattMAn Is this the right place to be asking these sorts of questions ?
06:37 moritz_ LaVolta: yes, it was written long before the REPL was even close to being usable
06:38 moritz_ MattMAn: it is
06:38 MattMAn I checked the spec in S05
06:38 moritz_ rakudo: for 'abc'.match(/<alpha>/, :g) { say "match $_" }
06:38 p6eval rakudo da16b5: OUTPUT«match a␤match b␤match c␤»
06:38 MattMAn Ah
06:38 moritz_ rakudo: for 'abc'.comb(/<alpha>/) { say "match $_" }
06:38 p6eval rakudo da16b5: OUTPUT«match a␤match b␤match c␤»
06:38 moritz_ pretty much the same
06:38 MattMAn I was trying to do it with the ~~ operator
06:39 moritz_ which is OK in principle, but m:g// and rx:g// aren't implemented yet
06:39 MattMAn Something like this
06:39 MattMAn my ($b,$c) = $a ~~ ms/((\w+) \s (\w+) \s (\w+))/ ;
06:39 MattMAn Which just generated a syntax error
06:39 moritz_ std: my ($b,$c) = $a ~~ ms/((\w+) \s (\w+) \s (\w+))/ ;
06:39 p6eval std 31865: OUTPUT«[31m===[0mSORRY![31m===[0m␤Variable $a is not predeclared at /tmp/evdFautXnZ line 1:␤------> [32mmy ($b,$c) = $a[33m⏏[31m ~~ ms/((\w+) \s (\w+) \s (\w+))/ ;[0m␤Bogus term at /tmp/evdFautXnZ line 1:␤------> [32mmy ($b,$c) = $a ~~ ms/((\w+[33m⏏[31m) \s (\w+) \s (\w+))/
06:39 p6eval ..;[…
06:40 moritz_ std: my ($b,$c) = '' ~~ ms/((\w+) \s (\w+) \s (\w+))/ ;
06:40 p6eval std 31865: OUTPUT«[31m===[0mSORRY![31m===[0m␤Bogus term at /tmp/LwMNaL9Vxb line 1:␤------> [32mmy ($b,$c) = '' ~~ ms/((\w+[33m⏏[31m) \s (\w+) \s (\w+))/ ;[0m␤Undeclared routines:␤      'ms' used at line 1␤      'w' used at line 1␤Parse failed␤FAILED 00:01 120m␤»
06:40 moritz_ MattMAn: ms// is not a valid regex quoting construct
06:40 moritz_ to be m// or m:s// or so
06:40 MattMAn OK
06:40 MattMAn I got that straight from S05
06:41 MattMAn So should I be able to do this ?
06:41 MattMAn ($b,$c,$d) =  $a.match(/((\w+) \s (\w+) \s (\w+))/)
06:41 moritz_ rakudo: 'abc defg' ~~ /(\w+) \s (\w+)/; my ($a, $b) = @($/); say $a.perl; say $b.perl;
06:41 p6eval rakudo da16b5: OUTPUT«Match.new(␤ # WARNING: this is not working perl code␤ # and for debugging purposes only␤ from => 0,␤ orig => "abc defg",␤ to   => 3,␤)␤Match.new(␤ # WARNING: this is not working perl code␤ # and for debugging purposes only␤ from => 4,␤ orig => "abc defg",␤ to   => 8,␤)␤»
06:41 moritz_ rakudo: 'abc defg' ~~ /(\w+) \s (\w+)/; my ($a, $b) = @($/); say "a: $a"; say "b: $b"
06:41 yongbin_ joined #perl6
06:41 p6eval rakudo da16b5: OUTPUT«a: abc␤b: defg␤»
06:42 MattMAn rakudo: ($b,$c,$d) =  $a.match(/((\w+) \s (\w+) \s (\w+))/)
06:42 moritz_ MattMAn: I'm not sure if it's supposed to work - might need to re-check the spec
06:42 p6eval rakudo da16b5: OUTPUT«===SORRY!===␤Symbol '$b' not predeclared in <anonymous> (/tmp/OBYXmIjBoH:22)␤»
06:43 MattMAn The first mention of using a match result as an array in S05 says the following
06:43 MattMAn When used as an array, a Match object pretends to be an array of all its positional captures. Hence       ($key, $val) = ms/ (\S+) => (\S+)/;
06:43 p6eval joined #perl6
06:43 moritz_ hm
06:43 pmichaud that could be fossil
06:43 pmichaud but the following works
06:43 moritz_ I'm quite sure it is
06:43 moritz_ especially if it contains an unquoted =>
06:44 pmichaud oh, you already had the working form above.  just cast it into a list with @()
06:44 moritz_ star: use SVG; say "alive"
06:44 p6eval star * 2010.07: OUTPUT«alive␤»
06:44 pmichaud or end the .match() with .list or .flat
06:44 pmichaud S05 has an unquoted => ?
06:44 * pmichaud checks
06:44 Ross joined #perl6
06:44 pmichaud aha, there it is.
06:44 pmichaud anyway, I'm sure it needs a @(...)  now
06:45 moritz_ ah, ms is short for m:s, but not even STD.pm implements it :-)
06:45 sorear :( resumable exceptions were removed from the CLR
06:46 pmichaud hmmm, perhaps it doesn't need the @(...)
06:46 * pmichaud thinks
06:46 MattMAn No, just tried it
06:46 MattMAn Generates a syntax error
06:46 pugssvn r31866 | moritz++ | [evalbot] less verbose R* version number
06:46 moritz_ syntactically $/ is one item
06:46 pmichaud MattMAn: I mean per the specification, not based on what R* does
06:46 pmichaud istr TimToady++ speculating that a match object could flatten into list context via .caps or something like that
06:47 MattMAn Is this what you meant ?
06:47 MattMAn my @($b,$c) = $a ~~ ms/((\w+) \s (\w+) \s (\w+))/ ;
06:47 MattMAn Oops
06:47 MattMAn That's not right
06:47 MattMAn Let me try again
06:47 moritz_ it won't work with the outer (...) for one
06:47 pmichaud MattMAn: my ($b, $c) = @( $a ~~ m/.../);
06:48 MattMAn No
06:48 MattMAn Puts the match object in $b
06:48 MattMAn And nothing in $c
06:48 pmichaud okay, that seems buggy-ish then.
06:48 * pmichaud tries
06:48 MattMAn OK
06:48 MattMAn Not to worry
06:48 MattMAn Just wanted to make sure I wasn't doing something stupid
06:49 pmichaud rakudo:  my ($b, $c) = @( '12' ~~ / (\d) (\d) / );  say "$b,$c";
06:49 p6eval rakudo da16b5: OUTPUT«1,2␤»
06:49 pmichaud works there.
06:49 moritz_ rakudo: my ($a, $b) = @( 'abc def' ~~ /(\w+)\s(\w+)/ ); say "a: $a; b: $b"
06:49 p6eval rakudo da16b5: OUTPUT«a: abc; b: def␤»
06:49 moritz_ MattMAn: you get everything in $a if you leave the outer pair of parenthesis in the regex
06:49 pmichaud oh yes, of course
06:49 pmichaud because everything goes into $0
06:50 moritz_ MattMAn: because in Perl 6, match objects are nested
06:50 moritz_ ie ((a) (b) (c)) will capture a in $0[0], b in $0[1] etc.
06:50 MattMAn Ah
06:50 MattMAn So I was doing something dumb
06:50 pmichaud moritz++
06:50 MattMAn Thanks very much
06:50 moritz_ MattMAn: no, you just applied too much perl 5 knowledge :-)
06:50 MattMAn Yes
06:51 p6eval joined #perl6
06:51 moritz_ star: say 1 # just to check the version number
06:51 MattMAn That's going to be problematic for quite some time to come I think
06:51 p6eval star 2010.07:  ( no output )
06:51 Su-Shee MattMAn: wait until you try to apply your perl6 knowledge to perl 5.
06:51 moritz_ the version number works, but something else is borked :/
06:51 moritz_ ah, just high server load
06:52 pmichaud ...star's version number is 2010.07?  it ought to be something like 2010.07-47-....
06:52 flatwhatson joined #perl6
06:52 MattMAn Thanks for your help
06:52 moritz_ pmichaud: it's not the perl6 --version output
06:52 pmichaud moritz_: oh.
06:52 moritz_ star: say 1
06:52 p6eval star 2010.07: OUTPUT«1␤»
06:52 sorear moritz_: Why does high server load cause ( no output )
06:52 moritz_ sorear: timeout
06:52 pmichaud alarm timeout
06:54 sorear Oh, it doesn't use setitimer(ITIMER_VIRTUAL ?
06:54 moritz_ setrlimit RLIMIT_CPU,  15, 20
06:56 sorear weird
06:57 sorear I would have expected RLIMIT_CPU to limit CPU time, personally
06:57 Casan joined #perl6
07:01 mmmm joined #perl6
07:01 mmmm -tèè-
07:04 sorear moritz_: Would it be reasonable to bulk download the perlgeek.de logs?  I have an urge to make pretty channel activity graphs.
07:04 sorear *#perl6
07:08 zulon joined #perl6
07:08 baest joined #perl6
07:08 ucb joined #perl6
07:08 ucb hello everybody,
07:09 moritz_ sorear: I can provide you the mysql dumps, or you can add code for generating graphs to the ilbot repo, and I run it and publish them
07:09 moritz_ sorear: or both, of course :-)
07:09 ucb i do not know perl now actually
07:09 moritz_ btw we had 152 distinct nicks yesterday, typical is less than 90
07:09 moritz_ hi ucb
07:09 ucb but i have to write a little script
07:09 ucb such as
07:10 ucb a unix command take a file path and then open it with vim
07:10 ucb how can i do?
07:10 moritz_ run("vim $filename")
07:10 moritz_ supposing you're talking about Perl 6
07:11 moritz_ for perl 5, see #perl
07:11 ucb ok firstly thanks so mucj, then sorry i have to go perl5
07:13 aesop joined #perl6
07:14 ucb left #perl6
07:14 sorear Isn't that command "vim"?
07:16 snearch joined #perl6
07:17 sorear moritz_: Auto-generating graphs sounds too awesome to pass up, though I think some sample data is needed; can you provide dumps for the least active ilbot channel>
07:20 moritz_ -> private message
07:22 kjeldahl joined #perl6
07:25 agentzh joined #perl6
07:25 sorear What happens when I say die "Foo"?
07:26 sorear How does "Foo" become endowed with handled, resume, etc methods?
07:32 vieq joined #perl6
07:32 vieq left #perl6
07:35 cjk101010 joined #perl6
07:35 sorear Or, for that matter, a backtrace.
07:36 snarkyboojum yeah, was cool to see the number of people in the channel hit 200 yesterday
07:36 snarkyboojum for a lenient definition of "people" :)
07:39 TiMBuS rakudo: die 'test'; CATCH {.WHAT.say}
07:40 p6eval rakudo 50e0e7: OUTPUT«Exception()␤»
07:40 moritz_ sorear: I guess it gets wrapped into an Exception, and is available as .payload or so
07:40 aesop joined #perl6
07:41 moritz_ but I plan to change that in the next few months, and formalise it
07:44 * sorear wonders if TimToady knows that the Perl 6 exception model, in terms of UNDO blocks, when unwinding happens, the possible results of exception handlers, etc, is exactly the same as the Visual C++ native (not ISO C++) exception model
07:44 sorear unfortunately, microsoft simplified it for .net and dropped resumable exceptions, so now I get to emulate it on top of a frustratingly similar system
07:45 wamba joined #perl6
07:46 sorear moritz_: do you have a working plan I can use, or will I need to invent my own stopgap?
07:53 meppl joined #perl6
08:05 Nazro joined #perl6
08:06 Nazro Tuedelue
08:08 Chillance joined #perl6
08:14 masak joined #perl6
08:14 masak oh hai, #perl6!
08:15 sorear Hello masak
08:16 * masak backlogs
08:17 shomodj joined #perl6
08:20 mp45 joined #perl6
08:20 mp45 perl6: say q/foo/
08:21 p6eval pugs, rakudo 50e0e7: OUTPUT«foo␤»
08:22 BlueT_ joined #perl6
08:22 patrickas joined #perl6
08:23 masak huh. no elf anymore.
08:23 masak yapsi: say q/foo/
08:23 p6eval yapsi: OUTPUT«Could not parse␤»
08:23 masak ENOTYETIMPLEMENTED
08:25 sorear niecza: say q/foo/
08:25 p6eval niecza 01680b9: OUTPUT«␤Unhandled Exception: System.IndexOutOfRangeException: Array index is out of range.␤  at CORE.Say_55C (Niecza.Frame th) [0x00000] in <filename unknown>:0 ␤  at Niecza.Frame.Continue () [0x00000] in <filename unknown>:0 ␤  at Niecza.Kernel.RunLoop (Niecza.DynBlockDelegate
08:25 p6eval ..boot) [0x0…
08:25 sorear huh.
08:25 sorear niecza: say 'foo'
08:25 p6eval niecza 01680b9: OUTPUT«foo␤»
08:25 sorear clearly a bug somewhere here
08:30 * masak gets a sudden mental image of the hyper-trinary operator o.O
08:31 masak it would require three » in total
08:31 moritz_ masak: hey, we should discuss module meta data at YAPC::EU
08:32 masak moritz_: yes. I'd willingly do that.
08:32 * sorear won't be there :(
08:32 thebird joined #perl6
08:35 masak hugme: hug sorear
08:35 daxim joined #perl6
08:35 * hugme hugs sorear
08:36 masak rakudo: my $foo = 1; $foo xor= 1; say $foo
08:37 p6eval rakudo 50e0e7: OUTPUT«Null PMC access in invoke()␤  in main program body at line 1␤»
08:37 * masak submits rakudobug
08:38 mp45_ joined #perl6
08:39 dakkar joined #perl6
08:39 Snowclone joined #perl6
08:40 masak rakudo: my $foo = 1; $foo xor= 1
08:40 p6eval rakudo 50e0e7: OUTPUT«Null PMC access in invoke()␤  in main program body at line 1␤»
08:40 masak rakudo: my $foo = 1; $foo and= 1
08:40 p6eval rakudo 50e0e7:  ( no output )
08:40 masak rakudo: my $foo = 1; $foo or= 1
08:41 p6eval rakudo 50e0e7:  ( no output )
08:43 daxim jnap++ http://slashdot.org/comments.pl?sid=1737234&amp;cid=33079092 especially the last paragraph
08:49 Mowah joined #perl6
08:52 masak jnap++
08:59 masak there's a message to us from a smug OCaml weenie :) http://rwmj.wordpress.com/2010/07/30/everything-old-is-new-again/
09:00 sorear I think Exception might actually be a role
09:00 sorear and die "Bang" means die("Bang" but Exception)
09:06 darkop joined #perl6
09:08 hryk joined #perl6
09:11 Su-Shee masak: his fault. ocaml sold its capabilities badly. and french-only websites which one easily encounters if searching for ocaml stuff don't help as well.
09:12 Su-Shee also I know exactly _one_ project in ocaml which has some everyday use for joe user.
09:12 * moritz_ too. unison.
09:12 moritz_ it's quite a cool tool
09:12 dual joined #perl6
09:12 moritz_ anyway, I wonder why he things Perl 6 doesn't have "real GC" yet
09:13 moritz_ *thinks
09:13 frettled Well, do we?  :D
09:13 moritz_ well, don't we?
09:13 moritz_ it's not fast
09:13 moritz_ but so far I haven't seen evidence that it's not "real"
09:14 Su-Shee moritz_: oh, that makes two tools. mine would be mldonkey. ;)
09:14 moritz_ Su-Shee: :-)
09:14 xabbu42_ joined #perl6
09:14 frettled It's not as if garbage collection is specified precisely, is it?  :)
09:16 moritz_ debtags search implemented-in::ocaml
09:16 moritz_ debtags++
09:16 moritz_ (enrico zini)++
09:17 am0c joined #perl6
09:22 moritz_ http://developers.slashdot.org/comments.pl?sid=1737234&amp;cid=33078768
09:22 moritz_ of course I liked the sentence about the book :-)
09:22 moritz_ "Perl6 does have a lot to offer that is cutting edge so it does have a chance. Take a look at the PDF and the Regex Grammars section where they implement JSON in a few pages. And it isn't in "one liner" style. It is in true language grammar style just like everyone learns (or should learn) in their compiler studies."
09:24 Su-Shee ah and the bitching starts about "the spec isn't finished" and all.
09:27 masak I consider "the spec isn't finished" to be one of the *strengths* of Perl 6 (at this stage of development). but I can understand how outsiders might not arrive at that conclusion.
09:28 frettled I consider the fact that Perl 6 _has a spec_ to be a strength.
09:28 Su-Shee schwern and others compare it to c and sql which seems to be a specific thing I don't get.
09:28 tadzik joined #perl6
09:28 colomon I almost learned Ocaml *just* because of Unison.
09:29 Su-Shee the only thing I take seriously are comments which go into "yes, nice, but where will the place for perl 6 actually be?" and that's something one can manage.
09:29 colomon As far as I know, it's the only program in a functional language that gets regular use at my house.
09:29 masak speaking of which, does the spec spec whether an enumeration object does Role?
09:29 Su-Shee hm. I want speck today. ;)
09:30 frettled Does the speck spec spec speck?
09:32 sorear I really don't care what J. Random Slashdotter thinks
09:32 sorear Am I alone?
09:32 frettled sorear: no, you're not alone.
09:34 foodoo joined #perl6
09:34 * sorear decides to just implement $! badly for now
09:34 masak I don't care much what random redditers or hackernewsers think either. but they do form a carpet of general discourse, and as a whole, that discourse gives an indication of... something. :) I tend to think of it as people with time on their hands taking a core dump of their unconscious for the rest of us to read.
09:35 envi^home joined #perl6
09:36 squeeky wait, you guys read the comments? I stopped looking at line noise a long time ago.
09:36 Su-Shee it's really simple. want the language to have success in terms of "language for everybody in their every day use and for companies?". than you have to care for different things than if you'd like your language to get the recognition of your favorite academic peers.
09:37 masak squeeky: I confess I do. I probably shouldn't. :)
09:38 Su-Shee I do too, but I ignore idiots.
09:38 masak when it's an option, I downvote them. otherwise I ignore them, too.
09:39 snarkyboojum joined #perl6
09:40 Su-Shee also, comments are interesting because they show at least in part wether or not your assumptions about reactions were right or totally off. I would have expected more "haha, 10 years too late I changed to xy years ago" and found much "ooh finally, I've waited for you so long..". so perl love obviously runs deep.
09:41 tadzik hrm. I added my projects to proto, but they don't appear on proto.perl6.org
09:42 tadzik maybe they should be added to pls too?
09:42 moritz_ tadzik: proto.perl6.org takes its data from the pls branch
09:42 sorear leave, die, warn, next, goto, redo, last, return, take, succeed
09:42 tadzik oh, ok
09:42 sorear am I missing any
09:42 sorear ?
09:43 Alias joined #perl6
09:43 tadzik By the way, there's alredy a Term::ANSIColor module there, but less featured and I'm unable to contact the author to merge the effort. Is it ok to remove it for now?
09:43 masak Alias! \o/
09:43 masak tadzik: let it stay until you can contact the author.
09:43 Alias I see someone else has decided to get into the business of making .msi installers
09:43 tadzik okay
09:43 masak tadzik: do you already have something more featureful?
09:44 masak Alias: aye. might have been jnthn, I don't recall.
09:45 tadzik masak: yep, that's the thing that got into Star
09:45 Alias Cause if we can get a zip layout, I'd love to build it into Strawberry Professional
09:45 Alias I'd much rather try out Perl 6 with a proper IDE
09:45 briang joined #perl6
09:46 masak tadzik: \o/
10:06 moritz_ Alias: what kind of zip layout do you need? Are the absolute paths of the install location known in advance?
10:07 Alias Yup
10:08 Alias Well, in the crudest version of strawberry
10:08 Alias But there's tons of prior art to copy
10:08 Alias That shows the zip layout
10:08 Alias I'll grab an example
10:08 moritz_ so, just a zip of rakudo, parrot, and the modules (both source and compiled)?
10:14 Alias Yup
10:14 Alias So we drop that onto the tree early, then build up Padre, then add the Padre Perl 6 plugin, and we're hopefully done
10:15 bjarneh joined #perl6
10:17 moritz_ I'll see if I can shove the dust off my old windows dev environment, or motivate jnthn++ to do it
10:17 Farhad2161 joined #perl6
10:17 Farhad2161 hi
10:17 darkop left #perl6
10:17 moritz_ hi Farhad2161
10:18 Farhad2161 left #perl6
10:22 Alias http://strawberryperl.com/package/expat-2.0.1-vanilla.zip
10:22 Alias There's a boring example
10:22 Alias It's dropped in below C:\strawberry\c\
10:22 Alias All the c stuff should go in there
10:22 Alias And \c\bin is added to PATH for you
10:23 Alias And then we'll have to make you a new \perl6\ or \rakudo\ root or something
10:23 Alias Within which you can do as you please
10:23 Alias But I hope we will have already populated all the C libraries you need already
10:25 moritz_ is libicu bundled?
10:27 moritz_ most things work without it, but some Unicode handling requires it
10:27 moritz_ for example for uc($non-latin1-string)
10:28 M_o_C joined #perl6
10:28 jferrero joined #perl6
10:30 szabgab rakudo: say (1..4).map({ $_ => 1 });
10:30 p6eval rakudo 50e0e7: OUTPUT«No candidates found to invoke for method 'map' on object of type 'Range'; available candidates have signatures:␤:(Mu : &block;; *%_)␤␤  in main program body at line 22:/tmp/CYgpFWFSz7␤»
10:30 zulon joined #perl6
10:31 colomon :\
10:31 colomon oh!
10:31 colomon it's the { $_ => 1 } which is the problem.
10:32 colomon Rakudo probably thinks it's a hash
10:32 moritz_ {; $_ => 1}
10:32 moritz_ should help
10:32 szabgab rakudo: my @x = 1..4; say @x.map({ $_ => 1 })
10:32 p6eval rakudo 50e0e7: OUTPUT«No candidates found to invoke for method 'map' on object of type 'Array'; available candidates have signatures:␤:(Mu : &block;; *%_)␤␤  in main program body at line 22:/tmp/YfsIOYBGDT␤»
10:32 moritz_ we should really install another multi for that
10:32 szabgab rakudo: my @x = 1..4; say @x.map({; $_ => 1 })
10:32 p6eval rakudo 50e0e7: OUTPUT«1  12      13      14      1␤»
10:32 colomon rakudo: my @x = 1..4; say @x.map({; $_ => 1 }).perl
10:32 p6eval rakudo 50e0e7: OUTPUT«(1 => 1, 2 => 1, 3 => 1, 4 => 1)␤»
10:32 szabgab rakudo: say (1..4).map({; $_ => 1 });
10:32 p6eval rakudo 50e0e7: OUTPUT«1  12      13      14      1␤»
10:33 colomon rakudo: my @x = 1..4; say @x.map(* => 1).perl
10:33 p6eval rakudo 50e0e7: OUTPUT«(1 => 1, 2 => 1, 3 => 1, 4 => 1)␤»
10:36 Trashlord joined #perl6
10:36 snarkyboojum joined #perl6
10:37 M_o_C joined #perl6
10:45 colomon rakudo: (1..4 Z=> 1 xx *).perl
10:45 Alias moritz: Not sure... but I imagine if it's needed we can build a vanilla package
10:45 p6eval rakudo 50e0e7:  ( no output )
10:45 colomon rakudo: (1..4 Z=> 1 xx *).perl.say
10:45 p6eval rakudo 50e0e7: OUTPUT«(1 => 1, 2 => 1, 3 => 1, 4 => 1)␤»
10:45 bjarneh joined #perl6
11:02 whee joined #perl6
11:09 mscha joined #perl6
11:12 kid51 joined #perl6
11:13 kid51 What is the best list on which to report a Rakudo Star failure to build, i.e., a failure at the Perl 6 'make' stage?
11:17 colomon I'm not sure what the current best bug reporting method is.
11:17 colomon What happened to your build?
11:18 mikehh_ joined #perl6
11:29 frettled kid51: See under the heading "Reporting bugs" in the README file.
11:30 frettled IIRC, it's the same as for Rakudo (rakudobug@perl.org)
11:31 plol joined #perl6
11:32 moritz_ right
11:33 M_o_C joined #perl6
11:33 frettled Yup, that's what the README says.  Phew :)
11:55 briang what's the best way of converting a List of Pairs to a hash?
11:55 briang (Enjoying R* very much. thanks gang)
11:56 moritz_ briang: .hash
11:56 moritz_ rakudo: say (a => 1, b => 2).hash.perl
11:56 moritz_ alternativel %( ... )
11:56 p6eval rakudo 50e0e7:  ( no output )
11:56 briang nah. That's too easy :)
11:56 moritz_ huh, what's wrong?
11:57 Su-Shee rakudo: my @pair = <cat dog>; my %hash = @pair.hash; say %hash{cat};
11:57 p6eval rakudo 50e0e7: OUTPUT«Could not find sub &cat␤  in main program body at line 22:/tmp/dmSKASkZKY␤»
11:57 tadzik nothing, he's just amazed I guess :P
11:58 gfldex my @pair = <cat dog>; my %hash = @pair.hash; say %hash
11:58 gfldex my @pair = <cat dog>; my %hash = @pair.hash; say %hash<cat>;
11:58 moritz_ rakudo: my @pair = <cat dog>; my %hash = @pair.hash; say %hash<cat>;
11:58 p6eval rakudo 50e0e7: OUTPUT«dog␤»
11:58 moritz_ rakudo: say (a => 1, b => 2).hash.perl
11:58 p6eval rakudo 50e0e7:  ( no output )
11:58 tadzik Hmm. Inspired by buddy's Perl 5 module, would it be possible to dump all the variables to STDERR during a program run? Is there a way to get a list of all variables available?
11:59 moritz_ wow, that gives a segfault
11:59 moritz_ rakudo: my $x = 5; say callframe(0).my.perl
11:59 p6eval rakudo 50e0e7: OUTPUT«{"\$_" => 23, "\$/" => 16, "__CANDIDATE_LIST__" => 2, "\$x" => 19, "\$!" => 18, "\$MAIN" => 12}␤»
11:59 tadzik oh, cool
11:59 moritz_ rakudo: my $x = 5; say callframe(0).my.keys.join(' ')
12:00 p6eval rakudo 50e0e7: OUTPUT«$_ $/ __CANDIDATE_LIST__ $x $! $MAIN␤»
12:00 moritz_ I just wonder what the values are about
12:01 gfldex reference count?
12:02 moritz_ shouldn't be (we have a GC :-)
12:02 gfldex Strange Bird Numbers?
12:02 moritz_ does 'say (a => 1, b => 2).hash.perl' segfault for anybody else?
12:03 gfldex yes
12:03 tadzik yes
12:03 gfldex 50e0e7ee7263b401ffe95aa7585ee07ee7188d6d, last commit i got
12:03 tadzik even (a => 1, b => 2).hash
12:04 tadzik This is Rakudo Perl 6, version 2010.07-54-g94cfd5e built on parrot 2.6.0 r48225
12:04 briang moritz_: no segfault, but no output either
12:04 * moritz_ submits rakudobug
12:04 larsen joined #perl6
12:06 briang (converting list to hash): I would have found it mush easier to work out myself if I hadn't left a ".perl" on the end of the list assignment. doh
12:06 briang *much*
12:06 moritz_ rakudo: say %(a => 1, b => 2).perl
12:06 p6eval rakudo 50e0e7:  ( no output )
12:07 gfldex why is it .hash and not .Hash anyways?
12:07 moritz_ rakudo: say (my %h = a => 1, b => 2).perl
12:07 p6eval rakudo 50e0e7: OUTPUT«{"a" => 1, "b" => 2}␤»
12:07 moritz_ gfldex: good question - I don't know
12:07 moritz_ btw assigning to a hash variable is a nice workaround for now
12:09 hans_ joined #perl6
12:18 gfldex Is there a way to get all class objects in the current scope?
12:18 drbean joined #perl6
12:20 pmurias joined #perl6
12:20 am0c joined #perl6
12:21 moritz_ I know of none
12:25 goksie joined #perl6
12:28 * kid51 submits rakudobug on build failure; heads off to $job
12:28 goksie_ joined #perl6
12:30 bluescreen joined #perl6
12:35 mj41 joined #perl6
12:38 Kodi joined #perl6
12:40 ruoso joined #perl6
12:40 pmurias ruoso: hi
12:41 ruoso hi pmurias
12:43 pmurias ruoso: i'm adding the STD:: prefix to things in STD at the dist build time so that STD-0.05 should be an authorized release
12:50 xinming_ joined #perl6
12:50 rindolf joined #perl6
12:54 chickenzilla joined #perl6
12:55 pugssvn r31867 | Kodi++ | [perl6.org] Improved the description of Rosetta Code.
12:58 pmurias ruoso: STD-0.05 indexed correctly :)
13:00 pmurias ruoso: i think i'll polish+release Forest::Gtk2 today, as the pluggability of v6 is not put into the mainline yet
13:02 timbunce joined #perl6
13:04 hryk joined #perl6
13:05 moritz_ phenny: tell mberends you'll like http://www.reddit.com/r/perl/comments/cv1qn/announce_rakudo_star_a_useful_usable_early/c0vicuc :-)
13:05 phenny moritz_: I'll pass that on when mberends is around.
13:09 moritz_ std: \o/ |\o/| o< /o\
13:09 p6eval std 31867: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse quote-words subscript; couldn't find right angle quote at /tmp/cMmSbdtT2b line 1:␤------> [32m\o/ |\o/| o<[33m⏏[31m /o\[0m␤    expecting backslash␤Undeclared routine:␤       'o' used at line 1,1,1␤Parse failed␤FAILED 00:01 116m␤»
13:13 Irkm joined #perl6
13:13 zachy joined #perl6
13:15 azert0x joined #perl6
13:18 lmistura joined #perl6
13:19 lmistura Hello im new to perl6, where can i find information about perl6 regexes? Is there a good place to find info not outdated info?
13:20 timdemkowsky joined #perl6
13:20 timdemkowsky good morning guys
13:20 [Coke] lmistura: yes, the specs are the best place.
13:21 [Coke] S05?
13:21 [Coke] bah, no bot. :P
13:21 [Coke] http://feather.perl6.nl/syn/S05.html
13:21 [Coke] there may also be an intro the PDF book that came with star, though I'm not sure.
13:22 [Coke] The nice thing about that URL is that it links to the tests, so you can expand them to see working code... and if it says #?rakudo skip, you know that it's not yet implemented in rakudo.
13:23 PerlJam chapter 9 of the book is pattern matching (regex)
13:24 PerlJam (and chapter 10 is grammars :)
13:24 [Coke] PerlJam++
13:25 desertm4x joined #perl6
13:26 Irkm hi, i just downloaded rakudo today and I'm confused about [+]. Has someone a few minutes to explain something to me?
13:26 PerlJam Irkm: sure!
13:26 lmistura Thanks guys !
13:26 Irkm why do these two statements not result in the same result:
13:26 Irkm perl6: my @arr = 1,2,3; my $sum = [+] @arr;say "sum: $sum";
13:26 p6eval pugs, rakudo 50e0e7: OUTPUT«sum: 6␤»
13:26 Irkm perl6: my @arr = <1,2,3>; my $sum = [+] @arr;say "sum: $sum";
13:26 p6eval pugs: OUTPUT«sum: 1,2,3␤»
13:26 p6eval ..rakudo 50e0e7: OUTPUT«sum: 1␤»
13:27 frettled lmistura: You might also want to check out the Perl 6 Advent Calendar, which has use cases and examples.
13:27 Irkm It look to me as if in the second case only the first element in the array is added .
13:27 [particle] Irkm: you're confused about <...>, not [+]
13:27 PerlJam Irkm: are you familiar with Perl 5?
13:27 Irkm yes
13:27 PerlJam Irkm: <> is like qw() in Perl 5
13:27 Irkm ok then why does this not work?
13:27 Irkm perl6: my @arr =  tom => 4, ted => 3, tod => 5, tad => 5;say [+] @arr>>.values;
13:28 p6eval rakudo 50e0e7: OUTPUT«4␤»
13:28 p6eval ..pugs: OUTPUT«8␤»
13:28 Irkm It gives only the sum of the first array member.
13:28 frettled lmistura: http://perl6advent.wordpress.com/2009/12/01/perl-6-advent-calendar/
13:28 baest perl6: my @a = <1 2 3>; say [+] @a;
13:28 p6eval pugs, rakudo 50e0e7: OUTPUT«6␤»
13:29 PerlJam rakudo: my @arr =  tom => 4, ted => 3, tod => 5, tad => 5; @arr>>.values.perl;
13:29 p6eval rakudo 50e0e7:  ( no output )
13:29 PerlJam oops
13:29 baest Irkm: <1,2,3> is an array containing the string "1,2,3"
13:29 PerlJam rakudo: my @arr =  tom => 4, ted => 3, tod => 5, tad => 5; @arr>>.values.perl.say;
13:29 p6eval rakudo 50e0e7: OUTPUT«([4], [3], [5], [5])␤»
13:29 Irkm ah i see.
13:29 Irkm my bad.
13:29 PerlJam Irkm: notice the structure
13:30 timdemkowsky joined #perl6
13:30 PerlJam rakudo: my @arr =  tom => 4, ted => 3, tod => 5, tad => 5; @arr>>.value.perl.say;
13:30 p6eval rakudo 50e0e7: OUTPUT«(4, 3, 5, 5)␤»
13:30 PerlJam compare and contrast  :)
13:31 PerlJam (though I find it weird that a Pair as a method named "values" myself)
13:33 Irkm oh so there is a method value and a method values? This is kind of confusing :)
13:33 mutewit joined #perl6
13:34 LaVolta joined #perl6
13:34 chickenzilla left #perl6
13:34 Irkm thanks a lot.
13:34 PerlJam Irkm: Pairs have a key and a value, thus there are methods to get at those.
13:35 PerlJam Irkm: Hashes have keys and values, thus the pluralization of the methods
13:36 timdemkowsky where do i get one of these nice feather.perl6.nl cloaks? :)
13:36 PerlJam timdemkowsky: Ask Juerd.
13:36 timdemkowsky PerlJam: thanks!
13:36 mj41 joined #perl6
13:36 mutewit So, I have just started reading the first chapter of "UsingPerl6-draft.pdf"
13:37 PerlJam mutewit: the preface?  :)
13:37 mutewit PerlJam: "The Basics", my bad.
13:38 mutewit and the first thing that strikes me is that hashes don't need to use the 'scalar' prefix to get at individual items.
13:38 xabbu42_ joined #perl6
13:38 PerlJam mutewit: correct.
13:38 Italian_Plumber joined #perl6
13:38 LaVolta well, I must confess, after playing the whole day with R*, it seems to me Perl 6 is sexiest language...
13:38 PerlJam There's even a footnote on page 8 that says so and gives you a handy term to google
13:38 mutewit That's an interesting reversal from 5.10
13:39 Irkm one last Question. Why is rakudo getting the same results for these two?
13:39 mutewit But then I should be treating this as a new language instead of comparing and contrasting.
13:39 Irkm perl6: my @arr =  tom => 4, ted => 3, tod => 5, tad => 5; say join(";", @arr>>.values);
13:39 Irkm perl6: my @arr =  tom => 4, ted => 3, tod => 5, tad => 5; say join(";", @arr>>.value);
13:39 p6eval rakudo 50e0e7: OUTPUT«4;3;5;5␤»
13:39 p6eval ..pugs: OUTPUT«<Error> <Error>;<Error> <Error>;<Error> <Error>;<Error> <Error>␤»
13:39 p6eval rakudo 50e0e7: OUTPUT«4;3;5;5␤»
13:39 p6eval ..pugs: OUTPUT«*** No such method in class Array: "&>>value"␤    at /tmp/WWbXKPRnzv line 1, column 66-78␤»
13:39 timdemkowsky LaVolta: Oh yeah. Perl 6 looks great, but the performance is rather poor atm
13:39 squeeky 1) Do it. 2) Do it fast.
13:40 LaVolta yep...they say it can be compared to Java :-P
13:40 * PerlJam blames parrot
13:41 [Coke] PerlJam--
13:41 [Coke] PerlJam: given the huge perf increase that colomon found, I refute you.
13:42 Su-Shee my head hurts from even driven programming.
13:42 timdemkowsky I played a bit with PIR yesterday, looks interesting. :)
13:42 PerlJam [Coke]: touché
13:43 LaVolta forgive me, will there be IronPerl6? :)
13:43 squeeky Perl Enterprise Edition
13:43 Su-Shee squeeky: Rakudo Business Enterprise Solution Edition please.
13:44 [Coke] LaVolta: sorear is working on a CLR version, yes. I think diakopter had already done something like NQP on the CLR.
13:44 PerlJam Isn't that what sorear is working on too?
13:44 timdemkowsky Managed Visual Rakudo Perl 6 Express Edition \o/
13:44 LaVolta thanks for the info...
13:44 isBEKaml joined #perl6
13:45 PerlJam (I find myself in the odd-for-perl position of thinking that there are starting to be too many implementations  :)
13:45 [Coke] PerlJam: I was under the impression that n** was aiming for Perl 6, not a subset.
13:45 [Coke] PerlJam: welcome to my brain, FOUR YEARS AGO.
13:45 [Coke] ;)
13:47 PerlJam sorear needs to add niecza to http://perl6.org/compilers/
13:47 pmichaud good morning, #perl6
13:47 PerlJam (as do all other implementors)
13:48 [Coke] cognominal: for RT #76830, can you please add an indication as to what you think a non-misleading error message would be?
13:48 [Coke] phenny: ask cognominal for RT #76830, can you please add an indication as to what you think a non-misleading error message would be?
13:48 phenny [Coke]: I'll pass that on when cognominal is around.
13:48 PerlJam (er, all other implementors need to add their respective implementation descriptions  that is  :)
13:49 PerlJam morning Pm.  No one really excoriated Perl 6 so far.
13:49 * [particle] thinks about rakudo and parrot in the context of mst's ironman competition... monthly releases for 31 months
13:49 [particle] perl 5 certainly can't say the same
13:49 jnthn morning, pmichaud
13:49 phenny jnthn: 06:24Z <pmichaud> tell jnthn I know where the problem is with $a >>->> $b, will fix it shortly-ish.
13:50 jnthn pmichaud++
13:50 * jnthn has been busily...catching up on sleep. :-)
13:50 PerlJam [particle]: this is one of those unevenly distributed futures.   Perl 5 didn't get on the regular release cycle bus until a little later in the game.
13:51 [Coke] I give up. how do you vote on a comment on /. ?
13:51 whee joined #perl6
13:52 Alias jnthn, talk to me about MSI
13:52 Alias jnthn, what do we need to do to merge your stuff into Strawberry Professional
13:53 Alias So there's an IDE for Perl 6 out the box
13:53 isBEKaml_ joined #perl6
13:55 colomon what's wrong with $a >>->> $b?
13:55 jnthn Alias: Hi! Yes, that sounds great. :-) I'm not sure if my stuff is a good starting point or not. Essentially all I did was build an installed Rakudo, then added the files to the MSI, plus setting up some start menu shortcuts and a file association.
13:55 Alias Does the current Rakudo built with hard-coded install paths?
13:56 Alias Or is it adaptive?
13:56 jnthn Alias: Hard-coded. :-(
13:56 jnthn Alias: Worse, there's no way to build a relocatable one at the moment. :-(
13:56 Alias That's fine, we planned for this
13:56 jnthn Alias: My installer doesn't actually ask the user where to install it.
13:57 jnthn Alias: It just goes straight for the place that it'll work.
13:57 jnthn *the only place...
13:57 Alias OK, so if you can change your build so that it generates the files in a mix of say C:\strawberry\c\ and something like C:\strawberry\six
13:57 jnthn I did actually try writing a program that would binary-patch the executable.
13:57 Alias Then we make a "vanilla" format zip file
13:57 Alias And add 3 lines of code to the Strawberry build code, and it should drop right in
13:58 Alias Or something more complex, but in the same general order of magnitude
13:58 jnthn Ah, so you just unpack a ZIP into the right place, and just include the ZIP file?
13:58 Alias Right
13:59 jnthn Rather than all the files individually?
13:59 jnthn Oh, OK, that's even easier than I expected then. :-)
13:59 Alias Well, there's several phases
13:59 jnthn Alias: What is Strawberry built using (compiler wise)?
13:59 Alias But for phase 1, the C/toolchain phase, we take a collection of different zip files, each one of which contains a pre-compiled fileset for some logical tool or toolset
13:59 Alias And we unroll the zip files over each other
14:00 Alias With some tweaking, if we didn't build the original zip
14:00 Alias gcc
14:00 jnthn Ah, OK
14:00 jnthn The build I did was with MSVC++
14:00 Alias Last time I was here, everyone on windows built Perl 6 on top of Strawberry
14:00 pmichaud 13:49 <PerlJam> morning Pm.  No one really excoriated Perl 6 so far.
14:00 jnthn Alias: Oh?
14:00 Alias In fact, I thought that was the ONLY way you could build it
14:00 jnthn Alias: I...never have. :-)
14:00 pmichaud PerlJam: excellent.... I blame TimToady for that :-)
14:01 PerlJam TimToady++
14:01 jnthn Alias: I've been building with the Visual Studio compiler and using nmake. ;-)
14:01 jnthn Alias: Anyway, diversity++ :-)
14:01 Alias cpan -i Perl::Dist::Strawberry
14:01 Alias The entire build stack is cpan'ified
14:01 Alias So you can actually watch it build yourself if you wish :)
14:01 jnthn Alias: OK, may well get an environment to do that too
14:02 PerlJam In fact, last night I was thinking of adding an acknowledgements section to Using Perl 6 that explicitly blamed TimToady for such a wonderful job on Perl 6 (community and all)
14:02 Alias You'll need to grab "bootstrap perl" off the strawberryperl.com/beta page
14:02 * pmichaud would be sooooo satisfied to see rakudo in a strawberry build.
14:02 Alias And you use the special bootstrap distro, to build the real distro
14:02 Alias (Hint: It's not actually THAT special)
14:02 jnthn *nod*
14:02 PerlJam strawberry comes with Padre too?  (or have I got that backwards?)
14:03 cognominal [Coke]  for #76830  I have not checked yet  what information the parser has so as to give a good message.
14:03 phenny cognominal: 13:48Z <[Coke]> ask cognominal for RT #76830, can you please add an indication as to what you think a non-misleading error message would be?
14:03 Alias PerlJam: Strawberry Professional comes with Padre, the Puzzle Bubble game, Imager, Catalyst and a range of other stuff
14:04 Alias oh, and bioperl
14:04 jnthn Alias: What I'd *really* like to try and do is get Blizkost in there and working too
14:04 Alias Basically, we try to ship a really really large "standard library"
14:04 Alias To basically one-up Python and friends :)
14:04 PerlJam Alias: wow ... that's like R* only more-so  (way way more)
14:04 PerlJam Alias++
14:04 PerlJam Strawberry++
14:05 jnthn Alias: That probably would be easier with a Rakudo built with the Strawberry toolchain.
14:05 Alias By the time Strawberry Pro exits alpha, the goal is that users should NEVER have to load the command line
14:05 Alias GUI cpan client, GUI perl running thing, that makes desktop icons for you etc, GUI perldoc client etc
14:05 pmichaud the philosophy behind strawberry has been the source for many of my thoughts about R*
14:05 pmichaud and distribution-versus-compiler in general
14:05 Alias indeed
14:06 Alias pmichaud, have you ever been present when I explained the product design?
14:06 loret joined #perl6
14:06 pmichaud Alias: not that I recall, no.  I've always been presenting the same time you have on that topic :)
14:06 PacoLinux 2005 downloads
14:06 Alias pmichaud: Here's the quick version
14:07 Alias - No single distribution can satisfy everyone, and if you try it inevitably bloats until your shipping on DVD like Oracle
14:07 Alias - Therefore, you need a product range
14:07 PerlJam okay ... I know this is old, but this is the Best Comment Ever ... "Yeah, I was so embarrassed when I went to a big carpentry convention and the parking lot shuttle wasn't made of wood."  on http://perlmonks.org/?node_id=849999
14:07 Alias - For Perl 5, there are three key audiences that need specific products
14:08 Alias 1) Vanilla - Targetting our own team and #p5p with an ultrapurist proof-of-concept basically-unusable distro
14:08 Alias 2) Strawberry - "The distribution for people that know Perl, but don't know Windows"
14:09 Alias 3) Chocolate - "The distribution for people that know Windows, but don't know Perl"
14:09 h1gh joined #perl6
14:09 Alias You can group every major user category I can think of into one of those three boxes
14:09 Alias The only potential addition is the merge module
14:10 frooh given blizkost, should I *not* port perl 5 modules to perl 6?
14:10 Alias Which is the distribution that comes in OEM packaging for embedding in other products
14:10 frooh (that don't need their api changed that is)
14:10 Alias blizkost?
14:10 pmurias Alias: and the people who both know Perl and know Windows?
14:10 Alias pmurias, they can choose :)
14:10 frooh Alias: http://lmgtfy.com/?q=blizkost
14:11 jnthn Alias: Blizkost is a thingy that allows you to use some Perl 5 modules from Perl 6.
14:11 Alias pmurias, personally I'd go with Chocolate to save time installing everything myself, but use Strawberry on my production servers and tailor it myself :)
14:11 amkrankruleuen joined #perl6
14:11 pmichaud Alias: I highly agree with the product design
14:11 jnthn Alias: It works by embedding Perl 5 and then building a kinda "bridge" between it and Parrot.
14:11 frooh jnthn: how do we define some?  I'm guessing no XS?
14:12 jnthn frooh: Actually the reason Blizkost is designed the way it is, is so we *can* run XS modules. :-)
14:12 pmichaud I see the same sorts of parallels in the Linux world, where there are different distributions that meet different target audiences
14:12 frooh jnthn: oh interesting
14:12 Alias indeed
14:12 Alias pmichaud, there's some good books out there on the topic of produce ranging
14:12 tadzik jnthn: how is DESTDIR going? :)
14:12 jnthn frooh: It's not a re-implementation of Perl 5. It's just a somewhat clever embedding of it.
14:12 Alias Well, when I say good I mean educational if you are interested in the area
14:12 jnthn tadzik: I've only been sleeping since you last asked. :P
14:13 frooh jnthn: well, I guess I'll see if it works, and if it does document that, and if it doesn't I'll give bug-reports or maybe port
14:13 Alias That talk about software product range, conceptually and somewhat practically
14:13 tadzik jnthn: oh, ok :)
14:13 isBEKaml_ tadzik: DESTDIR problem was due to windows make issues?
14:13 pmichaud Alias: I've read a couple over the years; mainly I'm just wanting to spark others to invent in the area :)
14:13 frooh jnthn: I'd prefer to port but I also like the idea of NOT maintaining two of the exact same thing :-)
14:13 Alias jnthn, btw if you do a new release, it needs to be "Perl 6 Shell" not "Perl 6 REPL"
14:13 tadzik ingy: I don't know nothing about windows, my point is to make it available to packaging on Linux distros
14:13 pmichaud tadzik: I'll gladly fix DESTDIR= ... I just couldn't do it in time for yesterday's release.
14:13 isBEKaml_ I was wondering why it wasn't there last night..
14:13 Alias jnthn, nobody knows what a REPL is
14:13 pmichaud ("Perl 6 Shell")++
14:14 tadzik pmichaud: oh, when I think of it now I could have checked beta4. The 'zero hour' was quite strict, wasn't it?
14:14 jnthn Alias: Ah. :/
14:14 tadzik oh
14:14 Su-Shee I know only REPL, if I read shell, I think "oh a bash in perl6?!"
14:14 tadzik isBEKaml_: I don't know nothing about windows, my point is to make it available to packaging on Linux distros
14:14 tadzik ingy: pardon
14:14 isBEKaml_ tadzik: I think you meant me.. :) Ah, well. I'm actually trying to package rakudo for Slackware.
14:14 tadzik isBEKaml_: Rakudo is ok, Rakudo Star is not really :\
14:15 tadzik (for packaging)
14:15 isBEKaml_ tadzik: Exactly.. :)
14:15 pmichaud tadzik: if I create a few more beta tarballs, can you test them?
14:15 tadzik pmichaud: of course
14:15 isBEKaml_ pmichaud: gladly.
14:15 pmichaud then I'll do some of that.
14:15 pmichaud (as in, today, even)
14:15 tadzik compilation will take me some time, but sure
14:15 isBEKaml_ pmichaud: old machine, 20 mins here. I guess that's okay.
14:16 pmichaud no problem and no rush -- we can do it over a few days
14:16 pmichaud most of the big issues can be handled quickly-ish, I think.
14:16 jnthn Alias: Though it's the only option that isn't obviously documentation, so we probably get away with it. But I agree to rename it for the future. :-)
14:16 [particle] nobody on windows knows what a "shell" is
14:16 tadzik pmichaud: when we do it, we would be ready to hit the Linux repositories with Star, which would be A-We-So-Me. Imho
14:16 [particle] perl 6 command line
14:16 jnthn [particle]: Oh screw it. We'll just call it "Rakudo Interactive Command Prompt" :-)
14:17 tadzik Is the book saying something about it?
14:17 jnthn No, I hate that too.
14:17 jnthn Hm
14:17 [particle] ricp :)
14:17 pmichaud "Rakudo Shell (REPL)"
14:17 tadzik or Rakudo's eval(prompt('> ')) :)
14:17 pmichaud "Interactive Rakudo"
14:17 isBEKaml_ Shelludo! :D
14:17 pmichaud "Type stuff in, get errors out"
14:17 pmichaud er, I mean s/errors/results/
14:17 [particle] rakugigo?
14:17 tadzik oh, what is that sea animal which looks like a Star?
14:17 jnthn A Starfish?
14:17 pmichaud tadzik: ...starfish?
14:18 isBEKaml_ Starfish
14:18 tadzik hmm, will see
14:18 moritz_ "password starfish"
14:18 jnthn Alias: So, what's best way to move forward?
14:18 tadzik yeah, starfish
14:18 tadzik I thought it has something with the shell
14:18 Alias jnthn, lurk in irc.perl.org #win32
14:18 Alias jnthn, and you should absolutely talk to CSJewell and kmx there
14:18 isBEKaml_ moritz_: OHNOES, there you go all hollywood-style! ;)
14:19 Alias CSJewell is the current lead dev for Strawberry (I'm mostly figurehead at this point)
14:19 Alias And kmx is our build and compiler wizard that did all our libfoo binary packages
14:19 [Coke] cognominal: I'm not asking for what you think is reasonable given current information, just what you think is right from a user's perspective.
14:20 cognominal well, that a sigil in necessary
14:20 plobsing joined #perl6
14:20 jnthn Alias: Joined. :-)
14:21 tadzik howdy, almost 1.5k downloads of Star
14:21 isBEKaml_ tadzik: how do you know?
14:21 isBEKaml_ erm, I meant to ask for url..
14:21 tadzik isBEKaml_: http://github.com/rakudo/star/downloads
14:21 tadzik this is actually over 2000
14:22 isBEKaml_ tadzik: oh, right. Forgot about that. Thought github had some silly algorithm for counting downloads. So never bothered. ;)
14:22 moritz_ jnthn, pmichaud: do we have position annotations (ie char level, not just line level) in rakudo?
14:23 jnthn moritz_: Not yet.
14:23 moritz_ pity
14:24 pmichaud moritz_: I can put them in easily enough -- but it is likely to result in even more code bloat
14:24 pmichaud plus it's not always clear what we mean by "position"
14:24 moritz_ I ask because of the mail "implementing every(N)"
14:24 jnthn pmichaud: Well, I got the impression that TimToady thought we should just include a position from the start of the file.
14:24 pmichaud haven't read mail yet... just a sec
14:25 pmichaud jnthn: yes, that's what I mean as well (more)
14:25 moritz_ one of the (probably not "right" ways) would be to check callframe(1).pos() or so, if it existed
14:25 jnthn pmichaud: And derive line numbers when we need to print an error.
14:25 pmichaud jnthn: every position is an annotation, yes?
14:25 jnthn pmichaud: It will be more annotations though, of course.
14:25 pmichaud jnthn: yes, that's y point.
14:25 pmichaud *my
14:25 jnthn pmichaud: Yes, it is, but it's not storing the string key and the value every annotation
14:25 pmichaud take the number of line annotations we currently have, and multiply that by a factor of 10
14:26 pmichaud ...string key and value?
14:26 jnthn pmichaud: The names of the annotations are given IDs and then the rest of it is just ID,Value
14:26 pmichaud right, that's no problem
14:26 jnthn pmichaud: And it stores them as opcode_t's
14:26 pmichaud I wasn't worried about that
14:26 jnthn pmichaud: Anyway, I'm saying "yes it's more, but they're quite compactly stored" :-)
14:27 jnthn At least, compared to how they could be. :-)
14:27 pmichaud anyway, my present plan is to at some point have a "file-scoped" annotation that contains the source (compressed), and to include position offsets throughout the generated file
14:27 pmichaud POST already knows all of the positions, so that's not at all hard to add to the generation
14:28 jnthn pmichaud: +1
14:28 jnthn pmichaud: the backtrace printer just has to get a tad smarter, but we can factor that out in some nice way too
14:28 pmichaud but even something like     ($expr1 < $expr) && ($expr3 > $expr4)   means that the position information for &infix:<&&>  will appear multiple times in the output
14:29 pmichaud jnthn: oh, I was thinking of keeping the lines annotations as well
14:29 jnthn pmichaud: oh.
14:29 jnthn :-)
14:29 abra joined #perl6
14:29 jnthn pmichaud: They make our life easier but they're duplicate info.
14:30 pmichaud jnthn: yes, but I also wonder if someday some non-perl6 implementation may want to get at line information.
14:30 pmichaud (without having to understand how rakudo happens to store its position and source information)
14:30 jnthn pmichaud: Troo.
14:30 pmichaud it's also possible/likely that some module people will want to be able to compile .pbc that doesn't contain the source
14:31 pmichaud and we'd still like to be able to generate line-numbers in those error messages
14:31 jnthn *nod*
14:31 jnthn pmichaud: Well, the other way is to include the path to the source file in the PBC.
14:31 pmichaud jnthn: doesn't work if someone is just passing around pbcs
14:32 jnthn pmichaud: That's the point.
14:32 jnthn pmichaud: If you want to distribute binary-only, no source, send over the PBC
14:32 jnthn pmichaud: It kinda assumes that people will mostly either (a) build the source to work on it or (b) just run it.
14:33 pmichaud anyway, we can try it -- I just see lots of hairy cases for that one.
14:33 pmichaud (like, figuring out the canonical path to the source is one :)
14:33 jnthn Aye, it has its downside.s
14:34 gfldex joined #perl6
14:34 moritz_ speaking of which... iwbn to have both location of source and compiled file in a backtrace
14:34 rindolf moritz_: what is "iwbn"?
14:34 moritz_ rindolf: it would be nice
14:35 rindolf moritz_: ah.
14:35 am0c joined #perl6
14:37 LaVolta Rakudo Super Powershell? :)
14:41 frooh I can't seem to get use to work; shouldn't "use JSON::Tiny; say to-json([1]); work?
14:41 moritz_ str: use JSON::Tiny; say to-json([1])
14:41 moritz_ star: use JSON::Tiny; say to-json([1])
14:41 p6eval star 2010.07: OUTPUT«[ 1 ]␤»
14:41 frooh man...
14:41 frooh do I need to run it from a certain dir?
14:41 jdv79 is there any way to do what in p5 you would do with open's
14:42 moritz_ star: use JSON::Tiny; say to-json([1, { a=> 1, b => 2])
14:42 [Coke] *: say "hI"
14:42 jdv79 -| mode?
14:42 p6eval star 2010.07: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 22␤»
14:42 frooh ohh
14:42 moritz_ star: use JSON::Tiny; say to-json([1, { a=> 1, b => 2}])
14:42 p6eval star 2010.07: OUTPUT«[ 1, { "a" : 1, "b" : 2 } ]␤»
14:42 moritz_ jdv79: not yet :(
14:42 jdv79 i would like to run a cmd but get the output as it happens...
14:42 frooh moritz_: it looks like it's some kind of repl issue
14:43 jdv79 ouch
14:43 frooh yeah
14:43 frooh if its on the same line it works
14:43 moritz_ jdv79: we're not good at IPC and IO yet :(
14:43 jdv79 i was going to convert and build some dev tools but i can't until that works:(
14:43 jdv79 ok, thanks
14:43 moritz_ :(
14:43 perlygatekeeper joined #perl6
14:48 bbkr star: *^$!~-() # curious...
14:48 p6eval star 2010.07:  ( no output )
14:48 bbkr std: *^$!~-() # curious...
14:48 p6eval std 31867: OUTPUT«ok 00:02 117m␤»
14:52 ktne joined #perl6
14:54 espadrine joined #perl6
14:54 jnthn star: say (*^$!~-()).WHAT
14:54 p6eval star 2010.07: OUTPUT«Junction()␤»
14:54 jnthn :-)
14:54 jnthn That was the same way I read it. :-)
14:55 frooh does use Foo call Foo->import like it did in perl 5?
14:57 jnthn frooh: No
14:57 jnthn frooh: There's some info in S11 about how it works in Perl 6.
14:57 frooh jnthn: is there something planned for that or is there something better?
14:57 frooh nyi?
14:57 jnthn frooh: There should at some point we something you can hook into as well
14:58 jnthn frooh: We've not got all of S11 implemented in Rakudo just yet though.
14:58 frooh sure
14:58 frooh well, I can skip it for now
14:58 jnthn Anyway, better things are spec'd.
14:58 frooh it's just for shortcuts
14:58 PerlJam frooh: you *can* export things in a module so they show up in the caller's environment.
14:59 frooh I know
14:59 frooh but that's not what it's for
14:59 PerlJam what "shortcuts"?
14:59 PerlJam you mean like tags?   use Foo qw/ :blah /;   ?
14:59 frooh nosir
15:00 frooh sec
15:00 frooh PerlJam: http://search.cpan.org/~frew/Log-Contextual-0.00303/lib/Log/Contextual.pm#OPTIONS
15:03 h1gh left #perl6
15:04 kthakore joined #perl6
15:04 kthakore hi
15:04 kthakore I installed rakudo on windows
15:04 kthakore using he msi
15:05 kthakore when I run 'perl6'
15:05 kthakore I get "load_bytecode" couldn't find file 'P6Regex.pbc'
15:05 kthakore also the perl6 book is AWESOME!
15:06 frooh *: our $x = "frew"; sub foo { say $x }; sub bar { local $x = "frioux"; foo() }; foo(); bar(); foo();
15:06 frooh star: our $x = "frew"; sub foo { say $x }; sub bar { local $x = "frioux"; foo() }; foo(); bar(); foo();
15:06 p6eval star 2010.07: OUTPUT«frew␤Could not find sub &local␤  in 'bar' at line 22:/tmp/50adq9o11D␤  in main program body at line 22:/tmp/50adq9o11D␤»
15:06 kthakore jnthn: sorry for pinging again ....
15:06 frooh is it not called local in perl 6?
15:06 kthakore oh well back to $work
15:06 PerlJam local is spelled "temp" in Perl 6
15:06 frooh star: our $x = "frew"; sub foo { say $x }; sub bar { temp $x = "frioux"; foo() }; foo(); bar(); foo();
15:06 kthakore I will lurk
15:06 PerlJam and it's NYI I think.
15:06 p6eval star 2010.07: OUTPUT«frew␤Could not find sub &temp␤  in 'bar' at line 22:/tmp/lu6tA6jh_j␤  in main program body at line 22:/tmp/lu6tA6jh_j␤»
15:06 frooh better name
15:06 frooh orly
15:06 frooh dangit!
15:07 * frooh gets back to $job
15:07 jnthn kthakore: How did you run it? Just from the start-menu shortcut?
15:09 squeeky err, wow, the R* test suite during Configure.pl crashes horribly on OS X PPC.
15:09 squeeky oooh. Parrot really doesn't like 64bit PPC.
15:10 frooh D:
15:10 squeeky Symbol not found: _rl_get_keymap, the OS X debugger picks this up. configure and make still keep running, at least.
15:11 kthakore jnthn: just perl6
15:11 jnthn kthakore: Also check if you have any other builds on Rakudo on your mahcine/in your path.
15:11 jnthn kthakore: Oh, at the command line?
15:11 moritz_ squeeky: parrot suffoers from not having enough testers on PPC
15:11 kthakore jnthn: yeah
15:11 kthakore jnthn: what should I have done?
15:11 kthakore Rakudo REPL?
15:11 jnthn kthakore: Well, out of curiosity, check if that works.
15:12 jnthn kthakore: But the installer doesn't add to your PATH
15:12 kthakore jnthn: oh ok
15:12 jnthn So you may want to do so.
15:12 squeeky moritz_: it appears this issue is wide known, quite a few messages on the mailing list about it.
15:12 kthakore jnthn: so how do I do that?
15:12 kthakore REPL works
15:12 moritz_ squeeky: well, then maybe it suffers from a lack of developers :/
15:12 jnthn kthakore: OK, then it's probably an existing build that is in your path causing confusion.
15:13 kthakore moritz_++ jnthn++ masak++ pmichaud++ AWESOME BOOK!
15:13 jnthn kthakore: To edit your path it's System Properties, Advanced, Environment Variables...
15:13 squeeky moritz_: http://www.mail-archive.com/perl6-internals@perl.org/msg41612.html quite possibly, although looking at this it was fixed and never made it into the repo.
15:13 kthakore jnthn: may I paste the PATH?
15:13 jnthn And you can edit the PATH environment variable there.
15:13 jnthn kthakore: Well, just add C:\Rakudo\bin at the start of it. ;-)
15:13 Holy_Cow joined #perl6
15:14 kthakore jnthn: oh ok
15:14 kthakore :D
15:14 tadzik man, aren't you happy for all these amazed newcomers? :)
15:14 kthakore jnthn: still doesn't work
15:14 tadzik this is so amazing, makes all the effort put into Rakudo and Star so awesome
15:14 tadzik padron me getting sentimental :)
15:15 squeeky moritz_: I'll happily test anything on PPC (and PPC64), I'm actually a lousy programmer and getting me to fix it is the tougher bit.
15:15 jnthn kthakore: What does perl6 --version report?
15:15 kthakore tadzik: right there with you pal
15:15 kthakore jnthn: couldn't find file 'P6Regex.pbc'
15:16 jnthn kthakore: OK, I think it's almost certainly picking up a perl6.exe or a libparrot.dll (but more likely the first) other than the one inside C:\Rakudo\bin.
15:17 jnthn kthakore: Suggest doing a search for those.
15:17 kthakore jnthn: yay!
15:17 kthakore jnthn: I added lib to the path
15:17 kthakore it works
15:17 jnthn \o/
15:18 kthakore C:\Rakudo\bin\lib
15:18 kthakore :D
15:18 jnthn Happy hacking. :-)
15:18 kthakore jnthn: I will go through the book this weekend
15:18 kthakore jnthn: then try to plug parrotSDL
15:18 kthakore jnthn: :D
15:19 kthakore jnthn: oh also may I ask where is the source of perl6 book? I think I found a typo
15:19 moritz_ hugme: show book
15:19 hugme moritz_: the following people have power over 'book': P⁣erlJam, T⁣imToady, [⁣particle], c⁣olomon, j⁣nthn, m⁣asak, m⁣berends, m⁣oritz_, p⁣michaud. URL: http://github.com/perl6/book/
15:19 kthakore Table 2.1
15:19 moritz_ kthakore: what's your github ID?
15:19 kthakore moritz_: kthakore
15:19 moritz_ hugme: add kthakore to book
15:19 * hugme hugs kthakore. Welcome to book!
15:20 moritz_ kthakore: you have commit access now :-)
15:20 kthakore moritz_: hugme I need !
15:20 kthakore it adds commit! :D
15:20 kthakore wow
15:20 kthakore hugme hugeme
15:20 hugme kthakore:
15:20 kthakore hugme hugme
15:20 hugme kthakore:
15:20 kthakore ??
15:20 jnthn hugme: hug kthakore
15:20 * hugme hugs kthakore
15:20 kthakore oh ok
15:20 jnthn It does taht too :-)
15:20 kthakore jnthn: I was looking for his source
15:20 jnthn Oh
15:20 kthakore :D
15:20 moritz_ kthakore: handing out commit bits is its primary function
15:20 jnthn hugme: show hugme
15:20 hugme jnthn: the following people have power over 'hugme': P⁣erlJam, T⁣imToady, [⁣particle], c⁣olomon, j⁣nthn, m⁣asak, m⁣berends, m⁣oritz_, p⁣michaud. URL: http://github.com/moritz/hugme/
15:21 kthakore jnthn: ah ok
15:21 kthakore moritz_++
15:21 kthakore jnthn++
15:21 kthakore thanks guys
15:21 kthakore jnthn: I might make a perl6 script for work!
15:21 kthakore QA testers :D
15:21 kthakore we try new thinks every day
15:22 jnthn Yay :-)
15:22 isBEKaml_ kthakore: \o/. haffun! :)
15:22 kthakore isBEKaml_: thanks
15:22 kthakore things*
15:23 isBEKaml_ kthakore: If you're the guy that did the awesome SDL::Perl, I'm sure you'll definitely have fun with p6. :)
15:23 kthakore isBEKaml_: I did
15:23 isBEKaml_ kthakore++
15:23 kthakore isBEKaml_: new stuff comming soon
15:23 kthakore isBEKaml_: parrotSDL is working a bit. So I am going to try to get perl6 to use it
15:23 kthakore :D
15:23 isBEKaml_ kthakore: \o/. Keep 'em coming! :)
15:24 kthakore http://github.com/kthakore/parrotSDL
15:24 patrickas joined #perl6
15:25 patrickas to the stars and beyooooonnnd ... Hello perlsixers :-)
15:25 isBEKaml_ patrickas: \o
15:25 patrickas o/ isBEKaml_
15:26 azert0x joined #perl6
15:26 kthakore isBEKaml_: have you played with SDL perl stuff recently?
15:27 isBEKaml_ kthakore: not recently, it was sometime back. I was amazed at how you brought back a (nearly) dead project. :)
15:29 isBEKaml_ kthakore: do you have an url that I can follow the changes you do to SDL::Perl?
15:29 kthakore isBEKaml_: nothing is dead when it has code publicly available
15:29 kthakore isBEKaml_: sdl.perl.org
15:29 kthakore isBEKaml_: and yapgh.blogspot.com
15:29 patrickas kthakore++ yapgh ;-)
15:29 kthakore perl6 Question: Does the REPL keep variables?
15:29 kthakore patrickas: :D
15:29 boulder joined #perl6
15:30 moritz_ yep
15:30 kthakore hmm ...
15:30 kthakore I did my $file = open 'scores';
15:30 kthakore then $file.get.split(' ');
15:30 isBEKaml_ kthakore: awesome. I have added it to my daily bookmarks. :)
15:31 kthakore isBEKaml_: also our github.com/kthakore/SDL_perl is the most active
15:31 kthakore isBEKaml_: I try doing tweets and blogs regularly but I get behind at times
15:31 moritz_ kthakore: your rakudo must be sufficiently new to get that right (R* is enough)
15:31 kthakore moritz_: yes
15:31 kthakore R* I have
15:32 moritz_ http://nopaste.snit.ch/22463
15:32 HarryS joined #perl6
15:32 kthakore moritz_: I get Symbol '$file' not predeclared in <anonymous>
15:33 CQ joined #perl6
15:33 patrickas kthakore: wfm, just tried it!
15:33 moritz_ huh.
15:33 moritz_ kthakore: are you sure that you don't have an older perl6 in $PATH?
15:33 kthakore moritz_: no I don
15:33 kthakore moritz_: I installed jnth's msi
15:33 kthakore jnthn's msi
15:33 moritz_ that's... very weird
15:33 moritz_ it's the second report of jnthn's MSI having a too old rakudo
15:33 patrickas what if you try with a simpler variable ?
15:34 jnthn moritz_: Yes, but the last one turned out to be false alarm iirc.
15:34 moritz_ kthakore: what do you get for   say $*VM<config><revision>  ?
15:34 patrickas my $foo=42; then on the next line say $foo ?
15:34 kthakore patrickas: yeah
15:34 jnthn kthakore: Does it work if you run the REPL from the start menu?
15:34 kthakore jnthn: let me try
15:35 isBEKaml_ kthakore: following? tweets, no. blogs, yes. :)
15:35 kthakore jnthn: how do I get where this is
15:35 kthakore isBEKaml_: SDLPerl on twitter .. but yeah
15:35 kthakore jnthn: I mean
15:35 kthakore jnthn: pwd()
15:36 kthakore jnthn: where does the REPL start so I can do open 'scores'
15:36 isBEKaml_ kthakore: say qx/pwd/ ? #Does this work, I'm curious about Windows, though. :)
15:36 jnthn cwd()
15:37 jnthn rakudo: say cwd()
15:37 p6eval rakudo 50e0e7: OUTPUT«/home/p6eval/rakudo␤»
15:37 kthakore ok
15:37 isBEKaml_ jnthn: that should not be allowed on evalbot, right?
15:37 kthakore C:\Rakudo\bin
15:37 jnthn isBEKaml_: cwd is pretty harmless
15:38 isBEKaml_ jnthn: yes, but you don't usually allow system commands on evalbots.
15:38 kthakore jnthn: can I chdir in REPL?
15:39 am0c joined #perl6
15:39 masak joined #perl6
15:39 masak oh hai, #perl6!
15:39 moritz_ isBEKaml_: no harm in cwd(), afaict
15:39 tadzik masak: o/
15:39 patrickas lolitsmasak :-)
15:39 isBEKaml_ yayitsmasak! :D
15:39 masak lol!
15:40 kthakore WOOT!
15:40 kthakore WORKDEDDD!
15:40 kthakore yayitsmasak!
15:40 kthakore :D
15:40 kthakore masak++ awesome book
15:40 isBEKaml_ moritz_: Really, I'm fine with it. (My point was about not allowing system commands )
15:40 ktne when is rakudo going to be fast enough for real world usage?
15:41 masak kthakore: "Usign Perl 6"? I didn't write large parts of it, actually. but thanks.
15:41 moritz_ ktne: that strongly depends on what your real-world use case is
15:41 ktne moritz_: let
15:41 ktne let's say as fast as python
15:42 masak here's my panic schedule: (1) finalize S26 grant proposal, (2) hack on GSoC/Buf/IO/pack/unpack, (3) finish Yapsi runtime refactor for the release on Sunday, (4) slap myself so I start doing some actual slides for my two (!) presentations at YAPC::EU.
15:42 * masak panics
15:42 * patrickas slaps masak! DON'T PANIC!
15:43 patrickas (in friendly bold letters)
15:43 moritz_ masak: want me to proof-read the proposal?
15:43 * masak panics a bit less
15:43 pmichaud sometimes "Reductio ad absurdum" is fun:
15:43 pmichaud 15:43 <patrickas> (in friendly bold letters)
15:43 pmichaud oops
15:43 pmichaud bad copy/past
15:43 pmichaud *paste
15:44 pmichaud sometimes "Reductio ad absurdum" is fun:
15:44 * isBEKaml_ slaps masak for even panicking less! Kick panic out! :D
15:44 jnthn friendly bold letters are absurd.
15:44 pmichaud http://www.reddit.com/r/programming/comments/cv1ph/rakudo_star_a_useful_usable_early_adopter/c0vkslb
15:44 pmichaud yes, I'm arguing with a troll, but sometimes it's fun.
15:44 patrickas jnthn or was it "large friendly letters"?
15:44 isBEKaml_ absurd bold letters are sometimes friendly. :D
15:44 kthakore is tehre a rakudo package for debian
15:44 kthakore my compile keeps dying ...
15:44 timdemkowsky kthakore: i think so, wait
15:44 masak moritz_, pmichaud, jnthn: it's an early draft still, but it's ready for comments: http://gist.github.com/500732
15:45 jnthn pmichaud: heh heh
15:45 masak (others are welcome to comment as well)
15:45 kthakore timdemkowsky++
15:45 pmichaud masak: there's really no rush on S26 beyond whatever pressure you want to put on it :)
15:45 timdemkowsky kthakore: wah, my mind tricked me. :( sorry, i havent found one
15:45 patrickas pmichaud I think you are allowed a few hours of fun troll fishing as a post release stress releaser
15:46 masak pmichaud: "I look forward to seeing the url of your CMS." hehe :)
15:46 masak pmichaud: right -- the schedule for this is really outside TPF's deadline tomorrow, I guess.
15:46 timdemkowsky too bad that i am not into debian that much, using arch here.
15:46 isBEKaml_ kthakore: I don't think there's one for R* (.deb package). There might be one for earlier Rakudo versions. aptitude search rakudo should give you something.
15:46 pmichaud tpf deadline?
15:46 pmichaud masak: the hague grants occur outside of the tpf grants process
15:46 pmichaud proposals are submitted at any time, and reviewed by the board, not by the grants committee
15:47 patrickas lolitsHIBOU
15:47 pmichaud so there's no "deadline"
15:47 masak oh, ok.
15:47 pmichaud also, a bit earlier:  http://www.reddit.com/r/programming/comments/cv1ph/rakudo_star_a_useful_usable_early_adopter/c0vkrqu
15:47 kthakore ok
15:47 isBEKaml_ patrickas: was that you? :P
15:47 masak yay -- one point off my panic schedule :)
15:47 jnthn masak: I heard improvised presentations are fun.
15:47 * masak hath a crappy connection
15:48 pmichaud I've heard prepared presentations are fun.  I should try one sometime.  :-P
15:48 masak jnthn: I could probably do both without any slides. so that's OK.
15:48 jnthn :-)
15:48 kthakore oh man
15:48 isBEKaml_ jnthn: lots of fun. Especially more so, if it's a large audience! :D
15:48 kthakore HIBOU
15:48 masak jnthn: but I have some ideas for slides.
15:48 kthakore is crazy
15:48 jnthn masak: :-)
15:48 tadzik kthakore: crazy? No, he's just dumb
15:48 kthakore pmichaud: HIBOU is the insanity
15:48 tadzik he is perfectly sane in his stupidity I'd say
15:48 kthakore tadzik: haha
15:49 masak kthakore: HIBOU has a severe hug deficiency.
15:49 kthakore tadzik: I keep forgetting
15:49 tadzik I wonder what he's doing on /r/perl is he's trolling everything related
15:49 pmichaud masak: yes, I was thinking that he needed some hugs
15:49 kthakore 'never attribute to malice, what you can to stupidity'
15:49 masak let's invite him here and hug him!
15:49 pmichaud I wasn't quite sure how to ju-jitsu a hug into the comments, though.
15:49 kthakore masak: campaign started!
15:49 kthakore masak: make a post on reddit
15:50 kthakore invite him on a blog
15:50 pmichaud or even simply:
15:50 kthakore and others
15:50 pmichaud "HIB0U:  Many of us on #perl6 would like to give you a hug.  Please join at your convenience so that we can give you one."
15:50 kthakore haha
15:50 kthakore ok
15:50 masak :D
15:51 masak brilliant.
15:51 masak nom &
15:51 pmichaud nom here, too.
15:52 isBEKaml_ HIBOU trolls mostly on /r/programming. I have found that guy trolling the java folks too.
15:52 PerlJam btw, for the other CLI people who use git,  git-completion.bash is quite cool
15:52 patrickas actually I was waiting for DOMINATE_ME_PERL6 to show up ! :-)
15:52 * PerlJam has been using it for a couple of days now
15:53 pmichaud patrickas: with the release, he (she?) is finally dominated and satisfied.
15:53 isBEKaml_ patrickas: that would be an huge PR success! :D
15:54 kthakore pmichaud: hehe
15:55 kthakore pmichaud: NEVAR
15:55 kthakore pmichaud: I think he/she started as a novelety account
15:55 isBEKaml_ kthakore:  I read that as RAVEN :D
15:55 kthakore pmichaud++ for PHP useage
15:55 kthakore pmichaud++ love it when zealots are away from core teams
15:56 patrickas but we need to be sure s/he has been dominated to satisfaction ... maybe there is more we can do to help!
15:56 kthakore church | code seperation  I love it
15:56 * moritz_ now knows why people don't like lisp
15:56 moritz_ it's optimized for not having fun
15:56 moritz_ (defun ...)
15:56 justatheory joined #perl6
15:56 isBEKaml_ moritz_: lol!
15:56 kthakore masak: :D
15:56 kthakore oops
15:56 kthakore moritz_: :D
15:56 masak interesting edge case from a tweet: http://twitter.com/mfollett/status/19919694472
15:56 patrickas hehe :-P
15:57 kthakore $work
15:57 masak I don't think there's much to do about that.
15:57 _macdaddy joined #perl6
15:57 kthakore $work
15:57 kthakore and nom
16:00 * moritz_ neither
16:00 moritz_ now the bikeshedding about perl 6 module system starts again
16:04 patrickas strange: http://www.reddit.com/r/programming/comments/cuv2f/rakudo_star_to_be_released_tomorrow_july_29_are/
16:04 yongbin_ joined #perl6
16:05 moritz_ I'm glad nobody replied
16:06 wamba joined #perl6
16:10 cookys joined #perl6
16:11 pmichaud (module system)  I think the only path through that minefield will be "rough consensus and working code".
16:11 pugssvn r31868 | colomon++ | [t/spec] Add more exhaustive tests for iterating Int Ranges.
16:13 PerlJam especially that "working code" bit
16:13 pmichaud right
16:14 pmichaud I may reply to the relevant threats and simply say that Rakudo will adopt this as its stance on module systems for the forseeable future.
16:14 pmichaud *threads
16:14 pmichaud (freudian?)
16:14 PerlJam heh, freudian slip?
16:14 shomodj left #perl6
16:14 amkrankruleuen joined #perl6
16:15 Ross joined #perl6
16:15 pugssvn r31869 | masak++ | [S26] corrected minor typos and inconsistencies
16:15 pugssvn r31869 |
16:15 pugssvn r31869 | Nothing that changes the meaning of the spec, really.
16:16 masak "Freudian slip: it's when you say one thing, but mean your mother."
16:16 bbkr no more "make spectest" in * release?
16:16 pmichaud bbkr: it's there, just do it from the rakudo/ directory
16:17 PerlJam bbkr: did you read the README?
16:17 pmichaud I thought about making it a top-leve makefile target
16:17 PerlJam :-)
16:17 pmichaud *top-level
16:17 * pmichaud needs a new keyboard.  or new fingers.  or a new brane.
16:17 * [particle] picks door #3!
16:18 colomon do they have new branes down in Texas? Michigan is fresh out.
16:18 bbkr thanks, works. so http://rakudo.org/how-to-get-rakudo needs update in "Running the test suite" section
16:19 * masak hasn't had a new brane in years
16:20 goksie joined #perl6
16:21 goksie joined #perl6
16:21 M_o_C joined #perl6
16:21 PerlJam bbkr: no, that's fine.  It's for Rakudo, not the Star distributions.
16:21 bbkr PerlJam: ok, thanks for info.
16:24 PerlJam Though that page should be updated to mention R* and where to get it.
16:26 dual joined #perl6
16:29 szabgab in a freshly built rakudo I have this issue: http://paste.scsys.co.uk/47359
16:30 clark joined #perl6
16:30 masak rakudo: sub foo($x) { role { method x { $x } } }; say foo("OH HAI").x
16:30 p6eval rakudo 50e0e7: OUTPUT«OH HAI␤»
16:31 clark so much more guys
16:31 briang joined #perl6
16:31 PerlJam "my god ... it's full of stars"  ;)
16:32 jnthn masak: :-)
16:32 masak szabgab: hm. I'm guessing the error occurs on the most-indented line?
16:32 clark what are you talk about?
16:32 szabgab masak: yes I think so
16:32 colomon seems like that's the error I kept getting when doing %hash{$1}
16:32 masak jnthn: my latest view of anon roles is "hah, it's just a sack of methods!" :P
16:33 colomon not that I quite see how szabgab would be doing that....
16:33 patrickas rakudo: subset Coefficient of Num where { $_ < 1 };my Coefficient $x = .5;
16:33 p6eval rakudo 50e0e7: OUTPUT«Type check failed for assignment␤  in '&infix:<=>' at line 1␤  in main program body at line 22:/tmp/P8igIhKsRD␤»
16:33 masak jnthn: but above it's also used to close over a variable, which is really cool.
16:34 masak szabgab: first off, I can confirm your error locally.
16:34 masak szabgab: second; yes, it's that line.
16:34 jnthn masak: My view of roles is that it's just a sack of stuff that we compose into a class, somehow. :-)
16:35 patrickas rakudo: subset Coefficient of Rat where { $_ < 1 };my Coefficient $x = .5;
16:35 p6eval rakudo 50e0e7:  ( no output )
16:35 patrickas Num should have worked too though... right ?
16:35 szabgab masak: and I found a work-around for myself
16:36 szabgab for $/<opening><attr> -> $v {
16:36 szabgab for $/<opening><attr> -> $v { say $v<name>; say $v<value> }   worked instead of that map
16:36 masak szabgab: ok, nice. odd that it should matter.
16:36 jnthn Especially as for is sugar for map. :s
16:37 szabgab actually when I try to put the data in a hash then it blows up again
16:37 szabgab just as colomon mentioned
16:37 szabgab %attributes{$v<name>} = $v<value>;
16:37 szabgab this blows up
16:38 colomon szabgab: try %attributes{~$v<name>} = $v<value>;
16:38 masak colomon: reported?
16:38 szabgab %attributes{"$v<name>"} = $v<value>;   also works
16:38 PerlJam patrickas: here's another one ...
16:38 colomon masak: you can't use a match object for %hash{ }
16:38 PerlJam rakudo: subset Coefficient of Numeric where { $_ < 1 }; my Coefficient $x = .5;
16:38 szabgab and I guess they both stringify
16:38 p6eval rakudo 50e0e7: OUTPUT«Null PMC access in invoke()␤  in 'ACCEPTS' at line 1␤  in '&infix:<=>' at line 1␤  in main program body at line 22:/tmp/cJIxSdsr37␤»
16:38 colomon masak: as far as I know, reported.  certainly wasn't original to me.
16:38 masak colomon: but it should stringify.
16:39 patrickas PerlJam: ouch that hurt!
16:39 colomon masak: sure, it's a bug.
16:39 colomon masak: like I said, I was told about it (and the solution) when I ran into it.
16:39 colomon I presume whoever found it before reported it.
16:40 colomon PerlJam: can you take a subset of a Role?
16:40 szabgab my %attributes = $/<opening><attr>.map( {; "$_<name>" => $_<value> } );
16:40 szabgab this works too now
16:40 colomon szabgab++
16:41 colomon szabgab: it's probably good form to prefer ~$_<name> over "$_<name>".
16:41 colomon if nothing else, it should be faster.
16:42 masak ~.<name>
16:43 szabgab ok, I am using that now
16:47 szabgab I'd appreciate if someone looked at this: http://github.com/szabgab/xml-sax
16:49 patrickas rakudo: subset Small of Int where { $_ < 10 };sub foo ( Int $x , Small $y) { say "$x,$y"; };for &foo.signature.params -> $param {say 2 ~~ $param.constraints;}
16:49 p6eval rakudo 50e0e7: OUTPUT«1␤0␤»
16:50 patrickas should that have printed 1 twice or am I doing something wrong ?
16:51 moritz_ rakudo: subset Small of Int where { $_ < 10 }; say :(Small $x).params[0].constraints.perl
16:51 p6eval rakudo 50e0e7: OUTPUT«(Int)␤»
16:51 PerlJam colomon: I'm not sure.  I would lean towards "no".  But!  It should definitely /not/ give a "Null PMC Access" error :)
16:52 pmichaud back again
16:52 moritz_ szabgab: looks fine... could benefit from a SYNOPSIS in the README
16:52 moritz_ there and back again, a pmichaud's tale
16:52 moritz_ :-)
16:52 pmichaud 16:24 <PerlJam> Though that page should be updated to mention R* and where to get it.
16:53 pmichaud I think that in general, "how to get Rakudo" should start to lean towards "how to get Rakudo Star"
16:53 szabgab moritz_: I mean it would be nice to get some input code wise
16:53 pmichaud i.e., we should expect the average person to grab Rakudo Star, not Rakudo itself.
16:53 moritz_ szabgab: I was about to get to that :-)
16:53 szabgab the average person?
16:54 moritz_ szabgab: since you're using a class anyway, why us lexically scoped tokens?
16:54 moritz_ s/us/use/
16:55 moritz_ or s/class/grammar/ # makes it even easier
16:55 moritz_ you can still have normal methods in a grammar
16:55 szabgab I just moved them to a grammar
16:55 pmichaud 16:52 <moritz_> there and back again, a pmichaud's tale
16:56 pmichaud I wonder who plays the role of Sauron
16:57 pugssvn r31870 | bbkr++ | [t/spec] tests for RT #71258 Cant sort objects of a custom class, cant supply .cmp method in Rakudo
16:57 moritz_ pmichaud: you should know your enemy :-)
16:57 jnthn .oO( role Sauron { ... } )
16:58 patrickas jnthn with a .play method
16:58 PerlJam moritz_: we have seen the enemy and he is us
16:59 pmichaud is the one who torments me my enemy?  ;-)
16:59 szabgab why does the REPL stop working on certain exceptions?
16:59 moritz_ my $self = moritz_.new() does Sauron;
16:59 szabgab eg  class B { method f { ... } }; B.new.f
16:59 patspam joined #perl6
17:00 pmichaud szabgab: it probably gets confused by the lexical scopes at that point
17:00 pmichaud szabgab: probably needs more examples and investigation to figure out exactly why
17:00 jnthn pmichaud: If a Failure is the result, it tries to strinfigy the failure.
17:00 jnthn (for the auot-print)
17:00 moritz_ szabgab: please submit
17:00 jnthn And doesn't have a CATCH block.
17:00 jnthn *auto
17:01 pmichaud jnthn: we can probably give that part a CATCH block.
17:01 jnthn pmichaud: Aye, that's the fix.
17:01 PerlJam parrot exceptions that leak through kill the repl too
17:01 pmichaud PerlJam: same issue, yes.
17:02 pmichaud anyone who wants to take a look at it,   src/HLL/Compiler.pm   in nqp-rx is the place to look.
17:02 colomon you can have normal methods in a grammar.  hmmm..... useful hack for testing until <ABC::note> works?
17:02 pmichaud (yes!  it's Perl 6 syntax!  not PIR!)
17:02 pmichaud (sorear++)
17:02 jnthn pmichaud: If only PAST::Node and PAST::Compiler were in NQP too...
17:03 pmichaud jnthn: some day not too distant, I suspect.
17:03 moritz_ colomon: actually not only hack, but genuinely useful
17:03 pmichaud I think bacek++ is already working on POST:: in NQP.
17:03 jnthn pmichaud: I'd really really love to see that taken on.
17:03 pmichaud jnthn: it's one I do plan to do relatively soonish, pending tuits
17:03 jnthn pmichaud: OK, great.
17:03 colomon moritz_: I said that poorly, I meant that the testing aspect was the hack.
17:03 bbkr is "(1..Inf).shift" syntax spec-compatible? Range class doesn't have shift method
17:03 jnthn pmichaud: Reason being that attribute accesses and method calls from NQP I can probably make efficient.
17:03 pmichaud however, if we're also getting a new improved POST, it probably makes sense to rewrite PAST::Compiler in terms of the new POST
17:04 pmichaud instead of trying to port the existing one
17:04 jnthn pmichaud: But writing such things with the same level of efficiency is PIR is gonna be less than ideal.
17:04 jnthn *in
17:04 jnthn pmichaud: That'd also make sense.
17:05 bbkr std: (1..Inf).shift
17:05 p6eval std 31869: OUTPUT«ok 00:01 116m␤»
17:05 bbkr rakudo: (1..Inf).shift
17:05 p6eval rakudo 50e0e7: OUTPUT«Method 'shift' not found for invocant of class 'Range'␤  in main program body at line 22:/tmp/kIhBg12ufV␤»
17:05 bbkr hmm
17:05 pmichaud ranges are immutable.
17:05 moritz_ bbkr: I think .shift is an outdated iterator model - not sure though
17:05 pmichaud try  (1..Inf).list.shift
17:05 * [Coke] hopes he can get back to profiling rakudo this weekend.
17:06 jnthn [Coke]++
17:06 pmichaud rakudo:  say (1..Inf).list.shift
17:06 p6eval rakudo 50e0e7: OUTPUT«1␤»
17:06 colomon [Coke]++
17:06 bbkr pmichaud: should i then correct t/spec/S02-builtin_data_types/lazy-lists.t ?
17:06 pmichaud bbkr: yes.
17:07 kthakore bak
17:07 kthakore nom++
17:07 szabgab rakudo: class A { method f { self.g }; submethod g { say "hi" }; } ; A.new.f; class B is A { }; B.new.f
17:07 p6eval rakudo 50e0e7: OUTPUT«hi␤Method 'g' not found for invocant of class 'B'␤  in 'A::f' at line 22:/tmp/sP3Vr1dYbG␤  in main program body at line 22:/tmp/sP3Vr1dYbG␤»
17:08 kthakore hmmm
17:08 kthakore moritz_: ping?
17:08 moritz_ kthakore: pong
17:08 kthakore moritz_: I can't seem to compile the perl6 book
17:08 szabgab I thought a submethod would be callable from the parent class even if I call the method on a subclass object
17:08 [Coke] kthakore: did you follow the readme? ;)
17:08 kthakore moritz_: I get ../lib/Makefile:2261: UsingPerl6.letter.d: No such file or directory
17:08 kthakore [Coke]: think so
17:08 pmichaud fwiw, I get the same error
17:08 pmichaud (compiling the book)
17:08 moritz_ kthakore: try to follow the instructions for building the A4 book
17:09 [Coke] szabgab: "Submethods are for declaring infrastructural methods that shouldn't be inherited by subclasses, such as initializers:"
17:09 aCiD2 joined #perl6
17:09 moritz_ still I think this should work
17:09 moritz_ (the submethod)
17:09 moritz_ it's not called from a subclass
17:10 [Coke] yah. I can see that.
17:10 kthakore pmichaud: so I am not crazy then. Thank you kindly sir!
17:10 [Coke] that is, I can see how that could be allowable.
17:10 [Coke] pmichaud: he's like a puppy. watch out he doesn't lick you.
17:11 szabgab so how can I declare a method g() that should be called by the inherieted methof f() but should not be called by the user ?
17:11 szabgab or am I talking nonsense?
17:11 pmichaud szabgab: my method g()  # i think
17:11 pmichaud or   method !g()  #  maybe
17:11 eternaleye joined #perl6
17:11 pmichaud I forget the exact syntax, but there are private methods.
17:11 szabgab rakudo: class A { method f { self.g }; my method g { say "hi" }; } ; A.new.f; class B is A { }; B.new.f
17:11 p6eval rakudo 50e0e7: OUTPUT«hi␤hi␤»
17:12 pmichaud search for "private" in S12, likely.
17:12 szabgab rakudo: class A { method f { self.g }; my method g { say "hi" }; } ; A.new.f; class B is A { method g {say "Sauron"} }; B.new.f
17:12 p6eval rakudo 50e0e7: OUTPUT«hi␤Sauron␤»
17:12 kthakore [Coke]: who is a puppy?
17:12 pmichaud S12:  "Private methods are declared using C<!>:
17:12 pmichaud method !think (Brain $self: $thought)
17:12 pmichaud "
17:13 szabgab rakudo: class A { method f { self.g }; method !g { say "hi" }; } ; A.new.f; class B is A { method g {say "Sauron"} }; B.new.f
17:13 p6eval rakudo 50e0e7: OUTPUT«Method 'g' not found for invocant of class 'A'␤  in 'A::f' at line 22:/tmp/mieTG2XNcr␤  in main program body at line 22:/tmp/mieTG2XNcr␤»
17:13 hercynium joined #perl6
17:13 szabgab ok, whatever :)
17:13 szabgab let me go scripting :)
17:14 pmichaud "To the scripting!"  <toast>
17:14 cxreg does p6 still have "unspace"?
17:14 pmichaud cxreg: it does.
17:14 [Coke] szabgab: if you leave off the ! there, that works.
17:14 pmichaud S02, search for "unspace"
17:14 pugssvn r31871 | bbkr++ | [t/spec] tests for RT #64886 For (1..10000000000) bug
17:14 cxreg thx
17:15 pugssvn r31872 | bbkr++ | [t/spec] tests for RT #64886 For (1..10000000000) bug
17:15 pmichaud rakudo:  "cxreg: You're welcome"\   #`(haha here's a comment!)  .say
17:15 p6eval rakudo 50e0e7: OUTPUT«cxreg: You're welcome␤»
17:18 cxreg :-)
17:19 Su-Shee thank you, rakudo. thanks to you I now have a new bike with flowers.
17:19 Protocol_ joined #perl6
17:19 Protocol_ left #perl6
17:19 PerlJam Su-Shee: do you need a bike shed?  ;)
17:19 kthakore Su-Shee: where can I get named bike?
17:19 cognominal ... and colored wings?
17:19 * cxreg considers trying to fix perl6.vim to denote unspace
17:19 kthakore rakudo: give.me.bike('red')
17:20 kthakore ???
17:20 p6eval rakudo 50e0e7: OUTPUT«Could not find sub &give␤  in main program body at line 22:/tmp/8sAYYktM_7␤»
17:20 espadrine left #perl6
17:20 kthakore hehe
17:20 javs joined #perl6
17:20 pmichaud ☹ Rakudo doesn't know how to give ☹
17:21 cognominal salut espadrine, welcome to the mongueurs rive gauche
17:21 kthakore pmichaud: awww
17:21 pmichaud but it does know how to take!  :-P
17:21 pugssvn r31873 | bbkr++ | [t/spec] fixed unfudge mistake
17:21 cognominal arf,  espadrine just left.
17:22 * pmichaud is never sure which side of the rive he's on.  :-)
17:22 kthakore pmichaud: the nice side
17:22 patrickas rakudo: my @bike = gather { take 'red' } #INdeed it does
17:22 kthakore rakudo: take.my.bike('red')
17:22 p6eval rakudo 50e0e7:  ( no output )
17:22 p6eval rakudo 50e0e7: OUTPUT«take without gather at line 1␤Method 'my' not found for invocant of class 'Parcel'␤  in main program body at line 22:/tmp/qZK2LtRx5I␤»
17:23 kthakore patrickas: oooh
17:23 kthakore patrickas: how come rakudo doesn't open 'nonexistandfiletowriteoto'
17:23 kthakore rakudo: open 'foo'
17:23 p6eval rakudo 50e0e7: OUTPUT«Operation not permitted in safe mode␤  in 'Safe::forbidden' at line 2:/tmp/WMrdmCV6MV␤  in main program body at line 22:/tmp/WMrdmCV6MV␤»
17:23 kthakore oh right
17:23 kthakore oops
17:24 moritz_ pmichaud: re p6u mail, callframe(1).line and .file are implemented (as I pointed out in my reply, which hasn't made it back from the list yet)
17:24 pmichaud perhaps old news, but Rakudo Star is #2 on github's list of trending repos.  http://github.com/explore
17:24 * pmichaud grabs a screen dump.
17:24 sorear it was #1 earlier
17:25 pmichaud ooooh, I get a gold star!
17:25 jaldhar joined #perl6
17:26 patrickas kthakore you mean the evalbot ? or in general ?
17:27 kthakore patrickas: in R*
17:27 pmichaud http://pmichaud.com/sandbox/rakudo-gold-star.jpg
17:27 kthakore patrickas: I do open 'non_exist'
17:27 patrickas you probably need :w
17:28 pugssvn r31874 | bbkr++ | [t/spec] tests for RT #71088 .trans after .subst blows up in Rakudo
17:28 pmichaud oops
17:28 kthakore pmichaud: not found
17:28 pmichaud http://pmichaud.com/sandbox/rakudo-gold-star.png
17:28 PerlJam pmichaud: might want to change the description to read "Rakudo Star Perl 6 distribution" instead of just "Rakudo Star distribution"
17:28 pmichaud (wrong extension)
17:28 kthakore pmichaud: :D
17:28 kthakore pmichaud: aren't we proud
17:28 kthakore I wish SDL_perl got a gold star :*(
17:28 moritz_ \o/
17:28 kthakore oh well
17:28 Italian_Plumber joined #perl6
17:28 kthakore \o/
17:28 kthakore GO PERL!
17:29 patrickas inception chminception
17:29 kthakore I have to see that movie!
17:31 * PerlJam is sure that karthick18, rhavyn, etc. all have gold stars too when they login  :)
17:31 patrickas open ('newfile' , :w); #Ohhhhhh :w(True) , Perl6++ , /me --
17:32 * patrickas is sure only rakudo gets a star :-P
17:32 kthakore patrickas: I don't understand
17:32 Su-Shee kthakore: here is the C implementation of inception! :) http://github.com/karthick18/inception
17:33 * Su-Shee got little stars at primary school in first grade. ;)
17:33 kthakore patrickas: unable to open filehandle from path
17:33 kthakore Su-Shee: non ononon Spoliers!
17:33 moritz_ rakudo: my @a := 1..*; say @a.max
17:33 p6eval rakudo 50e0e7: OUTPUT«Inf␤»
17:33 Su-Shee kthakore: compile it, it's really cool
17:33 kthakore Su-Shee: I haven't seen the movie
17:34 Su-Shee kthakore: me neither, it's just a crazy cool hack :)
17:34 kthakore Su-Shee: hehe
17:34 patrickas kthakore: kthakore i was just realizing out loud how stupid I have been, I have been using :w without actually understanding what the syntax means
17:35 patrickas kthakore: and you need unspace to make it work : open('newfile' , :w);
17:35 kthakore but ...
17:35 kthakore why does the sapce matter?
17:35 perlygatekeeper joined #perl6
17:35 PerlJam patrickas: and for documentation, you can say things like   open('file', :r, :!w);  # Open the file for reading, not writing  :)
17:36 patrickas First rule about perl6 ... space matters
17:36 kthakore awwww ....
17:36 kthakore that is why I left python ...
17:36 kthakore oh well
17:36 Su-Shee kthakore: not _that_ much space. ;)
17:36 kthakore Su-Shee: hehe
17:36 patrickas PerlJam that's why I also Perl++ed and not just me--ed :-)
17:36 kthakore Su-Shee: will that be a bug?
17:37 Su-Shee kthakore: now idea, by accident rakudo's space requirements are exactly how I space in any programming language.
17:37 pugssvn r31875 | bbkr++ | [t/spec] tests for RT #69200 Param typed with Bool doesnt accept :foo-type argument in Rakudo
17:38 kthakore Su-Shee: well that is like the tabs v.s. space argument all over again
17:38 kthakore Su-Shee: every one as theirs own way
17:38 pmichaud you can do
17:38 pmichaud open 'newfile', :w
17:38 pmichaud or
17:38 pmichaud open('newfile', :w)
17:38 pmichaud but
17:38 pmichaud open ('newfile', :w)     # means something different.
17:39 patrickas pmichaud is the latter passing a parcel to open?
17:39 pmichaud yes
17:39 pmichaud as one argument
17:39 pmichaud contrast it with
17:39 pmichaud xyz ('a', 'b'), 'c'           # xyz receives two arguments
17:39 pmichaud oops, not a good example
17:39 pmichaud xyz ('a', 'b', 'c'), 'd'           # xyz receives two arguments
17:40 patrickas :-) it will in both cases
17:40 kthakore ok
17:40 kthakore so ...
17:40 kthakore foo ( 'a', 'b' ) ,'d'
17:40 kthakore is different
17:40 kthakore as in
17:40 kthakore array then scalara
17:40 kthakore right?
17:40 pmichaud list then scalar, but yes.
17:40 kthakore ok
17:40 PerlJam the space before the comma doesn't mean anything however  :)
17:40 pmichaud foo ('a','b'),'d'   is like
17:40 patrickas I got to a stage where I understand what's happening but for some reason I got the habit of putting spaces everywhere.  Habits die hard!
17:41 pmichaud foo(('a','b'),'d')
17:41 kthakore ah!
17:41 kthakore that is .. sneaky IMO
17:41 kthakore :D
17:41 patrickas besides () don't flatten as they did in perl5
17:41 kthakore patrickas: I just noticed that
17:41 kthakore :D
17:41 PerlJam patrickas: it's part of that "consistency" thing that Perl 6 has going on.
17:42 * Su-Shee looks forward to the extensive, 1300 pages "programming perl 6" book which also kills buglars.
17:42 kthakore Su-Shee: hehe
17:42 Su-Shee with a 100 pages "short reference" ;)
17:43 colomon rakudo: my @a := 1..*; say @a.max
17:43 PerlJam Su-Shee: I'm sure with a small enough font, you could put the quickref on < 10 pages  ;)
17:43 p6eval rakudo 50e0e7: OUTPUT«Inf␤»
17:43 colomon rakudo: my @a := (1..*).list; say @a.max
17:43 kthakore so no more " say $FH 'boo' "
17:43 PerlJam Su-Shee: actually ... in the future we'll all be using ipad-like devices.  paper will be obsolete.
17:43 bbkr where can I put tests for http://rt.perl.org/rt3/Ticket/Display.html?id=73236 ?
17:43 p6eval rakudo 50e0e7:  ( no output )
17:43 patrickas small enough font AND large enough pages :-P
17:43 * colomon is a little freaked out that Range does Positional
17:43 Su-Shee PerlJam: you're talking to a household having 2 ebook readers for 4 years now :)
17:44 PerlJam Su-Shee: yet, you still think in terms of "pages"  ;)
17:44 patrickas kthakore i certanly hope so
17:44 Su-Shee there's a mean picture on the internet.. putting "javascript the definitive guide (1200 pages)" next to "javascript the good parts (200 pages)" :)
17:44 pmichaud PerlJam: so do the electronic forms, iirc.  :-)
17:45 kthakore patrickas: cool
17:45 Su-Shee PerlJam: as I still have to read and understand amount x of information "page" is a unit as good as any.. :)
17:45 PerlJam pmichaud: sure ... they just haven't realized the implications of the future they are a part of yet
17:45 perlygatekeeper joined #perl6
17:46 Su-Shee (I never loose the humanity department thinking.. of course "pages" doesn't mean that much to you guys working with formulas..)
17:46 kthakore ok guys
17:46 kthakore I have to head back to p5p line
17:46 PerlJam of course, many people are still living with the legacy of Herman Hollerith, so it may take a while for the future to disperse evenly
17:47 kthakore I wanted to make a cvs splitter but ... don't know how to write to filehandle yet
17:47 kthakore so latez
17:47 kiffin joined #perl6
17:47 PerlJam kthakore: $fh.say: "stufF"
17:47 pmichaud star repo description now changed to "Rakudo Star Perl 6 distribution"  (PerlJam++)
17:47 kthakore PerlJam: the ':' use in perl6 is scary to me
17:47 kthakore hehe
17:48 kthakore PerlJam: I like been scared. Makes me learn new things!
17:48 Su-Shee PerlJam: hollerith? *pffft* papyros! parchment! ;)
17:48 pmichaud kthakore: { my $*OUT = $fh;  say "output whatever you want";  say "to the filehandle"; }
17:48 PerlJam Su-Shee++ indeed!
17:48 kthakore pmichaud: are network handles the same way?
17:49 kthakore my $sock = open socket(), :w
17:49 pmichaud kthakore: say() sends its output to $*OUT by default, yes.
17:49 pmichaud I don't know how sockets are done yet.
17:49 kthakore no socket handle?
17:49 kthakore like stringhandle
17:49 pmichaud "I don't know."
17:49 pmichaud see IO::Sockets
17:49 sorear good * #perl6
17:49 kthakore pmichaud: ok
17:49 PerlJam gutentag sorear
17:50 kthakore pmichaud: I was asking to the chan in general. Sowwy
17:50 pmichaud just because I'm leading Rakudo doesn't mean I know anything about it (much less "everything" :-)
17:50 pmichaud ahhhh
17:50 pmichaud makes sense
17:50 pmichaud anyway, IO::Socket  probably has some answers.
17:50 kthakore pmichaud: thx
17:50 kthakore ok $work
17:50 kthakore bye! be back for more adventuresd!!!
17:53 Su-Shee socket examples are in httpd modules.
17:54 * PerlJam wonders if there's a way to not put tags in the downloads section.
17:54 sorear pmichaud: Why do you think always having the original source code available is needed?
17:55 KenGuru joined #perl6
17:55 PerlJam sorear: makes round-tripping easier :)
17:55 pmichaud sorear: we can do a lot more with introspection and .perl that way
17:56 pmichaud TimToady seemed to agree with me that it'd be useful, fwiw.
17:56 timdemkowsky perl6: say 23[0];
17:56 p6eval pugs, rakudo 50e0e7: OUTPUT«23␤»
17:56 timdemkowsky perl6: say 23[1];
17:56 p6eval rakudo 50e0e7:  ( no output )
17:56 p6eval ..pugs: OUTPUT«␤»
17:56 moritz_ bbkr++ # writing tests
17:56 ashleydev joined #perl6
17:56 KenGuru trying to run an win7 x64 install of parrot and rakudo start getting an error.
17:57 KenGuru wanted to have a first look to perl ....
17:57 [Coke] rakudo: club #http://nopaste.snit.ch/22471
17:57 patrickas KenGuru fromt he tarball or the MSI ?
17:57 p6eval rakudo 50e0e7: OUTPUT«Could not find sub &club␤  in main program body at line 22:/tmp/ZTzz6JgKAc␤»
17:57 KenGuru msi
17:58 patrickas what's the error you are getting?
17:58 KenGuru Unable to find Perl 6 low-level runtime files
17:58 KenGuru If you want to run Rakudo outside of the build directory,
17:58 KenGuru run 'make install' and use the installed perl6 binary
17:58 moritz_ [Coke]++
17:58 moritz_ [Coke]++
17:58 moritz_ [Coke]++
17:59 [Coke] whoops. left it one wrong word, fixing.
17:59 moritz_ KenGuru: at which step do you get that?
17:59 [Coke] http://nopaste.snit.ch/22472 , instead.
17:59 KenGuru executing perl6.exe
17:59 KenGuru having it on the path
17:59 sorear pmurias: ping
17:59 moritz_ hum.
17:59 KenGuru i do have msysgit on the path too
18:00 [Coke] moritz_: danke. =-)
18:00 moritz_ bitteschön
18:01 patrickas KenGuru that's strange! Did it seem to have installed but cannot be run? or did not install at all ?
18:01 jnthn KenGuru: Does the shortcut on the startmenu work? Are you trying to run it as just "perl6.exe" from the command line?
18:01 timdemkowsky phew, just upx'd the perl6 executable for fun
18:01 KenGuru jupp, from the command line
18:01 KenGuru from my powershell prompt
18:02 KenGuru can'T find any startmenu entry
18:02 timdemkowsky from 27.9mb down to 1.3mb :)
18:02 patrickas can you try cd-ing to the rakudo directory and running from there?
18:02 jnthn KenGuru: :S
18:02 jnthn KenGuru: The installer should create one.
18:02 KenGuru no, same problem
18:03 jnthn KenGuru: Where did you get the installer from?
18:03 KenGuru sf project page
18:03 jnthn Oh!
18:03 jnthn OK, then you're not using the MSI most of us here probably thought you were. :_)
18:03 KenGuru installed both into c:\dev\parrot-2.6.0
18:03 PerlJam There's a sf page?
18:03 moritz_ I fear how-to-get-rakudo still links to it
18:04 KenGuru jupp
18:04 jnthn moritz_: Ah.
18:04 kthakore left #perl6
18:04 jnthn KenGuru: http://github.com/rakudo/star/downloads is the Rakudo * MSI
18:04 KenGuru so i'll try this first
18:04 [Coke] http://sourceforge.net/projects/rakudoport/
18:04 [Coke] looks like it was updated fer star.
18:04 sorear KenGuru: out of curiousity, what version of Rakudo is the latest on SF?
18:04 KenGuru had allready a look into the git repo, but downloaded the file from sf
18:04 [Coke] sorear: it says star.
18:05 KenGuru parrot 2.6.0 from 20100721
18:06 Getty github should learn to parse perl6 code on the highlighter ;)
18:06 KenGuru rakudo r31 from 20100723
18:07 literal_ joined #perl6
18:07 tylercurtis joined #perl6
18:07 KenGuru will try the msi from github
18:07 KenGuru and give feedback
18:08 pugssvn r31876 | moritz++ | [t/spec] test for RT #74640, very long Num literals
18:08 literal joined #perl6
18:08 M_o_C joined #perl6
18:09 KenGuru are the files of http://sourceforge.net/projects/parrotwin32/ in sync with github repo?
18:10 drrho joined #perl6
18:10 [Coke] KenGuru: not by our doing.
18:10 [Coke] says it's run by 'zagap', who I don't recognize.
18:10 KenGuru k ... will use the files from github next time ...
18:10 [Coke] Alexandr Zagatski
18:11 [Coke] perhaps someone should kind ask him to send any changes back upstream.
18:11 Su-Shee now an internet broadcast would be nice! "meeep - alexandr zagatski please visit #perl6, mr zagatski, please visit #perl 6!" ;)
18:12 PerlJam sf has a mechanism to send him a message.
18:13 PerlJam (and obviously he uses sf enough that he'll get it at some point soonish)
18:13 [Coke] license is listed as GPL, which is kosher, I suppose, but blah.
18:20 ingy greetings!
18:20 PerlJam I just changed http://rakudo.org/how-to-get-rakudo.  Any comments before I wander off to do some work?
18:21 ingy star: say "\o/"
18:21 p6eval star 2010.07: OUTPUT«===SORRY!===␤Unrecognized backslash sequence: '\o' at line 22, near "/\""␤»
18:21 ingy moritz_++
18:21 ingy star: say "\\o/"
18:21 p6eval star 2010.07: OUTPUT«\o/␤»
18:21 tadzik star: say '\o/'
18:21 p6eval star 2010.07: OUTPUT«\o/␤»
18:22 ingy star: say '\o/\oXo/'
18:22 p6eval star 2010.07: OUTPUT«\o/\oXo/␤»
18:22 aCiD2 joined #perl6
18:23 aCiD2 left #perl6
18:23 aCiD2 joined #perl6
18:23 KenGuru ok, with the github release rakudo is running
18:23 KenGuru thx for the hints
18:23 aCiD2 Is it possible to use attributive parameters with arrays? For example: class Bar { has @.blah; method foo (*@!blah) { } }
18:23 aCiD2 (that isn't working for me)
18:24 moritz_ what should that do?
18:24 aCiD2 assign to @.blah
18:24 * ingy does all new p6 dev on the star release
18:24 aCiD2 ie: $bar.foo(<a b c >). @bar.blah == <a b c>
18:24 pmichaud I'm not sure that works.
18:24 ingy sanity++
18:24 jnthn @!blah should work in a signature
18:25 aCiD2 it sure doesn't work, i was just wondering if it should
18:25 moritz_ rakudo: class Bar { has $.x; method foo($!x) { } }; Bar.new.foo(5);
18:25 jnthn I've no idea what it makes of you trying to do that to a slurpy...
18:25 p6eval rakudo 50e0e7:  ( no output )
18:25 moritz_ rakudo: class Bar { has $.x; method foo($!x) { } };my $b =  Bar.new; $bar.foo(5); say $bar.x
18:25 PerlJam I think it should, but I haven't looked at the spec to make sure that's what it says  :)
18:25 p6eval rakudo 50e0e7: OUTPUT«===SORRY!===␤Symbol '$bar' not predeclared in <anonymous> (/tmp/8GQCJHJ7ko:22)␤»
18:25 jnthn $b.new...
18:25 moritz_ rakudo: class Bar { has $.x; method foo($!x) { } };my $b =  Bar.new; $bar.foo(5); say $b.x
18:25 p6eval rakudo 50e0e7: OUTPUT«===SORRY!===␤Symbol '$bar' not predeclared in <anonymous> (/tmp/sq9wx3tKJu:22)␤»
18:25 aCiD2 slurpy or not, I get "too many positional arguments: 2 passed, 1 expected"
18:25 jnthn moritz_: $b.foo :-)
18:25 moritz_ rakudo: class Bar { has $.x; method foo($!x) { } };my $b =  Bar.new; $b.foo(5); say $b.x
18:26 moritz_ ...
18:26 p6eval rakudo 50e0e7: OUTPUT«5␤»
18:26 Guest23195 joined #perl6
18:26 pmichaud jnthn: I would guess that foo(*@!bar)  would bind @!bar to the slurpy
18:26 moritz_ rakudo: class Bar { has @.x; method foo(@!x) { } };my $b =  Bar.new; $b.foo([5, 6]); say $b.x
18:26 p6eval rakudo 50e0e7: OUTPUT«5 6␤»
18:26 aCiD2 Hm.
18:26 cxreg @#$%^@#bar
18:26 aCiD2 Then wtf am I doing wrong :)
18:26 moritz_ aCiD2: my demonstration didn't use a slurpy
18:26 moritz_ rakudo: class Bar { has @.x; method foo(*@!x) { } };my $b =  Bar.new; $b.foo([5, 6]); say $b.x
18:26 pmichaud aCiD2: it's entirley possible rakudo gets slurpy binding wrong there.  we didn't have a completely good working slurpy implementation until a little over a month ago
18:27 p6eval rakudo 50e0e7: OUTPUT«5 6␤»
18:27 aCiD2 I only used slurpy because it didn't work anyway
18:27 gssgss joined #perl6
18:27 PerlJam rakudo: class Bar { has $.x; method foo(*$!x) { } }; my $b =  Bar.new; $b.foo(5); say $b.x
18:27 moritz_ huh, seems to work
18:27 jnthn pmichaud: Me too
18:27 p6eval rakudo 50e0e7: OUTPUT«5␤»
18:27 moritz_ rakudo: class Bar { has @.x; method foo(*@!x) { } };my $b =  Bar.new; $b.foo(5, 6); say $b.x.perl
18:27 p6eval rakudo 50e0e7: OUTPUT«[5, 6]␤»
18:27 jnthn pmichaud: But I don't know quite what slurpy looks like in the binder today
18:27 moritz_ it works.
18:27 pmichaud jnthn: it's just a lazy array
18:27 jnthn pmichaud: It should work if it calls bind_one_param though
18:27 Guest23195 joined #perl6
18:27 jnthn moritz_: oh cool :-)
18:27 pmichaud jnthn: I'm pretty sure that it does... and as moritz++ showed, it appears to work. :)
18:27 jnthn OK, cool.
18:27 jnthn \o/
18:28 jnthn moritz_: I bet we don't have a spectest for that ;-)
18:28 tadzik module File::Find:<github:tadzik 0.1>;
18:28 tadzik awesome thing
18:29 PerlJam Last call for comments on my changes to http://rakudo.org/how-to-get-rakudo   Speak now or you'll have to change it yourself :)
18:29 aCiD2 rakudo: class Bar { has @!x; method x(@!x) { @!x } };my $b =  Bar.new; $b.foo([5, 6]); say $b.x
18:29 p6eval rakudo 50e0e7: OUTPUT«Method 'foo' not found for invocant of class 'Bar'␤  in main program body at line 22:/tmp/NlAfwwHX0e␤»
18:30 aCiD2 rakudo: class Bar { has @!x; method x(@!x) { @!x } };my $b =  Bar.new; $b.x([5, 6]); say $b.x
18:30 p6eval rakudo 50e0e7: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in 'Bar::x' at line 22:/tmp/C8pbLqG6jR␤  in main program body at line 22:/tmp/C8pbLqG6jR␤»
18:30 aCiD2 aha!
18:30 aCiD2 that's the problem I'm getting.
18:30 jnthn $b.x([5, 6]) is your problem
18:30 aCiD2 I'm doing this because I want to be able to have chained accessors. like $foo.bar('a').magic('roundabout')
18:30 tylercurtis aCiD2: your x method requires a parameter. You aren't passing one.
18:30 jnthn $b.x = [5, 6];
18:30 aCiD2 rakudo: class Bar { has @!x; method x(@!x) { @!x } };my $b =  Bar.new; $b.x(5, 6); say $b.x
18:31 p6eval rakudo 50e0e7: OUTPUT«Nominal type check failed for parameter '@!x'; expected Positional but got Int instead␤  in 'Bar::x' at line 22:/tmp/F_mDXsREZi␤  in main program body at line 22:/tmp/F_mDXsREZi␤»
18:31 jnthn oh wait...
18:31 pmichaud the problem is that .x is being used in two ways here.
18:31 jnthn Sorry, I mis-read
18:31 jnthn Yeah
18:31 pmichaud the second $b.x  isn't supplying a parameter.
18:31 aCiD2 Ohhhhh
18:31 pmichaud s/parameter/argument/
18:31 aCiD2 of course. so I should use a multi method?
18:31 pmichaud a multi would work, yes.
18:31 jnthn aCiD2: That'd be a neat solution.
18:31 aCiD2 wait a minute
18:32 aCiD2 the problem here is actually specific to irc. In my actual code, the accessor is write only (and accessed privately)
18:32 tylercurtis rakudo: class Bar { has @!x; multi method x(@!x) { self; }; multi method () {@!x; } }; my $b = Bar.new; $b.x([5, 6]); $b.x.say;
18:32 p6eval rakudo 50e0e7: OUTPUT«===SORRY!===␤Can not put multi on anonymous routine at line 22, near "}; my $b ="␤»
18:32 aCiD2 maybe I should just paste what I have :)
18:32 tylercurtis rakudo: class Bar { has @!x; multi method x(@!x) { self; }; multi method x() {@!x; } }; my $b = Bar.new; $b.x([5, 6]); $b.x.say;
18:32 p6eval rakudo 50e0e7: OUTPUT«5 6␤»
18:33 tylercurtis rakudo: class Bar { has @!x; multi method x(*@!x) { self; }; multi method x() {@!x; } }; my $b = Bar.new; $b.x(5, 6); $b.x.say;
18:33 p6eval rakudo 50e0e7: OUTPUT«56␤»
18:33 aCiD2 http://gist.github.com/501078
18:33 aCiD2 line 6 in that paste is i believe the problematic area
18:33 darkop joined #perl6
18:34 tylercurtis aCiD2: you might want has "$.from is rw;". readonly is default, iirc.
18:36 tylercurtis rakudo: class Foo { has $.x; }; my Foo $f .= new(:x<a>); $f.x.say; $f.x = 5; $f.x.say;
18:36 p6eval rakudo 50e0e7: OUTPUT«a␤Cannot modify readonly value␤  in '&infix:<=>' at line 1␤  in main program body at line 22:/tmp/BFlPDg04yB␤»
18:36 tylercurtis aCiD2: or to write an accessor for it like the one for select.
18:37 darkop rakudo: say "Hi.";
18:37 p6eval rakudo 50e0e7: OUTPUT«Hi.␤»
18:37 tylercurtis aCiD2: the default rw accessor is a lvalue method so to set it, you do "$select.from = value".
18:38 aCiD2 ah
18:38 aCiD2 ooo, it's working again now that I've made accessors how I need them
18:38 ingy pmichaud++ # tagging the star repo
18:38 * PerlJam work &
18:39 aCiD2 perl 6 is crazy, I can write just about every method on one line so far :)
18:39 aCiD2 <3
18:39 tylercurtis aCiD2: you might want Table.add_columns to push onto @!columns instead of setting it, no?
18:39 rindolf joined #perl6
18:39 rindolf Hi all.
18:40 aCiD2 tylercurtis: indeed
18:40 aCiD2 thanks for spotting that
18:40 rindolf Question: does Perl 6 has support for operations on large integers?
18:40 rindolf Something like Math::BigInt / Math::GMP in Perl.
18:40 pmichaud the spec requires it, rakudo doesn't have it yet.
18:40 tylercurtis aCiD2: also, Perl 6 idiom seems to prefer hypens for word separators instead of underscores.
18:40 pmichaud the Int type is supposed to hold arbitrarily large integers.
18:41 pugssvn r31877 | moritz++ | [t/spec] tests for attributive parameters
18:41 aCiD2 tylercurtis: I had no idea that was possible! FINALLY
18:41 jnthn Unfortunately.
18:41 rindolf pmichaud: are you talking to me?
18:41 moritz_ jnthn, pmichaud: there's one TODO'ed test in the file I've just added - I'd appreciate it if you could review it for sanity
18:41 pmichaud rindolf: yes.
18:41 rindolf pmichaud: OK.
18:41 pmichaud rindolf: (sorry, forgot to address my comments to you)
18:41 rindolf pmichaud: OK.
18:42 aCiD2 Will it be possible in the future (or now maybe!) to have custom traits for attributes?
18:43 timdemkowsky :q
18:43 * hugme hugs timdemkowsky, good vi(m) user!
18:43 timdemkowsky whoops. :D
18:43 aCiD2 like has $.fur is fluffy
18:43 cdarroch joined #perl6
18:43 cdarroch joined #perl6
18:43 moritz_ aCiD2: I kinda think that 'is rw' is implemented with the same mechanism you could use for that
18:43 aCiD2 interesting
18:43 [Coke] :wq
18:43 * hugme hugs [Coke], good vi(m) user!
18:43 moritz_ aCiD2: see src/core/traits.pm in the rakudo souces
18:43 moritz_ *sources
18:43 aCiD2 thanks, I will do
18:44 dalek rakudo: cf9997a | moritz++ | src/Perl6/Actions.pm:
18:44 dalek rakudo: refacor adverb application and checking into a separate method - it will be
18:44 dalek rakudo: reused for m//, hopefully
18:44 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/cf9997af6df68aa5af98979ededd3e5800bbc137
18:44 dalek rakudo: c9c98fa | moritz++ | t/spectest.data:
18:44 dalek rakudo: [t/spec] run new tests for attributive params
18:44 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c9c98fa7af9b81f5e7c2b3bcbfc7a516251f5aa1
18:44 moritz_ jnthn++ prefers to write trait handlers in Perl 6
18:46 offerkaye joined #perl6
18:46 jnthn moritz_: alas, is rw on attrs isn't implemented that way - yet.
18:47 offerkaye hi all
18:47 jnthn o/
18:47 szabgab hi offerkaye
18:47 offerkaye Quick question
18:47 offerkaye Hi Gabor :)
18:47 jnthn moritz_: Will look over that test in a bit - need some typing break / walk now :-)
18:47 offerkaye How come "'Hello, world!'.reverse.say;" doesn't print the reversed string?
18:48 jnthn .reverse is for lists; use .flip for strings.
18:48 offerkaye Ah awesome, thanks!
18:48 jnthn rakudo: 'Hello, world!'.flip.say # just checking :-)
18:48 szabgab reverse is reserved for lists :)
18:48 p6eval rakudo 50e0e7: OUTPUT«!dlrow ,olleH␤»
18:48 [Coke] FYI, we current have 19 tickets in rt labeled [PATCH], some dating back over a year.
18:48 * jnthn bbiab
18:49 offerkaye Is there any online page where things like "flip" are documented?
18:49 [Coke] Even if you don't understand what they're doing, adding a "Sorry, this doesn't apply cleanly anymore" would be helpful.
18:49 [Coke] offerkaye: the synopses, probably.
18:49 pmichaud [Coke]: I'll go through and respond to the patches
18:49 szabgab offerkaye: press F2 when in Padre :)
18:49 [Coke] http://www.perl6.org/specification/
18:50 [Coke] pmichaud: doesn't have to be you. =-)
18:50 ingy git Q: how do I checkout the star tagged branch: 2010.07
18:50 pmichaud [Coke]: no, but it probably ought to be.
18:50 [Coke] but sure! =-)
18:50 * ingy is flailing
18:50 pmichaud ingy: git clone <repo>
18:50 pmichaud git checkout 2010.07
18:50 offerkaye Gabor and [Coke], thanks :)
18:50 [Coke] git clone ingy.
18:50 ingy :P
18:51 [Coke] pmichaud: want a list?
18:52 [Coke] (or me to assign them to you?)
18:52 pmichaud [Coke]: I already have a saved query that looks for [PATCH]
18:52 [Coke] +1
18:52 pmichaud (which is partially why I volunteer to handle them)
18:52 aCiD2 Is it possible to have a multi method, where one method just handles the whatever-star and one method handles a slurpy array? I've got a multi method on ::Whatever and another on Str *@foo, but passing 'foo' seems to match the ::Whatever one, not the array reference
18:52 ingy pmichaud: that command carped a bit, but I did: git co -b 2010.07 2010.07
18:53 pmichaud ingy: you might have an older git
18:53 pmichaud (oldeer than mine, anyway)
18:53 pmichaud but sure, that should work also.
18:53 [Coke] ingy is bleeding edge!
18:53 ingy 1.6.3.3
18:53 cxreg ingy: naming a tag the same as a branch could cause git some confusion, beware
18:53 pmichaud git version 1.7.0.4
18:54 pmichaud so... yeah.
18:54 ingy cxreg: thx
18:54 pmichaud yes, I'd beware of giving a branch the same name as a tag.
18:54 ingy I think I grok you, cxreg
18:54 ingy how do I name it then?
18:54 ingy or don't I?
18:55 cxreg git branch -m 2010.07 2010.07-branch or something?
18:55 cxreg you can "check out" a tag directly, but it leaves your HEAD detached (which is ok)
18:56 cxreg it's just not a place you likely want to leave any new commits :)
19:00 ashleydev joined #perl6
19:00 ingy pmichaud: O NOES! http://gist.github.com/501116
19:00 ingy pmichaud: OS X
19:01 colomon ummmm.....
19:01 colomon if I just built a new parrot, is it really possible there is nothing to do to rebuild Rakudo?
19:01 pmichaud ingy: sure, I expect the distbuilder to need some work.
19:02 [Coke] colomon: I don't think rakudo /depends/ on parrot in a makefile sense.
19:02 pmichaud colomon: it's possible, but there are lots of things that could invalidate it.
19:02 aCiD2 Have I misinterepreted something, or is this a bug? http://gist.github.com/501122
19:02 [Coke] so your best bet is to reconfigure and rebuild.'
19:02 aCiD2 urrr
19:02 aCiD2 wait a second!
19:02 [Coke] no, READING THAT ONE!. ;)
19:03 aCiD2 ok, my bad, 2 is quite obviously not a Str :)
19:03 pmichaud also, I think that ::Whatever doesn't mean "match a Whatever".
19:03 aCiD2 ok, paste at http://gist.github.com/501122 updated with my actual problem
19:03 * cxreg just had a moment of brilliance: ))<>(( as an open2 operator
19:04 aCiD2 pmichaud: Hrm, in Test.pm they do: if $plan ~~ ::Whatever
19:04 pmichaud aCiD2: that's different -- that's not part of a parameter declaration.
19:04 aCiD2 i see
19:04 aCiD2 I figured it worked the same way
19:04 pmichaud in a parameter declaration,  ::X  means "define X as the type of the argument"
19:04 pmichaud if you want to match Whatever, it's just
19:04 pmichaud multi method foo(Whatever $x) { '*' }
19:04 aCiD2 oh right
19:05 aCiD2 happy sailing again, thanks pmichaud :)
19:05 aCiD2 sorry for the endless questions, I hope people don't mind. I just really want to get my teeth into perl 6
19:05 cono joined #perl6
19:05 pmichaud aCiD2: we don't mind.
19:05 pmichaud we want more people to get their teeth into perl 6, and we know there's a lot of new stuff.
19:06 aCiD2 :)
19:06 offerkaye [Coke]: There isn't any place where the documentation is more like the perl5 one (e.g. perlsyn, perlop, perlfunc)? The Synopsys pages seem to spread related topics into different pages and are also a bit complex :(
19:06 pmichaud offerkaye: not yet, no.
19:07 [particle] this is the part where you ask for a commit bit, to start writing it, offerkaye ;)
19:07 tylercurtis colomon: Are you around?
19:07 pmichaud I suspect a commitbit isn't needed -- just start a new package/module to do it :)
19:07 offerkaye pmichaud: thanks. [particle] , I was just going to ask, if there is any group working on the p6 docs?
19:07 [Coke] pmichaud: might make sense to shove it in pugs.
19:08 [Coke] since a lot of that is spec-driven.
19:08 pmichaud [Coke]: true, but I'd prefer to see it in a github repo somehow.
19:08 [particle] yeah, i assumed pugs repo
19:08 moritz_ there is something in the pugs repo already
19:08 pmichaud I'll gladly open up a perl6 repo on github for it :)
19:08 moritz_ in docs/u4x/
19:08 colomon tylercurtis: I am indeed
19:09 PerlJam There are at least 5 separate repos on github relating to perl 6 documentation
19:09 pmichaud but getting good introspectable docs is also why I'm keen for masak++ to work on S26 for us :)
19:09 aCiD2 Is it possible to curry a sub for use with map? sub blah ($x); @foo.map(blah)
19:09 [particle] u4x++
19:09 [particle] that's a good start
19:09 masak u4x would also be a lot more fun after the S26 grant.
19:10 pmichaud rakudo:  sub xyz($x) { $x * 2 };   (1..5).map(&xyz).say
19:10 p6eval rakudo 50e0e7: OUTPUT«246810␤»
19:10 colomon aCiD2: map(&blah) should work if blah only takes one argument
19:10 masak seeing the Pod being rendered as nicely-styled HTML counts for a lot.
19:10 aCiD2 ah, you have to reference it
19:10 masak aCiD2: yes. &blah
19:10 aCiD2 colomon: how do I get at a method? &self.foo seems to try and get it from self, not self.foo
19:10 pmichaud aCiD2: right.  Perl 6 always treats 'blah' as the call and '&blah' as a reference.
19:11 masak aCiD2: each time you do 'sub foo', you essentially get a variable &foo in the deal.
19:11 aCiD2 i see
19:11 masak aCiD2: and vice versa; if you do 'my &foo = { ... }', you can then call 'foo()'
19:11 colomon aCiD2: get at a method in what sense?
19:11 pmichaud colomon: I suspect he wants to pass a method to map
19:11 aCiD2 colomon: I'm actually doing .map(self.rar)
19:12 pmichaud aCiD2: then it's just  *.rar
19:12 tylercurtis colomon: as of Parrot r48214, fdiv_i_i_i and fdiv_i_i work. Not sure how they compare performance-wise with fdiv_n_n_n, though.
19:12 aCiD2 masak: that's like perl 5 symbol manipulation?
19:12 masak aCiD2: lastly, '&blah()' works too, but it's slightly redundant.
19:12 pmichaud oh, wait
19:12 [Coke] tylercurtis++
19:12 pmichaud you want to pass an argument to rar
19:12 pmichaud then it's
19:12 masak aCiD2: yes, but without the sigils jumping around when you index things.
19:12 pmichaud map( { $.rar($^a) } )
19:12 pmichaud or
19:13 pmichaud map( { self.rar($^a) } )
19:13 aCiD2 i can't do it without creating a block? and that's not really currying it either
19:13 offerkaye About u4x, the link on the perl6.org documentation page takes me to a page "http://svn.pugscode.org/pugs/docs/u4x/" which does not seem very user friendly (at least not Offer friendly, hehe ;p). What am I supposed to do there?
19:13 pmichaud if you refer to the method directly, it needs two arguments
19:13 pmichaud one for the invocant, one for the argument
19:13 aCiD2 oh yea
19:13 pmichaud if you want to curry that to automatically have the self... that might be possible
19:13 aCiD2 what is $^a?
19:13 colomon tylercurtis: maybe you could run some timings, just calling those functions directly in the two different cases, to see how the performance compares?
19:13 KenGuru any suggested editor for win?
19:14 PerlJam KenGuru: Padre
19:14 pmichaud $^a means a parameter to the block
19:14 KenGuru currently using notepad++
19:14 aCiD2 pmichaud: indeed, that's what I'm sort of expecting to be possible
19:14 aCiD2 pmichaud: like $_ from perl 5?
19:14 PerlJam KenGuru: padre.perlide.org
19:14 tylercurtis colomon: will do.
19:14 pmichaud aCiD2: $_ is often an assumed placeholder, yes.
19:14 pmichaud the $^a form allows more of them.
19:14 colomon tylercurtis: my instinct is that it will probably make very little different to Rat arithmetic at this point, but it's worth checking just in case -- my instincts have been wrong at least once in this process.
19:14 aCiD2 ah, ok
19:14 dalek rakudo: dfefdd2 | (Solomon Foster)++ | src/core/Range.pm:
19:14 dalek rakudo: Add much faster range iterator for infinite Int ranges.
19:14 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/dfefdd2f43288a5d6913d3ea6aa0945318004768
19:14 dalek rakudo: c7ad36f | (Solomon Foster)++ | t/spectest.data:
19:14 dalek rakudo: Turn on new S03-operators/range-int.t test file (as stress test).
19:14 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c7ad36f52a45ff022154b35fdeb8bac93c5c4f75
19:14 PerlJam KenGuru: or, if you're not afraid of a modal editor, vim
19:14 pmichaud rakudo:   { say "$^y, $^x"; }.('world', 'hello')
19:14 p6eval rakudo 50e0e7: OUTPUT«hello, world␤»
19:14 KenGuru i'm not into vim commands
19:15 KenGuru i'll try it later on
19:15 pmichaud rakudo:  for 1..10 { say $^a, $^b }
19:15 p6eval rakudo 50e0e7: OUTPUT«12␤34␤56␤78␤910␤»
19:15 colomon pmichaud: I'd appreciate it if you could review dfefdd2f4 for me sometime very soon -- I've got another similar change to make ASAP.
19:15 KenGuru but atm I only wann get started with syntax coloring
19:15 [Coke] rakudo:   { say "$^ö, $^õ"; }.('world', 'hello');
19:16 p6eval rakudo 50e0e7: OUTPUT«hello, world␤»
19:16 pmichaud colomon: I'm not quite keen on having the extra type
19:16 aCiD2 so, final question on this area - is Select.new.from(self).select(@column-names.map({ self.column($_) })) the idiomatic way to write that?
19:16 colomon pmichaud: why?
19:16 aCiD2 Mostly the @column-names map
19:16 jfried joined #perl6
19:17 pmichaud colomon: because I think it could be handled just as cleanly within the normal RangeIter
19:17 pmichaud (and ReallyLongTypeNamesBugMeALot)
19:17 KenGuru @PerlJam: thx for the tip padre looks interesting
19:17 colomon pmichaud: I thought the entire point of this operation was to avoid doing unnecessary operations for the common cases.
19:18 perigrin ThisIsATypeNameJustToBugPMichaud $i = ...
19:18 masak rakudo: { say "$^世, $^界" }.('world', 'hello')
19:18 pmichaud colomon: sure, but that doesn't *have* to mean there's a new type for every optimization we come up with.
19:18 p6eval rakudo 50e0e7: OUTPUT«world, hello␤»
19:18 masak ah :)
19:18 goksie joined #perl6
19:18 pmichaud I still think the common cases should use common types.
19:18 masak rakudo: { say "$^界, $^世" }.('world', 'hello')
19:18 p6eval rakudo 50e0e7: OUTPUT«hello, world␤»
19:18 [Coke] masak, is that "dancing blockhead?"
19:19 masak [Coke]: 世界 means 'world'
19:19 pmichaud in this case, I'd think that RangeIter.reify could be made smart enough to be fast at handling Inf without having to resort to a specialized type just for that
19:20 desertm4x joined #perl6
19:20 masak rakudo: { &^说("$^界, $^世") }.(&say, 'world', 'hello')
19:20 p6eval rakudo 50e0e7: OUTPUT«Nominal type check failed for parameter '&说'; expected Callable but got Str instead␤  in <anon> at line 2:/tmp/daTnmmbJnP␤  in main program body at line 22:/tmp/daTnmmbJnP␤»
19:20 masak rakudo: { &^说("$^界, $^世") }.('world', &say, 'hello')
19:20 p6eval rakudo 50e0e7: OUTPUT«Nominal type check failed for parameter '&说'; expected Callable but got Str instead␤  in <anon> at line 2:/tmp/oBU28dSBnb␤  in main program body at line 22:/tmp/oBU28dSBnb␤»
19:20 masak (permutation programming)
19:21 masak rakudo: { &^说("$^界, $^世") }.('world', 'hello', &say)
19:21 p6eval rakudo 50e0e7: OUTPUT«hello, world␤»
19:21 masak \o/
19:21 tylercurtis masak: does 说 mean hello?
19:21 masak tylercurtis: it means 'say' :)
19:21 Chillance joined #perl6
19:21 pmichaud in my font it looks like lolcat running away from 'i'
19:22 masak :D
19:22 pmichaud or lolcat bouncing a marble on its tail
19:22 masak I always thought of it as a little bunny.
19:22 masak don't tell my Chinese teacher.
19:22 mtk joined #perl6
19:23 KenGuru 2(PerlJam2): can i use padre with the current rakudo release?
19:23 PerlJam KenGuru: padre is a general purpose editor.  It's not going to care what you're editing too much  :)
19:23 pmurias ruoso: could you check if Forest::Tree::Viewer::Gtk2 is ok?
19:24 PerlJam KenGuru: I'm not sure how well the syntax highlighting has kept up though.
19:24 pmichaud afk for a bit
19:24 KenGuru 2(PerlJam2): will give it a try
19:25 KenGuru 2(PerlJam2): will google around for highlighting solutions
19:25 KenGuru curious why there isn't a binary release (only msi) of the current padre
19:26 colomon pmichaud: my time is limited atm.  If you'd like me to check in the big Range optimization with separate classes, I can do that this afternoon.  If you'd like me to rewrite it all to share the logic of four classes in one, I can maybe get to it sometime the second week of August.
19:26 pmichaud colomon: I'm fine with either approach (if tests pass) .. so it's up to you.  :)
19:26 pmichaud checking in the range optimization would seem to make the most sense for now.
19:26 pmichaud but yes, I'd want a big cleanup at some point.
19:26 offerkaye KenGuru: probably the volunteer doing it hasn't had the time yet
19:26 pmichaud because the current set is waaaaaaaay too much code
19:27 [particle] KenGuru: better asked in #padre
19:27 offerkaye KenGuru: there are perl5+6 highlight patterns for vim at: http://github.com/petdance/vim-perl
19:27 offerkaye I haven't tried them out myself though
19:27 KenGuru thx so far, but i'm affraid i'm not able to use vim atm
19:28 aCiD2 I'm using vim for my perl 6 hacking, but emacs for everything else
19:28 * KenGuru has grown up with Visual Studio
19:28 * KenGuru also grew up with Eclipse
19:29 KenGuru but /me unfortunately left out vim
19:29 mtk joined #perl6
19:29 PerlJam KenGuru: hopefully you can recover from such an impoverished up-bringing.
19:29 PerlJam :-)
19:29 tylercurtis aCiD2: $.column($_) is probably more fitting for that.You may want to do the map separately so you could do "my @columns = @column-names.map: { $.column($_) }; Select.new.from(self).select(@columns);" Or you could just supply the attributes to the select in the constructor like "Select.new(:from(self), :@columns));"
19:30 * KenGuru also used WingIDE for Python
19:30 * KenGuru used a lot of notepad++ for editing
19:30 offerkaye KenGuru: there's an msi for http://strawberryperl.com/ and if you install that, installing Padre should be a simple matter of opening a new cmd.exe, typing "cpan" and in the cpan shell typing "install Padre". Hopefully :)
19:31 KenGuru i'll try some stuff
19:31 KenGuru i never ever used perl before.
19:31 aCiD2 tylercurtis: I can do that even though they are private?
19:31 KenGuru so have to accel a bit slower ;-)
19:31 pmurias offerkaye: cpan, cpanm is more fun
19:31 timbunce joined #perl6
19:31 [Coke] I thought some version of sb came with padre?
19:32 PerlJam Alias mentioned earlier that padre comes with strawberry.
19:32 KenGuru have used python, c/c++, c#, vb.net, boo, f#, jscript
19:32 KenGuru ruby
19:32 offerkaye KenGuru: just so you know, Perl 6 might look a bit similiar sometimes to Perl (5), but it is quite a different language :)
19:32 tylercurtis aCiD2: yes, unless you override the new method or BUILD submethod.
19:32 KenGuru yes i know. the meta programming abilitys attracted me
19:32 offerkaye pmurias: yeah, I've been meaning to try it out. And while we're at things that are fun, perlbrew rocks :)
19:33 KenGuru the integrated snytax for grammars/rules
19:33 KenGuru all that weired stuff ...
19:34 KenGuru the last "lang toy" i used was ometa, especially the one from boo
19:35 KenGuru i'm not that much into compiler theory ...
19:36 offerkaye So, anyone want to pick up the ball w/regards to my question about u4x? Personally, I don't understand how a page that looks like "http://svn.pugscode.org/pugs/docs/u4x/" is billed as "user documentation". sorry :(
19:36 arnoo joined #perl6
19:36 [Coke] offerkaye: the type of documentation you're asking for doesn't exist yet.
19:36 pmichaud offerkaye: most of us are already volunteered to the extent that we can be.  :-)
19:36 moritz_ offerkaye: we plan to write the documentation in the documentation/ subfolder
19:37 pmichaud offerkaye: rakudo star is intended to gain more volunteers :)
19:37 moritz_ offerkaye: it's going to be rerndered into web pages that are easier accessible
19:37 pmichaud offerkaye: to help do the sorts of things that you say (and we agree) should be done :)
19:37 moritz_ offerkaye: but first some docs have to exist
19:37 offerkaye pmichaud: it worked. I'm hooked :)
19:37 KenGuru have to become familiar with all that perl lingo
19:37 moritz_ did somebody offer a commit bit?
19:37 pmichaud offerkaye: beyond that, everything in pugs is "do something, ask forgivness later if needed"
19:38 pmichaud offerkaye: I don't think anyone is leading the charge for u4x (or any sort of docs), so if you want to just do whatever you think is right, we'll be happy to help and say where we might disagree
19:39 arnoo left #perl6
19:39 eternaleye rakudo: say Int ~~ Nil; say Int.notdef; say 1 ~~ Nil; say 1.notdef
19:39 p6eval rakudo 50e0e7: OUTPUT«1␤1␤0␤0␤»
19:40 pmichaud that first one looks very wrong to me.
19:40 pmichaud rakudo:  say Any ~~ Nil
19:40 p6eval rakudo 50e0e7: OUTPUT«1␤»
19:40 pmichaud that one too.
19:40 eternaleye pmichaud: Any undefined value ~~ Nil is 1
19:40 pmichaud eternaleye: why is that?
19:40 eternaleye It isn't specced either way
19:41 eternaleye I asked a few months ago, but sorta got warnocked
19:41 pmichaud rakudo:  say Any ~~ ()
19:41 p6eval rakudo 50e0e7: OUTPUT«1␤»
19:41 pmichaud I'm fairly sure *that's* wrong.
19:41 pmichaud it's even weirder because
19:41 eternaleye I rather like it, since it's visually less noisy than ~~ *.notdef, but whatever
19:41 pmichaud except:
19:41 pmichaud rakudo:  say Nil.notdef
19:41 p6eval rakudo 50e0e7: OUTPUT«0␤»
19:41 masak offerkaye: I want to personally apologize for launching that u4x project, and then not getting back and actually filling it with a lot of content. there's really a hole right now where that project should be. :/
19:41 masak .notdef isn't dead yet?
19:42 pmichaud rakudo:  say Nil.defined
19:42 p6eval rakudo 50e0e7: OUTPUT«1␤»
19:42 pmichaud so, having an undefined value match against a defined one seems very odd to me.
19:42 masak couldn't *.notdef just be !*.defined nowadays?
19:43 pmichaud rakudo:  my $x = !*.defined;   say $x(Nil)
19:43 masak with the current rules of when/smartmatching, I mean.
19:43 p6eval rakudo 50e0e7: OUTPUT«0␤»
19:43 pmichaud masak: looks like yes.
19:43 pmichaud rakudo:  my $x = !*.defined;   say $x(Any)
19:43 p6eval rakudo 50e0e7: OUTPUT«1␤»
19:43 masak \o/
19:43 masak KILL KILL KILL
19:43 offerkaye masak: no apology needed. I know how much you already do :)
19:43 masak offerkaye: I simplify the spec :)
19:44 * perigrin keeps the children away from masak while he's in a frenzy
19:44 Su-Shee I'm already cooking valerian root tea...
19:44 masak om nom nom nom
19:46 ingy I can't get rakudo star to build on os x
19:46 KenGuru is anybody aware of an .net implementation of perl6? the only thing i found was the bytecode converter for .net
19:46 pugssvn r31878 | masak++ | [S02, S32] kill off .notdef
19:46 pugssvn r31878 |
19:46 pugssvn r31878 | Not cute with methods that do negatively defined things. And !*.defined
19:46 pugssvn r31878 | covers the semantic hole that *.notdef was meant to fill, so no need to
19:46 pugssvn r31878 | keep it.
19:46 masak \o/
19:47 [particle] KenGuru: one does not exist yet
19:47 pmichaud ingy: do you mean you can't build a distribution, or that you can't build from the tarball?
19:47 tylercurtis KenGuru: http://github.com/sorear/niecza
19:47 pmichaud if you git checkout star  then you're getting the tools to create a distribution, not a distribution
19:47 [particle] well, ok, one is in its infancy :)
19:47 ingy pmichaud: I'm trying to build from the tagged dist
19:47 pmichaud that's not a tagged dist
19:47 pmichaud that a tagged "build a dist"
19:48 ingy well, you know...
19:48 Su-Shee mr bsd port on sourceforge is available to send a message to at twitter as zagru.
19:48 KenGuru i should grep github more frequently ...
19:48 ingy make VERSION=2010.07
19:48 pmichaud ingy: right, that's intended to make a distribution image
19:49 tylercurtis KenGuru: I don't know how far along it is; probably not very far as of yet, but sorear++ is scarily productive lately.
19:49 ingy well it keeps saaying it has parrot r0
19:50 shirtless joined #perl6
19:50 pmichaud I don't understand that part.
19:51 ingy I worked past the `find ... -printf` problem manually
19:51 pmichaud okay
19:51 ingy then I keep getting:
19:51 ingy Reading configuration information from install/bin/parrot_config ...
19:51 ingy ===SORRY!===
19:51 ingy Parrot revision r48225 required (currently r0)
19:51 ingy after all the rest of Configure works
19:52 pmichaud you mean after you created a new distribution directory, you're trying to run Configure in that directory?
19:52 pmichaud (just verifying the steps here)
19:52 ingy yeah
19:52 ingy is that wrong?
19:52 pmichaud what version of parrot did you get
19:53 ingy parrot-2.6.0
19:53 pmichaud oh, wait
19:53 pmichaud 48225?
19:53 pmichaud I think that's not the Star+0 version of rakudo.
19:54 pmichaud right
19:54 pmichaud the star version of rakudo should be requesting 48152.
19:54 ingy pmichaud: this is from the tag on github
19:55 pmichaud which tag of what?
19:55 ingy 2010.07 of starr
19:55 * pmichaud checks
19:55 ingy star
19:55 pmichaud let me try generating a new one
19:55 ingy k
19:55 mathw Hello
19:55 [Coke] ingy: is there any reason you didn't just download the star tarball?
19:55 jnthn o/ mathw
19:56 KenGuru 2(tylercurtis2): ok so far. will add it to my watchlist
19:56 mathw o/ jnthn
19:56 ingy [Coke]: I'm building that now
19:56 mathw how's the R* reception?
19:56 [Coke] ok. I know there were some issues on os x that have been reported.
19:56 mathw I've been offline all day
19:56 ingy I didn't know there was a difference
19:56 ingy the tarball seems fine on os x
19:57 jnthn mathw: /. aside, pretty well :-)
19:57 ingy except that core.pir is trying to melt my laptop
19:57 mathw it's always /. aside :)
19:57 loret so do you guys need any artwork
19:57 loret for perl6
19:57 [Coke] ingy: \o/
19:57 loret or for anything
19:57 moritz_ masak: now, if you please kill off .notdef from t/spec/*/*.t ... :-)
19:57 moritz_ just 64 occurences
19:57 loret if you do, let me know
19:58 pmichaud loret: rakudo could stand to have some new artwork :)
19:58 loret eh?
19:58 loret what is it you're looking for
19:58 pmichaud right now we have the logo that's at http://rakudo.org/
19:58 loret i basically do my stuff on paper
19:58 ingy star: use YAML; say dump([1..5])
19:58 p6eval star 2010.07: OUTPUT«---␤- 1␤- 2␤- 3␤- 4␤- 5␤...␤␤»
19:58 ingy w00t
19:58 loret yeah i've seen rakudo's logo
19:59 pmichaud that's just something I had thrown together because I needed a logo
19:59 loret you want a new logo?
19:59 offerkaye loret: Padre is an IDE for Perl (5 and 6) written in Perl 5. Since it is a GUI application, I'm betting they would be happy to get more artwork.
19:59 pmichaud we'd definitely be open for alternate suggestions :)
19:59 [Coke] I know at least one user had issues with the shrine.
19:59 loret ok
19:59 offerkaye You can find more details about Padre at http://padre.perlide.org/
19:59 pmichaud ingy:  what does the file VERSION in the rakudo/ directory say?
19:59 loret what theme do you want?
19:59 [Coke] camel's probably off limits.
19:59 timdemkowsky we need a mascot... :D
20:00 loret padre looks nice i think
20:00 pmichaud well, "rakudo" is along the lines of "paradise"  or "happy earth"  :)
20:00 loret it matches perl 6
20:00 ingy pmichaud: you mean rakudo-star-2010.07?
20:00 [Coke] I again recommend my 3-legged cat.
20:00 offerkaye I thought the new butterfly, the one in the PDF distributed with Rakudo Star, was actually quite good.
20:00 tadzik maybe a sloth?
20:00 pmichaud ingy: there's a rakudo/ directory within that one
20:00 ingy pmichaud: nm, one sec
20:00 [Coke] tadzik: HAHAHA.
20:00 loret ok paradise and happy earth
20:00 pmichaud offerkaye: the butterfly is Perl 6's mascot
20:00 ingy 2010.07-54-gdfefdd2
20:00 pmichaud we can use it, but Rakudo (the product) probably wants its own logos too
20:01 pmichaud ingy: how about build/PARROT_REVISION in that subdir?
20:01 loret if i do it on paper first thats fine?
20:01 pmichaud i.e.,  rakudo/build/PARROT_REVISION
20:01 pmichaud loret: sure!
20:01 ingy 48225
20:01 pmichaud okay
20:02 loret what about single letters?
20:02 pmichaud there's a bug in the setup script then, it should read  48152 2.6.0
20:02 loret or you want a picture
20:02 ingy cool
20:02 pdcawley joined #perl6
20:02 loret like the original rakudo logo
20:02 pmichaud loret: I don't have anything narrowed down that far
20:02 * KenGuru is wondering why niecza isn't listed on http://perl6.org/compilers/
20:02 loret ok
20:02 pmichaud KenGuru: guess nobody's added it yet
20:02 [Coke] phenny: tell sorear 16:02  * KenGuru is wondering why niecza isn't listed on  http://perl6.org/compilers/
20:02 phenny [Coke]: I'll pass that on when sorear is around.
20:03 pmichaud KenGuru: we also have plans to port Rakudo to .net -- but we need some more infrastructure first.  niecza may deliver something before then.
20:03 KenGuru exciting
20:03 offerkaye pmichaud: I wish they would change the perl6.org butterfly to the one in the PDF, the one on perl6.org is, err, not as well done ;)
20:04 * ingy is surprised that the JSON module did not go into the release
20:04 pdcawley Possibly weird question, is it possible to have a collection of anonymous and select all valid multimatch candidates in the collection for a given set of args?
20:04 pdcawley collection of anonymous subs, that is.
20:04 pmichaud I thought JSON::Tiny was in the release.
20:05 jnthn pdcawley: It's a fair enough question. The answer is "not really but..." (more)
20:05 ingy star: use JSON::Tiny
20:05 p6eval star 2010.07:  ( no output )
20:05 ingy oh
20:05 ingy I didn't see it in the list
20:05 Ross joined #perl6
20:05 ingy star: use JSON::Tiny::Bogus
20:05 p6eval star 2010.07: OUTPUT«===SORRY!===␤Unable to find module 'JSON::Tiny::Bogus' in the @*INC directories.␤(@*INC contains:␤  /home/p6eval/.perl6/lib␤  /home/p6eval/rakudo-star-2010.07/install/lib/parrot/2.6.0/languages/perl6/lib␤  .)␤»
20:05 ingy cool
20:05 KenGuru 2(pmichaud2): is there a roadmap for rakudo?
20:06 [Coke] pdcawley++
20:06 [Coke] KenGuru: look in the docs subdir.
20:06 KenGuru :D
20:06 [Coke] http://github.com/rakudo/rakudo/blob/master/docs/ROADMAP
20:06 jnthn rakudo: my $multi = -> |$c { multi x() { 1 }; multi x($a) { 2 }; x(|$c) }; say $multi(); say $multi(42);
20:06 pdcawley jnthn: I would roll a fake class, but I'll need to remove methods/subs from the candidate list at runtime as well as adding them.
20:06 p6eval rakudo 50e0e7: OUTPUT«1␤2␤»
20:07 loret ok maybe by tommorrow i'll have it done
20:07 KenGuru only had a look at the install dir ...
20:07 jnthn pdcawley: Since multis are lexically scoped by default you can make a little wrapper like that.
20:07 loret i think i got a perfect idea for it
20:07 jnthn pdcawley: It's rather more light-weight than a class.
20:07 loret abstract transforms into an R
20:07 KenGuru sry for the inconvenience
20:07 ingy star: use JSON::Tiny;use YAML;say dump JSON::Tiny.new
20:07 p6eval star 2010.07: OUTPUT«Method 'new' not found for non-object␤  in main program body at line 22:/tmp/hpEd769eCC␤»
20:07 jnthn pdcawley: Oh, I see...you need something more dynamic.
20:07 pdcawley YEah.
20:07 [Coke] KenGuru: no worries
20:07 pmichaud ingy: looks like the top-level makefile has a bug in that it's not setting the version of the rakudo/ checkout properly.
20:07 jnthn pdcawley: Thinking.
20:07 pdcawley It would seem to fit the kind of dispatch you'd need to do smalltalk style announcements.
20:08 pmichaud ingy: yeah, there's a bug
20:08 ingy star: use YAML;say dump YAML::Dumper.new
20:08 molecules left #perl6
20:08 p6eval star 2010.07: OUTPUT«--- !YAML::Dumper␤anchors: {}␤id: 1␤info: []␤level: 0␤out: []␤seen: {}␤tags: {}␤...␤␤»
20:08 jnthn pdcawley: If yuu don't need the candidate ordering, just find a first one in a list that matches, you can always do things like:
20:08 pmichaud ingy:
20:08 pmichaud cd $(RAKUDO_DIR); git checkout $(RAKUDO_VER); git describe --match '2*' >VERSION
20:08 pdcawley I can introspect on the capture an select candidates barehanded, but it's so close to what the multidispatch stuff already does, in particular $foo.*somemulti(...)
20:08 pmichaud should instead be
20:09 pmichaud cd $(RAKUDO_DIR); git checkout $(RAKUDO_TAG); git describe --match '2*' >VERSION
20:09 pdcawley I don't care about ordering, just need to find all the ones that match and call 'em.
20:09 pmichaud i.e.,  s/VER/TAG/
20:09 jnthn pdcawley: oh
20:09 jnthn then:
20:09 [Coke] all the ones that match? that sounds like 'nextsame'
20:09 KenGuru cloning niecza and rakudo ... go!
20:09 [Coke] (in a "gee, didn't I hear about that at some point" kind of way.)
20:09 ingy pmichaud: nod.
20:09 pdcawley Except the collection of candidates is dynamically alterable, both addition and subtraction from...
20:10 ingy pmichaud++
20:10 jnthn pdcawley: writing you soemthing :)
20:10 pdcawley Can I get the method's signature and do a smartmatch on the capture?
20:10 KenGuru that sigil stuff is quite confusing reading it the first time ...
20:10 * ingy thinks that jsync will be great for evalbot dumps
20:10 pdcawley Then it's just a cunning written grep.
20:11 pmichaud smartmatching on signatures is allowed, iirc :)
20:11 pdcawley grep { $capture ~~ $_.signature } @candidates, or some such?
20:12 pmichaud afk, lunch here
20:12 Italian_Plumber joined #perl6
20:12 KenGuru doh ... macros and dsl tweaks
20:12 KenGuru falling in love with rakudo :D
20:13 pdcawley Oh... \(10) ~~ -> Int $arg { ... } # 1
20:13 jnthn rakudo: class DynMul { has @.cands; method postcircumfix:<( )>($c) { .(|$c) for @!cands.grep({ $c ~~ $^s.signature }) } }; my $x = DynMul.new; $x.cands.push(-> $x { say 1 }); $x.cands.push(-> $x, $y { say 2 }); $x(1); $x(1,2);
20:13 pdcawley I think I might be in love too...
20:13 p6eval rakudo 50e0e7: OUTPUT«1␤2␤»
20:13 jnthn pdcawley: That.
20:14 pdcawley Oh, you proud beauty! Announcements pretty much fall out of that.
20:14 pdcawley The tricky bit just becomes registering the damned things in a neat fashion.
20:15 pdcawley Easy enough to make that single pass as well...
20:16 jnthn :-)
20:16 jnthn pdcawley: I had fun with capture and signature smart-matching in Test::Mock too :-)
20:16 * KenGuru will be exited when rakudo hits the CLR on .NET, nemerle and boo are doing a great job in meta programming
20:18 pdcawley Right, I know what I'm doing in spare time this weekend. Announcements or Publish/Subscribe or Notifications are so bloody useful. They're peppered all the way through any self respecting Smalltalk image and they always seem to be a missing link in no Smalltalk OO stuff...
20:19 jnthn pdcawley: By the way, you are aware of the .* operator?
20:19 pdcawley No...
20:19 jnthn Oh.
20:19 tylercurtis http://perlcabal.org/syn/S12.html#Calling_sets_of_methods
20:19 pdcawley Whassit do?
20:19 pdcawley Oh, yes.
20:19 tylercurtis I don't know if that's implemented in Rakudo, though.
20:19 jnthn pdcawley: Let's you call all matching methods up the class hierarchy.
20:19 pdcawley Hadn't thought of it as an operator.
20:19 jnthn Well
20:19 jnthn "operator" :-)
20:19 pdcawley It's documented in the PDF, so I'm assuming yes.
20:20 tylercurtis Everything's an operator. :)
20:20 jnthn pdcawley: Anyway, you can make that a kinda pub/sub thing too
20:20 pdcawley It's why I was thinking in terms of multimethods rather than multi subs.
20:20 jnthn pdcawley: If you want to subscribe another candidate, just mix in a role that has it.
20:21 jnthn Anonymous roles are probably quite neat for that.
20:21 pdcawley How do you mix the role out?
20:21 moritz_ you don't
20:22 jnthn pdcawley: Yes, that's the one issue with that approach, there's not a way to "remove" a role.
20:23 jnthn pdcawley: You could OTOH keep a handle on the multi candidate you added, then call .wrap(-> |$c { })
20:23 jnthn pdcawley: That is, make it now do nothing if called
20:24 jnthn But it doesn't really remove it.
20:24 pdcawley Would like to be able to do $announcer.once(-> SomeAnnoucement $announcement, $sender where { $.=== $something } { ... })
20:24 pdcawley With slightly less ugly syntax of course.
20:25 pdcawley $.=== probably isn't what I want...
20:26 jnthn pdcawley: What were you expecting that to do? :-)
20:26 pdcawley Something that would match an annoucement of class 'SomeAnnouncement' and $sender equal to $something...
20:27 jnthn oh, $sender where { $_ === $soemthing } maybe
20:27 pdcawley I see $ where $value might work, but I'm guessing that does a smart match by default, not a ===
20:27 jnthn or
20:27 jnthn $sender where * === $something
20:28 cxreg "Rakudo Star incorporates many of the features of Perl 6 including introspection, object modeling, junctions, auto-threading etc"
20:28 jnthn Yes, it'd smart-match
20:28 KenGuru uhh.... csmeta
20:28 masak moritz_: if you haven't already, I could add removing .notdef to t/spec/TODO. I might get around to actually removing them sometime after I finish my panic schedule.
20:28 cj joined #perl6
20:28 jnthn masak: DON'T PANIC!
20:28 jnthn ;-)
20:28 pdcawley Right, I shall play.
20:28 * masak panics a bit less
20:29 pdcawley Is there documentation lying about for the testing framework? Is there a native perl 6 testing framework?
20:29 tadzik yep
20:29 tadzik Test.pm
20:29 tadzik as for the documentation, there is something in the advent calendra
20:29 tadzik http://perl6advent.wordpress.com/2009/12/04/day-4-testing/
20:30 pmichaud we tend to just use perl 5's Test::Harness to consume the output.
20:30 pdcawley Gotcha.
20:30 pdcawley Wouldn't be hard to write a TAP grammar no? Just might be a wee bit slow...
20:30 Tene there is a parrot TAP parser/harness.
20:30 pmichaud wouldn't be hard, no.
20:30 pmichaud for a long time we were within the parrot repo so we tended to follow what Parrot did
20:31 Tene tapir, is it?
20:31 pmichaud Tene: yes.
20:31 jnthn lol...nice name :-)
20:31 pdcawley I can just 'prove' a rakudo test directory though?
20:32 ingy pdcawley: sure
20:33 KenGuru whats the best impl. of perl on windows?
20:33 ingy prove -e 'perl6' t/foo/
20:33 KenGuru 5.8
20:33 pdcawley Cool. And are we using .pm or .p6m for perl 6 modules?
20:33 ingy pdcawley: both
20:33 ingy :)
20:34 * pdcawley grins.
20:34 jnthn Wait, isn't it .pm6? :-)
20:34 jnthn Or at least, that's what STD uses. :-)
20:34 pdcawley So, 'use Foo' will load... Foo.pm? Foo.p6m? Foo.pm6?
20:34 jnthn Rakudo recognizes .pm6 and .pm
20:34 pdcawley Right ho.
20:34 jnthn .pm6 is preferred iirc
20:34 tadzik is it?
20:34 jnthn (e.g. if there's a conflict)
20:35 ingy star: use YAML; say $*YAML::FILE
20:35 p6eval star 2010.07:  ( no output )
20:35 ingy guessing
20:35 ingy I think most modules authors (including me) are using .pm
20:35 pdcawley And 'use v6' at the start. Makes sense.
20:36 * jnthn doesn't have strong feelings either way
20:36 ingy I use repo-pm6 to mark all my p6 repos
20:36 jnthn I have been tending to use .p6 for scripts. (more)
20:36 pdcawley repo-pm6?
20:36 ingy jnthn: makes sense
20:36 peters_mops joined #perl6
20:36 jnthn On Windows, file associations are the thing that matter, there's no she-band line, so it's helpful to differentiate things with a different extension that are going to be run directly.
20:36 tadzik I use perl6-Module-Name. So .substr(5) gives the proper name :)
20:36 jnthn er, she-bang
20:36 jnthn :-)
20:39 Axord joined #perl6
20:39 ingy cdent --compile --in=Foo.pm --out=Foo.pm6
20:41 ingy star: say "yaml-pm6".substr(-3)
20:41 p6eval star 2010.07: OUTPUT«pm6␤»
20:41 ingy tadzik: :P
20:42 ingy star: say "yaml-pm6".substr(0, -3)
20:42 p6eval star 2010.07: OUTPUT«yaml-␤»
20:42 ingy star: say "yaml-pm6".substr(0, -4)
20:42 p6eval star 2010.07: OUTPUT«yaml␤»
20:42 ingy yeah I still have my repos lowercase from the old github days
20:42 masak star: say .substr(.index('-')) given "yaml-pm6"
20:42 ingy but lowercase is maybe more acmeist too
20:42 p6eval star 2010.07: OUTPUT«-pm6␤»
20:43 masak star: say .substr(.index('-') + 1) given "yaml-pm6"
20:43 p6eval star 2010.07: OUTPUT«pm6␤»
20:43 ingy masak: you crazy p6 kidz!
20:43 ingy masak: let's pair on yaml-pm6 soon
20:44 ingy I am stoked to do the parser in p6rules
20:44 ingy and then port it to pegex
20:44 ingy for perl5 and js
20:44 ingy and maybe past p6 :P
20:45 ingy when rakudo does p5 regexes again
20:49 Guest23195 left #perl6
20:55 achromic joined #perl6
20:55 whiteknight joined #perl6
20:57 macroron joined #perl6
20:58 pyrimidine left #perl6
21:03 masak ingy: yes, let's.
21:03 [particle] joined #perl6
21:03 Italian_Plumber joined #perl6
21:03 masak (soon) :)
21:03 ingy masak: Aug 10-12 works for me
21:04 eternaleye I can't wait until there's a libp6regex like libpcre. That would be so awesome.
21:04 masak ingy: for me too, I think.
21:05 masak eternaleye: been thinking of writing one. but I probably need to grok LTM through Perl 6 before attempting it in C. :)
21:06 jradzuweit joined #perl6
21:06 Mowah joined #perl6
21:15 offerkaye http://blogs.perl.org/users/offerkaye/2010/07/a-gentle-introduction-to-perl-6-using-rakudo-star.html
21:15 offerkaye comments welcome
21:15 offerkaye I gtg sleep now, past 12 at night here
21:15 offerkaye laters
21:17 pmichaud offerkaye: looks awesome
21:17 lue ohai o/
21:18 jnthn offerkaye++ # nice! :-)
21:18 jnthn $x = q:to'EOS';      # Heredoc string
21:18 jnthn ...does that actually work in Rakudo today?
21:19 offerkaye Thanks guys. A lot of new stuff (compared to p5). A lot of stuff to learn.
21:21 offerkaye jnthn: nope :( Gives  - " Colons may not be used to delimit quoting constructs at line 2, near ":to'EOS'; " "
21:21 jnthn offerkaye: Yeah, thought we'd not done those yet.
21:23 offerkaye Deleted now, don't want to confuse people with stuff that doesn't work. Okay really going now, gn all :)
21:23 offerkaye left #perl6
21:23 pmichaud jnthn: so, want to know why we have trouble with >>->> ?
21:24 jnthn pmichaud: er...maybe. :-)
21:24 jaldhar joined #perl6
21:24 pmichaud there's some nice evilness involved.  :)
21:24 pmichaud anyway, we correctly parse the leading '>>'
21:24 pmichaud and then get to infix
21:24 jnthn pmichaud: Yes, there normally is when your questions start with "so, want to know why..." ;-)
21:24 pmichaud and thence to  infix:sym<->
21:24 pmichaud our current infix:sym<-> is
21:24 tylercurtis checks for > afterward to warn about P5isms?
21:25 pmichaud token infix:sym<->    { <sym> <![>]> <O('%additive')> }
21:25 pmichaud we have that <![>]>  in there because we have to avoid parsing  - as an infix when it's really a lambda
21:25 lue rakudo: my @a = 1,2,3; @b = 9,8,7,6; say @b »-» @a;
21:25 p6eval rakudo dfefdd: OUTPUT«===SORRY!===␤Symbol '@b' not predeclared in <anonymous> (/tmp/KU4a40QAbR:22)␤»
21:25 lue rakudo: my @a = 1,2,3; my @b = 9,8,7,6; say @b »-» @a;
21:25 jnthn ...ouch!
21:25 p6eval rakudo dfefdd: OUTPUT«8645␤»
21:25 jnthn pmichaud: Why doesn't LTM get the lambda?
21:25 pmichaud in particular, with
21:26 pmichaud because lambdas are terms, not infixes
21:26 pmichaud (there's more)
21:26 pmichaud the case we're having to avoid is:
21:26 * jnthn listens patiently
21:26 pmichaud for @a -> $x { ... }
21:26 pmichaud we don't want that hyphen to be treated like an infix and then look for another term after it
21:27 pmichaud (as we would have with  @a - @b or something like that)
21:27 pmichaud there are a few other situations as well that occur
21:27 pmichaud but here's the evil part
21:27 masak STD has a different solution for that, IIRC.
21:27 pmichaud it does
21:27 pmichaud do you know what it is? That's the evil part.
21:27 masak there's an expr-stopper or something.
21:27 pmichaud nope.
21:27 * masak listens attentively
21:28 pmichaud STD returns a zero-width match for '->'
21:28 jnthn Ouch!!!
21:28 pmichaud and it's the fact of the zero-width match that terminates the expression.
21:28 masak o.O
21:28 jnthn Epic hack!
21:28 masak :(
21:28 pmichaud see  infix:lambda  :-)
21:28 lue .oO(Me can't help but wonder what the heck is oh so very broken)
21:29 lue er, s/Me/I/
21:29 azawawi joined #perl6
21:29 azawawi jnthn: ping
21:30 pmichaud anyway, I'll go ahead and duplicate that hack into the expression parser.  :)
21:30 pmichaud then we should be able to eliminate that test for the <![>]>, and things should work.
21:31 jnthn pmichaud: return () if $*IN_REDUCE;
21:31 jnthn That line?
21:31 donaldh joined #perl6
21:31 jnthn oh no, wait
21:31 pmichaud nope
21:31 jnthn What is that line doing though?
21:31 Italian_Plumber joined #perl6
21:31 azawawi jnthn: I made some changes for blizkost - strawberry-perl-5.10.1.1 compatibility and sent you a pull request. Could you merge them? :)
21:31 pmichaud that line is the equivalent of a failed match, iiuc STD.pm correctly
21:32 pmichaud and it only occurs if you're $*IN_META anyway
21:32 jnthn ah, ok
21:32 pmichaud (which we're not in the case of     for @a -> { ... }  )
21:32 jnthn *nod*
21:32 pmichaud oh, wait, I have that backwards
21:32 pmichaud it only occurs if you're not $*IN_META
21:32 pmichaud anyway, we're typically  not $*IN_REDUCE either.
21:32 jnthn aye
21:35 jnthn azawawi: Ah, it works now? :-)
21:35 azawawi jnthn: but still not on strawberry-perl-5.12.0.1
21:35 donaldh joined #perl6
21:35 azawawi jnthn: yeah
21:36 azawawi jnthn: that DLL thing seems to be a 64-bit linkage issue...
21:36 pmichaud anyway, it does seem to be the lambda-avoidance that is causing us the >>->> issue, so I'll just follow the way STD.pm is doing things.  :)
21:37 jnthn azawawi: All applied.
21:37 jnthn azawawi++
21:37 jnthn pmichaud: Aye. :-)
21:37 azawawi jnthn: thx :)
21:37 pmichaud we might even be able to get a few more of STD.pm's error messages there
21:37 jnthn pmichaud: Bonus! :-)
21:38 lue rakudo: class B { method f { ... } }; B.new.f
21:38 p6eval rakudo dfefdd:  ( no output )
21:44 pmichaud oh, wait, STD.pm6 also has it listed as infixstopper
21:44 pmichaud (time for more investigation)
21:44 pmichaud still, the zero-width match stopping an expression threw me for a bit.  :)
21:46 whee joined #perl6
21:49 masak infixstopper. that's the one I was thinking about.
21:52 cognominal joined #perl6
22:11 hercynium joined #perl6
22:17 fxn joined #perl6
22:18 fxn "Any infix operator (except for non-associating operators) can be surrounded by square brackets in term position to create a list operator that reduces using that operation" it is not clear to me whether you need to define [op] by hand, or given op [op] can be used right away
22:19 Tene fxn: you do not need to define [op] yourself.
22:19 Tene That's done for you.
22:20 Tene Although, you *should* be able to define your own implementation.
22:20 fxn Tene: why is [<] treated as chain, rather than binary? who does that and with what criteria?
22:20 Tene rakudo: say [<] 1,2,3,4,5
22:20 p6eval rakudo dfefdd: OUTPUT«1␤»
22:20 Tene rakudo: say [<] 1,2,3,5,4
22:20 p6eval rakudo dfefdd: OUTPUT«0␤»
22:20 fxn yeah
22:20 Tene fxn: it's part of the definition of the op
22:21 fxn Tene: so the automatic [op] makes an ordinary reduction assuming it is infix binary, and if you want something different you write it?
22:21 fxn like [<] ?
22:22 Tene fxn: That's right.
22:22 fxn all makes sense now :), thank you!
22:24 songmaster joined #perl6
22:26 lue > class B { method f { ... } }; B.new.f
22:26 lue ===SORRY!===
22:26 lue Stub code executed
22:27 lue is this supposed to run in the first place?
22:27 masak sure.
22:27 masak term:<...> and all.
22:27 lue .oO(The error message makes me believe it shouldn't.)
22:28 fxn Tene: do you know by any chance where does Rakudo define [<]? or could I try to find out? grepping for "[<]" does not seem to point to anything relevant
22:28 fxn I have the repo cloned
22:28 masak lue: the '...' is the stub code.
22:28 masak lue: it's supposed to warn.
22:29 Tene fxn: rakudo does not define [<] directly.  [] is a meta-op, and the combined forms are generated automatically.
22:30 sequoias joined #perl6
22:31 fxn Tene: but it is not treated as binary infix... I have a missing piece
22:32 tylercurtis fxn: the function(&reduce) with which the "[ ]" meta-op is implemented is in src/core/metaops.pm, I think. The compiler probably handles turning [<] into reduce(&infix:«<»). Not sure though.
22:32 lue masak: what it ends up doing (in REPL) is killing the program [I end up back at the bash prompt]
22:32 masak fxn: this should sound familiar from Twitter :)
22:33 fxn tylercurtis: I understand that for [+] for example, but where's the bit that distinguishes + from < so that the reductions are not algorithmically equivalents?
22:33 fxn masak: hey :)
22:33 Ross joined #perl6
22:33 masak lue: that's not right, I think.
22:33 masak but I'm not 100% sure.
22:34 jnthn fxn: PAST::Val.new( :named('chaining'), :value($<op><OPER><O><prec> eq 'm=') ),
22:34 lue it makes sense to warn you that nothing will come out of it, IMO
22:34 jnthn fxn: That's the line in src/Perl6/Actions.pm that handles this
22:34 fxn jnthn: let me see...
22:34 jnthn fxn: We pass a :chaining argument to reduce
22:34 jnthn If the operator has the %chaning precedence level.
22:34 fxn jnthn: ahhhh makes sense
22:34 jnthn fxn: We have a &reducewith sub-routine
22:35 jnthn fxn: We then curry it with the operator we're reducing on
22:35 Tene shame we don't have 'zip' and 'zipwith' subs.
22:35 jnthn fxn: And some other optional arguments
22:35 jnthn Tene: We do, iirc.
22:35 fxn jnthn: excellent!
22:35 jnthn } elsif $metaop eq 'Z' {
22:35 jnthn $helper := '&zipwith';
22:35 jnthn }
22:35 Tene rakudo: say(zip((1..3),(1..3))).perl;
22:35 p6eval rakudo dfefdd: OUTPUT«Could not find sub &zip␤  in main program body at line 22:/tmp/bxYFNlTZxm␤»
22:36 jnthn Tene: well, zipwith :-)
22:36 fxn masak: what you said, needed to find the special handling of :chaining to understand it completely
22:36 lue .oO(Perl6/Actions.pm, line 1967. Should I change it to warn?)
22:36 Tene rakudo: say &zipwith.signature.perl;
22:36 p6eval rakudo dfefdd: OUTPUT«get_attr_str() not implemented in class 'Perl6MultiSub'␤  in main program body at line 1␤»
22:36 jnthn lue: No
22:36 jnthn lue: ??? warns
22:37 jnthn Tssk
22:37 Tene I really need to fix that.
22:37 eternaleye (backlogging) re >>->>, why not make it token infix:sym<-> { <sym> [<before '>>'>|<![>]>] <O('%additive')> }
22:37 masak fxn: chaining basically means that '$a < $b < $c' translates to '$a < $b && $b < $c'.
22:37 jnthn Tene: Well, it'll be fixed when multi dispatch is "re-done"
22:37 fxn masak: yeah, I knew that
22:37 jnthn Tene: Since it'll always mean the proto then
22:37 jnthn Tene: Feel free to patch it up to do something less awful in the meantime though. :-)
22:37 h1gh joined #perl6
22:37 jnthn Tene: But in the future it'll return the signature of the proto.
22:38 masak fxn: with the additional bonus that if $b happens to be an expression, it's only evaluated once.
22:39 lue well then, is ticket #76844 'invalid', so to speak?
22:39 lue .oO(or is it that fail() shouldn't exit out of the REPL)
22:41 jnthn the latter
22:41 eternaleye nvm, you handled it
22:41 sequoias left #perl6
22:42 donaldh joined #perl6
22:42 fxn jnthn: I am looking at Actions.pm and can't read the code... is that defining specifically [<], or is that defining what [op] does in general, and branching in the case op is known to be chain-associative?
22:44 lue ooh, there are a couple of  # XXX  's above the fail sub. /me tries to fix it.
22:44 Tene fxn: the latter
22:48 wamba joined #perl6
22:50 mrsaturns joined #perl6
22:52 lue .oO(There's nothing I enjoy more than PIR code I can't understand)
22:52 * mrsaturns agrees
22:54 fxn I've been out of Perl 6 for years... dude this is a huge and super interesting language :)
22:54 dalek niecza: aec9a59 | sorear++ | Kernel.cs:
22:54 dalek niecza: Implement the first stage exception processor
22:54 dalek niecza: review: http://github.com/sorear/niecza/commit/aec9a59ea80d48a9d3758ef235351f03d9ff6997
22:54 dalek niecza: 25b1cae | sorear++ |  (2 files):
22:54 dalek niecza: Remove Mu.notdef
22:54 dalek niecza: review: http://github.com/sorear/niecza/commit/25b1cae32b8e582c61803df32bad571bb66e764a
22:54 lue rakudo: say $*FATAL
22:54 p6eval rakudo dfefdd:  ( no output )
22:55 lue locally it says '===SORRY!===\nContextual $*FATAL not found'
22:55 Tene rakudo: use fatal; fail("OHAI");
22:55 p6eval rakudo dfefdd: OUTPUT«OHAI␤  in main program body at line 1␤»
22:55 Tene rakudo: use fatal; say $*FATAL;
22:55 lue I think this is the offending line -> fatal = "!find_contextual"("$*FATAL")
22:55 p6eval rakudo dfefdd: OUTPUT«1␤»
22:55 masak 'night, #perl6
22:55 Tene lue: probably.
22:56 Tene lue: perhaps you should make sure that there is a $*FATAL defined in the setting or something.
22:56 Tene it *should* handle the case where it's not set... I was pretty sure I got that right...
22:56 lue since  use fatal  is the only thing (seemingly) to provide $*FATAL...
22:56 Tene what is it that you're seeing exit the REPL?
22:58 lue fail() exits the REPL, when apparently it shouldn't.
22:58 lue class B { method f { ... } }; B.new.f  # this generates a fail() message
22:58 Tene wtf are you calling fail from the repl?
22:59 lue according to jnthn, ticket #76844 is because fail doesn't work right.
22:59 Tene ah, I see now
23:00 ruoso joined #perl6
23:01 lue is  use fatal;  the only thing that makes $*FATAL available?
23:02 cxreg seems like the overall response to R* has been very positive, except for the explicit trolling
23:02 tylercurtis cxreg: which has been surprisingly uncommon.
23:03 Tene lue: put the same code in a program, and the exception is *not* thrown.
23:03 Tene A failure is returned, just like it should be.
23:04 patch cxreg: and chromatic slayed the trolls
23:04 Tene lue: the same code pasted into the repl causes a failure
23:04 Tene lue: so there's something different between the two environments.
23:05 Tene lue: even explicitly setting a $*FATAL to 0 in the repl causes it to be thrown anyway.
23:06 simcop2387 joined #perl6
23:08 lue so what *should* happen? It throws a failure. Maybe REPL is handling the failure improperly?
23:09 kid51 joined #perl6
23:10 Tene lue: run the same program *NOT* in the repl.
23:10 lue o boy, t-storm. I have to shut down. Bye! o/
23:10 Tene It *returns* a failure fromt he sub or method that calls fail.
23:11 Tene sub foo { fail("OHAI"); }; foo();
23:11 lue Tene: sorry, I'll have to continue later.
23:11 Tene rakudo: sub foo { fail("OHAI"); }; my $a = foo(); say $a.WHAT;
23:11 p6eval rakudo dfefdd: OUTPUT«Failure()␤»
23:11 Tene like that.
23:11 h1gh left #perl6
23:11 tylercurtis Tene: lue: interestingly, there's no error message or warning on any non-existent contextual outside of the REPL.
23:12 tylercurtis rakudo: say $*FODSLFSMDLFELMR;
23:12 p6eval rakudo dfefdd:  ( no output )
23:12 Tene but it terminates in the REPL.
23:12 Tene oh, interesting, it terminates with ===SORRY!===
23:13 Tene which looks like a compiler error.
23:13 timdemkowsky is p5 s/foo/bar/g now s:g/foo/bar/ ?
23:14 tylercurtis timdemkowsky: correcting for any difference between P5 and P6 regex syntax in whatever foo and bar are, yes.
23:14 timdemkowsky tylercurtis: thanks!
23:15 dduncan joined #perl6
23:15 REPLeffect joined #perl6
23:17 jferrero joined #perl6
23:22 dduncan if I had a generic dyadic function without special operator syntax, such one would normally invoke as myfunc(a,b), can that be used with the generic hyperoperator syntax, such as: [&myfunc] (1,2,3) and if not, then how would this be accomplished?
23:22 snarkyboojum joined #perl6
23:22 dduncan by hyper I mean reduce
23:24 whee is there an easy way to get rakudo to build everything with clang?
23:25 jnthn dduncan: [&myfunc] won't do it, but there is a reduce function you can use
23:25 Tene dduncan: use the 'reduce' function.
23:25 sorear whee: rakudo always uses the same C compiler Parrot does, for binary compatibility
23:25 phenny sorear: 20:02Z <[Coke]> tell sorear 16:02  * KenGuru is wondering why niecza isn't listed on  http://perl6.org/compilers/
23:25 dduncan okay
23:25 sorear whee: if you want to use clang, you'll need to configure and install parrot with --cc=/path/to/clang
23:26 jnthn whee: What sorear said - build a Parrot with clang, and Rakudo should follow along.
23:26 jnthn Though no idea if it builds under clang - don't remember hearing anyone say they'd tried that.
23:26 sorear I haven't tested it with clang, but I've built rakudo against a gcc svn checkout this way
23:26 dduncan thank you
23:27 KenGuru 2(sorear2): why isn't niecza listed on http:/perl6.org.compilers/
23:27 KenGuru ?
23:27 sorear because the powers that be haven't added it
23:29 jnthn sorear: You are a power that be. :P
23:29 jnthn (It's in the pugs svn repo)
23:29 jnthn See bottom of the site for instructions on how to edit it.
23:32 sorear next question: do I *want* to add such a horrible and immature implementation?
23:33 KenGuru nope, but maybe a hint "alpha"
23:33 jnthn Well, Rakudo is on the list... :_)
23:33 jnthn Perfection sure ain't a criteria. ;-)
23:33 jnthn Maturity is a relative thing.
23:34 jnthn Is Rakudo mature? Well, compared to Niczea, maybe. Compared to Perl 5? No way. :-)
23:34 jnthn It's also the most mature Perl 6 impl targetting the .Net CLR. :-)
23:34 KenGuru it only matters that ther IS an implementation and an ongoing progress
23:34 jnthn Aye
23:35 jnthn sorear: Anyway, I encourage you to add it to the list. :-)
23:35 KenGuru will hype it anyway :D
23:36 sorear hmm, I wonder when I'll need to set up a proper website
23:37 KenGuru github, you do allready have ;-)
23:38 timdemkowsky is there a File::Temp for perl 6? i havent found one.
23:38 sorear do I just need to add the entry to index.html?
23:38 sorear or do I need to regenerate stuff somewhere
23:39 jnthn sorear: It automatically re-generates every so often, I think.
23:40 pugssvn r31879 | sorear++ | [perl6.org] Add an entry for Niecza.
23:42 KenGuru have downloaded a bunch of IDEs/Editors for Win. Which one (besides vim) does propper syntax coloring?
23:47 Alias joined #perl6
23:48 tadzik what about Padre?
23:50 KenGuru installing ...
23:50 ashleydev_ joined #perl6
23:51 KenGuru notepad++ doesn't have propper colors for pm6
23:51 cognominal joined #perl6
23:51 KenGuru will try epic too
23:53 tadzik g'night #perl6
23:53 sorear padre and vim both have proper P6 syntax highlighting, but slowly
23:54 sorear I'd like a p6 highlighting editor that can be used on files >1000 lines
23:54 shirtless KenGuru, vim ;D
23:55 whee I want something for emacs :(
23:55 shirtless KenGuru, if you don't like the learning curve, there's always easy mode.
23:55 KenGuru <KenGuru> have downloaded a bunch of IDEs/Editors for Win. Which one (besides vim) does propper syntax coloring?
23:55 KenGuru oh its not the lurning curve.
23:56 shirtless KenGuru, I didn't see that, you don't have to copy paste
23:56 shirtless KenGuru, what don't you like about it? If you want you can PM me and I can explain how it rules.
23:56 shirtless I use it on windows and linux, die hard
23:56 KenGuru i'm not into its commands
23:57 KenGuru i allready have gvim on my usb
23:57 sorear What editors (besides vim and padre, which are unusably slow on large p6 files) support p6 syntax highlighting?
23:57 shirtless KenGuru, maybe you are learning the wrong commands
23:57 KenGuru but i wanna get started with perl6 not vim atm
23:57 jnthn KenGuru: My impression is that hardly any editors ahve implemetned Perl 6 syntax highlighting so far.
23:57 shirtless KenGuru, it has easy mode, which wiill make it behave very similar to npp.
23:58 KenGuru k, will give it a try once again
23:58 shirtless KenGuru, I will make you a cheat sheet if you decide to leave easy mode
23:58 Psyche^ joined #perl6
23:58 shirtless I'll check how to turn that on for gvim, 1 sec.
23:59 shirtless KenGuru, http://cream.sourceforge.net <-- you won't even realize that it's vim.
23:59 shirtless I am pretty sure it is easy mode by default.

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

Perl 6 | Reference Documentation | Rakudo