Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-06-03

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:05 frew|work joined #perl6
00:05 frew|wor2 joined #perl6
00:06 unitxt left #perl6
00:12 hanekomu joined #perl6
00:18 synth joined #perl6
00:29 bacek joined #perl6
00:29 amoc joined #perl6
00:45 synthEEEE joined #perl6
00:46 synthEEEE joined #perl6
00:51 justatheory joined #perl6
00:55 Limbic_Region joined #perl6
01:07 agentzh joined #perl6
01:08 frew|work joined #perl6
01:28 davidad joined #perl6
01:28 davidad left #perl6
01:53 rewt joined #perl6
01:55 stepnem joined #perl6
02:02 rhr joined #perl6
02:08 Util Whiteknight: I think you need `git pull origin`. If that is not enough, then run `git branch -r`, choose the branch, and `git pull origin/branchname`. Caution: I may be quite wrong. Taken from http://www.kernel.org/pub/softwar​e/scm/git-core/docs/git-pull.html and http://www.sourcemage.org/Git_Guide .
02:12 justatheory joined #perl6
02:26 meppl good night
02:41 payload joined #perl6
03:03 lisppaste3 joined #perl6
03:20 stepnem joined #perl6
03:20 donaldh joined #perl6
04:07 jdv79 anyone know the transportation options to get to the parrot/p6 workshop from the dorms?
04:10 synth joined #perl6
04:17 unitxt joined #perl6
04:57 ssm joined #perl6
04:57 cj joined #perl6
05:00 shinobi-cl joined #perl6
05:01 unitxt left #perl6
05:11 davidad joined #perl6
05:12 davidad left #perl6
05:28 stepnem joined #perl6
06:03 Maghnus_ joined #perl6
06:09 Maghnus joined #perl6
06:24 unitxt joined #perl6
06:47 baest joined #perl6
06:49 DemoFreak joined #perl6
06:57 eMaX joined #perl6
06:58 unitxt left #perl6
07:01 iblechbot joined #perl6
07:02 yves joined #perl6
07:14 araujo joined #perl6
07:20 donaldh joined #perl6
07:23 dakkar joined #perl6
07:35 TimToady joined #perl6
07:44 icwiener joined #perl6
08:01 barney joined #perl6
08:08 finanalyst joined #perl6
08:09 davidad joined #perl6
08:09 davidad left #perl6
08:14 tulcod joined #perl6
08:16 snarkyboojum joined #perl6
08:23 viklund joined #perl6
08:28 eMaX joined #perl6
08:48 DanielC joined #perl6
08:49 DanielC Moring.
08:49 DanielC *Morning
08:50 clkao joined #perl6
08:52 viklund Morning
08:53 * DanielC waves
08:54 viklund ~~
08:54 hcchien joined #perl6
08:56 Matt-W hi DanielC
08:56 Matt-W wow
08:56 DanielC hi Matt-W
08:56 Matt-W where did I get a snail from?
08:56 DanielC ?
08:57 Matt-W That can't be right
08:58 Matt-W Oh, apparently TimToady set +o
08:58 DanielC Ah, you are an op.
08:58 viklund perl6: my @a="".split(":"); @a.push(1);say "Hej", @a.join(":")
08:58 p6eval elf 26994: OUTPUT«Hej1␤»
08:58 p6eval ..pugs, rakudo c907d3: OUTPUT«Hej:1␤»
08:59 viklund perl6: my @a="".split(":"); @a.push(1);say @a.join(":")
08:59 p6eval pugs, rakudo c907d3: OUTPUT«:1␤»
08:59 p6eval ..elf 26994: OUTPUT«1␤»
08:59 viklund hmm
08:59 xomas_ joined #perl6
08:59 viklund that must be a bug in pugs and rakudo
08:59 Matt-W that is slightly strange
09:00 Matt-W quick, go file a bug before masak notices and does it for you
09:00 viklund ;)
09:01 viklund he has filed a few bugs for me already actually...
09:01 viklund but this works (in rakudo)
09:01 viklund perl6: my @a="".split(":");say @a.join(":")
09:01 p6eval elf 26994, pugs, rakudo c907d3: OUTPUT«␤»
09:02 viklund and this:
09:02 viklund perl: my @a=();@a.push(1);say @a.join(":")
09:02 viklund it's only when you split first ;)
09:02 viklund perl6: my @a=();@a.push(1);say @a.join(":")
09:02 p6eval elf 26994, pugs, rakudo c907d3: OUTPUT«1␤»
09:03 viklund oh, well...
09:03 * viklund files bug
09:05 masak joined #perl6
09:05 DanielC o/ masak
09:05 masak DanielC: \o
09:06 viklund masak: I found a bug in rakudo ;)
09:06 viklund before you ;)
09:06 DanielC heh
09:06 masak viklund: that tends to happen... occasionally.
09:08 viklund perl6: my @a="".split(":"); @a.push(1);say @a.join(":")
09:08 p6eval pugs, rakudo c907d3: OUTPUT«:1␤»
09:08 p6eval ..elf 26994: OUTPUT«Permission denied at ./elf_h line 324.␤»
09:08 masak viklund: did you file it yet?
09:09 masak ah, you did.
09:09 masak (dang!)
09:09 viklund I did??
09:09 viklund when...
09:09 masak [09:03] * viklund files bug
09:09 viklund it's still rakudobug, right?
09:10 masak aye.
09:10 viklund ahh, I just realized I should search for it before I submit it
09:10 viklund (didn't find it)
09:14 viklund perl6: "".split(":").elems.say
09:15 p6eval pugs, rakudo c907d3: OUTPUT«1␤»
09:15 p6eval ..elf 26994: OUTPUT«0␤»
09:15 viklund perl6: "".split("snuffe").elems.say
09:15 p6eval pugs, rakudo c907d3: OUTPUT«1␤»
09:15 p6eval ..elf 26994: OUTPUT«0␤»
09:15 viklund perl6: "".split("").elems.say
09:15 p6eval elf 26994, pugs, rakudo c907d3: OUTPUT«0␤»
09:15 viklund ;)
09:15 masak DanielC: could you summarize to me the smallest possible change that you think would advance the ver-auth-modules branch in Rakudo?
09:17 DanielC masak: I'm not sure I understand your question...
09:18 masak DanielC: ok, rephrasing:
09:18 masak DanielC: I would like to change the 'use' sub we looked at so it starts to recognize version and/or author information. right now we're at zero.
09:18 viklund bug filed
09:18 masak viklund++
09:19 masak DanielC: what's the smallest possible such change you can conceive of that would still be an improvement?
09:19 DanielC masak: Reading the version as a string, without any searching, and ignoring the author. That would be an improvement.
09:19 DanielC It would be enough to start playing with package management.
09:20 masak perfect, thanks.
09:20 masak what should Rakudo do on disk, instead of just plain looking in @*INC?
09:20 DanielC masak: I was hoping we could talk about that :-)
09:20 masak we can. :)
09:21 DanielC I have an incomplete prototype for a package manager, and I just hit precisely that question.
09:21 viklund dang, I can't send mail to perl.org. It rejects my messages since the "envelope sender is in my [perl.org] badmailform list"
09:21 viklund where do I complain??
09:21 masak good question.
09:21 masak maybe ask on #perl on irc.perl.org?
09:22 viklund hmm, worth a try
09:23 masak or maybe it's obra you should contact. he maintains RT, I think.
09:23 ZuLuuuuuu joined #perl6
09:23 DanielC masak: I am thinking of installing module Foo::Bar in @*INC[$i]/Foo/Bar-v1.2.0/lib   <-- I add the 'lib' so that there can be another subdirectory, META-INF, with metadata.
09:24 DanielC masak: But I haven't thought thoroughly about all the implications.
09:24 viklund masak: I also get this problem when I try to send to perl.org based mailing-lists
09:26 DanielC viklund: The list archive page says to send comments to Ask Bjørn Hansen at ask@perl.org
09:27 masak won't that one be rejected also?
09:28 DanielC Depends on whether it's a problem with the mailing list or all of perl.org
09:30 viklund DanielC: problem is, I can't send mail to perl.org ...
09:30 DanielC :(
09:30 viklund masak: can you send my mail to ask if I forward it to you?
09:31 masak viklund: yes, I can.
09:31 DanielC Or use a google mail address just for this communication.
09:31 viklund DanielC: I am using my gmail account...
09:31 DanielC ok, hotmail then ...
09:31 viklund >.<
09:31 masak oh please no. not hotmail.
09:34 masak DanielC: fwiw, I agree about the tone being somewhat too harsh on p6l right now. and it's not just you.
09:34 viklund masak: you've got it now
09:34 masak DanielC: OTOH, I'm not surprised. these are big, important questions, and they will not find answers quickly. of course people will dig themselves down into different camps.
09:36 DanielC masak: I seem to have had a few communication issues on the list.
09:36 masak DanielC: you're a brave person entering into this kind of discussion from the beginning. :)
09:36 DanielC :)
09:36 masak DanielC: look what happened to the Pod discussions in 2006, for example.
09:37 DanielC I guess those were problematic too.
09:37 masak DanielC: yes, see http://use.perl.org/~masak/journal/38644
09:38 DanielC *click*
09:39 DanielC It seems weird that people would argue about things like this...
09:40 masak why?
09:40 DanielC I keep thinking "it's just pod... how could that bother anybody?"
09:41 viklund It's just a modulename...
09:41 DanielC I know...
09:41 DanielC viklund: I was surprised that my email sparked criticism... and then I lost patience myself :-P
09:41 masak I think it's a combination of (1) everybody has used it, so they feel entitled to an opinion and (2) those are really big questions, and it's hard to get compass directions in the issues.
09:42 masak same reasons for people arguing about politics and religion, incidentally.
09:42 DanielC And (3) it's a non-technical question, ripe for bikeshedding.
09:42 masak oh, right. yes.
09:43 DanielC "The vocal opposition, headed (in some sense) by Mark Overmeer" ... That's the guy I was arguing with earlier about CPAN6, right?
09:44 masak yes.
09:44 DanielC ok
09:45 masak I don't dislike the guy, but he has a tendency to work on his own, and then express very strong opinions during this type of discussion. he often seems unwilling to compromise or take the other person's view.
09:46 DanielC That's the impression I got of him, based on my limited experience.
09:47 masak DanielC: on a totally unrelated note, you might want to look at this video: http://video.google.com/videop​lay?docid=-4216011961522818645
09:48 DanielC I used to be like that a lot. After spending a lot time thinking about a problem I would be confident I had the best solution, so I had very strong opinions about the solution. Eventually I kind of learned to "release early" and thus be less attached to my proposals.
09:48 DanielC *click*
09:48 masak well, as TimToady said on-list, we're all working on different time scales here.
09:49 DanielC masak: Ok, I'll watch that. And maybe I'll get a tip how not to become a poisonous person myself. I'm sure that most "poisonous people" don't mean bad.
09:50 masak working solo for several years and then springing forth with a complete solution is not a priori a bad idea. but it does give a certain disadvantage when the agile people wake up and start their early-often cycling.
09:50 DanielC yeah
09:50 Matt-W It's a good way to get resentful when people spring on your glorious design and rip it to pieces
09:50 Matt-W It's happened to me before
09:51 Matt-W And I must admit I've done it to other people
09:51 DanielC Matt-W: Same here (been on both sides)
09:51 Maghnus_ joined #perl6
09:51 Matt-W Including a fairly recent project at work, where we've had to gradually convince the guy who wrote it that while it might be gloriously flexible, it's entirely unusable because it's so bloody obscure
09:51 masak it can also be seen as slightly arrogant to go "don't you people worry, I got it covered. go and do something else; I'll be done in a year or two".
09:52 eMaX joined #perl6
09:52 Matt-W yes and then people just say "But we want it next week"
09:52 Matt-W But it is always tempting to retreat and do it and present it fully-formed to the world
09:52 Matt-W I found it quite hard to put Form up on github straight away
09:52 Matt-W Of course, nothing's happening there at the moment, sorrya bout that :)
09:53 DanielC Yeah. As I said, I used to do that a lot, and a friend pointed out to me that this was a source of argument, so I started releasing more often.
09:53 masak Matt-W: that's ok. just be aware that I'm looking forward to ever new feature you add. :)
09:53 Matt-W masak: I think the main reason for delay at the moment is that I'm not really looking forward to tackling numbers
09:54 masak Matt-W: want some help?
09:54 Matt-W I would never say no :)
09:54 Matt-W (to anybody who writes decent code)
09:54 masak let's set a meeting. for a small online hackathon.
09:55 Matt-W okay
09:55 masak well, my Perl 6 coding is still evolving, but I've written a bunch of popular modules, so I dare say it's at least decent.
09:55 masak :)
09:56 Matt-W I'm sure in some ways it's better than mine
09:56 Matt-W Possibly in all ways
09:56 Matt-W anyway, I just gave you access to the form repo
09:56 Matt-W now when shall we have our hackathon
09:57 masak this week?
09:57 DanielC Matt-W: What's the hackathon about?
09:57 masak Friday?
09:57 Matt-W Form.pm
09:57 Matt-W specifically the provision of number formatting
09:57 Matt-W masak: when?
09:58 Matt-W masak: I think your time zone is an hour ahead of mine
09:58 masak Matt-W: something like that, yes. it's 12 o'clock here now.
09:58 Matt-W yes it's 11 here
09:58 Matt-W that does ease the scheduling constraints somewhat :)
09:58 jferrero joined #perl6
09:58 Matt-W now obviously I can't do it while I'm at work
09:59 masak which leaves...?
10:01 Matt-W friday evening!
10:02 masak aye.
10:03 viklund DanielC: re module naming conventions, I think that Johns point was that saying that it's in C isn't enough, you need to say C/Rakudo or C/Perl6ImplemenationX
10:03 DanielC viklund: *AHHHHH*
10:03 DanielC viklund: I had no idea that that's what he meant.
10:03 masak Matt-W: I usually dine at 7 or 8 in the evenings. sometime after that would be fine.
10:03 viklund it might be
10:03 DanielC It might be.
10:04 DanielC viklund: I assumed that there would be some sort of agreement on what the C bindings should look like.
10:04 DanielC viklund: Otherwise, the modules are obviously a lot less useful.
10:05 viklund DanielC: I don't think there will be
10:05 DanielC For precisely the reason you said.
10:05 DanielC This could be a problem, don't you think?
10:06 pjcj_ joined #perl6
10:06 DanielC It would make the modules with C bindings a lot less useful, and those modules are important.
10:06 DanielC All the high-performance modules use C.
10:06 Matt-W masak: yes that sounds about right
10:08 masak Matt-W: so, let's make it 19:00 UTC?
10:08 masak which translates to 20:00 your time and 21:00 my time.
10:11 Matt-W sounds good
10:12 masak how much time do we need? an hour?
10:12 presh joined #perl6
10:12 Matt-W depends how much we want to do really
10:13 Matt-W if we aim to sketch out a way of doing the numeric formatting sanely, an hour may well prove sufficient to get something outlined
10:13 DanielC masak: Watching the video... say say that a derailing technique of poisonous people is to reply to every single email on a thread... Hm.. I tend to reply a lot but I don't do it in order to derail the discussion.
10:14 DanielC s/say say/says/
10:15 masak DanielC: you started many of those threads. it's a bit different. :) I think.
10:15 DanielC :-)
10:16 Matt-W sometimes that's a valid thing to do
10:16 masak but it might be a good idea to combine replies when possible. the longer a thread gets, the more people on the list will defect and go read something else.
10:17 DanielC Combining replies is good advice.
10:17 payload joined #perl6
10:17 DanielC I don't normally combine replies, but there is no reason why I couldn't.
10:18 masak also, thought it's very difficult, it sometimes helps to leave the per-paragraph reply style, take a step back and look at the whole discussion. I should do that more often myself.
10:18 Matt-W you could fight against doing it based on the integrity of the threading information in the list archive :)
10:19 Matt-W masak: yes that can help, it's easy to get bogged down on the details and forget the wider view
10:19 DanielC I think that most flames would be helped a lot by doing what masak just said.
10:20 DanielC The flame wars that I have seen and/or participated in were like that. People replying paragraph per paragraph to individual details.
10:20 masak the most powerful debate technique I know in email discussions is spending ten minutes imagining that you hold the other person's views. and then replying.
10:21 viklund personally though, I dont' see it as a big problem that some ppl use ::PurePerl, some ::Perl and some nothing..., TemplateToolkit uses XS if it can and otherwise perl for example...
10:21 masak viklund: nod.
10:21 masak I don't think that implementation/bindings should be a part of the module name.
10:22 DanielC masak: In principle, I agree, but unless something changes, they will be (Foo::PurePerl)
10:22 masak and what's wrong with that?
10:22 masak it works for CPAN.
10:22 viklund but I don't have any strong opinions here
10:22 DanielC masak: It's not wrong.
10:23 masak then let's not try and fix it. :)
10:23 DanielC masak: And yes, it works. My earlier post was meant to be a simple suggestion: use a common way to denote this.
10:24 DanielC e.g. Instead of some being ::Perl an others ::PurePerl, maybe we can pick one or the other an make them all the same.
10:24 viklund I guess that some conventions are better if they are silent
10:24 masak DanielC: there are so many other, necessary, pieces of this puzzle that need conscious design. let's focus on those. :)
10:24 DanielC But it was a very minor suggestion.
10:24 DanielC masak: Sure. There are more important things to do.
10:24 masak build the simplest thing that could possible work. and then we can expand from that.
10:25 DanielC I didn't expect to seen an argument about the module name. It's not worth arguing about, so I think I'll just drop it.
10:25 viklund ;)
10:25 masak a working module says more than a thousand bikeshedding list emails.
10:26 DanielC That's a good way to look at it.
10:26 DanielC You can skip the whole bikeshedding discussion by just writing the <xyz> yourself.
10:27 DanielC Peaking of which, I have a rough prototype for a package manager for Perl modules.
10:27 masak cool.
10:27 DanielC I should think about posting it somewhere. What's the normal place to post this?
10:27 masak use.perl.org? perl-users?
10:27 masak CPAN?
10:28 masak depends on the type of 'posting it somewhere'.
10:28 DanielC I was thinking more like github.
10:28 DanielC Or per6-examples
10:29 masak that's certainly an option.
10:30 DanielC Most people seem to post their work in github. Is that the standard place to put new work for Perl 6?
10:31 * DanielC starts making a new repository in github
10:31 DanielC Project name... Is that the full name with spaces? Like "Perl Package Manager"?
10:33 masak DanielC: no, it's the 'unix name' of the project
10:33 DanielC Or is that the short name, like "PPM" ?
10:33 DanielC ok
10:33 masak the Discription is the long name.
10:33 DanielC Will that name end up in the URL? Should I pick PPM or ppm ?
10:34 masak ppm. yes.
10:34 DanielC And what's the Home Page URL field for? Is it *my* home page? Like my blog?
10:35 masak leave it blank.
10:35 DanielC k
10:35 masak it's for projects that already have a home page elsewhere.
10:35 DanielC ah
10:35 * DanielC is setting up his repository
10:37 viklund masak: this seems to be another place where we, inadvertently, set a standard ;)
10:38 viklund github for perl6 stuff...
10:39 masak viklund: maybe. or we were simply the first ones in an inevitable trend.
10:40 masak github is a very good place.
10:40 DanielC Is there a way to recursively 'git add' every file in a directory?
10:40 masak DanielC: yes.
10:40 DanielC 'git add -r *' ?
10:40 viklund yes, ror++
10:40 viklund git add .
10:40 masak DanielC: just add the directory.
10:40 viklund git add <dir>
10:40 masak no flags needed.
10:40 DanielC ok, thanks
10:40 masak DanielC: also, RTFM. it's not that long.
10:40 masak :P
10:41 DanielC ok
10:41 masak 'git help add'
10:41 DanielC ok
10:41 viklund or, 'git add --help' or 'man git-add'
10:41 masak or google for git-add.
10:42 viklund timtowtdi++
10:42 * masak lunches
10:45 DanielC \o/  it works
10:45 DanielC http://github.com/dcarrera/ppm/tree/master
10:45 DanielC Now I have my first ever git repository.
10:45 viklund DanielC: Congratulations!!
10:45 DanielC :-D
10:49 abra joined #perl6
11:06 ssm joined #perl6
11:10 kimtaro joined #perl6
11:20 donaldh joined #perl6
11:27 masak DanielC: added ppm to proto's projects.list, and added you as a proto contributor (in the even that you'd like to change something) welcome aboard!
11:27 DanielC masak: :-D
11:27 DanielC masak: Thanks.
11:30 masak there are now 20 projects in that list, excluding pseudo-packages.
11:30 DanielC That's pretty good.
11:30 masak I expect proto will have played out its role before we reach 100.
11:30 DanielC More than I'd expect for a language that technically doesn't exist yet.
11:32 masak let the world wait. I'm coding Perl 6 today, and I don't see what all the Christmas fuss is about.
11:34 viklund masak: smth for the quote file!
11:34 masak :)
11:37 masak granted, I too want Perl 6 to be in some sense "prepared" for the world out there. that's why I'm reporting Rakudo bugs, writing user documentation, working on a package manager and a web framework, and complaining loudly about unacceptable technical deficiencies.
11:37 DanielC masak: Let me know if you get a chance to glance a the program. Right now I'm just going for a simple prototype so we can experiment a bit.
11:37 * masak looks
11:38 DanielC In particular, it is packed with Unix commands (run "xyz").
11:38 masak './proto install ppm' -- aah. :)
11:38 DanielC :-)
11:38 masak DanielC: that goes for many of the Perl 6 projects out there right now.
11:38 masak DanielC: we're not yet at a point where we can be very platform independent.
11:38 DanielC yeah...
11:39 DanielC Even chdir() doesn't work.
11:39 masak DanielC++ # code
11:40 DanielC :)
11:40 masak ready for a quickie review?
11:40 DanielC sure
11:40 masak %params{'verbose'} better written as %params<verbose>
11:40 masak no biggie, just nicer.
11:41 DanielC thanks
11:41 * DanielC changes %params{'dir'} too
11:42 masak and %params{'sign'}
11:42 DanielC found it
11:43 masak I don't see much else to nag about actually. good job.
11:43 DanielC :-)
11:52 * Matt-W applauds
11:53 clintongormley joined #perl6
11:56 payload joined #perl6
11:57 payload1 joined #perl6
12:07 DanielC masak: I just finished watching the video. It was very interesting. Thanks for the link.
12:07 masak you're welcome. I got it from an email from allison on the parrot-dev list.
12:08 masak some dev had just written an uncharacteristically acerbic post.
12:08 DanielC .ety acerbic
12:08 phenny Can't find the etymology for "acerbic". Try http://etymonline.com/?search=acerbic
12:08 masak hm, might be English Fail on my part...
12:08 DanielC I suppose there isn't a dictionary bot here.
12:09 DanielC Anyways, I get your meaning.
12:09 masak ah, no. there is such a word: http://dictionary.reference.com/browse/acerbic
12:09 DanielC harsh
12:09 masak aye.
12:10 DanielC Anyways... on a different topic: did you glance at the Pod documentation for ppm? Do you think I'm going in the right direction?
12:12 DanielC I'm planning to use a SQLite db to track dependencies, and the packages I think I'll install in @*INC[$x]/Foo/Bar-v1.2.0--$count
12:12 masak only glanced. didn't read.
12:12 DanielC ok
12:12 masak will peruse later, with delight.
12:12 DanielC Thanks.
12:13 masak DanielC: here's the acerbic thread: http://groups.google.com/group/parrot-de​v/browse_thread/thread/33a7ee0f86517fed#
12:13 DanielC *click*
12:15 masak allison++ # tough-skinned
12:20 Matt-W that is a wonderfully cool, calm and professional reply
12:20 synth joined #perl6
12:20 ZuLuuuuuu joined #perl6
12:26 DanielC masak: Before reading the Pod, update the repository so you get best documentation.
12:27 hanekomu joined #perl6
12:28 masak oki.
12:28 masak './proto update ppm' :)
12:36 pmurias joined #perl6
12:39 FurnaceBoy joined #perl6
12:50 pyrimidine joined #perl6
12:53 jferrero joined #perl6
12:54 ssm joined #perl6
12:56 pyrimidine DanielC re: my p6l reply on modules, my response wasn't just aimed at you, but at the discussion as a whole.
12:57 DanielC pyrimidine: Hi.
12:57 pyrimidine o?
12:57 DanielC Thanks. I thought it was just me.
12:57 pyrimidine Hi
12:57 pyrimidine No, it wasn't just you.
12:57 mizioumt joined #perl6
12:57 DanielC In any case, I'll try to be more careful on the list.
12:59 pyrimidine I've fallen into the same trap. With bioperl we have a 'whoever codes it first implements it', which sort of drives the problem you are seeing re:CPAN6
12:59 pmurias joined #perl6
12:59 pyrimidine OTOH, it also drives the work to get done faster
13:00 DanielC If I may change topic... what is bioperl? It sounds interesting.
13:00 pyrimidine http://search.cpan.org/~cjfields/BioPerl-1.6.0/
13:00 Scorp1us joined #perl6
13:00 DanielC *click*
13:00 pyrimidine http://www.bioperl.org/wiki/Main_Page
13:01 DanielC cool
13:01 DanielC I had heard that Perl was popular in biotech.
13:01 DanielC Is biotech the right name for DNA sequencing?
13:02 pyrimidine Not just sequencing
13:02 DanielC ok
13:02 pyrimidine anythinh sequence-based
13:02 pyrimidine *anything
13:03 pyrimidine actually, anything that could represent something relevant to biology
13:03 pyrimidine Trees, sequences, alignments, blah blah blah
13:03 DanielC "bioinformatics" is the term I was looking for.
13:03 pyrimidine ye
13:03 pyrimidine *yes
13:03 DanielC Very interesting stuff.
13:04 DanielC I always thought of Perl as a language for the web an system administration. I only recently learned that it is big in biology.
13:04 pyrimidine what I would like is to get others in the field interested in perl 6
13:06 DanielC Do you use bioperl for work?
13:06 pyrimidine but it's tricky to get a biologist to learn more than one computer language
13:06 pyrimidine yes
13:06 pyrimidine (note the author for the cpan release)
13:06 DanielC What other language do they use besides Perl?
13:06 pyrimidine python, ruby, java
13:07 pyrimidine smattering of C/C++
13:07 DanielC I wouldn't think that those would match Perl, since sequencing is fundamentally text searching.
13:07 pyrimidine yes, but the problem we face is parsing through very large files/databases
13:08 masak pyrimidine: I can already attest to Rakudo being more fit for that purpose in at least one instance. :)
13:08 DanielC Can python/ruby/java do that better than Perl? I thought Perl was supposed to be mighty fast at text searching.
13:08 pyrimidine perl is popular b/c of 'whipuptitude', perl 6 more so
13:08 masak I'm going to be teaching BioPerl this summer, by the way.
13:08 pyrimidine and I think it will eventually solve the speed issue
13:08 pyrimidine masak: cool!
13:09 DanielC pyrimidine: So Perl is actually slower?
13:09 masak the other day I read that someone was into BioPerl and even porting it to Perl 6. now where did I read that?
13:09 pyrimidine there is some cruft in the code  ;)
13:09 pyrimidine that would be me
13:09 pyrimidine (re: bioperl -> bioperl6)
13:09 pyrimidine http://github.com/cjfields/bioperl6/tree/master
13:10 DanielC It's on github!
13:10 DanielC Quick, masak, add it to proto
13:10 DanielC :)
13:10 pyrimidine nothing really there yet
13:10 pyrimidine but working on it
13:10 masak pyrimidine: it is you! :)
13:10 * masak adds to proto
13:10 masak 21 projects and counting.
13:11 pyrimidine \o/
13:11 DanielC I was the 20th project :-D
13:12 pyrimidine I've been playing with Moose a bit to test out conversion of interfaces to roles (also on github)
13:12 pyrimidine http://github.com/cjfields/biomoose/tree/master
13:13 pyrimidine a bit more work on that one
13:13 masak I also think that proto is the Perl 6 project with the highest number of committers: 17
13:13 pyrimidine nice
13:13 masak but that might have something to do with the fact that I force-add everyone. :)
13:14 masak pyrimidine: speaking of which, welcome aboard! :)
13:14 DanielC :-)
13:14 DanielC he he
13:14 pyrimidine thanks!
13:15 DanielC masak: I know you only mean proto to be a temporary tool, but I think that it has some seriously good ideas (using git) that could be useful in the long term.
13:16 masak DanielC: sure, why not?
13:16 masak proto dies, some ideas live on.
13:16 masak that's ok by me. :)
13:16 DanielC Or proto itself might leave on.
13:17 DanielC I mean... Linux was only meant to be a quick hack for a kid at school.
13:17 DanielC s/leave/live/ :-)
13:17 * pyrimidine going to work
13:17 DanielC stoopid English phonetics.
13:17 snarkyboojum joined #perl6
13:17 cmarcelo joined #perl6
13:18 masak DanielC: I don't know why people find the idea of proto living on comforting. I certainly don't. it's based on at least three core concepts that will cease to hold as Perl 6 matures.
13:19 DanielC What are those core concepts?
13:19 masak 1. PERL6LIB
13:19 masak 2. no multiple versions, no multiple authors
13:19 DanielC oh, right...
13:21 masak 3. no thought at all given to different platforms, Perl 6 implementations, etc.
13:21 DanielC I don't know what PERL6LIB is, but I understand the others.
13:21 DanielC Ok, then an offspring of proto can carry on its legacy. :-)
13:21 masak in effect, proto is the dead end you get if you just implement a package manager without caring about the known requirements. :)
13:22 masak DanielC: you sound exactly like mberends. :P
13:22 Scorp1us joined #perl6
13:22 pyrimidine PERL6LIB is somewhat equiv to PERL5LIB
13:22 DanielC Yeah, but what is PERL5LIB?
13:22 masak pyrimidine: better known as PERLLIB, I think.
13:22 pyrimidine yes
13:22 DanielC Do you use it to embed Perl in your programs?
13:22 DanielC s/programs/C programs/
13:22 Matt-W no it's an environment variable which tells perl where to find modules
13:22 masak DanielC: it's a way of injecting paths into @*INC.
13:23 DanielC ah
13:23 DanielC ok
13:23 masak it's a time bomb, to be deprecated sometime before Christmas.
13:24 pyrimidine and it's 'replacement' is ...?
13:24 masak pyrimidine: ...what we're discussing at the moment. :)
13:24 DanielC Does proto use @*INC at all? I checked yesterday and in Rakudo @*INC is just ['lib', '.'] which is not very useful.
13:24 masak pyrimidine: see also S11.
13:24 masak DanielC: that's because PERL6LIB isn't set to anything useful on that server.
13:24 DanielC pyrimidine: I'm working on some ideas for that. http://github.com/dcarrera/ppm/tree/master
13:25 pyrimidine I was also guessing this relates to the current threads on p6l
13:25 masak DanielC: proto makes use of PERL6LIB during building of modules.
13:25 masak pyrimidine: aye.
13:25 pyrimidine hence the drama (discussed in backlog)
13:25 DanielC pyrimidine: Yes. Many of my posts on p6l were inspired by discussions here.
13:26 masak pyrimidine: well, people care deeply about module distribution, packaging, and management.
13:27 DanielC And everyone has an opinion...
13:28 pyrimidine masak: yes, particularly since perl begat CPAN (thus making it that much easier to install what you need)
13:28 masak and there's no clear right or wrong...
13:28 pyrimidine yes
13:28 pyrimidine just very passionate folks
13:28 DanielC y
13:28 masak pyrimidine: CPAN is great, so no wonder people want it for Perl 6 too.
13:28 DanielC Life would be much simpler if everyone would just realize that I'm always right :-)
13:28 masak pyrimidine: some people want to rebuild it from scratch, the CPAN people want an adaption path...
13:29 pyrimidine no other language has anything to really match it
13:29 pyrimidine and there isn't really a decent middle ground
13:29 pyrimidine seems like some of the logjam we're finding ourselves in atm (with bioperl)
13:30 DanielC What's happening at bioperl atm?
13:30 pyrimidine everyone's adopted it, so no one wants to break the code, deprecation has become a pita
13:30 DanielC ah
13:30 masak time for a clean break.
13:30 pyrimidine sound familar?
13:30 DanielC yeah...
13:31 masak yup.
13:31 * pyrimidine reading lots of chromatic's Modern Perl blog lately
13:34 pyrimidine Anyway, bioperl (v5) is still anchored to p 5.6.1 b/c we have users bound via sysadmins to that version (usually on large clusters)
13:34 pyrimidine and thus: biomoose, bioperl6
13:34 pyrimidine clean break
13:34 masak pyrimidine++
13:35 * pyrimidine thinking about sneaking Modern::Perl into Bio::Moose
13:36 pyrimidine but I'm actually thinking a better use of my time is to start porting more to perl 6
13:36 DanielC If you port to Perl 6 you can help find bugs in Rakudo.
13:37 * pyrimidine already foudn a few
13:37 pyrimidine *found
13:37 pyrimidine I have a few tickets in RT
13:37 Matt-W yay!
13:37 pyrimidine and contributed the .trans operator (transliteration)
13:38 pyrimidine (though it really needs to be reimplemented as an alternating grammar)
13:38 unitxt joined #perl6
13:38 payload joined #perl6
13:39 pyrimidine rakudo: my $str = 'ATGCATGAT'; $str .= trans('ATGC'=> 'TACG'); say $str;
13:39 p6eval rakudo c907d3: OUTPUT«TACGTACTA␤»
13:39 skids joined #perl6
13:39 zamolxes joined #perl6
13:40 * pyrimidine really going to work this time!
13:42 pmichaud good morning, #perl6
13:42 masak gm, pm.
13:42 DanielC o/
13:42 mizioumt1 joined #perl6
13:42 pyrimidine morning
13:43 ZuLuuuuuu left #perl6
13:44 DanielC pmichaud: Where are you located?
13:46 barney joined #perl6
13:49 cmarcelo joined #perl6
13:49 clkao joined #perl6
13:49 tulcod joined #perl6
13:49 lisppaste3 joined #perl6
13:49 jiing_ joined #perl6
13:49 eiro joined #perl6
13:49 p6eval joined #perl6
13:49 ilogger2 joined #perl6
13:49 hatseflats joined #perl6
13:49 clkao joined #perl6
13:50 jiing_ joined #perl6
13:50 hatsefla1s joined #perl6
13:52 pmichaud Plano, Texas.
13:52 pmichaud My not-reading-any-email over the past 3-4 days means I have obviously missed some big discussions on p6l.  :-)
13:52 DanielC pmichaud: IRC says that you are in Netherlands.
13:53 pmichaud IRC says that my IRC client is running from the Netherlands :-)
13:53 DanielC :)
13:53 pmichaud It doesn't say anything about where *I* am actually located.  :-)
13:54 cmarcelo joined #perl6
13:54 DanielC I noticed the discrepancy when you said "good morning"... It's 4pm in Netherlands.
13:55 PerlJam feather++ anyway
13:55 PerlJam (good morning btw :)
13:55 tulcod joined #perl6
13:55 lisppaste3 joined #perl6
13:55 eiro joined #perl6
13:55 p6eval joined #perl6
13:55 ilogger2 joined #perl6
13:55 pmichaud 08:59 <viklund> perl6: my @a="".split(":"); @a.push(1);say @a.join(":")
13:55 pmichaud 08:59 <p6eval> pugs, rakudo c907d3: OUTPUT«:1␤»
13:55 pmichaud Not a bug.
13:56 masak viklund: <nelson>ha ha!</nelson>
13:59 snarkyboojum joined #perl6
14:05 `alpha joined #perl6
14:05 `alpha hello
14:05 mizioumt joined #perl6
14:05 `alpha would it be possible in perl 6 to get $1 out of grep ?
14:06 Tene eh?
14:06 `alpha well
14:06 `alpha this does not compute in perl5
14:06 pmichaud my @a = <apple beta gamma delta>;   my @b = grep /e./, @a;  say @b.perl;
14:06 `alpha perl -e '$v=sub {print shift};$v->($1) for grep {/(c)/} ("aa","bbcd","cdde");'
14:06 pmichaud rakudo: my @a = <apple beta gamma delta>;   my @b = grep /e./, @a;  say @b.perl;
14:06 p6eval rakudo c907d3: OUTPUT«["beta", "delta"]␤»
14:07 pmichaud rakudo: my @a = <apple beta gamma delta>;   my @b = grep /(e.)/, @a;  say @b.perl;
14:07 p6eval rakudo c907d3: OUTPUT«["beta", "delta"]␤»
14:07 pmichaud rakudo: my @a = <apple beta gamma delta>;   my @b = grep /e(.)/, @a;  say @b.perl;
14:07 p6eval rakudo c907d3: OUTPUT«["beta", "delta"]␤»
14:07 pmichaud rakudo: my @a = <apple beta gamma delta>;   my @b = grep /e(.)/, @a;  for @b { say $_[0]; }
14:07 p6eval rakudo c907d3: OUTPUT«Method 'postcircumfix:[ ]' not found for invocant of class 'Str'␤»
14:08 pmichaud ...Str?  Hmmpf.
14:08 pmichaud oh, yes.
14:08 pmichaud map is probably your friend here
14:08 `alpha yes I know
14:08 `alpha but grep has regex
14:08 `alpha I just wonder why that regex does not provide  $1
14:08 pmichaud so does map
14:09 `alpha grep is better
14:09 pmichaud rakudo: my @a = <apple beta gamma delta>;   my @b = map /e(.)/, @a;  for @b { say $_[0] if $_; }
14:09 p6eval rakudo c907d3: OUTPUT«t␤l␤»
14:09 `alpha it's like
14:09 `alpha grep = map + if
14:09 `alpha more suitable for some things
14:10 pmichaud rakudo: my @a = <apple beta gamma delta>;   my @b = grep { /e(.)/ && $_ = $0 }, @a;  for @b { say $_[0]; }
14:10 p6eval rakudo c907d3: OUTPUT«Attempting to do sub operation on non-Sub.␤in method Any::grep (/tmp/tWuyKoLBB3:2)␤called from sub grep (src/gen_setting.pm:134)␤called from Main (/tmp/tWuyKoLBB3:2)␤»
14:10 pmichaud I have no clue what that means.
14:10 `alpha rakudo: say for <win rar>;
14:10 p6eval rakudo c907d3: OUTPUT«say requires an argument at line 2, near "for <win r"␤in Main (src/gen_setting.pm:2420)␤»
14:11 `alpha rakudo: say $_ for <win rar>;
14:11 p6eval rakudo c907d3: OUTPUT«win␤rar␤»
14:11 `alpha rakudo: say ($_,$1) for grep {/i/} <win rar>;
14:11 p6eval rakudo c907d3: OUTPUT«Statement not terminated properly at line 2, near ">;"␤in Main (src/gen_setting.pm:0)␤»
14:11 `alpha rakudo: say ($_,$1) for grep {/i/}, <win rar>;
14:11 p6eval rakudo c907d3: OUTPUT«winUse of uninitialized value␤␤»
14:12 `alpha mk
14:12 `alpha so it still fails
14:12 `alpha :(
14:12 pmichaud because $1 isn't defined there
14:12 pmichaud (1) you didn't capture anything
14:12 pmichaud (2) anything that gets captured by /i/  is going to be local to its closure
14:12 `alpha okay
14:12 pmichaud (3) a parenthesis capture will go first to $0
14:12 `alpha orly
14:13 masak yarly
14:13 masak `alpha: see S05.
14:13 `alpha rakudo: my$x;say ($_,$x) for grep {/i/ && $x=$0}, <win rar>;
14:13 p6eval rakudo c907d3:  ( no output )
14:13 * `alpha clueless
14:13 pmichaud rakudo: say $_[0] if $_ for map /(i)/ , <win rar>;
14:13 p6eval rakudo c907d3: OUTPUT«i␤»
14:14 `alpha sigh
14:14 pmichaud rakudo: say $_[0] if $_ for map /(i.)/ , <win rar trie simple>;
14:14 p6eval rakudo c907d3: OUTPUT«in␤ie␤im␤»
14:14 `alpha grep must be capable of it.
14:15 `alpha I dont know why it isnt.
14:15 `alpha bummer.
14:15 pmichaud rakudo:  my $x;   say $x for grep { /i/ && $x=$/ }, <win rar>;
14:15 p6eval rakudo c907d3:  ( no output )
14:15 pmichaud rakudo:  my $x;   say $x for grep { /i/ && $x=~$/ }, <win rar>;
14:15 p6eval rakudo c907d3: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤»
14:15 decasm joined #perl6
14:15 pmichaud rakudo:  my $x;   say $x for grep { /i/ && ($x=$/) }, <win rar>;
14:15 p6eval rakudo c907d3:  ( no output )
14:16 pmichaud weird.
14:16 `alpha yes it is
14:16 `alpha :(
14:16 `alpha and does not compute in perl 5 too
14:16 pmichaud my $x;  for (grep { /i/ && $x=$_ }, <win rar>) { say $x; }
14:16 pmichaud oh, I know why.
14:17 pmichaud grep isn't lazy yet.
14:17 dakkar uh? it runs the closure for each element of the list, setting $x for each element
14:17 dakkar then prints the last assignemnt
14:17 pmichaud so the entire grep is completing before the for loop starts.
14:17 pmichaud right.
14:17 `alpha O.o
14:17 `alpha why?
14:17 dakkar I would have been surprised of a different behaviour
14:17 dakkar `alpha: because grep has to build its result before returning it
14:18 pmichaud all of the iterations of grep are occurring before the "for" loop even starts.
14:18 `alpha I see.
14:18 `alpha bad bad bad/
14:18 dakkar it ends up equivalent to: for <win rar> -> $_ { $x=$_ if /i/ }; say $x
14:18 pmichaud my @x;  grep { /i/ && @x.push($/) }, <win rar>;   .say for @x;
14:19 pmichaud rakudo: my @x;  grep { /i/ && @x.push($/) }, <win rar>;   .say for @x;
14:19 p6eval rakudo c907d3: OUTPUT«Use of uninitialized value␤␤»
14:19 dakkar now, this is a different problem :/
14:19 pmichaud rakudo: my @x;  grep { /i/ && @x.push(~$/) }, <win rar>;   .say for @x;
14:19 p6eval rakudo c907d3: OUTPUT«Use of uninitialized value␤␤»
14:19 * `alpha tries in p5
14:19 dakkar hmmm.
14:20 pmichaud rakudo: my @x;  grep { @x.push(~$/) if /i/ }, <win rar>;   .say for @x;
14:20 p6eval rakudo c907d3: OUTPUT«Use of uninitialized value␤␤»
14:20 dakkar rakudo: "test" ~~ /(e.)/; say $/
14:20 p6eval rakudo c907d3: OUTPUT«es␤»
14:20 pmichaud anyway, doing the 'if' inside of the grep is equivalent to using map+if, so grep doesn't buy anything there.
14:20 `alpha works in p5
14:20 `alpha the push trick
14:20 dakkar rakudo: my $x="test";given $x { /(e.)/; say $/ }
14:21 p6eval rakudo c907d3: OUTPUT«Use of uninitialized value␤␤»
14:21 pmichaud yes, but if doing the push trick, might as well use map.
14:21 dakkar pmichaud: rakudobug?
14:21 `alpha true pmichaud
14:21 `alpha not interesting
14:21 `alpha :>
14:21 pmichaud dakkar: yes, that looks like a rakudo bug to me.  Either that or I'm not following something obvious.
14:22 pmichaud rakudo:  my $x = "test";  given $x { say $_; /(e.)/;  say $/ }
14:22 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤␤»
14:22 dakkar rakudo:  my $x = "test";  given $x { say $_; $_ ~~ /(e.)/;  say $/ }
14:22 p6eval rakudo c907d3: OUTPUT«test␤es␤»
14:22 dakkar ok, I'd say this is a minimal test case
14:22 pmichaud oh!
14:23 `alpha ah I know the solution
14:23 pmichaud /(e.)/  isn't evaluating the regex because it's not in boolean context.
14:23 `alpha haha
14:23 pmichaud That's probably the rakudobug.
14:23 `alpha for p5
14:23 pmichaud rakudo:  my $x = "test";  given $x { say $_; ?/(e.)/;  say $/ }
14:23 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤␤»
14:23 pmichaud rakudo:  my $x = "test";  given $x { say $_; ?(/(e.)/);  say $/ }
14:23 `alpha grep {/reg(ex)/ and func($_,$1)} @list
14:23 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤␤»
14:23 pmichaud hmmm, that's not it either, I guess.
14:23 dakkar `alpha: that works, but it's rather ugly
14:23 `alpha well it is
14:24 `alpha heh
14:24 pmichaud note that (ex)  captures to $0, not $1
14:24 `alpha yes I got it
14:24 `alpha I'm still p5 guy
14:24 viklund pmichaud: Not?
14:24 pmichaud viklund: Not.
14:24 dakkar I mean, you're doing a half-obfu of: for (@list) { func($_,$1) if /reg(ex)/ }
14:24 viklund ;)
14:24 `alpha :>
14:24 `alpha true dakkar
14:25 pmichaud depending on whether the return value of func() is intended to be a selector to the grep
14:25 viklund ahh, I get the string
14:25 pmichaud viklund: yes.
14:25 dakkar pmichaud: right, in that case the 'func inside grep' is useful
14:25 viklund luckily, I can't mail perl.org...
14:26 dakkar rakudo:  my $x = "test";  given $x { say $_; /(e.)/ and say "ok\n$/" }
14:26 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤ok␤␤»
14:26 dakkar !
14:27 dakkar it's not matching against $_
14:28 sri_kraih joined #perl6
14:29 * `alpha dropped grep altogether
14:30 `alpha /reg(ex)/ && $cref->($_,$1) for @list
14:30 `alpha kthxbai
14:30 pmichaud rakudo:  my $x = "test";  given $x { say $_; m/(e.)/;  say $/ }
14:30 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤␤»
14:30 pmichaud bug.
14:31 pmichaud gotta run -- back later
14:31 * masak submits rakudobug
14:32 masak dakkar: unless you're already on it, of course.
14:32 dakkar masak: go on
14:32 dakkar I should be working :)
14:33 masak rakudo:  $_ = 'test'; say $_; m/(e.)/; say $/
14:33 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤␤»
14:33 masak bit simpler.
14:36 dakkar rakudo:  $_ = 'test'; say $_; m/(e.)/; say "result: >$/<"
14:36 p6eval rakudo c907d3: OUTPUT«test␤Use of uninitialized value␤result: ><␤»
14:36 dakkar better shows that the problem is in the match operation, not in the match/result object
14:38 masak how so?
14:43 justatheory joined #perl6
14:46 Psyche^ joined #perl6
14:46 icwiener_ joined #perl6
14:49 barney joined #perl6
14:50 dakkar masak: it could have looked like the "uninitialized value" were $/
14:50 lichtkind joined #perl6
14:50 masak but it does.
14:50 dakkar uh… really?
14:50 dakkar rakudo:  $_ = 'test'; say $_; m/(e.)/;
14:50 p6eval rakudo c907d3: OUTPUT«test␤»
14:51 dakkar ok, I'm stupid :)
14:51 masak probably just momentarily confused. :)
14:51 jnthn Good afternoon
14:51 masak oh hai jnthn!
14:53 Matt-W jnthn!
14:54 jnthn pmichaud: (not-reading-any-email over the past 3-4 days / p6l) I'd save your time and not bother. ;-)
14:54 jnthn I wish I hadn't.
14:54 jnthn Hi Matt-W  :-)
14:55 jnthn So, today's tasks...try and get mberends++ Temporal.pm into Rakudo.
14:55 jnthn And maybe look at BUILD, and try and work out some of the deferal test fails.
14:56 masak yay!
14:56 masak does that mean it's some kind of Rakudo day today?
14:57 jnthn No, just that I have a grant. :-)
14:57 * masak has a deja vu
14:57 jnthn BUILD is sort of in the stuff in my grant.
14:57 jnthn And deferal certainly is.
14:58 jnthn .oO( deferal? deference? meh, my English sucks )
15:02 masak deferral, I'd guess.
15:02 * masak checks
15:03 masak hm, deferral or deferment, it seems.
15:04 masak learn Esperanto today! :) the language that doesn't put up with this kind of crap.
15:05 jnthn masak: Too bad, I'm learning Slovak instead. ;-)
15:07 masak yes, it's probably a good idea not to mix.
15:08 ruoso joined #perl6
15:08 jnthn Esperanto may have been an easier option.
15:08 masak ya think?
15:08 masak anyway, I don't condone learning other languages.
15:09 masak just saying Esperanto helped my meta-learning of languages a lot.
15:09 jnthn 'cus it's logical?
15:09 masak fsvo logical, yes.
15:09 Tene esperanto isn't logical.
15:10 Tene it's... it has issues.
15:10 masak no, it's not logical like, say, logic is.
15:10 Tene google for 'ranto' for a good summary.
15:10 masak a summary, at least.
15:10 Tene I'm a fan of lojban, though, so I have different biases. :)
15:10 masak the critiques in that one range from the on-the-spot to the very silly.
15:11 masak lojban seems nice. but it's for a completely different target group than Esperanto.
15:11 Tene yeah
15:12 * jnthn should read up on them at some point to try and get the point/what they're about.
15:12 Tene esperanto's "language neutral" claim seems silly when you notice that it's very very european, with no notice whatsoever of asia.
15:12 Patterner ' as a character is strange.
15:13 masak Tene: that comes up a lot. I won't try to defend it. however, it is interesting to note that Eo has many isolating qualities, just like Mandarin and Japanese.
15:14 masak e.g. 'hospitalo' works as well as 'mal-san-ul-ejo' (place for people who are not well)
15:16 nihiliad joined #perl6
15:16 Tene The other part that bugs me is the standard esperanto claim of an extremely simple language definition, when the language definition imports huge amounts (uses terms like "noun" and "verb" without defining them
15:16 Tene )
15:16 Tene But, I'm rather picky. :)
15:17 masak indeed. the sixteen rules are just a facade. real grammar books are rather thicker.
15:17 masak Tene: on the other hand, the largest obstacle for me to learning Lojban is the complete reinvention of all grammatical terms.
15:18 masak I've started looking at it at times, and it's... different.
15:18 Tene I wouldn't be working on Perl 6 if I wasn't very opinionated about languages. :)
15:19 jnthn So, but Temporal into the setting and we build. yay. :-)
15:20 masak \o/
15:20 jnthn temporal.t currently contains a fully copy of the module.
15:20 jnthn Ah, with a comment saying that should go...
15:20 Tene What's this temporal thing?
15:21 donaldh joined #perl6
15:21 jnthn Tene: Date/time handling.
15:21 Tene Relevant to this channel, I had a translation of the lojban grammar into perl 6 rules, but I lost it on a crashed HD.
15:21 jnthn Aww. :-(
15:22 jnthn Oh noes...we fail test 18.
15:22 Tene rakudo: say "mu xagji sofybakni cu zvati le purdi" ~~ Lojban::#ridi
15:22 p6eval rakudo c907d3: OUTPUT«Could not find non-existent sub Lojban␤»
15:22 Tene Bridi
15:23 Tene Quite right, p6eval.  Could not find indeed.
15:25 [particle]- that's kind of a funny error message
15:25 masak [particle]-: Rakudo thinks that all undeclared things are subs.
15:26 [particle]- success: non-existant sub Lojban found!
15:26 _REPLeffect joined #perl6
15:26 jnthn masak: That's 'cus they are ;-)
15:26 [particle]- masak: yeah, they are :)
15:26 masak nonexistent things are subs?
15:26 [particle]- all of them.
15:26 REPLeffect joined #perl6
15:27 masak Perl 6 never ceases to amaze me.
15:27 jnthn rakudo: world-peace
15:27 [particle]- :)
15:27 p6eval rakudo c907d3: OUTPUT«Could not find non-existent sub world-peace␤»
15:27 jnthn See?
15:27 masak jnthn: do you agree that the error message is a bit tautological, though?
15:27 meppl joined #perl6
15:27 masak of course we could not find the sub, it's non-existent!
15:28 [particle]- we'll get better error messages with std
15:28 masak ah, so we should just give up trying to improve them and wait for STD? :P
15:29 * [particle]- can't wait for next week, when he can start actively developing again
15:29 [particle]- masak: don't give up submitting bug reports!
15:30 masak of course no, don't be silly. :)
15:30 masak but I can't decide if there's something wrong with the error message or not...
15:30 [particle]- i kinda like how your bug reports are a de facto "this week in #perl6"
15:31 [particle]- the error message is silly.  of course you can't find something that's non-existant
15:31 [particle]- and if it's non-existant, how do you know it's a sub?
15:31 masak so, how should it read, then?
15:31 [particle]- silly compiler.
15:32 masak "green colourless ideas sleep furiously."
15:32 [particle]- 'world-peace' cannot be found.  give up, and go home.
15:32 jnthn The original quote I think had colourless first. :-)
15:32 alester joined #perl6
15:33 jnthn .oO( gah, I shouldn't know that )
15:33 masak jnthn: you're probably right.
15:33 [particle]- s/ideas/dreams/
15:33 [particle]- but we know what you meant :)
15:33 masak yup: http://en.wikipedia.org/wiki/Colo​rless_green_ideas_sleep_furiously
15:33 masak [particle]-: no, ideas.
15:33 [particle]- hrmm
15:34 [particle]- future. i just got back from the
15:36 * masak laughs at the subsection "Attempts at meaningful interpretations"
15:36 mizioumt joined #perl6
15:37 pugs_svn r26995 | jnthn++ | [t/spec] Fudging of defer-call.t that I forgot to check in yesterday. Ooops.
15:40 jnthn oh, gah, I had an out of date temporal.t
15:40 jnthn So actually we pass all.
15:40 jnthn mberends++
15:43 * viklund is glad that november now has reported bugs
15:44 masak indeed. lichtkind++
15:44 masak now we just need to get back to hacking on november again. :)
15:45 masak the last big thing I did was to add a nightly smoke. http://feather.perl6.nl/~masak/november-smoke.html
15:45 masak need to upgrade the rakudo version I smoke against, now that it's possible.
15:46 masak would be nice to smoke both against latest-release and bleeding every night.
15:46 jan_ joined #perl6
15:46 viklund hmm, why not smoke all proto projects that have tests?
15:47 viklund s/proto projects/projects proto knows about/
15:48 masak viklund: that's a really cool idea.
15:48 masak but I am old and weak, and lack a sense of initiative...
15:48 viklund how does one smoke?
15:48 masak oh, how I wish there were young, entrepreneurial souls on this channel who like a good challenge!
15:49 masak viklund: see my ~/bin on feather.
15:49 viklund ok
15:49 viklund and then you put that in cron?
15:49 viklund seems straight forward...
15:49 masak it is.
15:51 payload joined #perl6
15:59 pugs_svn r26996 | jnthn++ | [t/spec] Re-fudge something I prematurely unfudged.
16:02 pmichaud 15:31 <[particle]-> the error message is silly.  of course you can't find something that's non-existant
16:02 pmichaud 15:31 <[particle]-> and if it's non-existant, how do you know it's a sub?
16:02 pmichaud we know it's a sub because all undeclared barewords are assumed to be subs.
16:02 frew joined #perl6
16:03 jnthn pmichaud: I think the issue was more about the "couldn't find" and "non-existent" :-)
16:03 masak exactly.
16:03 [particle]- pmichaud: yes, that i know, jnthn is correct
16:03 pmichaud std: world-peace
16:03 p6eval std 26995: OUTPUT«Undeclared routine:␤   world-peace used at 1 ␤ok 00:02 35m␤»
16:03 jnthn But that's a compile time warning rather than a runtime error.
16:03 pmichaud at some point we'll be able to issue that warning as well, yes.
16:03 frew joined #perl6
16:03 dalek rakudo: 304ae9b | jnthn++ | t/spectest.data:
16:03 dalek rakudo: Add defer-call.t and defer-next.t to spectest.data.
16:03 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/3​04ae9b7b1d5f554b9ae1fffe59b07c111fe8b1a
16:03 dalek rakudo: 11c1c84 | jnthn++ | :
16:03 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
16:03 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​1c1c84f11b0ec39484cd599b9b0220b5088db8e
16:03 dalek rakudo: e5c8a34 | jnthn++ |  (2 files):
16:03 jnthn Aye.
16:03 dalek rakudo: Add Temporal.pm to the setting. mberends++
16:04 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e​5c8a346d3cd9dc8307eccb550dcc4dc04353f4e
16:04 dalek rakudo: 12a6019 | jnthn++ | t/spectest.data:
16:04 dalek rakudo: Add temporal.t to spectest.data.
16:04 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​2a6019ff15d3c362f976698fd6534c124b0e8d6
16:04 jnthn Whee.
16:04 jnthn pmichaud: I'm looking at re-working BUILD a bit to be more like a sub-call kinda thing.
16:04 pmichaud jnthn: that's fine.
16:04 jnthn pmichaud: The main issue is that the default BUILD then doesn't quite know what the current class is so easily.
16:04 frew joined #perl6
16:05 pmichaud oh, hmmm.
16:05 jnthn smop seems to solve it by using a $*BUILD context var.
16:05 jnthn erm,
16:05 jnthn sorry
16:05 jnthn $*CLASS
16:05 pmichaud I'm okay with using a context var for that for now.
16:05 jnthn See BUILD in http://svn.pugscode.org/pug​s/v6/smop/src-s1p/Object.pm
16:05 jnthn OK. It may even make sense as the long term solution.
16:06 pmichaud were you going to do BUILD in PIR or P6?
16:06 jnthn PIR
16:06 pmichaud either way, it's no problem to get at the context var
16:06 pmichaud find_caller_lex does what you want.
16:06 jnthn I think we need it available for compiling the setting.
16:06 jnthn Oh, The Awesome.
16:06 jnthn The other thing I was going to ask you about on this topic...
16:06 pmichaud find_caller_lex will find any lexical, not only those that are marked "is context"
16:06 jnthn S12:
16:06 jnthn Whether you write your own C<BUILD> or not, at the end of the C<BUILD>,
16:06 jnthn any default attribute values are implicitly copied into any attributes
16:06 jnthn that haven't otherwise been initialized.
16:07 jnthn How do we text not-otherwise-initialized?
16:07 jnthn *detect
16:07 pmichaud My approach had been that attributes would be left as PMCNULL until initialized
16:07 jnthn That epic fails though. :-(
16:07 pmichaud ...because?
16:07 jnthn And is the reason I already did the refactor of CREATE.
16:07 masak set them in the beginning of the BUILD. :)
16:08 jnthn Because submethod BUILD { $!name = "fido" } # oops, null PMC access
16:08 pmichaud okay.
16:08 viklund hah, I had almost forgotten how to read a file in perl5...
16:08 jnthn Also because of the refactor to CREATE already to use a kind of "proto-instance" so we'll be able to do the traits on containers later on.
16:08 pmichaud then this is what you want
16:08 pmichaud (more)
16:09 viklund parental leave and only perl6 hacking...
16:09 pmichaud currently we initialize things to Perl6Scalar
16:09 pmichaud by default the Perl6Scalar references a common Failure object
16:09 jnthn (Or Perl6Array or Perl6Hash or whatever the "is" is)
16:10 pmichaud instead, we should make the Perl6Scalar reference some common "I'm not initialized yet" object.
16:10 [particle]- ProtoFailure
16:10 pmichaud or for that matter, make a Perl6Scalar that points to PMCNULL
16:10 pmichaud null $P0
16:10 pmichaud $P1 = new ['Perl6Scalar'], $P0
16:10 jnthn I suspected that's where you were going, but it doesn't handle an uninitialized array or hash or other thingy.
16:11 pmichaud the only other option I can see is an "uninitialized" property on the PMC then
16:11 jnthn And assignment clears it?
16:11 pmichaud yeah, but I'd hate for assignment to have to do that every time.
16:11 jnthn Yeah. :-|
16:11 [particle]- yeah, that's weighty
16:12 pmichaud I'm about to implement Proxy objects, though -- perhaps it can be done with a form of proxy.
16:12 jnthn That could work.
16:12 jnthn Alternatively
16:12 jnthn We already have to check if it's rw
16:12 jnthn erm, ro
16:12 jnthn but you plan to flip that
16:12 pmichaud yes, but flipping that depends on proxy
16:12 pmichaud (which in turn depended on fixing self-method calls, which I did yesterday :-)
16:13 jnthn OK
16:13 pmichaud anyway, you're correct, we already have to check it's rw.
16:13 jnthn But my thought is that when we'd give an error, we then as a fallback check another property.
16:13 jnthn a "to_be_inited_attribute"
16:13 pmichaud We could have a special value of "rw" that means "rw but uninitialized"
16:13 jnthn At whcih point we clear that and enable rw
16:14 jnthn So we're only doing one check as usual, and before we go to error we can check this other case.
16:14 pmichaud actually, I can envision several values of rw
16:14 pmichaud "rw but constant"  being another
16:14 [particle]- write-once
16:14 jnthn Aye.
16:14 jnthn OK, my sense is that if I put anything in now it'll only make you refactor more soon.
16:14 pmichaud I do like the "check on error"
16:14 pmichaud I think we'll go for that approach.
16:15 jnthn And we're not going to get More Wrong than we are now by skipping this step now.
16:15 pmichaud I do expect my refactors to land soonish.
16:15 jnthn So I think best is I leave you go for the refactor you plan, and then one of us gets this in afterwards.
16:15 jnthn And in the meantime, I'll just do the refactor to make BUILD work more like spec.
16:15 pmichaud that sounds like we have an excellent plan.
16:15 jnthn But not initialize the uninitializeds.
16:15 pmichaud And now I plan to head to lunch.
16:15 jnthn Wow, so many good plans! :-)
16:16 pmichaud (have to run -- I'm not in a place conducive to long discussions anyway).
16:16 pmichaud bbiah
16:17 finanalyst left #perl6
16:17 pmurias joined #perl6
16:18 pmurias ruoso: is incremenatly adding features a good idea or should i follow some specific direction with my gsoc project?
16:18 pmurias ruoso: hi
16:23 hanekomu joined #perl6
16:25 jnthn > class Foo { has $.answer; submethod BUILD { $!answer = 42 } }
16:25 jnthn > my $x = Foo.new; say $x.answer;
16:25 jnthn 42
16:25 lambdabot <no location info>: parse error on input `class'
16:25 lambdabot <no location info>: parse error on input `='
16:25 jnthn \o/
16:26 ruoso hi pmurias
16:28 Tene masak: I see you were talking about a branch trying to parse ver info on modules?
16:28 Tene oh, enomasak
16:29 ruoso pmurias, let's take a look at the original roadmap
16:29 DanielC joined #perl6
16:30 pmurias ruoso: you mean the gsoc schedule?
16:30 ruoso yes
16:31 pmurias it seems to suggest expanding Signature
16:32 pyrimidine joined #perl6
16:33 pmurias or i could make mildew support $! and finish Failures
16:34 ruoso pmurias, let's take the gsoc schedule to the wiki, so we can detail it a bit more
16:35 * ruoso creating a wiki page
16:35 Tene jnthn: sweet
16:36 pmurias bjj& # i'll be back later today
16:37 ruoso @tel pmurias http://www.perlfoundation.org/​perl6/index.cgi?smop_gsoc_2009
16:37 lambdabot Consider it noted.
16:39 Tene jnthn: if that works now, it'll be your fault that I start working on my POE clone again.
16:40 Psyche^ joined #perl6
16:41 jnthn Tene: I found to pass BUILD.t I needed to do methods having a default *%_ too
16:41 jnthn Tene: Which was part of my grant, and which is now sufficiently done to pass the tests.
16:42 jnthn spectesting now, the two changes :-)
16:42 jnthn Also, I'm very happy to be to blame for progress on your POE clone. ;-)
16:43 Tene I have too much to work on... maybe I should quit my job.
16:45 ZuLuuuuuu joined #perl6
16:45 ruoso @tell pmurias I think we don't need to support $! properly for starts, because this depends on the handling of additional closures in each block. I think we just need to throw exceptions, and that you already done...
16:45 lambdabot Consider it noted.
16:47 Tene jnthn: did we ever get sufficient tests for exception behavior for me to implement it better?
16:55 jnthn Tene: Well, one big issue (though I'm not sure about tests for it) is that at least return, maybe all control exceptions, are meant to be lexically, not dynamically scoped.
16:56 jnthn rakudo: sub foo { (1,2,3).map({ return "wtf" }); say "lolz I'm still here" }; foo()
16:56 p6eval rakudo 12a601: OUTPUT«Type check failed on return value␤in method Any::map (src/gen_setting.pm:30)␤called from sub foo (/tmp/SPYK9F0sms:2)␤called from Main (/tmp/SPYK9F0sms:2)␤»
16:57 jnthn We there tried to return from the map, but should instead have returned from the lexically enclosing foo.
16:57 Tene ah, that.
16:58 pugs_svn r26997 | jnthn++ | [t/spec] Unfudge for Rakudo an enum test we've been passing since the dispatch refactor.
16:59 jnthn I think TimToady++ clarified another bit of the S04 recently too.
16:59 jnthn That related to exceptions.
17:03 pugs_svn r26998 | jnthn++ | [t/spec] Various corrections to BUILD.t.
17:09 dalek rakudo: 05a4a1c | jnthn++ | src/parser/actions.pm:
17:09 dalek rakudo: Initial cut of giving methods and submethods a *%_ unless they already have a slurpy hash parameter, to meet Interface Consistency section of S12.
17:09 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​5a4a1c1594aaf8b70deea4116157e7f1fd4aabd
17:09 dalek rakudo: a17b297 | jnthn++ | src/ (2 files):
17:09 dalek rakudo: Refactor BUILD to be more in line with the spec. This should resolve the most common issues people run into.
17:09 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​17b2974ef24022b58f7efd327418261dc429425
17:09 pugs_svn r26999 | jnthn++ | [t/spec] Unfudge 4 tests that now pass after Rakudo started conforming to interface consistency section of S12.
17:10 pyrimidine \o/
17:14 dalek rakudo: 7cfa196 | jnthn++ | t/spectest.data:
17:14 dalek rakudo: Add S12-construction/BUILD.t to spectest.data; we now pass all of it.
17:14 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​cfa196b5367c34d97a63031c527c6465e8bbd55
17:18 DemoFreak joined #perl6
17:22 jnthn std: say 1.infix:<+>(1)
17:22 p6eval std 26999: OUTPUT«ok 00:02 36m␤»
17:22 mizioumt joined #perl6
17:28 pmichaud jnthn++  # BUILD fixes and improvements
17:29 jnthn pmichaud: For RT 64930, I don't think we can do a great deal.
17:29 jnthn pmichaud: I think best is to add a note on the Get Rakudo page about the workaround for the bug.
17:29 jnthn And then resolve the ticket.
17:30 jnthn It's a GCC bug, affecting a specific (and prerelease) version. So I'm not inclined to waste any more time looking for a workaround.
17:30 pmichaud agreed.
17:30 pmichaud btw, I assigned a couple more tickets to your id yesterday.  :-P
17:30 jnthn (I already did try on the laptop of a local friend to work around it and no fun...)
17:31 jnthn oh noes!
17:31 jnthn erm, no luck
17:32 Sark std: say 'this is a  test'
17:33 p6eval std 26999: OUTPUT«ok 00:02 35m␤»
17:34 Sark std: loop(my $i=0;$i<= 100000;$i++){}; say 'im finish'
17:34 p6eval std 26999: OUTPUT«##### PARSE FAILED #####␤Unable to parse quote-words subscript; couldn't find right angle quote at /tmp/zIKeGymg9y line 1:␤------> [32m[31m[0m␤FAILED 00:02 36m␤»
17:35 Sark tz
17:37 Sark is perl6 on a loop faster than perl5 ?
17:38 pmichaud rakudo is slower at the moment.
17:38 pmichaud perhaps even much slower
17:39 StephenPollei rakudo: loop(my Int $i=0;$i<= 100;$i++){}; say 'im finish'
17:39 p6eval rakudo 12a601: OUTPUT«im finish␤»
17:39 TimToady that shouldn't work
17:39 TimToady two ways
17:40 TimToady needs whitespace after loop and before <=
17:40 TimToady rakudo's parser is being too forgiving there
17:41 StephenPollei rakudo: loop (my Int $i=0; $i <= 100;$i++){}; say 'im finish'
17:41 p6eval rakudo 12a601: OUTPUT«im finish␤»
17:41 DanielC joined #perl6
17:41 TimToady std: loop (my Int $i=0; $i <= 100;$i++){}; say 'im finish'
17:41 p6eval std 26999: OUTPUT«ok 00:02 36m␤»
17:41 jnthn pmichaud: done
17:42 TimToady perl 6 distinguishes control stuctures from ordinary sub calls, and loop() would be a sub call
17:42 TimToady *structures
17:42 DanielC Is Perl 6 going to have C bindings like Perl 5? Is it hard to get all the implementations to have the same C bindings?
17:42 DanielC I'm thinking of all the performance-intensive modules that use C.
17:42 TimToady eventually
17:43 DanielC Oh, and the modules that hook up to C libraries...
17:43 TimToady but also eventually, we hope to be able to compile Perl down to nearly as fast as C
17:43 estrabd joined #perl6
17:43 DanielC perl as fast as C == good
17:43 TimToady if you're willing to supply sufficient type info
17:43 jnthn And somebody is willing to write a sufficiently good type based optimizer. ;-)
17:44 TimToady will probably also need pragmas to tell it where it's allowed to cheat
17:44 PerlJam jnthn: looks like you're set for grant money for the next decade or so  ;)
17:44 pmichaud PerlJam: I think the bottleneck there may be "having sufficient grant resources"
17:44 pmichaud but assuming they're available, then yes, jnthn++ is set :-)
17:44 DanielC That means that you won't have to go to the Parrot level for performance either...
17:45 DanielC But in any case, you still need C bindings to use all the C libraries that are around.
17:45 PerlJam perhaps.  TPF has always seemed to come up with "grant resources" one way or another.
17:46 DanielC So I'm wondering if having multiple implementations would create a problem for C bindings (e.g. having each implementation do it differently).
17:46 pmichaud PerlJam: I have about 4+ years of working on Parrot/Perl6 that says otherwise :-)
17:47 pmichaud make that 3+ years
17:47 StephenPollei well swig can make binding for different languages, so I think you could make it work with multiple different binding styles, but then again you could try to standardize on one style
17:49 DanielC StephenPollei: So I guess that if nothing else, people can at least use swig.
17:50 [particle]- as long as swig has the right emitter
17:50 StephenPollei emitter(s) , it would be helpful for them to not duplicate similar emitters
17:53 jnthn rakudo: class P { submethod foo() { say "wtf" } }; class C is P { }; C.new.foo
17:53 p6eval rakudo 7cfa19: OUTPUT«Method 'foo' not found for invocant of class 'C'␤»
17:53 jnthn Yay.
17:54 jnthn rakudo: class P { }; class C is P { submethod foo() { say "wtf" } }; P.new.foo
17:54 p6eval rakudo 7cfa19: OUTPUT«Method 'foo' not found for invocant of class 'P'␤»
17:54 jnthn Good.
17:55 jnthn goto DINNER;
17:56 Chillance joined #perl6
18:03 pmichaud jnthn: be sure to take a continuation so that you can easily get back here!!!  :-)
18:09 rjh it's too late, he's already left this lexical scope
18:09 DanielC S30 (Standard Library) is not written yet. Does that mean that currently there is no definition of such functions as open() and chdir() ?
18:10 StephenPollei rakudo: chdir('.')
18:10 p6eval rakudo 7cfa19: OUTPUT«Could not find non-existent sub chdir␤»
18:11 pmichaud DanielC: S32 has most of it.
18:11 DanielC thanks
18:11 pmichaud fwiw, I can easily write a chdir() but I'm not sure what package it belongs in.
18:12 DanielC rakudo: open("/etc/passwd")
18:12 p6eval rakudo 7cfa19: OUTPUT«operation not permitted in safe mode␤in Main (lib/Safe.pm:25)␤»
18:13 [particle]- DINNER:
18:13 DanielC Well, looks like open() is available.
18:13 [particle]- is jnthn back now? ;)
18:14 pmichaud I think it might be a lazy goto.
18:14 [particle]- buubot: spack chdir
18:14 buubot [particle]-: Sorry, I couldn't find any matches for: chdir
18:14 DanielC How do I get the file handle out of open()? Is it $FH = open("foo.txt",true) ?
18:15 pmichaud my $fh = open('foo.txt', :r)
18:15 DanielC thanks
18:15 DanielC and then I print with  print $fh,"hello world"?
18:16 DanielC say $fh,"hello"
18:16 pmichaud $fh.print('hello world')
18:16 DanielC thanks
18:16 pmichaud $fh.say('hello world')
18:16 StephenPollei so does that mean there might be a 'os' and/or 'posix' package so the global namespace doesn't get too polluted?
18:16 pmichaud I don't know if the functional form of printing to a filehandle works yet (ever?)
18:17 pmichaud StephenPollei: well, I'm more interested in knowing the Package so I know what source file in Rakudo should receive the code :-)
18:18 [particle]- say $fh: 'hello'
18:19 [particle]- is there prior art in pugs?
18:19 rjh Is it okay that Junction.eigenstates returns a ResizablePMCArray? Or is that a fudge until you have a read-only Perl 6 list object
18:20 [particle]- that should not be a native parrot pmc, but i don't know the reason it is that way now
18:20 StephenPollei rakudo/src/builtins/io.pir has open, but I don't think chdir should go there
18:21 StephenPollei rakudo/src/builtins/posix.pir maybe?
18:26 DanielC Can I run $fh.slurp?
18:28 japhb joined #perl6
18:30 payload joined #perl6
18:33 pmichaud I'm wanting chdir() (and eventually open()) to appear in src/setting/ somewhere.
18:33 pmichaud we're trying to move things out of src/builtins except for those things that _have_ to be there (i.e., are too specific/complex to be handled in src/setting/)
18:34 StephenPollei ok yes I see IO/ and IO.pm there now and lots of things that appear to be associated with types
18:35 StephenPollei IO.pm has close but not open
18:37 StephenPollei setting/IO/Socket and setting/IO/Socket.pm .. so I still don't think chdir and many of the old perl5 functions that were posixy should go there
18:37 iblechbot joined #perl6
18:39 StephenPollei "chdir", "chmod", "chown", "chroot", "fcntl", "ioctl", "link", "lstat", "mkdir", "open", "opendir", "readlink", etc etc .. some of the old perl5 functions were very posixy
18:41 pmichaud oh, I think that open() belongs in IO, definitely.
18:41 pmichaud I haven't gotten around to moving that one yet.
18:43 StephenPollei sure but what about ioctl, chroot, getpwent, waitpid
18:44 pmichaud right, I don't know where those belong.
18:45 pmichaud I'm not opposed to creating IO::POSIX for now as a place for them.
18:45 StephenPollei yes open should go in IO.pm most likely, I just wonder about the rest, even chdir could go in IO if you strentch IO to be all file related stuff
18:45 pmichaud or even just POSIX
18:45 pmichaud doesn't have to be "official" yet -- this is one of those places where any implementation (even if it's ultimately wrong) probably trumps "no working implementation"
18:45 pmichaud It's easy enough to change later, too.
18:46 StephenPollei OS::POSIX OS::WIN maybe
18:46 pmichaud I'll go with that for now.
18:46 pmichaud well, I don't want to get too os-specific yet.
18:47 StephenPollei k and perl5 did emulate the other functions on other platforms iirc
18:47 pmichaud correct, as does Parrot.
18:47 pmichaud besides, iirc POSIX describes an API, not an OS.
18:48 StephenPollei true true api not os .. otherwise it would be OS:Unix and OS:Win
18:51 DanielC rakudo: pack()
18:51 p6eval rakudo 7cfa19: OUTPUT«Could not find non-existent sub pack␤»
18:51 DanielC Are pack() / unpack() gone in Perl 6 or just not implemented in Rakudo?
18:52 pmichaud I seem to recall a leaning towards "gone"
18:52 pmichaud I think this came up recently either here or on p6l
18:52 DanielC I don't need pack(). I just want to know if it's ok to make a function called pack() and want to know if it'll conflict.
18:52 jnthn pmichaud: Error: continuation trying to jump from runloop 'relax' to runloop 'perl6'
18:52 jnthn ;-)
18:52 pmichaud jnthn: D'oh!
18:52 pmichaud Those parrot runloops are always causing us trouble!
18:53 TimToady actually, the original goto had an undefined label; needed goto 'DINNER' for forward ref
18:53 pmichaud jnthn: BTW, I have to take a brief moment to say "Wow."  on getting the new dispatch stuff in place.
18:53 pmichaud That is a truly impressive achievement, in my book.
18:54 jnthn pmichaud: You like it?
18:55 pmichaud I haven't looked at the code (don't necessarily want to :-), but the fact that it works at all is.... nice.
18:55 jnthn It's probably more right than wrong, and it's certainly more right than before. :-)
18:56 jnthn I've got a good bit of thinking to do on the roles stuff.
18:56 pmichaud if it weren't for the fact that you said you were going to do it, I would've doubted it could be done at all in current Parrot.
18:56 jnthn TimToady: Actually, you may have some thoughts here.
18:56 jnthn The issue I ran up against that I'm not happy I've a good answer to yet is:
18:56 jnthn "What methods on a role are punned?"
18:57 jnthn For example. We can't pun ACCEPTS, otherwise we blow away type checking on the role.
18:57 jnthn We run into issue with .WHAT too, but that one goes away when we make it really a macro and not a method.
18:58 jnthn Ah, and .Scalar and .list got us into trouble too...
18:58 TimToady perhaps ACCEPTS is only ever called on defined patterns
18:58 pmichaud .Scalar is a rakudo-only thing.
18:58 jnthn .list isn't...
18:58 pmichaud correct.
18:59 pmichaud hopefully .Scalar will disappear in the capture/list refactors.
18:59 jnthn At the moment I kinda have a pun blacklist.
18:59 jnthn But Perl 6 + special list = oh noes, generally.
18:59 jnthn I have the same kinda situation with Whatever too.
18:59 jnthn Generally, a method call on it should make a closure.
19:00 jnthn But equally *.ACCEPTS doing that gets us into all kinds of bother.
19:00 pmichaud for Whatever methods, it might be worth thinking about autoload semantics.
19:00 jnthn And again, a blacklist controls it.
19:00 jnthn pmichaud: Maybe - can you elaborate?
19:00 TimToady well, I've wondered whether *.foo in general should be hardwired at compile time
19:01 pmichaud there's a way to autoload methods
19:01 pmichaud for classes
19:01 pmichaud i.e.,   $foo.bar( )    could refer to a method that needs to be autoloaded at runtime
19:01 pmichaud if that's the case, then *.bar()  is something of a "generate this method at runtime" sort of thing.
19:01 jnthn pmichaud: Been there, tried it that way too. :-(
19:01 jnthn pmichaud: Whatever ~~ Any
19:02 jnthn pmichaud: Any has a bunch of methods that we'd rather like to make closures out of.
19:02 mberends joined #perl6
19:02 TimToady I think *.foo wants hardwiring because of the arguments anyway
19:02 justatheory joined #perl6
19:02 jnthn Unless the AUTOLOAD takes precedence over the method search rather than being a fallback.
19:02 TimToady otherwise you eval the args too early
19:02 pmichaud TimToady: very good point, thanks.
19:02 pmichaud Yes, it does sound like *.foo is syntactical then.
19:03 TimToady *.foo(bar()) wants to be { $^a.foo(bar()) }
19:03 pmichaud I think we also ran into a similar thing
19:03 jnthn TimToady: That's a really good point, though we've only moved the blacklist to the compiler.
19:03 pmichaud where *.foo.bar  wants to be { *.foo.bar }  and not  { *.foo }.bar
19:03 jnthn (No bad thing for performance of course. But still doessn't solve the Other Issue.)
19:04 jnthn pmichaud: We could probably deal with transforming the whole chain at compile time.
19:04 TimToady I think there's a defined/undefined criterion on parameters that determines whether they will bind abstractly or concretely
19:04 jnthn TimToady: Sorry, I don't follow.
19:05 TimToady multi method ACCEPTS ($self where {not .defined}: $targ) is the abstract interface
19:05 TimToady multi method ACCEPTS ($self where {.defined}: $targ) is the concrete interface
19:05 TimToady but perhaps with sugar
19:05 pmichaud or perhaps even
19:05 pmichaud multi method ACCEPTS (Defined $self: ... )
19:06 jnthn OK, but if we're saying we're going to do the Whatever transformation int he compiler, we can't statically know whether we have something defined.
19:06 jnthn Oh, or maybe it's not a problem there...
19:06 pmichaud or, for that matter
19:06 jnthn Since we'd never write *.ACCEPTS when we wanted to type check.
19:06 TimToady *.foo is just sugar, doesn't have anything to do with dispatch now
19:06 jnthn Or smart-match
19:06 jnthn Right.
19:06 pmichaud multi method ACCEPTS (Abstraction $self:  ... }   # abstract interface
19:06 jnthn OK, so that solves the whatever problem.
19:07 jnthn The role punning one is still interesting though. :-)
19:07 TimToady remember we once had a discussion about meta vs method vs metamethod, but I see them as parameter constraints now
19:07 pmichaud Yes, that seems to work for me.
19:07 pmichaud I like the notion of using the Abstraction role to distinguish.
19:08 jnthn I agree with that.
19:08 pmichaud but defined/undefined works for me too.
19:08 TimToady may be unifiable
19:08 jnthn I agree it solves the problem of ACCEPTS on type-y things vs none-type-y things.
19:08 jnthn I'm just not quite straight on how it solves the role punning issue yet.
19:09 ruoso the Abstraction role would mean that the undefined object is of a different type from the defined object
19:09 jnthn ruoso: It already is in Rakudo anyway.
19:09 jnthn We've always had the proto-object as "an instance plus a role"
19:10 ruoso I'm aware of that... but I thought we already had agreed that this poses a problem...
19:10 pmichaud however, it's possible for us to make Abstraction into a subset instead of a role, though.
19:10 jnthn ruoso: I'm struggling to remember exactly why.
19:11 elmex joined #perl6
19:11 ruoso jnthn, Dog{ :name<Fido> }
19:11 pmichaud ruoso: that by itself doesn't pose a problem for us.
19:11 REPLeffect joined #perl6
19:11 ruoso conceptually, the only difference between Dog{ :name<Fido> } and Dog is the WHENCE
19:12 pmichaud Sure, no problem.
19:12 jnthn Right.
19:12 pmichaud unless we say that  Dog{ :name<Fido> }  isn't an Abstraction.
19:12 ruoso well... it certainly isn't a "Abstraction"
19:12 ruoso in a semantic sense
19:12 ruoso it's a soon-to-be object
19:13 pmichaud afaik, it's still not a specific concrete instance, though.
19:13 pmichaud anyway, we could naively start with the notion that      subset Abstraction where { .defined }
19:13 TimToady that's correct, the Dog role may be impossible to pun into a class on its own
19:13 TimToady not defined
19:13 pmichaud sorry, where !defined
19:14 lichtkind joined #perl6
19:14 TimToady Dog{} is also related to lvalues that can autovivify somehow
19:14 pmichaud well, Dog is that way too, yes?
19:14 pmichaud my Dog $x;    $x is something that can autovivify to a concrete Dog
19:14 TimToady there's extra potential work to be done by the closure
19:14 TimToady to install itself into the array/hash where it's missing
19:15 mberends viklund: should november-wiki.org be down? (it is)
19:22 lichtkind mberends: started you any effort ? :)
19:22 mizioumt1 joined #perl6
19:22 jnthn Does my $x = Dog{}; $x.method cause $x to become an instance, then?
19:23 lichtkind jnthn: did you said anything after the laughter?
19:23 pmichaud S12:
19:23 pmichaud my $dog = Dog{ :name<Fido> };
19:23 pmichaud defined $dog or say "doesn't exist";  # Fido doesn't exist
19:23 pmichaud $dog.wag()                            # Fido wags his tail
19:24 jnthn OK, and then defined $dog is true?
19:24 jnthn lichtkind: No, I just laughed.
19:24 mberends lichtkind: it was your arrival today that made me curious about your tutorial pages. I would like to help you with some content there.
19:24 lichtkind jnthn: thats healthy
19:25 lichtkind mberends: allright you mean some bits in the perl 6 kompendium not translate?
19:25 pmichaud S12 doesn't say that, but I suspect "yes".
19:25 jnthn pmichaud: OK. That's not so hard to handle.
19:26 pmichaud it's much easier now with our custom dispatcher :-)
19:26 jnthn Yeah, quite.
19:26 jnthn I don't see how it gets in the way of us doing proto-objects being plus a role though.
19:26 pmichaud Agreed.
19:26 mberends lichtkind: both, probably, small things initially as we find out what is needed.
19:27 jnthn I might try and get that in place at some point in the not too distant future anyway.
19:27 jnthn Just so we Know We Can.
19:27 pmichaud Good.
19:27 pmichaud or better
19:27 pmichaud +1
19:28 lichtkind mberends: good last days i put my p6 tutorial onlike and konverted it from pod to wiki syntax
19:28 lichtkind mberends: maybe you can translate the appendices that can be done in small portions
19:28 pmichaud http://opensourcebridge.org/   # huh?!?   This got schedule on top of YAPC::NA ?!?
19:28 jnthn pmichaud: By the way, we are now down to only one =head1 level section of S12 that we don't have coverage of in Rakudo yet.
19:28 pmurias joined #perl6
19:29 jnthn pmichaud: (As in, no coverage at all. Not implying we have complete coverage of all the others!)
19:29 pmichaud oh, I guess it's not directly on top of YAPC::NA, just tight for PVWM folks.
19:30 StephenPollei jnthn, thats good for me as I was seriously thinking of helping write some tests
19:30 pmichaud Tests++
19:30 ruoso pmichaud, jnthn, Dog{...} is not defined... but my point was about semantics...
19:31 lichtkind mberends: you know what i mean?
19:31 pmichaud ruoso: I tend to think of Dog{ :name<fido> }   as still not being a complete dog, and thus it's an abstract concept.
19:31 pmichaud but I can see the other side of it as well.
19:31 pmurias back
19:31 lambdabot pmurias: You have 2 new messages. '/msg lambdabot @messages' to read them.
19:31 [particle]- pmichaud: so tight, i couldn't give a talk there :(
19:32 pmichaud I hadn't even heard of it until a few minutes ago (got a message from one of the python lists)
19:32 ruoso pmichaud, usually I'm not going to use Dog{...} to create new objects... it is already the object that is going to be completed
19:32 [particle]- perl 6 desperately needs tests.  rakudo is passing >68% of spectests
19:32 ruoso i.e.: Dog === Dog{...} is false
19:32 mberends lichtkind: ok, are you referring to Perl (6) Tablets at perlfoundation.org?
19:32 [particle]- who thinks rakudo is >68% done?
19:32 lichtkind mberends: yes
19:33 jnthn [particle]-: Define "done".
19:33 mberends lichtkind: fine, got an account there recently, so translating/editing should be fine :)
19:33 TimToady Dog{} is like Dog.assuming({}) or some such
19:33 [particle]- jnthn: passing STD.pm:ver<6.0.0>
19:34 [particle]- er, *using*
19:34 [particle]- and passing all spec tests.
19:34 pmichaud Who thinks that Perl 6.0.0 is >68% done?  ;-)
19:34 [particle]- exactly!
19:34 lichtkind mberends: so you begin with appendix A ?
19:34 TimToady I think it's >68.5% done
19:34 ruoso TimToady, hm? I would expect that to be more implementation specific than that... i.e. using the REPR API
19:34 [particle]- timtoady: Perl 6.0.0? or STD.pm.
19:34 pmurias sub my_first  ($x, $,  $ ) { $x };
19:35 pmurias is valid Perl 6?
19:35 TimToady I said it was "like"
19:35 ruoso std:  sub my_first  ($x, $,  $ ) { $x };
19:35 jnthn std: sub my_first  ($x, $,  $ ) { $x };
19:35 p6eval std 26999: OUTPUT«ok 00:02 37m␤»
19:35 p6eval std 26999: OUTPUT«ok 00:02 37m␤»
19:35 jnthn Yes.
19:35 jnthn I thought so.
19:35 jnthn rakudo: sub my_first  ($x, $,  $ ) { $x };
19:35 p6eval rakudo 7cfa19:  ( no output )
19:35 jnthn rakudo: sub my_first  ($x, $,  $ ) { $x }; say myfirst(2,3,4);
19:35 p6eval rakudo 7cfa19: OUTPUT«Could not find non-existent sub myfirst␤»
19:35 ruoso that simply requires the parameters but don't use it?
19:35 jnthn rakudo: sub my_first  ($x, $,  $ ) { $x }; say my_first(2,3,4);
19:35 mberends lichtkind: yes, that's a useful one to start with, and it is ok to do it in little pieces.
19:35 p6eval rakudo 7cfa19: OUTPUT«2␤»
19:35 jnthn ruoso: yes
19:36 pmichaud \o/  # rakudo ftw
19:36 pmichaud rakudo:   sub my_first ($x, @, @) { $x };   say my_first(2,3,4);
19:36 p6eval rakudo 7cfa19: OUTPUT«Parameter type check failed; expected something matching Positional() but got something of type Int() for @ in call to my_first␤in sub my_first (/tmp/Dtc4t6XKCQ:2)␤called from Main (/tmp/Dtc4t6XKCQ:2)␤»
19:36 ruoso pmurias, if I were to set a first goal for Multis would be to allow native type checking only...
19:36 ruoso pmurias, full type checking is probably better done after we bootstrap ClassHOW
19:36 jnthn rakudo++
19:37 Sark use perl6 the parrot VM maschine?
19:37 jnthn Sark: Rakudo uses the Parrot VM.
19:38 jnthn Sark: Perl 6 is the language spec, not an implementation. But Rakudo is a Perl 6 implementation using Parrot.
19:38 lichtkind mberends: and it will be an advantage to have a nice operator table for perl 6 downside is only that we make the chapter later and have than to touch alle links again
19:38 lichtkind Sark: ertappt
19:40 REPLeffect joined #perl6
19:41 jnthn pmichaud: Pondering doing Rakudo day on Friday (tomorrow is way too many distractions) - will you be about at all?
19:41 pmichaud yes, I think Friday is good for me also.
19:42 jnthn OK
19:42 jnthn Any interest in trying to work together on getting context vars in?
19:42 pmichaud I think tomorrow is okay, too, but my schedule may get really weird over the next few weeks
19:42 pmichaud context vars isn't that hard, I don't think.
19:42 pmichaud But I think we might want 'rw' first
19:42 jnthn Ah, OK.
19:43 pmichaud anyway,   my plan is that       "my $x is context"   creates two entries in the lexpad
19:43 pmurias ruoso: i think i'll first flesh out Signature, what i'm unsure if i should add syntactic support to mildew now
19:43 pmichaud one for $x, another for $*x
19:43 jnthn Ooh, that's an interesting idea.
19:43 mberends lichtkind: :-) there are sure to be more downsides if that sort. You can get help for your operator table from this excellent Periodic Table: http://www.ozonehouse.com/mark/periodic/
19:43 jnthn Then we look for $*x?
19:43 jnthn Cunning!
19:43 jnthn I really like that.
19:43 pmichaud the $*x entry is an ObjectRef to $x
19:44 pmichaud or it may just be bound
19:44 ruoso pmurias, some support, yes...
19:44 pmichaud bound actually works, I guess
19:44 jnthn What about re-binding of one? It should affect the other (managable).
19:44 ruoso pmurias, maybe it's a good idea to point out which Signature features you plan to implement
19:44 pmichaud anyway,   a lookup is then a call to a function that does find_caller_lex, followed by looking in various globals, followed by looking in %*ENV
19:44 ruoso pmurias, eventually we choose a subset of features that will enable the ClassHOW bootstrap
19:45 lichtkind mberends: i know that one my boy im in this buisness for ages :) but the idea behind appendix A is to have all command operators and terms explained in one index so every time someone thinks i dunno he can loopup there, i would like to have switches on top: just ops and so on
19:45 jnthn pmichaud: Sounds good.
19:45 lichtkind mberends: plus we have links in our table where everyting is explained in more detail
19:45 pmichaud that's how I expect it to ultimately work in the PCT/NQP case, at any rate, even if it doesn't work out that way for Rakudo in the long term.
19:46 jnthn pmichaud: (schedule) I'm not going to notice some of the next few weeks anyway, since I'm here for about a week more and then gone for vacation.
19:46 pmichaud right.  My schedule is tricky because it can change for me with little notice
19:47 jnthn OK, we can take it as it comes.
19:48 justatheory joined #perl6
19:50 pmurias ruoso: slurpies, named, optional and mandatory positionals and a type check should be for most of our needs
19:50 ruoso native type check suffices
19:50 ruoso ?
19:50 pmichaud in fact, if I disappear suddenly from the channel -- more likely then not I've been called a way from the keyboard for something "urgent"
19:50 pmichaud s/a way/away/
19:50 pmichaud s/then/than/
19:51 pmichaud s/pmichaud/someone who can't seem to spell or type correctly anymore/
19:52 ruoso pmurias, one thing about Failures that we could do would be to replace the UNKNOWN_METHOD and missing lexical thingy to throw a proper exception instead of simply abort()'ing
19:53 pmurias ruoso: the distinction between native and non-native type check depends on the object that the Param has as it's .type attribute
19:54 ruoso pmurias, I would say we could have a special param type for natives
19:54 ruoso since its checking is so different... I mean... no need for calling .ACCEPTS
19:54 ruoso and you also can know at compile time that (int $x) is a signature asking for a native type
19:56 lichtkind mberends: do you currently editing?
19:57 mberends lichtkind: just opened Appendix A in edit mode, no changes to save yet.
19:57 lichtkind mberends: because i fix some formating thing currently
19:57 lichtkind just 10 min
19:57 mberends np :)
19:57 ruoso pmurias, so anyway... I think having those features pointed, it would be nice to have'em implemented in mildew too
19:59 * [particle]- will miss the phone call today
20:01 pmichaud phone
20:02 * [particle]- hopes jnthn makes it today
20:02 REPLeffect joined #perl6
20:05 jnthn Who? Me? What? :-/
20:05 * jnthn still needs to sort out the hardware for that
20:13 pmurias how can i make git show a diff for a resolved file (i called git mergetool)
20:17 Tene pmurias: what exactly do you want to show?
20:18 lichtkind mberends: ready now and if you finished today you can keep on with http://wiki.perl-community.de/cgi-bin/fo​swiki/view/Wissensbasis/PerlTafelAnhangB :)
20:21 levooe joined #perl6
20:22 amoc joined #perl6
20:22 mberends lichtkind: Appendix A will not be finished today ;) You've done an outstanding and huge job, and I need some time to check many of the terms that are listed which I may not understand yet.
20:22 levooe so nobody talks haskell in here anymore?:/
20:23 lichtkind mberends: yes its german :)
20:23 lichtkind mberends: thanks
20:23 lichtkind mberends: sorry just pressed save now
20:24 pmurias joined #perl6
20:24 pmurias Tene: i don't want git diff to ignore the resolved file
20:29 amoc joined #perl6
20:30 mberends lichtkind: ok, I'll start at the bottom and work my way up, so that English readers don't get a shock on the way down. It's not only the German that's sometimes hard, it's also the Perl ;)
20:31 lichtkind mberends:  you can also ask me, next days i will put my perl 6 tutorial (its written more like story) also into the english and come later back
20:31 Tene pmurias: git diff --cached?
20:32 mberends lichtkind: excellent
20:32 lichtkind mberends: its here http://wiki.perl-community.de/cgi-bin/f​oswiki/view/Wissensbasis/Perl6Tutorial
20:34 mberends lichtkind++: Wow, that's a tremendous opus! We need that in English!
20:35 lichtkind mberends: you read it?
20:37 mberends lichtkind: Skimming :) Well done. Have you any experience with machine translation?
20:37 lichtkind mberends: no
20:38 mberends I'll try babelfish, not sure how good it will be, but it might speed the process.
20:39 amoc joined #perl6
20:40 tulcod joined #perl6
20:42 silug joined #perl6
20:42 slve left #perl6
20:43 lichtkind i prefer manual
20:44 lichtkind mberends: unfortunately TPF didnt want give a grant in other way it would be translated long ago
20:48 mberends lichtkind: http://uk.babelfish.yahoo.com/ did fairly well, but it definitely needs manual correction. The generated output is also not wiki formatted.
20:48 lichtkind mberends: is that text good? http://www.perlfoundation.org/​perl6/index.cgi?perl6_tutorial
20:49 unitxt joined #perl6
20:51 pmichaud @a[2,3,4]   versus @a[2;3;4]
20:51 lambdabot Unknown command, try @list
20:52 mberends lichtkind: >98% good :) "for $foo magazine" "until autumn 2009" "editing is being done" "if you would like"
20:54 lichtkind mberends: thanks thatswhy i need help, but i think afterwards i have better english skills and you better german
20:54 mberends yes, definitely :-)
20:58 lichtkind mberends: now all is fixed http://www.perlfoundation.org/p​erl6/index.cgi?perl_6_tutorial
20:59 mberends lichtkind: looks 100% perfect to me :)
21:00 Tene pmichaud: ping
21:00 lichtkind mberends: except this teil i tranlated it to part :)
21:02 mberends of course, overlooked 'Teil' completely
21:02 jnthn ~~ es ist mein teil...nein! ~~ # I learned my German from Rammstein...
21:02 lichtkind mberends: and when we finished we translate my wxperl tutorial :)
21:03 Tene jnthn: how much do you currently have swapped in about how to inform the rakudo parser about new type names?
21:04 lichtkind jnthn: to be context sensitive you have to translate teil with penis :)
21:04 jnthn Tene: What are you needing to do?
21:04 Tene ... Ah, there it is.
21:04 jnthn Tene: Making the thing you want to be a type Do Abstraction can be OK if it's already in the NS.
21:04 Tene jnthn: I'm trying to inform the parser about a foreign class when I load a foreign library.
21:04 jnthn Alternatively, you need to put it into a table for a block.
21:04 jnthn OK, use is eval'd at compile time.
21:05 Tene I'm able to put the namespace in the right place, but when I try to say Foo.new(), it thinks that Foo is a function.
21:05 jnthn Are you making a proto-objecty thingy for the class?
21:05 Tene there's an add_type method on Perl6::Grammar that can do it for me.
21:05 Tene jnthn: yes.
21:05 Tene I'm using P6object
21:05 jnthn Oh, hmm.
21:05 Tene Although that might not necessarily be true for every language, I guess.
21:05 jnthn Are you doing the import at compile time too?
21:06 Tene yes
21:06 Tene jnthn: I'm doing it in 'use'()
21:06 jnthn Right. Oddness. The proto-objectness is normally enough.
21:06 Tene Which is called from actions.pm
21:06 Tene actually, 'sec, lemme try something
21:08 Tene I guess I'm expecting to be able to have Foo.new() call .new() on the class...
21:09 Tene if I get_class the namespace, and call .new() on it, it works right.
21:09 Tene but .new() isn't in the namespace itself... so get_hll_global won't work.
21:11 jnthn OK, but you're installing the class in the Foo entry in the namespace in Perl 6 when you import?
21:12 Tene I'm copying the namespace over directly.  I tried editing the rakudo-generated pir to call get_class on the namespace after loading the library, and it worked.
21:13 jnthn Ah, copying the NS probably won't work out.
21:13 jnthn As Rakudo doesn't know to do get_class on the namespace.
21:13 Tene rakudo generates:
21:13 Tene get_hll_global "Foo"
21:14 Tene for a Foo class it knows about
21:14 jnthn Right.
21:14 Tene for a class just shoved in the namespace, it generates Foo()
21:14 lichtkind mberends: your not into wx ?
21:14 jnthn What are you shoving in the namespace though?
21:14 jnthn The other namespace?
21:14 jnthn That alone won't be enough.
21:15 jnthn You'll need to shove in the proto-object too.
21:15 jnthn In fact, you maybe only need the proto-object since it should be associated with the original namespace back in the other HLL.
21:16 kate21de joined #perl6
21:16 Tene will putting a proto in the namespace be enough?
21:16 Tene it looks like rakudo modifies data structures used by the parser.
21:16 DanielC Off topic: Anybody interested in a 1TB external disk for 77EUR or a 16GB USB key for 19 EUR?  http://www1.conrad.de/scripts/wgate/zcop_b2c/~fl​Nlc3Npb249UDkwV0dBVEU6Q19BR0FURTA2OjAwMDMuMDExMy​4xMjQ0Y2Y0NiZ+aHR0cF9jb250ZW50X2NoYXJzZXQ9aXNvLT​g4NTktMSZ+U3RhdGU9MzM5MTUzOTMzNA==?~template=PCA​T_AREA_S_BROWSE&amp;glb_user_js=Y&amp;shop=B2C&a​mp;p_init_ipc=X&amp;~cookies=&amp;scrwidth=1280
21:17 DanielC Sorry for the OT, but I though it was a very good price.
21:17 jnthn Tene: It might well be.
21:17 jnthn Tene: You certaily need to put the proto in the namespace though.
21:17 jnthn I can't see it working without doing that.
21:17 jnthn And once you put the proto it, Rakudo should start recognizing it as a type name.
21:18 jnthn And yes, for sure Rakudo fudges stuff into @?BLOCKS - but at parse time (also in eval but again, only to then have them consumed by the parser).
21:18 mberends lichtkind: not yet, but wxperl looks very appealing. szabgab++ motivated me to install it for padre++. Do you think wxperl for parrot/rakudo will be a difficult or an easy link to make?
21:19 lichtkind mberends: yes
21:19 Tene jnthn: I modified the generated pir to be the same, and it works.
21:19 Tene so the proto is in the relevant ns
21:19 lichtkind mberends: i mean difficult because wx is complex, and i write also an editor in fact padre took a lot drim kephra
21:20 DanielC mberends: Is padre good? I saw the web page. It said it was for new Perl users. I'm not a new Perl user, so I ignored it.
21:20 jnthn Tene: At parse time though? For certain?
21:20 Tene jnthn: the parse for recognized types is different.
21:20 jnthn Yes, I know.
21:21 Tene jnthn: check out grammar.pg:704
21:21 Tene it modifies @?BLOCKS at parse time
21:21 Tene do I need to do that?
21:21 lichtkind DanielC: padre is not that bad
21:21 lichtkind DanielC: but like i said i write a perl editor too :)
21:21 Tene oh, I can say ::Foo.new()
21:21 Tene and it works
21:22 mberends DanielC: Padre is excellent for Perl 5. The Perl 6 plugin is new and a bit flaky but promising.
21:22 StephenPollei rakudo: say $?KERNEL;
21:22 p6eval rakudo 7cfa19: OUTPUT«Symbol '$?KERNEL' not predeclared in <anonymous> (/tmp/oaNw4JAhn8:2)␤in Main (src/gen_setting.pm:3200)␤»
21:22 jnthn Tene: OK, but the important bit is not just that but also on line 902
21:22 DanielC lichtkind: What is it exactly? Just a text editor? What does it do?
21:22 jnthn Tene: is_type does more than just look at the blocks.
21:22 DanielC mberends: Ok. What does it do? The only features I think I use are syntax highlighting and code folding.
21:22 lichtkind DanielC: its called kephra its more an editor but does a lot of neat tricks which help me to be fast
21:22 lichtkind DanielC: he does both
21:23 pmichaud note that "is_type" is likely to change anyway.
21:23 DanielC ok
21:23 pmichaud In STD.pm it's (now)  is_name
21:23 jnthn Tene: Note that it does
21:23 jnthn $I0 = isa check_symbol, 'P6protoobject'
21:23 masak joined #perl6
21:24 jnthn Which means if you have the protoobject available in the NS early enough that will catch it.
21:24 masak good evening, grammar camels.
21:24 lichtkind DanielC: the folding part is also easy controlable with keyboard
21:24 DanielC lichtkind/mberends: Coincidentally, just today I was searching for a good text editor for Perl...
21:24 jnthn good, evening the masak
21:24 mberends lichtkind: both Kephra and Padre are based on Scintilla, so they have lots in common. The emphasis in Padre is on detecting subtle coding errors, and providing appropriate context sensitive help.
21:24 lichtkind DanielC: mberends has nothing to do with kephra
21:24 jnthn <- grammar camel fail
21:24 DanielC o/ masak
21:24 Tene jnthn: I can give you an example in PIR in just a sec...
21:25 mberends yo masak
21:25 masak DanielC: \o
21:25 DanielC mberends: Detecting subtle coding errors sounds good, but it won't work with Perl 6... but you said that there is a Perl 6 plugin...
21:25 masak I was going to stay away from the siren call of #perl6 tonight, but then I found a serialization bug in Match.perl...
21:25 masak rakudo: say ?("say <OH HAI>" ~~ /<Perl6::Grammar::TOP>/); say $/.perl
21:25 DanielC lichtkind: Are you involved in kephra?
21:26 p6eval rakudo 7cfa19: OUTPUT«1␤No result object␤in method Match::!_perl (src/gen_setting.pm:788)␤called from method Match::perl (src/gen_setting.pm:754)␤called from Main (/tmp/ygcAcyzQNz:2)␤»
21:26 * masak submits rakudobug
21:26 pmichaud masak: it's almost certain that won't work (for a while)
21:26 lichtkind DanielC: im main dev :)
21:26 pmichaud right now Rakudo can't parse without its action methods.
21:26 pmichaud but one can do
21:26 masak pmichaud: oh. why not?
21:26 DanielC lichtkind: Ok, so I know who to blame for bugs :-)
21:26 lichtkind DanielC: yes
21:26 pmichaud because the action methods are what enter symbols into the parser's symbol table.
21:27 pmichaud and do other various things.
21:27 masak I see.
21:27 Limbic_Region joined #perl6
21:27 lichtkind DanielC: but please use recent version (0.4.1)
21:27 DanielC lichtkind: How would you compare Padre and Kephra? I have never used either of them. I'm just about to download both.
21:27 pmichaud maybe
21:27 masak and here I thought I had a quick-and-easy way to parse Perl 6 in Perl 6. :)
21:27 mberends DanielC: yes azawawi++ and szabgab++ make the Perl 6 plugin for Padre, there is also #padre on freenode
21:27 pmichaud rakudo:  my $match = Perl6::Grammar::TOP.parse("say <OH HAI>", :action(Perl6::Grammar::Actions.new));
21:27 p6eval rakudo 7cfa19: OUTPUT«too few arguments passed (0) - 2 params expected␤in Main (src/gen_setting.pm:0)␤»
21:28 pmichaud or something like that.
21:28 pmichaud oh
21:28 dalek rakudo: 77db80c | tene++ | src/ (2 files):
21:28 dalek rakudo: Fix loading foreign libraries.
21:28 dalek rakudo: Import the proper namespace for foreign libraries.
21:28 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​7db80c3fb3b9ea62b5bea058ee0316c58e87a8a
21:28 pmichaud rakudo:  my $match = Perl6::Grammar.parse("say <OH HAI>", :action(Perl6::Grammar::Actions.new));
21:28 p6eval rakudo 7cfa19: OUTPUT«Method 'parse' not found for invocant of class ''␤»
21:28 lichtkind DanielC: padre is bit more aggressive both in marketing also in get thing running and making sane architecture later
21:28 jnthn Tene: You figured it?
21:28 pmichaud I might be able to get that to work.
21:28 masak pmichaud: I encountered that when I tried also.
21:28 masak pmichaud: that would be awesome.
21:29 Tene jnthn: no, I didn't.  making a PIR demo.
21:29 jnthn Tene: OK. :-)
21:29 pmichaud since I now understand the relationship between Cursor, Match, and Grammar a bit better, getting it to work there is much more likely.
21:29 pmichaud (TimToady++ for explanations)
21:29 jnthn masak: oh btw...
21:29 masak jnthn: mm?
21:30 jnthn rakudo: class Foo { has $.answer; submethod BUILD { $!answer = 42 } }; my $the = Foo.new; say $the.answer
21:30 p6eval rakudo 7cfa19: OUTPUT«42␤»
21:30 masak jnthn++
21:30 jnthn masak: You can haz working-er BUILD. :-)
21:30 masak wohay!
21:31 jferrero joined #perl6
21:31 masak that means Druid, proto and perhaps a few other projects can now be rewritten to take advantage of that.
21:31 jnthn :-)
21:31 Tene rakudo error reporting lies...
21:32 Tene claims there's a null pmc access in src/gen_setting.pm:441
21:32 Tene which is, in its entirety: # vim: ft=perl6
21:32 jnthn fail
21:32 jnthn Is that the last line of the setting by any chance?
21:32 pmichaud it doesn't lie
21:33 Tene not the last line
21:33 pmichaud that's just the last annotation in the source
21:33 pmichaud (okay, that's lying, I suspect)
21:33 jnthn :-)
21:33 jnthn I also suspect that once we fall out of annotated code, then the annotation holds for any code that follows.
21:33 pmichaud yes.
21:33 jnthn So yes, it really lies. :-)
21:34 jnthn But it does its best not to.
21:44 justatheory joined #perl6
21:46 decasm left #perl6
21:48 PhatEddy joined #perl6
21:49 masak viklund: ping.
21:52 justatheory joined #perl6
21:54 mberends masak: viklund must be afk, notified him that november-wiki.org was down but no reaction yet
21:54 masak ok.
21:54 masak november-wiki.org is down? :/
21:54 mberends 500 internal server error
21:55 masak ay ay. :(
21:55 Tene I (again) wish there was a way to ask rakudo to allow pir-level backtraces
21:55 Tene :( :( :(
21:56 masak rakudo: my $x; $x.HOW.say
21:56 p6eval rakudo 77db80: OUTPUT«Method 'say' not found for invocant of class 'P6metaclass'␤»
21:56 masak pmichaud: is P6metaclass outside of the Object hierarchy somehow?
21:56 jnthn Tene: All you do is comment out the push_eh trap and the pop_eh below it in perl6.pir
21:57 masak my immediate reaction is for $x.HOW.say to print something, not to fail.
21:57 Tene jnthn: oh, right
21:57 jnthn masak: What exactly would you want it to print? :-S
21:58 jnthn masak: But once you're playing in HOW territory, then probably most bets are off.
21:58 masak jnthn: I dunno. P6metaclass<0xCAFEBABE> or something. just not fail.
21:58 jnthn masak: It is outside the Object hierarchy, but I'm not completely sure I could that as a bug.
21:58 jnthn *count
21:58 masak ok. I have to claim ignorance myself here.
21:59 jnthn Having the metaclass a subclass of Any kinda presents a bootstrapping problem. ;-)
21:59 jnthn Or Object for that matter.
21:59 jnthn Though it may be a solvable one.
22:00 jnthn Not sure. Not quite got the brain cycles to think it through at the moment either. :-)
22:00 masak ah. starting to see the problems now. :)
22:00 * masak closes that ticket
22:01 StephenPollei rakudo: my $x; say $x.HOW
22:01 p6eval rakudo 77db80: OUTPUT«␤»
22:01 PhatEddy rakudo: sub b { { say @_[ 0 ] } }; b(5);
22:01 p6eval rakudo 77db80: OUTPUT«Null PMC access in isa()␤in sub b (/tmp/iYWJ5fUYhT:2)␤called from Main (/tmp/iYWJ5fUYhT:2)␤»
22:01 masak PhatEddy: nice one!
22:01 PhatEddy rakudo: sub b {say @_[0]; if 1 { say @_[ 0 ] } }; b(5);
22:01 p6eval rakudo 77db80: OUTPUT«5␤Use of uninitialized value␤␤»
22:02 masak PhatEddy: was that an original Null PMC access, or did you pull it from an RT ticket?
22:02 PhatEddy I think these are variants of RT #60408
22:02 masak ah, ok.
22:03 PhatEddy will probably append the variants and a workaround to the ticket
22:03 masak excellent.
22:03 masak PhatEddy++
22:03 PhatEddy rakudo: sub b {my @a = @_; say @_[0]; if 1 { say @_[ 0 ]; say @a[0] } }; b(5);
22:03 p6eval rakudo 77db80: OUTPUT«5␤Use of uninitialized value␤␤5␤»
22:05 pmichaud There's still an issue in rakudo that any use of @_ in a block makes it act like a parameter.
22:05 pmichaud Haven't fixed that one yet.
22:06 pmichaud I ended up having to fix something else first, although I forget what that "something else" was now.
22:11 sri_kraih joined #perl6
22:11 [particle]- just noting that in the ticket might help
22:11 [particle]- mebbe phateddy can do that, too
22:14 [particle]- pmichaud: rakudo is in its own hll now, right?
22:14 masak is there a way to bind methods without declaring them?
22:15 masak something like method foo() { ... }; &bar ::= foo;
22:15 masak uh, &bar ::= &foo;
22:16 masak what I'm after is a way of declaring method synonyms.
22:16 PhatEddy [particle-]: will do so - thx
22:16 [particle]- aliases?
22:16 masak [particle]-: yes, I think so.
22:16 masak how?
22:17 [particle]- hrmm, i'd need to reread S11 carefully on that one
22:18 japhb joined #perl6
22:18 Tene jnthn: http://gist.github.com/123283
22:18 Tene jnthn: try changing ::lolcat.new() to lolcat.new().
22:18 masak next question: how do I declare a user-defined operator as chained? the synopses don't seem to say.
22:20 * [particle]- has to run :(
22:21 Tene pmichaud: any ideas about what I'm asking with http://gist.github.com/123283 ?  Can you confirm whether or not I need to poke at the compiler's @?BLOCKS to register a type name?
22:21 mberends afk & sleep(6*3600)
22:22 * Tene AFK, flying.
22:23 StephenPollei as assoc:chained http://perlcabal.org/syn/S​06.html#Subroutine_traits
22:24 masak StephenPollei: thank you.
22:24 StephenPollei is assoc
22:24 masak assoc:chain, it seems.
22:25 masak uh, assoc<chain>.
22:25 StephenPollei yes sorry is assoc:chain
22:25 DanielC Man.. Padre is taking forever to install...
22:25 StephenPollei or whatever, I'm rusty, trying to read up again before I write tests
22:25 PerlJam is assoc('chained')
22:25 PerlJam :-)
22:26 lichtkind does anybody know how to subscribe to plant perl?
22:26 masak rakudo: sub infix:<!+>($a, $b) is assoc<chain> { $a * $b }; say 7 !+ 6
22:26 p6eval rakudo 77db80: OUTPUT«Use of non-existent trait.␤42␤»
22:27 masak how to specify the signature of such an operator? is it exactly the same as a non-chained one?
22:27 masak I guess it can't be...
22:27 PhatEddy joined #perl6
22:27 masak rakudo: sub infix:<!+>(*@a) is assoc<chain> { [*] @a }; say 7 !+ 6 !+ 10
22:28 p6eval rakudo 77db80: OUTPUT«Use of non-existent trait.␤420␤»
22:28 masak hm, it complains but works :)
22:28 StephenPollei Meaning of $a op $b op $c  --> ($a op $b) and ($b op $c)  ---
22:28 StephenPollei I think it just fets called several times, shouldn't change prototype
22:28 masak ok.
22:29 masak rakudo: say 0 ^^ 1 ^^ 1;
22:29 p6eval rakudo 77db80: OUTPUT«␤»
22:29 masak rakudo: say 0 ^^ 1;
22:29 p6eval rakudo 77db80: OUTPUT«1␤»
22:29 masak rakudo: say 0 ^^ 1 ^^ 0 ^^ 1;
22:29 PerlJam masak: the signature is a trait just like associativity. i.e., they are orthogonal.
22:29 p6eval rakudo 77db80: OUTPUT«␤»
22:30 masak hm, I can't make the above fit with the meaning of assoc:<chain>.
22:30 masak could someone clarify?
22:30 StephenPollei rakudo: sub infix:<!+>(*@a) is assoc:<chain> { [*] @a }; say 7 !+ 6 !+ 10
22:30 p6eval rakudo 77db80: OUTPUT«Malformed routine definition at line 2, near "infix:<!+>"␤in Main (src/gen_setting.pm:0)␤»
22:31 jnthn http://use.perl.org/~Jonath​anWorthington/journal/39072 # first grant progress post
22:31 masak oh, wait. infix:<^^> is probably assoc<list>
22:31 masak jnthn++
22:31 masak ...which is also what I wanted, I think.
22:31 StephenPollei rakudo: sub infix:<!+>(*@a) is assoc('chain') { [*] @a }; say 7 !+ 6 !+ 10
22:31 p6eval rakudo 77db80: OUTPUT«Use of non-existent trait.␤420␤»
22:31 jnthn masak: Looks like list ass to me.
22:32 masak jnthn: a poem in the beginning of the post. nice!
22:32 jnthn ...wow, that's not the way to abbreviate associative...
22:32 jnthn masak: Aye. :-)
22:32 masak ok, that clears up that.
22:33 masak I think I'll head to bed before I can think of another question.
22:33 StephenPollei rakudo: sub infix:<!+>(*@a) is assoc('list') { [*] @a }; say 7 !+ 6 !+ 10
22:33 p6eval rakudo 77db80: OUTPUT«Use of non-existent trait.␤420␤»
22:33 jnthn use of NYI trait more like...
22:33 * masak submits TODO ticket
22:35 yary_2 joined #perl6
22:39 Tene jnthn: I have example for you in gist up there a bit ^
22:41 jnthn Tene: I saw, I didn't see anything obviously wrong in what you pasted...
22:41 Tene jnthn: I'd like to use it without the ::
22:41 Tene leading
22:41 jnthn Tene: Oh, I know that.
22:41 jnthn Tene: I mean, I don't think the reason you can't lies in a mistake in what you pasted
22:41 jnthn It's something elsewhere.
22:42 Tene jnthn: right... I think something needs to happen at parse time.
22:42 pmichaud I'm also looking at it.
22:42 Tene I should experiment with moving the use() call to parse time
22:43 pmichaud the use() call is already parse time.
22:43 jnthn We are doing it there though.
22:43 jnthn use($name, :import_to(@?NS ?? @?NS[0] !! ''));
22:43 jnthn And it looks like that imports too.
22:43 jnthn Or so it appears.
22:43 pmichaud where does the lolcat proto get exported?
22:44 snarkyboojum joined #perl6
22:44 Tene oh, right, action methods are called whil parsing, not after
22:44 jnthn Right.
22:44 jnthn Thus why I'd expect this to work.
22:44 Tene pmichaud: check my last rakudo commit
22:44 pmichaud Tene:  I did.
22:44 pmichaud I'll check again.
22:44 Tene that exports the ns.
22:45 pmichaud Huh?
22:45 pmichaud exporting from the lolcat stuff, I mean.
22:45 pmichaud the rakudo commit looks like it's working on the importing of stuff
22:45 pmichaud not exporting.
22:46 Tene pmichaud: right... it gets the namespace from parrot.load-library
22:46 Tene the ns has the proto
22:46 pmichaud huh?
22:46 Tene I may be confused. :)
22:47 pmichaud I know what you're saying confuses me :-)
22:47 pmichaud just a second, let me trace back
22:47 jnthn Tene: Are you expecting to to find the proto through the namespace?
22:47 jnthn Rather than having the proto in the export list?
22:47 pmichaud in lolcat, you're exporting "demo"
22:47 pmichaud where does the proto itself get exported?
22:48 Tene pmichaud: isn't the proto in parrot;lolcat ?
22:48 pmichaud note that there's a parrot;lolcat namespace _and_ a parrot;lolcat object.
22:48 pmichaud they aren't the same.
22:48 pmichaud eventually the protoobjects need to support a hash interface so they can act like a namespace, yes.
22:49 pmichaud but I haven't worked that part out completely.
22:49 * jnthn really needs to rest - back tomorrow
22:49 Tene pmichaud: i'm just setting the namespac, and when I get-global it, I get a proto
22:49 pmichaud I don't understand "setting the namespace"
22:50 Tene in parrot.load-lib I get the namespace, stuff it in the hash I return
22:50 pmichaud checking.
22:50 Tene in rakudo'suse, I get it from the hash, and set-global it
22:50 pmichaud where would I find parrot.load_library?
22:51 Tene runtime/parrot/languages/parrot/parrot.pir
22:51 pmichaud $P0 = get_hll_namespace name
22:51 pmichaud library['namespace'] = $P0
22:51 pmichaud ?
22:51 Tene airplane wants my phone off soon, may disappear at any second.
22:51 Tene yes
22:51 pmichaud That gets the namespace.  It doesn't get the protoobject.
22:52 pmichaud The protoobject would be   $S0 = pop name;   get_hll_global name, $S0
22:52 pmichaud note *get_hll_global* as opposed to *get_hll_namespace*
22:52 Tene after I set-global that object elsewhere, get-globaling elsewhere gives the protoobject
22:52 pmichaud get_hll_namespace always retrieves a namespaces.
22:52 Tene afaict
22:52 pmichaud I'm pretty sure that's not the case.
22:52 pmichaud or that there's something else going on that explains what you're seeing.
22:53 pmichaud I'm quite sure that library['namespace'] holds the namespace and not the protoobject.
22:53 justatheory joined #perl6
22:53 Tene should I instead, ideally, also have a 'class' attribute of the library hash?
22:53 pmichaud Try checking the type of $P0 after the get_hll_namespace call.
22:53 Tene pmichaud: in that example, I can call lolcat::demo()
22:53 pmichaud sure, because you imported the namespace.
22:54 Tene so I can access something in the namespace.
22:54 pmichaud i.e., the namespace is what is held at 'lolcat'.  That makes sense to me.
22:54 Tene I can also call ::lolcat.new()
22:54 pmichaud I'm surprised by that.
22:54 Tene what would you like ideally?  door closed.
22:54 pmichaud I don't know yet, I need time to think about it.
22:55 pmichaud I also need to explore Parrot namespaces a bit.
22:55 Tene :)
22:55 Tene Okay.
22:55 Tene afk
22:55 pmichaud I guess my question is whether the entire namespace actually belongs in the imported hll.
22:55 pmichaud Somehow I doubt that.
22:55 pmichaud I think only the symbols should appear.
23:00 hercynium joined #perl6
23:02 TimToady pmichaud: there's a $i++ performance Q in p6u you might want to speak to
23:03 pmichaud TimToady: thanks.  Have the subject line handy?  My inbox is kinda fullish.
23:03 TimToady kudo-current loop 2-3 orders of magnitude slower than perl 5?
23:03 TimToady s/^/ra/
23:04 mizioumt1 left #perl6
23:04 skids joined #perl6
23:07 * Limbic_Region kicks pmichaud hard for presenting so many good talks at YAPC::NA back-to-back-to-back
23:08 pmichaud I didn't schedule them back-to-back-to-back.  Blame the organizers for that.  I'm fully happy if we broke them up a bit :-)
23:08 Limbic_Region pmichaud - any chance someone is taking video of your talks?
23:08 pmichaud I don't know.  I hope so.  But my experience is that the videos never seem to make it online where people can see them.
23:08 Limbic_Region I don't want to miss any but I haven't figured out how to be in two places simultaneously
23:09 pmichaud At any rate, I didn't request back-to-back talks.  And there are a few talks on Monday that I'd like to go see as well, and I haven't figured out how to do that either.
23:11 Limbic_Region pmichaud - did you see http://use.perl.org/~jjore/journal/38995 and specifically the pointer to http://yapc.tv  ?
23:12 pmichaud Limbic_Region: no, I didn't!  Thanks!
23:17 kate21de1 joined #perl6
23:18 krakan joined #perl6
23:18 rhr joined #perl6
23:19 andreasg_ joined #perl6
23:30 Sark joined #perl6
23:30 Infinoid joined #perl6
23:32 kate21de joined #perl6
23:45 Tene joined #perl6
23:55 takadonet joined #perl6
23:55 takadonet hey everyone
23:56 pmichaud TimToady: posted a response, thanks for pointing it out.
23:56 pmichaud dinnertime.
23:57 s1n @seen masak
23:57 s1n bleh
23:58 cls_bsd joined #perl6
23:59 nihiliad joined #perl6

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

Perl 6 | Reference Documentation | Rakudo