Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-06-17

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:00 Limbic_Region yeah - my first published article http://www.perl.com/pub/a/​2005/06/16/iterators.html
00:00 Limbic_Region hopefully my next one will be on Pugs/Perl6
00:00 wolverian congratulations!
00:00 wolverian Limbic_Region++
00:01 geoffb Congrats, Limbic_Region!
00:01 * geoffb is actually writing the outline for his next perl.com article.  :-)
00:02 Limbic_Region thanks
00:03 Limbic_Region I actually have an idea for a series of mind dumps that I had originally intended for p5, but I am considering p6 for now
00:03 geoffb And I promise everyone here that I will try to convince chromatic to let me do one on OpenGL with pugs . . . if 'use SDL::OpenGL--perl5;' gets fixed (hint hint :-)
00:04 mugwump chromatic already has a SDL for parrot, geoffb ... wrapping that would be über-cool
00:05 geoffb mugwump, yep, I know -- but afaik he has not done the OpenGL part.
00:05 mugwump aha
00:05 lumi_ has quit IRC (Read error: 104 (Connection reset by peer))
00:06 geoffb mugwump, and wrapping it would require more skills than I have at the moment . . . and getting more skills in that area is increasingly at odds with falling bank account balance.  :-/
00:06 mugwump where are you?  want a job in NZ?  :)
00:06 mugwump or did I already ask you :)
00:06 mugwump don't worry, it's not working with me
00:06 mugwump ;)
00:06 justatheory has quit IRC ()
00:07 QtPlatypus mugwump: Thats almost tempting, though I live in australia not NZ
00:07 mugwump easier for you then QtPlatypus
00:07 geoffb mugwump, a few miles from O'Reilly HQ in Northern California . . . so the NZ job would have to be telecommuted.  :-)
00:07 geoffb Since I hear it's damn near impossible to actually move there to work . . . .
00:08 mugwump who did you hear that viscious lie from?  all you need to do is find an employer who's desperate enough to give you an offer and then wait for immigration to give you a work visa
00:08 * geoffb mentally highlights 'desperate enough' and 'wait for ... a work visa'
00:09 geoffb Does NZ allow someone to consult to an NZ company without an NZ work visa?
00:09 mugwump of course
00:10 * geoffb understands exactly zero of international work rules, despite having managed a team in India -- HR handled all that craziness
00:10 * Limbic_Region worked as a contractor in S. Korea for a year and a half
00:11 Limbic_Region but it was for a US company
00:11 Limbic_Region mad tax breaks
00:11 geoffb That had to be interesting, Limbic_Region . . . .
00:11 vcv has quit IRC (Read error: 110 (Connection timed out))
00:11 lumi_ has joined #perl6
00:11 mugwump you might face a very short limit on the length of a visa you can get to do consulting like that though
00:12 geoffb Someday when I have free time, I'll probably learn one of the CJK languages . . . but I can't decide which one.  My dad speaks Mandarin, but that's only a mild push.
00:12 geoffb mugwump, how short?
00:14 mugwump perhaps look around on http://www.immigration.govt.nz/migrant/​stream/work/worktemporarily/default.htm
00:14 geoffb All of my contracts so far have been to local (within 100 miles) companies, so this is all interesting stuff to me
00:16 geoffb mugwump, thanks, will read after dinner.
00:16 geoffb And speaking of which
00:16 geoffb geoffb & # dinner
00:21 nothingmuch has quit IRC ()
00:30 arcady has quit IRC ("Leaving")
00:39 Limbic_Region has quit IRC ("tiuq\")
01:18 geoffb Some of the stuff on the Immigration New Zealand page is odd, and some is well . . . creepy
01:18 vcv-- has quit IRC (Read error: 54 (Connection reset by peer))
01:19 geoffb In the odd category, you're not allowed into NZ if there is any other country that you can't get into.  That's paranoia.
01:22 geoffb On the creepy side . . . if no health insurance and not from .au or .uk, it looks like you don't even get emergency medical treatment.
01:22 geoffb wierd
01:22 mugwump this isn't a utopia.  it's a progressive country, for sure, but still part of the old empire like everywhere else
01:23 mugwump they don't stop to ask for credentials for medical treatment :)
01:23 geoffb heh
01:23 mugwump I actually think privatised health is a good idea, largely because I think standardising on Western medicine is a bad idea in principle (and practice)
01:24 mugwump the poor of course get subsidised doctor visits
01:25 geoffb Fair enough.  FWIW, the health requirements page reads like a purity pamphlet.
01:25 geoffb Ah well.
01:25 geoffb I'm sure US equivalents are just as silly
01:25 mugwump public hospital treatment is free apparently
01:26 mugwump if you don't mind being butchered :-)
01:26 * geoffb winces
01:26 * mugwump prefers tiny needles to scalpels any day
01:27 geoffb I remember one of my employees from India explaining the stack of documents he had to present to be given a visa to come here for a week -- it was insane.  Put my first mortgage documents to shame.  And in California, that's saying something.
01:27 geoffb "Why can't we all just get along . . . ?"
01:28 mugwump This is all new, too.  Countries never bothered with immigration controls before the world wars
01:28 * geoffb blinks
01:28 geoffb You know, I never thought of that before.
01:28 mugwump all at once massive walls were erected to segregate the entire of humanity
01:29 geoffb I mean sure, the current reality makes a complete lie out of the Statue of Liberty, but I thought of that as mostly a US dain bramage.
01:30 mugwump the 20th century saw a lot of people in power passing legislation to widen the gaps in the class system whilst appearing to outlaw it.  And it was entirely successful.  2% of the population now control 25% of the wealth
01:31 mugwump damn I hate XML
01:31 geoffb nodnod
01:31 geoffb (to both)
01:32 geoffb I thought it was a good idea . . . about the same time I thought DocBook was a good idea.  Then I spent some time with both.
01:35 geoffb I even went so far as to implement a change control system with an XML data store.  Let's just say searching was . . . suboptimal
01:35 geoffb Thankfully most of that was abstracted behind a data store API, so as to be swapped out for something else, but sheesh.  Taught me a lesson or two.
01:36 wolverian there is one good side to XML. there are libraries to read it.
01:36 mugwump ha!  Imagine how I felt when Jean-Louis Leroy announced version 3 of Tangram, which had dropped support for SQL but now used an XML data store!
01:36 geoffb mugwump, OW
01:36 * wolverian boggles
01:37 mugwump ok, so he wrote it so it could have extensible backends and so now also has a sketched SQL back-end, but all the same I ran screaming
01:38 vcv has joined #perl6
01:47 geoffb mugwump, who do you work for, anyway?
01:47 mugwump a data mining outfit.  www.bnz.marketview.co.nz is probably the best site to look at
01:48 mugwump actually, http://bnztest.marketview.co.nz/ is the site I re-engineered :)
01:48 mugwump <meta name="generator" content="GNU Emacs, Perl and Template Toolkit" />
01:49 geoffb heh
01:53 geoffb Interesting . . . so the data mined is the transactions between BNZ and the corporation paying for the service?
01:54 mugwump nope.  all BNZ customers, all their card spend
01:55 geoffb Man, banks must make a killing doing this . . . no wonder they're all too happy to give away free checking accounts.
01:55 mugwump so basically we have details of something like 13% of all EFTPOS and credit card transactions in NZ
01:55 geoffb gotcha, realized that a couple pages on
01:55 geoffb And that's way the heck into Statistically Significant.  :-)
01:55 mugwump Well, it is a fairly new development that any bank would do this
01:56 mugwump yes, the margin of error can be pretty low.  there is the odd bias due to the fact all the customers are the type that respond to a certain type of marketing ;)
01:56 geoffb :-)
01:56 Darren_Duncan has quit IRC ()
02:01 _meppl_ gute nacht  -  good night
02:01 mugwump auf wiedersehen! schlafen sie gut
02:02 _meppl_ ;)
02:03 geoffb g'night _meppl_
02:03 _meppl_ ;)
02:14 _meppl_ has quit IRC (Remote closed the connection)
02:18 lumi_ has quit IRC (Read error: 54 (Connection reset by peer))
02:19 lumi_ has joined #perl6
02:28 dkf has quit IRC ()
02:39 vcv-- has joined #perl6
02:40 justatheory has joined #perl6
03:11 rafl has joined #perl6
03:11 vcv-- has quit IRC (Read error: 54 (Connection reset by peer))
03:11 rafl_ has quit IRC (Read error: 54 (Connection reset by peer))
03:11 locksy has quit IRC (Read error: 110 (Connection timed out))
03:20 vcv has quit IRC (Read error: 145 (Connection timed out))
03:32 sdtr443w has joined #perl6
03:33 sdtr443w Does anybody have that perl6.png timeline image?
03:33 sdtr443w It looks like the original isn't being hosted anymore.
03:34 geoffb Pull it out of Autrijus's Apocalypse Now talk?
03:35 justatheory has quit IRC ()
03:35 justatheory has joined #perl6
03:35 justatheory has quit IRC (Client Quit)
03:39 sdtr443w Is that this "Perl 6 is Here Today" thing?
03:39 sdtr443w If so, I don't see it (yet)
03:40 geoffb Hmmm, lemme check, I know I saw it in one of his talks, I thought it was that one.
03:42 sdtr443w I wonder if it's working right
03:42 sdtr443w There's a section "Obligatory timeline picture"
03:42 geoffb            draw        => \&draw_cube,
03:42 geoffb damn, wrong paste
03:42 geoffb http://pugscode.org/perl6-timeline.png
03:43 geoffb Is that the one you were looking for?
03:43 sdtr443w Yeah
03:44 sdtr443w I'm giving a presentation on Perl6 tomorrow and I realized my slides don't have enough non-sequiturs to qualify as a Perl 6 presentation.
03:45 geoffb LOL
03:45 geoffb who to?
03:45 sdtr443w my work
03:45 geoffb recurse, svp . . .
03:45 sdtr443w I'm thinking next of making up an example of a continuation demonstrating Perl development when funding runs out and is restored.
03:46 geoffb heh
03:46 sdtr443w But I haven't seen any continuation code in Perl 6 yet and can't think of what I should do.
03:46 geoffb nod
03:46 mugwump ironic
03:46 pdcawley sdtr443w: There's a non deterministic sudoku solver in examples that uses continuations, but I'm not sure it uses the current syntax.
03:47 wolverian what's the current syntax? :)
03:47 pdcawley It's a deeply inefficient, brute force, algorithm, but delightfully simple to write.
03:47 sdtr443w pdcawley -- I can still post it in the slides the just claim "This has become obsolete like half the presentation"
03:47 pdcawley wolverian: Stop asking the hard question...
03:48 sdtr443w And I was going to joke about how I never have gotten a reply in the perl 6 newsgroup.
03:48 wolverian pdcawley: oh, sorry. damn ruby for botching the continuations so we can't learn from it either.
03:48 wolverian (the interface, anyway.)
03:48 sdtr443w Now I'm hoping I can find the fireworks background Larry Wall used in a State of the Onion presentation
03:48 sdtr443w Or I'll just use the periodic table of symbols
03:49 pdcawley Ruby's continuations are botched? It's just call/cc isn't it, which is a perfectly decent interface to continuations.
03:49 wolverian pdcawley: I'm not sure. the interface confuses me.
03:50 wolverian (the block thing.)
03:50 wolverian or maybe it's just the example in the module doc that confuses me.
03:50 pdcawley wolverian: It's pretty much the standard way of getting at continuations.
03:50 wolverian right, okay.
03:50 wolverian then it's the example confusing me. :)
03:50 mugwump are there any concise descriptions of these two(?) types of continuations anywhere?
03:51 pdcawley mugwump: Just worry about full continuations.
03:51 sdtr443w Also, the puppy on pugscode -- was that just stolen off images.google.com or something?
03:52 mugwump can this be described simply, pdcawley ?
03:52 pdcawley Consider a function call, the continuation of that call is the place the function will return to.
03:52 sdtr443w I think I'll need to make that Perl funding continuation example after all if people aren't certain how they work haha.
03:52 pdcawley In languages like C, that's simply a stack frame.
03:52 mugwump ok, so you're rewiring the "return stack", which at the same time becomes a hazy concept
03:54 pdcawley It still looks like a stack, most of the time, but it's a singly linked list. If you save a continuation somewhere, you save one of those frames in a lexical variable, so that 'bit' of the stack hangs around after you return the first time.
03:55 mugwump ok, so the "second type" of continuations I was think of are actually coroutines - which is more like a sub that includes its line of execution as a lexical variable that is preserved between calls.
03:56 mugwump s/think/thinking/
03:56 pdcawley So: my $continuation; my $i = 0; call_cc { $continuation = $^cc }; ...; $continuation unless ++$i > 10;
03:56 pdcawley ^ is a simple loop using continuations.
03:56 pdcawley In the call_cc block, $^cc is the place that call_cc will return to.
03:57 mugwump whereas coroutines are more useful for iterators
03:57 wolverian I think that's the thing that confused me about the example. it passes in the continuation to the block but immediately exits the block.
03:57 pdcawley wolverian: Yeah, the block is just saving a bookmark to come back to later.
03:57 wolverian pdcawley: that feels somewhat useless to me, as an interface. why a block at all?
03:57 pdcawley More advanced uses of continuations do complicated things in the block, but generally, just saving it somewhere is handy.
03:57 sdtr443w Ahh Good.  I finally made my slides Perl6-compatible.
03:57 wolverian (I of course understand it useful when you're actually doing things _in_ the block)
03:58 wolverian maybe I just want a call_cc and a save_cc or whatever.
03:58 pdcawley How else would you do it. If I want to save a bookmark in the same place I have to do something like:
03:58 mugwump ok, so what about a more concrete example of where a continuation is useful - an exception handler
03:58 mugwump sorry, you first pdcawley
03:58 sdtr443w I added that timeline, the Pugs puppy, that gag Perl6 book, and used the firework background from Larry Wall's State of the Onion speech.
03:59 sdtr443w "With Perl6, every day is Hawaiian Shirt Friday!"
03:59 pdcawley my $cont; my $i = 0; sub { $cont = &?CALLER_CONTINUATION }.(); ...; $cont() unless ++$i > 10;
03:59 pdcawley Essentially, you still end up needing to call a subroutine at the point where you need the bookmark.
03:59 wolverian pdcawley: I meant something like 'my $cont = current_continuation; ...; $cont()'
04:00 pdcawley wolverian: But that's the wrong continuations.
04:00 wolverian pdcawley: oh?
04:00 RiXtEr has joined #perl6
04:00 pdcawley That will return to the place the function you're currently in returns to.
04:00 mugwump aha, so &?CALLER_CONTINUATION returns the continuation of the current function as a coderef, not the caller's continuation
04:00 wolverian er, no, I mean the current_continuation to return its callcc directly
04:01 mugwump so a better name for it would be &?RETURN_CONTEXT, perhaps
04:01 pdcawley But it returns to the point just before it gets assigned to $cont.
04:01 wolverian ach, don't make my head hurt
04:01 RiXtEr has left "Leaving"
04:02 pdcawley So the first time you call it, $cont becomes a continuation. When you then do $cont(10), it assigns 10 to $cont, and the next time you do $cont(11) (say), it falls over in a heap.
04:02 * geoffb is dreading writing the next section of his article . . . gah.
04:02 * pdcawley would rather it was &?CURRENT_CONTINUATION TBH.
04:02 mugwump or perhaps even &?HERE
04:02 wolverian pdcawley: okay. right.
04:02 pdcawley No. &?THERE. But still not good.
04:03 wolverian by the way, I HATE TWIGILS
04:03 wolverian sorry. now I feel like Juerd.
04:03 pdcawley I really don't like Ruby's lack of 'em though.
04:03 wolverian pdcawley: thanks for explaining that to me.
04:03 wolverian I really didn't quite understand it. :)
04:03 pdcawley A little like democracy: Terrible, but better than every other option.
04:03 wolverian demarchy? :)
04:04 mugwump (benevolant dictatorship)++
04:04 wolverian benevolent
04:04 pdcawley wolverian: Daft as it sounds, the more complicated use in examples/continuations/nondet_sudoku.p6 or whatever it's called might make more sense to you.
04:04 wolverian pdcawley: I'll check it out. thanks!
04:04 * wolverian svk pulls and waits for ten minutes or so
04:05 pdcawley It's been in for a while, have a look anyway.
04:05 wolverian nah, running it already. it won't take quite that long, I exaggerated :)
04:05 * pdcawley notes that it currently doesn't have *any* commentary :)
04:05 mugwump does it work on current pugs?
04:05 pdcawley It didn't when I wrote it :)
04:05 * mugwump is so fucking lazy with a question like that
04:05 wolverian I wonder if larry will really go with a builtin called 'callcc' (not call_cc since it has a _)
04:06 pdcawley wolverian: I kind of hope he leaves it as &?CURRENT_CONTINUATION and lets us write whatever interface we like.
04:06 wolverian pdcawley: what kind of an interface would you like?
04:06 wolverian or do you mean one for each task? :)
04:06 pdcawley I don't know yet. I like flexibility.
04:07 wolverian sure.
04:07 pdcawley The seasoned schemer uses a 'letcc' interface.
04:07 * geoffb is happy he escaped freshman year without becoming *that* seasoned with Scheme
04:07 pdcawley But I can't remember exactly what the difference is :)
04:08 * pdcawley notes that 'the seasoned schemer' is a book. Which you all already knew.
04:09 * pdcawley adds that it's a completely evil book...
04:09 geoffb Berkeley taught with the Abelson/Sussman book (I know that spelling is wrong)
04:10 pdcawley SICP? Another great book, but it doesn't address continuations at all (apart from the continuation passing style used in its explicit control evaluator)
04:10 geoffb yeah, SICP sounds right.
04:10 geoffb I think I sold it as soon as I was out of the class.  One of the few CS books I've ever gotten rid of
04:10 drbean Why?
04:10 pdcawley Heh. Made your head hurt?
04:11 geoffb Nope.  Well, yeah, but not for the usual reason.
04:11 geoffb I understood it fine.  I just *hated* it.
04:11 drbean It's very wordy book.
04:11 geoffb It's taken me years to come to an uneasy peace with the fact that Lisp exists
04:11 pdcawley Heh. Lisp is a language one admires rather than uses.
04:12 geoffb :-)
04:12 pdcawley s/admires/respects/
04:12 geoffb yeah, that's closer.
04:12 pdcawley s/respects/plunders from/
04:12 geoffb Actually, I really wish he'd taught the class in Logo, if he was going to pick a Lisp . . . that's the only Lisp I ever had fun with.
04:13 geoffb Mostly because you could get it as a cartridge for a really ancient piece of home computer equipment
04:13 geoffb So I played with the pretty pictures when I was too young to be appalled
04:14 * geoffb notes that pdcawley is iterating towards reality.  :-)
04:14 * pdcawley started to almost like lisp when he finally got lisp macros.
04:15 * SamB thinks lisp would be cooler if it had been broken into digestible chunks called "modules"
04:15 pdcawley All of a sudden that ugly but regular syntax made enormous amounts of sense -- you put up with it because it enables you to do amazing things.
04:15 geoffb My relationship with a lot of languages comes down to "hmm, interesting ideas . . . now let's transplant them into Perl"
04:15 wolverian I want to be ugly AND amazing.
04:15 pdcawley Common Lisp is broken up into packages.
04:16 SamB pdcawley: the documentation sure isn't!
04:16 geoffb Speaking of interesting language features . . . I thought Boo's idea of getting lax typing in a strictly typed language by creating the special type 'duck' was beautiful.
04:17 * SamB still does not get the difference between " and : in logo
04:17 geoffb I'm sure it's been used before, but that was the first time I'd come across it as an advertised language feature
04:17 SamB um, you hadn't heard of duck typing before?
04:18 geoffb no, no, I know duck typing.
04:18 geoffb The part I liked was that he actually had a type 'duck'.  It's just the kind of joke I find funny, I guess.
04:18 pdcawley I'd not come across *calling* it duck typing until recently.
04:19 SamB yeah, that is a funny thing to call it ;-)
04:19 SamB (the type, not the technique)
04:19 geoffb :-)
04:19 pdcawley It's a *great* name for the technique. Lovely double meaning.
04:19 geoffb nod
04:20 pdcawley Just wish I'd thought of it when I was arguing with the 'Let's make perl really strict' types back in RFC days.
04:22 * geoffb realizes that to have any chance at all of explaining the code in front of him in less than a few thousand words, it's going to have to get a lot less "clever"
04:25 pdcawley Or clearer...
04:27 geoffb pdcawley, it's very clever in order to be very general without much code.  So clearer and less clever are probably both going to boil down to less general.
04:27 geoffb Which isn't in this case a horrible thing.
04:27 geoffb I can always explain how to generalize it later
04:28 geoffb For now I'd just be happy not to cause the reader's eyes to cross
04:28 pdcawley Maybe you need a cleverer audience :)
04:28 geoffb heh.
04:28 geoffb Well, the target audience is average Perl coders, raw beginner OpenGL coders
04:29 mugwump right, what an appalling week.  4:30pm on a Friday and I've only just finished the week's work.
04:30 geoffb What day do you normally finish the week's work?
04:30 Khisanth mugwump: taking a week to do the week's work is not good?
04:30 geoffb And if it's Monday or Tuesday, I want your job.
04:30 pdcawley One of the things that's always blown me away about Damian's talks is that he seems to assume a cleverer audience, and the audience lives up to his expectations.
04:30 geoffb Damian's audience is self-selecting . . .
04:30 mugwump geoffb: it's on offer if you can get here soon after 1st July :)
04:30 mugwump don't tell anyone though, it's a secret
04:31 * pdcawley grins. Also, as the adage has it, easy reading is damned hard writing.
04:31 * mugwump looks at jabbot
04:31 Khisanth you are quitting?
04:31 geoffb mugwump, heh.
04:31 geoffb mugwump, and anyway, with next kid coming in August, I'm not going anywhere.
04:32 geoffb pdcawley, very true
04:33 pdcawley Trying to remember who that quotes from. Possibly Orwell.
04:33 geoffb At least I don't have to try to be funny.
04:33 geoffb To hear Douglas Adams tell it, that's just BRUTAL.
04:34 mugwump Khisanth: I'm not quitting, just taking on another job and scaling back this job to 0 hours per week
04:34 geoffb And he's gifted at it
04:34 pdcawley was
04:34 geoffb yes, was, pedant-boy.  ;-)
04:35 pdcawley Well, you know.
04:35 geoffb I prefer to think of him as doing research on another Dirk Gently novel -- in a completely different galactic era
04:36 mugwump he'll be writing the last page and then suddenly notice he's dead
04:36 geoffb :-)
04:37 geoffb Of course, the martians from Stranger in a Strange Land might have a field day with that one.
04:38 mugwump great book that.  I recently read it, after not really grokking any of it and losing interest early at the age of 8
04:38 mugwump or so
04:38 geoffb Did you read the short version or the unabridged version?
04:38 geoffb The latter had much easier flow
04:39 mugwump Not sure.  It was a nice read though, so I guess it must have been more stream of conciousness
04:39 vcv has joined #perl6
04:40 vcv- has joined #perl6
04:40 mugwump I heard an interesting opinion that the books easiest to read, that you just can't put down are the ones written in very short sessions with minimal editing
04:40 pdcawley Tell that to Douglas Adams.
04:41 geoffb Or Dickens . . .
04:41 pdcawley A Christmas Carol was apparently written quickly...
04:42 mugwump it's like code, really... the best code is that not pondered over needlessly for aeons but cleanly written with a purpose and auto-documented
04:42 geoffb I was just commenting that he could get rather . . . boring, and I believe he was known as a speed writer
04:42 pdcawley But that was the style then.
04:42 geoffb mugwump, yes, but you have to be in flow for that to happen
04:42 mugwump $best is a lexical
04:43 geoffb pdcawley, sadly true, which ruined my desire to ever read anything written during that period, let me tell you
04:43 geoffb I mean, some of dickens was cool,
04:43 geoffb but a lot of other others were boring, and BAD
04:44 geoffb I think English Lit permanently turned me off to English writing after Chaucer
04:57 pdcawley Dickens was such a powerful progressive force in Britain at the time though. Not many people read Mayhew, but Dickens did, and *everyone* read Dickens.
05:00 locksy has joined #perl6
05:01 sdtr443w has quit IRC ("Leaving")
05:04 drbean pd, who was Mayhew?
05:04 pdcawley Author of "London Labour and London Poor" one of the earliest socialogical studies of the working classes.
05:05 pdcawley Made public all sorts of horrors.
05:05 pdcawley I've heard him described as an early Studs Terkel.
05:06 vcv- has quit IRC (Read error: 145 (Connection timed out))
05:09 spinclad has quit IRC (brown.freenode.net irc.freenode.net)
05:10 gaal has quit IRC ("goodbye")
05:11 spinclad has joined #perl6
05:18 gaal has joined #perl6
05:23 sapper has joined #perl6
05:29 SamB has quit IRC (Read error: 145 (Connection timed out))
05:30 alinbsp has joined #perl6
05:49 SpectoriS has joined #perl6
05:49 vcv has quit IRC (Read error: 104 (Connection reset by peer))
05:49 azazello has quit IRC ("kthxbye")
05:50 wolverian hmm. I think it's time to set up an svn rep for this little project of mine. yay, first time for me!
05:51 vitaminmoo has quit IRC ("Leaving")
05:51 SpectoriS has left
05:51 SM_ax has joined #perl6
05:53 crysflame has quit IRC (Connection timed out)
05:56 vitaminmoo has joined #perl6
05:56 Shachaf has quit IRC ("'!'")
06:10 nothingmuch has joined #perl6
06:15 Darren_Duncan has joined #perl6
06:16 Darren_Duncan back again
06:18 nothingmuch good morning
06:22 Darren_Duncan yes, though is shortly before midnight here
06:23 Darren_Duncan seems no revisions since I left awhile back ... nothing new to discuss ...
06:23 Darren_Duncan no matter, I'll retire, good night!
06:24 ycheng has joined #perl6
06:24 iblechbot has joined #perl6
06:24 Darren_Duncan has left
06:27 geoffb yay!  Managed to rewrite nasty code block into something more manageable
06:27 geoffb And with that, bedtime for Bonzo.
06:27 geoffb G'night, all.
06:28 gaal ?eval my $x = 5; my $r = \$x; $$r++; $x
06:28 evalbot6 \5
06:29 gaal what am i doing wrong? i want 6.
06:29 gaal don't tell me we don't have references? :)
06:30 revdiablo well, you could use binding
06:30 revdiablo ?eval my $x = 5; my $b := $x; $b++; $x
06:30 evalbot6 \6
06:30 gaal interestingly, this also works:
06:30 gaal ?eval my $x = 5; my $b := $x; $$b++; $x
06:30 evalbot6 \6
06:30 revdiablo but I never heard that references as we know them are going away
06:31 gaal think that's a bug?
06:31 revdiablo it might just be a pugsbug
06:31 gaal i want to give that thing to a sub, which will modify it.
06:31 revdiablo ?eval my $x = 5; $$$$$x++; $x
06:31 evalbot6 \6
06:31 revdiablo ...
06:31 gaal the reference may be to an array element.
06:32 gaal ahem
06:32 gaal that can't be right :)
06:32 gaal but i bet it's in the parser :(
06:33 nothingmuch has quit IRC (Remote closed the connection)
06:33 gaal oh, interesting: if i call foo(@arr[$elem])
06:33 gaal and foo is foo($x is rw)
06:33 gaal then i get what i want
06:34 nothingmuch has joined #perl6
06:34 gaal i didn't expect that to work for anytthing but simple values.
06:34 revdiablo does that use binding behind the scenes?
06:34 gaal i suppose it must; is rw is aliasing.
06:34 gaal it's just that i didn't suspect it'll work for non-simple expressions :)
06:35 revdiablo ?eval my @x = 1..9; my $b := @x[3]; $b++; @x.join("|")
06:35 evalbot6 '1|2|3|5|5|6|7|8|9'
06:35 gaal shall i pugsbugs the $$$$$$$$fast thingie, or do you want to  do it?
06:35 revdiablo it's all you, I'm 5 seconds from falling asleep at the keyboard. :)
06:36 gaal bon nuit!
06:36 * revdiablo waves
06:40 saorge has quit IRC (Read error: 110 (Connection timed out))
06:44 vcv has joined #perl6
07:04 pdcawley worl
07:04 svnbot6 r4730, gaal++ | add test for $$$$$$$$$x incorrectly being parsed as $x
07:04 svnbot6 r4731, gaal++ | refact0r
07:04 Nattfodd has joined #perl6
07:10 alinbsp has quit IRC ()
07:13 vcv has quit IRC (Read error: 145 (Connection timed out))
07:22 nothingmuch has quit IRC (Read error: 60 (Operation timed out))
07:30 nothingmuch has joined #perl6
07:30 vcv has joined #perl6
07:39 QtPlatypus has quit IRC (Read error: 60 (Operation timed out))
07:39 svnbot6 r4732, bsmith++ | Added missing type signatures to Emit.PIR and Pugs.Compile.PIR.
07:45 gaal how's 1 << 2 spelled in p6? (shift)
07:52 alinbsp has joined #perl6
08:02 integral +<< I think, unless it's changed
08:07 vitaminmoo has quit IRC (Remote closed the connection)
08:07 vitaminmoo has joined #perl6
08:19 nnunley_ has quit IRC ("This computer has gone to sleep")
08:24 elmex has joined #perl6
08:41 dada has joined #perl6
08:41 vcv has quit IRC (Read error: 104 (Connection reset by peer))
08:44 vcv has joined #perl6
08:45 broquaint has joined #perl6
08:58 elmex has quit IRC ("leaving")
09:00 nnunley has joined #perl6
09:02 nnunley has quit IRC (Client Quit)
09:02 nnunley has joined #perl6
09:07 vcv has quit IRC (Read error: 145 (Connection timed out))
09:08 SM_ax has quit IRC ("ChatZilla 0.9.61 [Mozilla rv:1.7.7/20050420]")
09:11 QtPlatypus has joined #perl6
09:11 lumi_ has quit IRC (Read error: 131 (Connection reset by peer))
09:12 lumi_ has joined #perl6
09:17 viirya has quit IRC (Read error: 145 (Connection timed out))
09:19 calvin_ has quit IRC (brown.freenode.net irc.freenode.net)
09:19 misc has quit IRC (brown.freenode.net irc.freenode.net)
09:20 viirya has joined #perl6
09:22 calvin_ has joined #perl6
09:22 misc has joined #perl6
09:25 nothingmuch has quit IRC (Read error: 113 (No route to host))
09:25 svnbot6 r4733, autrijus++ | * Pugs.Compile.PIR - Loops!  Real loops, I say!
09:25 svnbot6 r4733, autrijus++ | * save a temp pmc register by calling functions directly.
09:56 dada has quit IRC (Read error: 104 (Connection reset by peer))
10:06 ImustDIE has quit IRC (Read error: 54 (Connection reset by peer))
10:06 svnbot6 r4734, autrijus++ | * empty arglist is now properly handled in parrot trunk.
10:11 kungfuftr seen castaway
10:11 jabbot kungfuftr: castaway was seen 12 days 19 hours 3 minutes 19 seconds ago
10:11 kungfuftr seen theorbtwo
10:11 jabbot kungfuftr: theorbtwo was seen 8 days 8 hours 20 minutes 19 seconds ago
10:12 kungfuftr hhhmmm... suddenly vanished
10:15 integral castaway's been on perlmonks more recently
10:24 vcv has joined #perl6
10:30 nothingmuch has joined #perl6
10:33 integral hmm, haskell question: Emit.PIR has Emit instances for Emit a => [a] and for String, and the code works fine,  but when I use ghci I get complaints when I say emit "string", but this gets used lots in the file itself :-/
10:35 wolverian different contexts? I dunno. :)
10:39 dada has joined #perl6
10:41 nothingmuch has quit IRC (Read error: 148 (No route to host))
10:42 integral oh well, it works when I start using it in my code
10:42 integral maybe it's because -fallow-overlapping-instances doesn't extend to the interactive lines
10:45 vcv- has joined #perl6
10:48 elmex has joined #perl6
10:49 integral Text.PrettyPrint++
10:50 xerox integral, you can either "ghci -f..." or ":set -fallow-overlapping-instance".
10:50 integral ah, cheers, xerox
10:52 pupilzeng has joined #perl6
10:56 meppl has joined #perl6
11:05 xinming has joined #perl6
11:05 svnbot6 r4735, autrijus++ | * instead of using confusing $P12345 numbers, generate
11:05 svnbot6 r4735, autrijus++ |   temp variables with meaningful local names.
11:07 iblechbot has quit IRC (Connection reset by peer)
11:08 nothingmuch has joined #perl6
11:19 Aragone is now known as Ara4n
11:21 jzono1 has joined #perl6
11:21 jzono1 has left "Leaving"
11:22 Forth_ has quit IRC (Remote closed the connection)
11:29 iblechbot has joined #perl6
12:05 integral autrijus: I'm writing a Emit.Perl5 at the moment.   Where's the appropiate place to move class Emit.PIR.Emit to so that both can use it?
12:05 vcv has quit IRC (Read error: 104 (Connection reset by peer))
12:05 svnbot6 r4736, andras++ | vmethods: num padding, spacing and zeroing
12:07 dkf has joined #perl6
12:11 Limbic_Region has joined #perl6
12:14 vcv- has quit IRC (Read error: 145 (Connection timed out))
12:17 elmex has quit IRC ("leaving")
12:18 autrijus integral: oh wow.
12:18 autrijus integral: Emit.hs of course (I think)
12:19 autrijus or Emit.Internals.hs
12:19 autrijus I think Emit/Internals.hs works too
12:19 autrijus or Emit/Common.hs. improvise
12:20 integral ok :-)
12:20 Odin-LAP has quit IRC (Read error: 104 (Connection reset by peer))
12:20 Odin-LAP has joined #perl6
12:20 sbkhh has joined #perl6
12:22 evalbot6 has quit IRC (Remote closed the connection)
12:27 autrijus integral: I have this feeling that the Trans to Perl5 will be much easier to write :p
12:27 autrijus (than PIR, that is)
12:27 integral hmm, maybe.   Classes at least will be interesting I think
12:28 autrijus you can use stevan's perl5 perl6oo kit
12:28 integral I've never got round to looking at that, I'll have to now :-)
12:29 * kungfuftr throws a little genetic algorythmn about
12:30 integral ghci++
12:30 Odin- has quit IRC (Read error: 104 (Connection reset by peer))
13:01 xern_ has quit IRC ("Lost terminal")
13:01 svnbot6 r4737, bsmith++ | Fixed version_h.pl to write out a header file when it doesn't exist before
13:01 svnbot6 r4737, bsmith++ | (eg on a fresh checkout of a branch in your svk)
13:01 svnbot6 r4738, autrijus++ | * PIR - do {...} blocks.
13:03 integral svk++
13:04 autrijus interactively merged? :)
13:04 integral yep, and it can deal with files that don't exist too
13:05 autrijus cool!
13:05 autrijus <- proud of the interactive merge code in svk
13:05 autrijus since that's my first contrib to svk
13:12 Limbic_Region autrijus - so percentage wise, how much of Pugs -> Parrot is done?
13:12 svnbot6 r4739, bsmith++ | Moved the Emit class from Emit.PIR to Emit.Common.
13:12 svnbot6 r4740, autrijus++ | * PIR - do blocks:
13:12 svnbot6 r4740, autrijus++ |     say do {'Hello, World!'}
13:14 autrijus Limbic_Region: what's 100%?
13:14 autrijus the current pugs eval, or entire perl6?
13:14 autrijus Limbic_Region: I'd say about 10% is done.
13:14 autrijus (for the former)
13:14 autrijus but the latter parts can be picked up and contribbed much more easily by others
13:15 autrijus (as is with pugs itself)
13:15 Limbic_Region what I meant was "of what Pugs can do right now" - how much have you gotten working using the new approach
13:16 elmex has joined #perl6
13:16 Limbic_Region but the 10% is misleading if I understand correctly
13:16 Limbic_Region since the hard part (framework) has been done allowing anyone to tinker
13:16 Limbic_Region sound right?
13:19 integral it's not quite done, it's still all stuffed into the one file, Pugs.Compile.PIR
13:19 gaal ?eval my $x = given 1 { when 1 { "rvalue given works" } }; $x
13:20 gaal the eval bot isn't up, but that croaks with "No compatible sub &when"
13:27 gander has joined #perl6
13:29 vcv has joined #perl6
13:31 vcv- has joined #perl6
13:46 nothingmuch has quit IRC (Read error: 113 (No route to host))
13:54 vcv- has quit IRC (Read error: 145 (Connection timed out))
14:03 lumi_ has quit IRC (Read error: 104 (Connection reset by peer))
14:07 * Limbic_Region wonders if he should add a perl6 category to the time capsule http://perlmonks.org/index.pl?node_id=467692
14:08 lumi_ has joined #perl6
14:13 nnunley has quit IRC (Read error: 60 (Operation timed out))
14:13 alinbsp has quit IRC (Read error: 104 (Connection reset by peer))
14:13 nnunley has joined #perl6
14:15 pupilzeng has quit IRC (Read error: 104 (Connection reset by peer))
14:17 pupilzeng has joined #perl6
14:31 mr_ank Limbic_Region: I've done it in the past - and last year I found a floppy disk with pascal code... oh boy!
14:31 svnbot6 r4741, autrijus++ | * blocks now yield the last evaluated expression as result
14:33 Limbic_Region mr_ank - I found some of my BASIC and old DOS batch files the other day
14:38 Enveigler has joined #perl6
14:38 svnbot6 r4742, autrijus++ | * thanks to leo's fix, `say do { do { do { 3 ; 4; 5 } } }` now
14:38 svnbot6 r4742, autrijus++ |   works reliably.
14:39 QtPlatypus ?eval do { do { do { 3 ; 4; 5
14:39 QtPlatypus ?eval do { do { do { 3 ; 4; 5 } } }
14:40 stevan ?eval do { do { do { <dah dah dah> } } }
14:40 Limbic_Region the evalbot isn't here ATM
14:41 * Limbic_Region thinks about defining the wa, ditty, and dum operators
14:42 QtPlatypus wa ditty and dum?
14:42 Ara4n . o O ( dum, dum, dum, dum-da dum, dum-da dum... )
14:43 Limbic_Region do wa ditty ditty dum ditty do
14:45 Limbic_Region QtPlatypus - possible you have never heard the song "Do Wah Ditty"
14:45 QtPlatypus I have heard the song.
14:52 mr_ank the doo doo doo the dah dah dah
14:54 _mml has joined #perl6
15:04 calvin_ has quit IRC (brown.freenode.net irc.freenode.net)
15:04 misc has quit IRC (brown.freenode.net irc.freenode.net)
15:04 misc has joined #perl6
15:04 svnbot6 r4743, autrijus++ | * oops, typo.
15:05 calvin_ has joined #perl6
15:09 crysflame has joined #perl6
15:26 orafu has joined #perl6
15:26 vcv has quit IRC (Read error: 104 (Connection reset by peer))
15:26 svnbot6 r4744, autrijus++ | * do away with interp_info entirely (sigh)
15:31 vcv has joined #perl6
15:31 putter has joined #perl6
15:32 _mml hey all.  i'm interested in helping out w/ pugs development.  been a perl programmer since '93 and I'm familiar w/ Haskell, too.  how can i help?
15:33 stevan mml
15:33 stevan many ways, write tests in perl6
15:33 stevan help document the Haskell with Haddock
15:33 stevan port perl5 modules to perl6
15:33 stevan what ever you are interested in really
15:34 putter pdcawley: If you really want to do scheme, ping me.  I've pieces from an unfinished scm on p5 exercise.
15:34 stevan just ask for a committer bit :)
15:34 _mml writing tests would be a good way for me to learn perl 6 syntax, i guess.  :-)
15:34 stevan _mml: be sure to check what is already written (which is also a good way to learn perl6)
15:35 _mml cool.
15:35 _mml in the long run, i'm more interested in tackling a significant subproject within the compiler.
15:35 crysflame a neat series of posts would be brief, autrijus-powered interviews of how people got started with perl6 and what happened to the first thing they worked on
15:36 stevan _mml: for that you will need to talk to autrijus
15:36 stevan crysflame: in what forum?
15:36 crysflame his use.perl journal comes to mind
15:36 crysflame being on-topic
15:36 crysflame i can provide one if none can be found, which seems unlikely
15:37 Limbic_Region _mml - http://perlmonks.org/index.pl?node_id=455979 may be of some help getting started
15:37 stevan crysflame: sort of a "history of perl6" project?
15:37 crysflame stevan: history of the humans of perl6
15:37 crysflame not of the code, or the planning
15:37 stevan crysflame: yes, sorry, thats what I meant
15:37 crysflame it's not as much relevant what each person did for their first bit of participation as much as it is their story about how they got to that point
15:38 crysflame np
15:38 _mml Limbic_Region: thanks.
15:38 Limbic_Region there are several other links there at the Monastery - super searching for pugs will turn up quite a bit of information
15:39 _mml gotcha.
15:40 autrijus hi _mml!
15:42 putter Hmm... sin() in Emit/PIR.hs has been vop1n -> vop1.  So dump.ast doesnt compile anymore.  New parrot?  But parrot head currently doesnt perl Configure.pl.  Sigh.
15:43 autrijus putter: !
15:43 autrijus putter: not perl configure.pl now?
15:43 autrijus putter: report them in irc.perl.org #parrot?
15:43 autrijus (and yes, sin() is in builtins now)
15:44 _mml hello, autrijus.  i'm just starting to get my feet wet w/ perl6 and pugs, but i think i am interested in doing a significant project.
15:44 autrijus _mml: cool!
15:44 _mml i've built a native code scheme compiler before, so i have a little experience.
15:44 autrijus wow, that's more than a little
15:44 SamB has joined #perl6
15:44 autrijus I'm currently focusing on making pugs a compiler
15:45 autrijus instead of a parser that happens to evaluate the parse tree
15:45 _mml any direction on a project that might be suitable in scale to be a master's software project ;-) would be welcome.
15:45 autrijus have you read my paper? :)
15:45 autrijus # http://perlcabal.org/~autrijus/hw2005.pdf
15:45 autrijus there's some TODOs in it
15:45 autrijus in "Future Work" section
15:46 autrijus for master's software project scale, how about a PPI-based Perl5->PAST translator? :)
15:46 _mml it was on my TOREAD stack, so i think i'll hit it now.  thanks.
15:46 autrijus or a PAST->Perl5 emitter; or a Grin/Core->PIR emitter
15:47 autrijus all of them will be tremendously useful
15:47 stevan autrijus: this paper is an interesting read/take on metaclasses (when you have time) http://research.sun.com/proj​ects/plrg/core-calculus.pdf
15:47 crysflame I,I "Grin/PAST->Perl5"
15:47 autrijus stevan: ok!
15:47 Khisanth Perl5 -> Parrot AST? isn't that what ponie is?
15:47 stevan autrijus: I am collecting stuff so I can talk to $Larry at the hackathon
15:47 stevan my plan is to get the meta sections of AS12 more filled out
15:48 _mml cool.  i'll keep those possibilities in m ind.
15:48 _mml thanks, autrijus!
15:48 integral Khisanth: not exactly...
15:49 stevan I think with a proper meta-model, a lot of really cool stuff will be very simple in Perl6
15:49 autrijus stevan: that'd be wunderbar
15:49 stevan like persistence, etc
15:49 stevan but for right now I have to get back to $work (so I can pay for my trip to YAPC/hackathon) :)
15:50 * stevan goes back to the chain-gang &
15:50 autrijus Khisanth: no... ponie is XS->ParrotInterp
15:50 autrijus Khisanth: very different level
15:50 autrijus (and when I say PAST, I really mean PugsAST here)
15:51 integral One issue with a PPI based system is that currently PPI does no parsing of expressions,  so you first need to produce a precedence grammar for that
15:53 autrijus that's a bit confusing though.
15:53 * autrijus ponbetter names welcome.
15:53 svnbot6 r4745, autrijus++ | * the "correct" full CPS codegen landed -- but due to Parrot's bug
15:53 svnbot6 r4745, autrijus++ |   (Continuations can't get_param), this is sadly broken at
15:53 svnbot6 r4745, autrijus++ |   the moment.  Pending on Leo's fix...
15:54 putter has quit IRC (Read error: 60 (Operation timed out))
15:54 _mml has PPI been ported to Perl6?
15:55 Nattfodd has quit IRC ("Leaving")
15:57 autrijus _mml: no
15:58 autrijus but if ppi->past works, you can use it to translate ppi itself
15:58 autrijus :)
15:58 autrijus and PAST's Emit.Perl6 is trivial.
16:00 * autrijus ponders a better type name for Pugs's AST
16:00 autrijus PAS? P6AST?
16:03 putter has joined #perl6
16:18 justatheory has joined #perl6
16:19 iblech has joined #perl6
16:23 svnbot6 r4746, iblech++ | Emit.PIR -- Added &infix:<~>. Now t/01-sanity/01-tap.t and 02-counter.t work!
16:27 vcv has quit IRC (Read error: 145 (Connection timed out))
16:28 SamB has quit IRC (Read error: 145 (Connection timed out))
16:29 * geoffb bak, but not read scrollback yet
16:29 geoffb autrijus, I went to do a new project on OpenFoundry, and got a big license to accept -- in I'm guessing chinese, since I'm seeing a big long block of codepoints . . .
16:30 geoffb What am I agreeing to?
16:30 Enveigler has quit IRC (Read error: 110 (Connection timed out))
16:30 autrijus geoffb: it's a repeat of the same thing as your user term of agreement. :-/
16:30 autrijus it's a bug that it's in chinese.
16:30 autrijus both are sf.net boilerplates
16:32 geoffb ah
16:32 geoffb cool, then
16:34 * autrijus adds a parrotBrokenXXX flag to Emit.PIR for fun
16:42 svnbot6 r4747, autrijus++ | * add a parrotBrokenXXX flag to Emit.PIR ;)
16:43 knewt_ has quit IRC ("leaving")
16:45 geoffb ping(chip)
16:45 saorge has joined #perl6
16:53 Shachaf has joined #perl6
16:56 alinbsp has joined #perl6
16:56 nnunley has quit IRC ("This computer has gone to sleep")
16:58 geoffb autrijus, what is the "Topic Suggestion" field on the register project info form?
16:58 autrijus geoffb: if your project doesn't belong to one of the existing topics
16:58 autrijus (as likely won't)
16:59 autrijus this field is so you can fill in some suggestion to the site taxonomy
16:59 geoffb AH!  So rather than using "Other-Miscellaneous"
16:59 putter autrijus: As with an initial ::, the presence of a :: within the name does not imply globalness (unlike in Perl 5). S12
17:00 autrijus putter: I stand entirely corrected. tests welcome :-(~
17:03 Boogie has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.4/20050511]")
17:04 putter So the question for parrot is whether one can find_name ["foo";"bar"], or whether... we need to crawl stack.  yes?
17:04 svnbot6 r4748, autrijus++ | * first cut at short-circuiting logicals (doesn't work yet)
17:05 autrijus I think we either request for a find_name fix in parrot
17:05 autrijus or roll our own support pmc
17:05 autrijus or (easiest) write a crawler helper fun
17:06 putter sounds right.  ok.
17:08 arcady has joined #perl6
17:08 vcv has joined #perl6
17:11 geoffb autrijus, After selecting code and content licenses, I come to a page with tabs and breadcrumbs and such, but no content.  View Source shows that the page just ends at the beginning of the table underneath the breadcrumbs
17:11 svnbot6 r4749, autrijus++ | * string comparisons and numeric equal/nonequal
17:12 autrijus geoffb: hm? that page should show that registeration has completed
17:12 autrijus geoffb: what's your project id?
17:12 geoffb sdlperl1
17:12 autrijus the table should have one line of text in it
17:12 geoffb Well, as long as the project exists now, that's cool
17:13 geoffb Hmmm, I'm guessing since I don
17:13 geoffb t see it on My Page, you guys have to approve it now.
17:13 geoffb FEK
17:13 autrijus er, no, the approval should be automagic.
17:14 geoffb oops
17:14 autrijus checking the log.
17:15 autrijus do you still have the final page?
17:15 autrijus can you POST again?
17:15 * geoffb back buttons a couple times
17:15 geoffb OK, posting from content license page
17:16 geoffb Again, empty page
17:16 autrijus hm. you're logged in as "geoffb"?
17:16 svnbot6 r4750, autrijus++ | * make precedence clearer in 03-equal
17:16 geoffb (well, tabs and breadcrumbs, but otherwise empty)
17:16 geoffb yep
17:17 autrijus sec
17:17 geoffb nod
17:17 xerox afk
17:18 geoffb brb
17:18 pupilzeng has quit IRC ("Bye")
17:19 putter lol
17:19 sbkhh has quit IRC (Read error: 104 (Connection reset by peer))
17:19 _meppl_ has joined #perl6
17:19 Odin-LAP has quit IRC (Read error: 104 (Connection reset by peer))
17:19 Odin-LAP has joined #perl6
17:19 autrijus weird. it worksforme.
17:20 meppl has quit IRC (No route to host)
17:20 sbkhh has joined #perl6
17:21 geoffb bak
17:21 * geoffb blinks
17:21 geoffb Perhaps because I chose 2 code and 1 content license
17:21 geoffb ?
17:21 geoffb BTW "Perl Dual-License" should really be available as a choice
17:21 svnbot6 r4751, iblech++ | * Emit.PIR -- Added "&time" so pugs -CPIR -we 'say time - BEGIN { time }' works :)
17:21 svnbot6 r4751, iblech++ | * Emit.Common -- Usual svn properties.
17:22 autrijus geoffb: nod.
17:22 geoffb Rather than having to hand enter either GPL or Artistic, depending on which one came in the dropdown
17:22 geoffb 2+2 didn'
17:22 geoffb t work either
17:22 geoffb GAH, FEK
17:23 autrijus hrm?
17:23 geoffb "Fricking Enter Key"
17:24 geoffb OK, may have to fight this battle another day.  Preparing for trip now.
17:24 autrijus ok
17:24 autrijus post again
17:24 geoffb ok, hold on
17:24 autrijus if there's an error, paste it here
17:24 autrijus I mean, nopaste
17:25 geoffb That's a bot better. but now I got a Best Practicle RT Error "Ticket could not be created due to an internal error"
17:25 geoffb Need nopaste?
17:25 autrijus no
17:25 autrijus I'll Storable your request session
17:25 autrijus post once again
17:25 geoffb OK, hold on
17:25 autrijus and I'll fix it without requiring you to keep entering :)
17:26 autrijus sorry for the trouble... hadn't seen that before
17:26 geoffb same error
17:26 geoffb thanks
17:26 autrijus cool, now I have a /tmp/session.86565
17:26 geoffb np
17:26 autrijus I'll debug on that. sorry
17:26 geoffb OK, I need to be AFK for a while, but will try to check in before driving away.
17:26 geoffb thanks for your help
17:26 autrijus nod.
17:26 svnbot6 r4752, iblech++ | Emit.PIR -- Fixed the string comparision ops.
17:26 autrijus np at all. if I managed to fix it the project should be created automagically
17:27 geoffb (y)
17:27 autrijus iblech: wow. :)
17:27 geoffb OK, afk.
17:30 mr_ank stupid theorical question: i was reading a bit on kaskell's compilers toolkit - is there a difficulty to writing pugs using Happy?
17:32 autrijus mr_ank: verily.
17:32 autrijus mr_ank: BEGIN block may modify the lexer at any time.
17:32 autrijus so pretty much have to lex+parse in one pass.
17:33 autrijus as well as dynamically construct precedence parsers
17:33 arcady user-defined operators definitely make parsing that much more interesting
17:34 mr_ank i see
17:36 nothingmuch has joined #perl6
17:39 Limbic_Region has quit IRC ("CGI:IRC (EOF)")
17:39 svnbot6 r4753, autrijus++ | * add binding helper function <:= for PIR
17:39 svnbot6 r4753, autrijus++ | * repair string infix primitives
17:45 svnbot6 r4754, autrijus++ | * more use of helper symbolics: <== is now assign
17:45 svnbot6 r4754, autrijus++ | * oops, broke comparison accidentally.
17:45 Darren_Duncan has joined #perl6
17:47 autrijus ooh, 04-if passes
17:48 nothingmuch has quit IRC (Read error: 54 (Connection reset by peer))
17:49 arcady pugs doesn't support the ==> and <== pipe operators does it
17:51 autrijus affirmative
17:51 svnbot6 r4755, autrijus++ | * repair logical short circuits.
17:53 svnbot6 r4756, autrijus++ | * wow, typo again.
17:57 svnbot6 r4757, autrijus++ | * *sigh* ok, now 06-use really passes
17:57 autrijus dinner &
17:57 _mml autrijus:  this would seem to limit the usefulness of PPI->PugsAST (from PPI readme): "Source filters are not and will not (and can not) be supported."
17:59 integral _mml: lots and lots and lots of code (modulo ingy) doesn't use source filtering...
17:59 crysflame PPI is limited to code that isn't source filtered
17:59 crysflame which excludes lots of Acme and a few other modules
17:59 crysflame Alias has a complete CPAN coverage list
18:00 _mml crysflame: thanks.  said list would be useful.
18:00 crysflame he's here fttt
18:01 _mml fttt?
18:01 broquaint has quit IRC (Remote closed the connection)
18:01 crysflame from time to time
18:01 crysflame also on .au timezone
18:01 _mml gotcha, thanks.
18:03 vcv- has joined #perl6
18:03 ingy integral: modulo what?
18:04 integral Spiffy's source filter for methods
18:04 integral so a PPI based p5->past compiler couldn't do some of Kwiki
18:04 ingy I think that is the only source filter I have written, but yeah
18:05 ingy I think  a better point is that Perl6 obviates the need for Spiffy, and that Kwiki should just be a Perl6 project :)
18:05 integral at least the unicode handling should be faster :)
18:06 ingy it is interesting though that 100s of modules use Spiffy even though only a couple actually 'use Spiffy' ;)
18:07 cjeris_ has joined #perl6
18:08 crysflame ingy++
18:08 ingy anyway, you meant 'modulo Spiffy' not 'modulo ingy'
18:09 ingy Damian is the ultimate filter culprit
18:09 * crysflame takes the remainder of ingy
18:09 ingy :P
18:09 ingy crysflame: you can have my remainders soon. I'll be in sfo in 3 weeks
18:10 crysflame good
18:10 crysflame where 2?
18:10 ingy no
18:10 ingy I couldn't make that because of YAPC
18:11 ingy i'm in sfo July 11-16 for Socialtext
18:11 crysflame ok
18:11 crysflame socialtext what?
18:11 ingy We are getting the remote company into the same town for a week
18:13 crysflame wow
18:13 crysflame i would like to have dinner or lunch with y'all
18:16 svnbot6 r4758, iblech++ | Emit.PIR -- Added some Haddocks.
18:18 Limbic_Region has joined #perl6
18:27 nothingmuch has joined #perl6
18:54 svnbot6 r4759, putter++ | "Fixed" bool::true in Emit/PIR.hs.  Namespaces have problems in both pugs and parrot, so workaround them for now.
18:54 vcv has quit IRC (Read error: 131 (Connection reset by peer))
19:03 vcv- has quit IRC (Read error: 145 (Connection timed out))
19:04 svnbot6 r4760, iblech++ | Prelude, Pugs.Parser -- Detect leaking of IO handles created at compile-time
19:04 svnbot6 r4760, iblech++ | into runtime (BEGIN { open "README" }).
19:07 nothingmuch has quit IRC ()
19:08 iblech autrijus: BTW, if you don't know it, http://svn.perl.org/perl6/pugs isn't synching
19:08 svnbot6 r4761, iblech++ | Added a test testing that BEGIN and CHECK blocks may not leak IO handles
19:08 svnbot6 r4761, iblech++ | created at compile-time into runtime (but INIT and bare {...} should work)
19:08 svnbot6 r4761, iblech++ | (t/statements/io_leaking_into_runtime.t).
19:11 iblech nothingmuch: And do you know http://nothingmuch.woobling.org/pugs_test_status/ doesn't update?
19:14 iblech autrijus: Am I right in the assumption that we'll have to traverse all compile-time namespaces/lexical pads and compile the containing variables?
19:15 iblech autrijus: For example we'll have to compile the &foo created by BEGIN { our &foo = sub {...} }
19:18 orafu has quit IRC (Read error: 104 (Connection reset by peer))
19:19 kungfuftr ?eval my $class = class { method hehe { print 1; }}; my $class $foo; $foo.hee;
19:21 nothingmuch has joined #perl6
19:22 iblech 21:11 < iblech> nothingmuch: And do you know http://nothingmuch.woobling.org/pugs_test_status/ doesn't update?
19:22 nothingmuch what?
19:22 nothingmuch oh,
19:22 nothingmuch that happens occasionally
19:22 nothingmuch oh, someone rebooted the box
19:23 nothingmuch restarted the loop
19:24 iblech Thanks :)
19:24 nothingmuch =)
19:24 iblech nothingmuch++
19:25 svnbot6 r4762, iblech++ | Prelude -- Oops, my recent &check_for_io_leak checkin borked 'my $x; BEGIN { $x
19:25 svnbot6 r4762, iblech++ | = ...}'. Fixed.
19:26 justatheory has quit IRC ()
19:34 putter Doh!  You cant move Prim.hs and PIR.hs abs() to Pugs::Internal. and wrap it in Prelude.pm, _until pugs can compile Prelude.pm to parrot_.  Sigh.  Lunch.
19:35 migo__ has joined #perl6
19:38 elmex has quit IRC ("leaving")
19:42 Ara4n is now known as Aragone
19:44 Limbic_Region has quit IRC ("hometime")
20:04 sapper has quit IRC ("bye")
20:23 putter ?eval package A {$x = 'inA';}; say $A::x;
20:23 putter ?eval 3
20:24 putter ?eval package A {my $x = 'inA';}; say $A::x;
20:24 putter ?eval package A {our $x = 'inA';}; say $A::x;
20:24 putter Does anyone know if the package my/our examples are plausible?
20:24 * putter goes back to wading through AES...
20:27 vcv has joined #perl6
20:27 vcv- has joined #perl6
20:38 theorbtwo has joined #perl6
20:48 dada has quit IRC ("zu spaet um makellos zu sein")
20:50 gaal hey, did you notice that $:vars don't need to be declared?
20:51 Darren_Duncan didn't notice ... but I can confirm that if you'd like
20:51 gaal ?eval class F; my $x; method f { $x = ++$:undec }; F.new.f; $x
20:51 gaal no evalbot?
20:52 gaal well, it happens to me.
20:52 gaal we finally have a way to avoid strictures! :-p
20:52 Darren_Duncan I'll rephrase that ... I didn't notice several weeks ago ... will confirm if its the case now
20:52 Darren_Duncan one thing I did notice a month back was that variables were not case sensitive
20:53 gaal but you have to use oop for that, it seems, so not very golf-useful :)
20:53 gaal wow
20:53 Darren_Duncan quick test ...
20:53 Darren_Duncan ?eval my $Foo = 3; say $foo;
20:53 Darren_Duncan ?eval my $foo = 3; $foo;
20:53 gaal doesn't happen here.
20:53 gaal no the evalbot isn't running
20:53 lumi_ has quit IRC (Read error: 104 (Connection reset by peer))
20:54 Darren_Duncan gaal, start up your own copy of Pugs and run this: my $Foo = 3; say $foo;
20:54 Darren_Duncan the 'say' prints '3'
20:55 Darren_Duncan whereas "my $foo = 3; say $bar;" says Undeclared variable: "$bar"
20:55 gaal oh, in interactive mode? didn't try that
20:55 Darren_Duncan yes, interactive, closest thing to evalbot without evalbot ... I think
20:56 Darren_Duncan except that its not 'safe' mode
20:56 gaal no, sorry, i can't reproduce this in int.mode either
20:56 gaal though my linux build is a little old (4714)
20:56 gaal ---interactive mode doens't work on windows
20:56 gaal for unfortunate ghc reasons.
20:57 gaal brb
20:57 Darren_Duncan okay, put those lines in a script then
20:57 gaal no, in  a one liner it gives the right error
20:57 gaal but i'll brb :)
20:59 Darren_Duncan I just tested in one-liner mode ... does give right error for $foo undeclared then
21:00 lumi_ has joined #perl6
21:00 Darren_Duncan a script also shows the error
21:01 Darren_Duncan when I first detected the problem last month, it did no in the script form, and I never used -e then
21:04 Darren_Duncan gaal, I confirmed that your example prints 1: class F; my $x; method f { $x = ++$:undec }; F.new.f; say $x
21:04 svnbot6 r4763, autrijus++ | * beginning support for user-defined subs in PIR (does not work yet)
21:04 Darren_Duncan I confirmed this both in interactive mode and in oneliner mode
21:05 Darren_Duncan so that problem exists
21:05 Darren_Duncan but the problem of case-insensitive vars only seems to happen in interactive mode now
21:05 elmex has joined #perl6
21:06 iblech has quit IRC ("sleep &")
21:06 gaal are you running HEAD? it must be fairly new
21:08 nothingmuch has quit IRC ()
21:13 dkf has quit IRC ()
21:14 ezra_ has joined #perl6
21:20 Darren_Duncan I'm running the latest version, as I usually do
21:21 Darren_Duncan I'm running 4762
21:22 gaal well, it's a fairly recent problem then, since 4717 didn't have it.
21:22 Darren_Duncan are you talking about the problem you discovered, or that I discovered?
21:23 gaal the casitivity problem you discovered.
21:23 Darren_Duncan my current testing shows the problem only happening in interactive mode, not oneliner or script
21:23 Darren_Duncan a month ago it was in script too
21:24 Darren_Duncan if you can't run interactive mode then it would be a-ok for what you can run
21:24 gaal yes - my pugs that does do interactive mode is 4717.
21:24 gaal (i have two machines)
21:24 autrijus pugs>  my $Foo = 3; say $foo
21:24 autrijus *** Undeclared variable: "$foo"
21:24 autrijus r4723
21:25 Darren_Duncan so both of you update to the newest and see what happens there
21:25 Darren_Duncan if appropriate to your situation
21:25 autrijus updating
21:25 Darren_Duncan I see an update too, by 1
21:26 Darren_Duncan will retest with 4763
21:26 gaal unfortunately the linux box is very slow so it can take quite a while for me to bring pugs up to date there.
21:27 Darren_Duncan too bad
21:27 gaal autrijus, is the $:x bug known?
21:27 autrijus pugs> my $Foo = 3; say $foo
21:27 autrijus *** Undeclared variable: "$foo"
21:27 autrijus    at <interactive> line 1, column 14-22
21:27 autrijus r4763.
21:27 autrijus gaal: hm?
21:27 Darren_Duncan it only takes a few minutes here
21:27 * autrijus wonders if it's a osx specific bug
21:27 gaal $:private vars need not be declared right now.
21:27 gaal sec, backlog has demo
21:27 Darren_Duncan but then I 'svn up' + 'make' several times per day, and don't 'clean'
21:27 autrijus gaal: you mean objects are just hashes?
21:27 gaal ?eval class F; my $x; method f { $x = ++$:undec }; F.new.f; $x
21:28 gaal the evalbot is down, but that evals to "1".
21:28 autrijus right. that's because we don't have a metamodel :)
21:28 gaal $:undec was not declared my
21:28 autrijus i.e. objects aren't locked hashes
21:28 Darren_Duncan I confirmed the '1' in prev version
21:28 autrijus they are just hashes.
21:28 gaal ok
21:28 Darren_Duncan in all modes
21:29 gaal writing a debugger is fun!
21:29 Darren_Duncan er, 2 modes
21:29 autrijus gaal: you're writting a pugs debugger?
21:29 gaal no, a l33t debugger :)
21:29 autrijus mm depugger
21:29 gaal lol
21:29 Darren_Duncan question: how do you write a test for a bug that only shows up in Pugs' interactive mode?
21:30 Darren_Duncan can you pipe to Pugs?
21:30 gaal cat test | pugs
21:30 gaal no that wont' work
21:30 gaal because there's a hInInteractiveMode call :(
21:30 kungfuftr if you use $obj.array_attribute in a non-method call way, is there anyway to do something like $obj.array_attribute.push('foo'); ?
21:30 autrijus cat test | pugs -
21:30 gaal i repeat my suggestion that there be an explicit
21:30 gaal oh.
21:31 gaal :)
21:31 autrijus :)
21:31 autrijus kungfuftr: does it not work currently?
21:32 gaal can anyone think of an idiomatic way to flip a Bool variable?
21:33 kungfuftr autrijus: *blink* sorry, i've got way too many sandboxes
21:33 autrijus gaal: $x = !$x?
21:33 kungfuftr autrijus: though still wondering if you can do it with wrap methods
21:33 gaal autrijus, that actually doesn't work :)
21:34 gaal ?eval my Bool $x = bool::false; $x!=$x; say $x.perl
21:34 vcv has quit IRC (Nick collision from services.)
21:34 vcv has joined #perl6
21:34 gaal \bool::false
21:34 vcv has quit IRC (Nick collision from services.)
21:34 vcv-- has joined #perl6
21:34 * autrijus notes that gaal spelled =! as !=.
21:34 alinbsp has quit IRC ()
21:34 gaal lol
21:34 gaal heh, oops.
21:34 kungfuftr my Bool $x = bool::false; $x.reverse; # ?
21:37 gaal okay, i want an idiomaticer way -- with op=
21:37 gaal kungfuftr, does your meth work? should it? :)
21:37 autrijus gaal: op= is infix
21:37 kungfuftr =0)
21:37 autrijus not thinking you have another operand :)
21:38 gaal why, ?!= bool::true.
21:38 autrijus however if you insist!
21:38 autrijus ^^= 1
21:38 gaal arigate
21:39 autrijus ...which revealed a lexer bug.
21:39 gaal haha.
21:39 autrijus ah well.
21:39 gaal actually what i am doing is toggling membership in a set
21:39 gaal whcih i'd been using a hash to represent
21:40 nothingmuch has joined #perl6
21:40 gaal but that isn't beautiful because then '%set.keys' isn't the data structure
21:40 gaal isn't the modeled data that is
21:41 gaal %set.keys.grep:{%set{$_}} is
21:41 gaal which is ugly
21:41 gaal oh well.
21:41 autrijus gaal: repaired.
21:42 Khisanth has quit IRC ("Leaving")
21:42 svnbot6 r4764, autrijus++ | * repair ^^ and ^^= for gaal.
21:42 Darren_Duncan Pugs is still recompiling ... meanwhile I'm about to ship another Perl5 version of SQL::Routine ... just have to finish Changes file first
21:42 gaal autrijus++ is teh l33t :)
21:42 gaal thanks!
21:42 cjeris_ has quit IRC ("[BX] That's Miss BitchX to you")
21:43 autrijus n0 p0r6|3m, 6441
21:43 nothingmuch evening
21:43 gaal crap, my name is not a valid l33t opcode.
21:43 autrijus yo nothingmuch
21:43 nothingmuch what's up?
21:44 gaal 4utr1ju5 means END though :)
21:44 autrijus nothingmuch: gnoming from pugside to parrotward
21:44 Darren_Duncan compile done on 4763 ... gaal's problem of private vars still happens in -e mode
21:44 autrijus right, private vars is known
21:44 autrijus tests welcome
21:44 nothingmuch i tried starting to learn parrot earlier today
21:45 nothingmuch but then I got stopped
21:45 Darren_Duncan however, interactive mode gives something different now ...
21:45 migo__ has quit IRC (Client Quit)
21:45 nothingmuch I think i created the pudding and ice cream entries in the hebrew wikipedia
21:46 Darren_Duncan forget last line
21:46 nothingmuch after which I had to drive my sister and a guest from beer sheva to home
21:46 nothingmuch gaal: was that the migo?
21:46 Darren_Duncan okay, 4763 fixed the insensitive variable thing
21:46 gaal hmmm, could be!
21:47 Darren_Duncan both interactive mode and -e mode now say "Undeclared variable" ... unlike 4762 where only -e did
21:48 ezra_ has quit IRC ()
21:49 autrijus that's cool
21:49 nothingmuch oh boy! /me just realized he is close to being a saint on perlmonks
21:49 nothingmuch when I started going that seemed so unattainable
21:50 nothingmuch and now it's even more of a surprise, as I haven't exactly been frequenting the place
21:50 gaal i was the 333rd saint
21:50 Limbic_Region has joined #perl6
21:50 gaal which is nice because 33 is my name in gimatria.
21:50 nothingmuch nice number =)
21:51 nothingmuch i think valdez or bart (can't remember) were 128
21:51 nothingmuch ah, on valdez site i'm just under the photographer
21:51 nothingmuch that was a nice dinner
21:51 nothingmuch not as nice as the second one, but still very nice
21:51 gaal bologna?
21:52 nothingmuch ferarra
21:52 nothingmuch err, ferrara
21:52 gaal italy++
21:52 nothingmuch yes, very
21:52 * gaal hacks
21:52 nothingmuch the second dinner was around 4 hours long
21:52 nothingmuch i got stuffed by the first meal
21:53 nothingmuch first dish, sorry
21:53 nothingmuch or course
21:53 nothingmuch regained my appetite each time over
21:53 nothingmuch except for the main course, which I really couldn't fit
21:53 nothingmuch i think I drank around 3 liters of fluids
21:53 nothingmuch around 1/3-1/2 of which was wine
21:54 nothingmuch the best thing that happenned was the cake
21:54 nothingmuch it was simply delightful
21:55 gaal lolful mail from $larry on p6-l
21:56 nothingmuch which one?
21:56 gaal you'll know it when you see it
21:56 gaal the latest.
21:57 Darren_Duncan the one about a racoon?
21:57 * Limbic_Region is really glad he clarified since I was beginning to question his sanity
21:57 gaal yeah
21:57 crysflame mm, cake
21:57 Darren_Duncan I like cake
21:58 gaal say %:breakpoints.keys.sort:{$^a<=>$^b}      <- isn't this right?
21:58 Darren_Duncan not sure but appears to be
21:59 cognominal has quit IRC (Remote closed the connection)
21:59 gaal it's doesn't parse now :(
21:59 Limbic_Region there isn't a space between the : and the { is there
21:59 Darren_Duncan I don't see any space
21:59 gaal nope.
21:59 * Limbic_Region made the mistake of thinking @foo.map: { # was ok
21:59 Limbic_Region apparently it isn't
22:00 cognominal has joined #perl6
22:00 Darren_Duncan try substituting the %: with $obj.:
22:00 Darren_Duncan or just put a 1 in the block
22:00 Darren_Duncan to isolate
22:00 gaal huh, you think i have *invocants*? :)
22:01 autrijus hm quicksort is broken
22:01 autrijus something's very wrong now
22:01 autrijus like, maximally wrong
22:12 autrijus yay, user sub landed
22:13 * autrijus retreats back to bedroom
22:13 vcv- has quit IRC (Read error: 110 (Connection timed out))
22:16 iblechbot has quit IRC (Connection timed out)
22:20 saorge has quit IRC (Read error: 145 (Connection timed out))
22:20 svnbot6 r4765, autrijus++ | * user-defined (nullary-only) subroutines!
22:20 svnbot6 r4766, putter++ | Added undef, chop, clone, !, ?^, and id (not working), to Emit/PIR.hs.
22:24 nothingmuch wow... the does> word is so cool
22:28 autrijus putter++ # gnoming!
22:29 Khisanth has joined #perl6
22:31 gander has quit IRC ("Leaving")
22:34 vitaminmoo has quit IRC ("Leaving")
22:34 svnbot6 r4767, putter++ | Added chomp to Emit/PIR.hs.
22:34 clkao whoot. things are moving on
22:36 autrijus clkao: user-defined subs is landing
22:36 dkf has joined #perl6
22:36 nothingmuch i need name, function, immediate, compile only
22:37 nothingmuch autrijus: given a fresh start, how would you imlement a primitive table?
22:37 gaal i'm off to bed. night all!
22:37 nothingmuch maybe I should just make them as words
22:37 nothingmuch good night gaal!
22:37 gaal bye :) &
22:38 putter goodnight gaal.
22:39 vitaminmoo has joined #perl6
22:40 elmex has quit IRC ("leaving")
22:41 vitaminmoo has quit IRC (Client Quit)
22:41 justatheory has joined #perl6
22:46 jdv79 has joined #perl6
22:47 ezra_ has joined #perl6
22:51 ezra__ has joined #perl6
22:53 * autrijus finished full user-defined subroutine
22:53 autrijus nothingmuch: given a fresh start, I'll use p6 signatures :)
22:54 nothingmuch no, in forth ;-)
22:54 autrijus oh ;)
22:55 arcady isn't almost everything a word in forth?
22:55 * Limbic_Region will likely be soliciting ideas for a perl6 category in his time capsule project over at the Monastery
22:55 nothingmuch arcady: at some level you have the hooks going back to the host language (or asm)
22:55 nothingmuch you wrap them in words
22:56 nothingmuch in haskell I have functions implementing primitives
22:56 nothingmuch i'd like them to be more of a table
22:56 nothingmuch but i don't like doing this with touples
22:59 ezra_ has quit IRC (Read error: 60 (Operation timed out))
22:59 svnbot6 r4768, putter++ | Added join and split to Emit/PIR.hs.  But parrot can only split on "" until regexps are working.
23:05 ezra__ has quit IRC ()
23:05 * autrijus notes we get PGE for free
23:08 autrijus geoffb: sorry I didn't get to look into foundry bug; will do so tomorrow
23:08 putter Apparently the split op and PGE are not plugged together yet.  Cant split("b","abc").  Get complaint about regexps being unimplemented.
23:09 autrijus putter: nod, need to put PGE loading into our "init"
23:09 autrijus in Compile.PIR
23:09 autrijus and then implement our own split
23:09 autrijus alternately, fix parrot's split using pge
23:10 Darren_Duncan fyi, I have just uploaded the Perl 5 SQL-Routine-0.65 ... when I redo a Perl 6 version soon, it should closely resemble that one
23:10 svnbot6 r4769, autrijus++ | * PIR - full user-defined sub (with slurpiness) landed!
23:10 svnbot6 r4769, autrijus++ | * all sanity tests, save 07-test.t, are working!
23:10 nothingmuch woo!
23:10 nothingmuch > : FOO [ 2 2 * ] LITERAL ;
23:10 nothingmuch > see FOO
23:10 nothingmuch : FOO 4  ;  
23:10 autrijus with this I think I can get Test.pm working tomorrow.
23:11 crysflame is it possible to write perl6 code that parses in perl5 as well?
23:11 putter O.O
23:11 Limbic_Region sure crysflame
23:11 Darren_Duncan some simple Perl 6 code would parse in Perl 5
23:11 Limbic_Region as long as you are selective on what p6 you use
23:11 Limbic_Region my $foo = 'bar'; print "$foo\n";
23:11 Khisanth Perl5 is to Perl6 as C is to C++? :p
23:11 Limbic_Region that's p5 or p6 code
23:12 crysflame i'm mostly dreaming
23:12 autrijus hm, more control structures are pending on the register alligator
23:12 crysflame but it'd be useful to have a banner routine that detects when a perl6 script is being run by perl5 and have it re-exec itself with -MPerl6::*
23:12 autrijus hopefully leo and I can kill it tomorrow
23:12 Darren_Duncan some time there should be a contest where people submit the most complicated and feature using Perl 6 programs they can that also run the same in Perl 5
23:12 * crysflame nods to Darren
23:13 crysflame Perl4 for extra points
23:13 crysflame Perl1 to win
23:13 Darren_Duncan and no use of eval allowed
23:13 putter one can also write code which works in both p5 and ruby. ;)  And files, not code, which does more...
23:13 Darren_Duncan for the contest I mention, it would be complete files
23:14 Darren_Duncan not just code snippits
23:14 putter http://www.vendian.org/mnch​arity/dir3/multilang/file/
23:14 putter ;)
23:15 Darren_Duncan its important to not allow string-eval since that allows a lot of cheating
23:17 nothingmuch wow! branches!
23:21 Darren_Duncan now making 4770
23:21 svnbot6 r4770, putter++ | Slight reordering of Emit/PIR.hs preludePIR.
23:22 buu has joined #perl6
23:22 buu HAI
23:23 autrijus btw, if people want to help out on the compiler/translator, now it's possible to run pugs -BPIR on any piece of code and get a reasonably clear report on where needs work
23:23 buu has left
23:24 putter autrijus: how does one say... SubName -> PrimName -> ((RegClass a) => a) -> ((RegClass a) => a) -> Decl
23:24 autrijus putter: a and a are same?
23:25 putter oops, no.
23:25 autrijus (RegClass a) => SubName -> PrimName -> a -> a -> Decl
23:25 autrijus if not
23:25 autrijus (RegClass a, RegClass b) => SubName -> PrimName -> a -> b -> Decl
23:25 putter :)
23:25 putter tnx
23:25 autrijus that's universal quantification (i.e. the default), which should work for you
23:25 autrijus if you really want existential quantification, it's
23:26 autrijus SubName -> PrimName -> (forall a. RegClass a => a) -> (forall b. RegClass b => b) -> Decl
23:26 autrijus but that is rarer.
23:26 putter k
23:27 djames has joined #perl6
23:30 clkao autrijus: please spread svk in toronto.. i'll ask orange ninja to bring along stickers
23:30 putter autrijus: the rarer version worked!
23:31 Enveigler has joined #perl6
23:31 autrijus clkao: sure!
23:31 djames clkao: Do you have SVK posters?
23:31 * autrijus praises GHC's type system extensions
23:31 clkao no, no poster.
23:31 Limbic_Region_ has joined #perl6
23:32 Limbic_Region has quit IRC (Nick collision from services.)
23:32 clkao but you have enough stickers to make a poster size sticker wall
23:32 Limbic_Region_ is now known as Limbic_Region
23:34 Limbic_Region autrijus - do you have a methodical approach to completing the compiler/translator or are you just attacking stuff as you encounter it?
23:34 autrijus Limbic_Region: run random program, and the error msg will tell one what to work on next.
23:34 autrijus Limbic_Region: the typesystem makes clear the next step always :)
23:35 autrijus (and, fwiw, the priority is Test.pm)
23:35 autrijus for me
23:35 autrijus since then we can harness parrot.
23:35 autrijus that is, make smoke-pir
23:35 autrijus or make pirsmoke
23:35 autrijus or some other env, not sure
23:35 Limbic_Region autrijus - s/random/the examples you have posted so far/
23:37 Limbic_Region though am I going to be able to do any of this without Parrot on my machine?
23:37 autrijus yup
23:37 Limbic_Region ok
23:37 autrijus replace -BPIR with -CPIR
23:37 autrijus and you'll be set
23:37 autrijus most of the work (in Comp monad) are reusable
23:37 autrijus I'm basically moving Eval.hs over bit by bit
23:37 autrijus once the basic is there, I'll transplant Eval.hs to use the Comp monad.
23:37 Limbic_Region well - my Haskell is very very very rudimentary at best
23:37 autrijus that will make the interpreter much faster and detect sytnax errors and makes class literal work etc.
23:38 Limbic_Region but I am guessing there is enough for me to copy/paste and modify
23:38 autrijus quite so. don't hesitate to ask here or on p6c :)
23:38 autrijus but I need to sleep now... it's far too late here
23:38 MrKrueger has joined #perl6
23:38 Limbic_Region sleep well
23:39 autrijus whoa, I really worked on this for a week now?
23:39 autrijus time does fly past.
23:39 * autrijus feels like it's just started yesterday
23:39 autrijus but it's really just a very very long day for me :)
23:39 Limbic_Region heh
23:39 autrijus journal up. g'night! *wave* &
23:41 putter g'night!
23:46 nothingmuch woo! IF ELSE works
23:46 Darren_Duncan good night
23:46 nothingmuch > : FOO IF 5 ELSE 6 THEN ;
23:46 nothingmuch > 1 FOO .
23:46 nothingmuch 5
23:46 nothingmuch > 0 FOO .
23:46 nothingmuch 6
23:47 putter good night.  4th!
23:48 * putter goes off to see what primatives Test.pm needs...
23:50 * Limbic_Region is still waiting for pugs to compile
23:51 sri_ is caller not yet implemented?
23:51 svnbot6 r4771, putter++ | Refactored vopMumble in Emit/PIR.hs, with typing help from autrijus.  Added chr() and ord().
23:51 sri_ returns undef here :/
23:51 clkao sri_: Pugs::Internals::caller ?
23:53 sri_ *** No compatible subroutine found: "&Pugs::Internals::caller"
23:54 _meppl_ has quit IRC (Read error: 110 (Connection timed out))
23:54 vcv- has joined #perl6
23:54 perlbot has quit IRC (Excess Flood)
23:54 perlbot has joined #perl6
23:54 perlbot has quit IRC (Excess Flood)
23:54 perlbot has joined #perl6
23:58 perlbot has quit IRC (Excess Flood)
23:58 perlbot has joined #perl6

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

Perl 6 | Reference Documentation | Rakudo