Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-02-13

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:15 bones`comer is now known as bonesss
00:16 mako132_ joined perl6
00:17 REPLeffect joined perl6
00:26 larsen_ joined perl6
00:39 sunnavy joined perl6
00:53 Caelum joined perl6
01:04 rashakil joined perl6
01:11 REPLeffect_ joined perl6
01:23 woremacx joined perl6
01:25 mako132_ joined perl6
01:33 MegaRevolt joined perl6
01:33 MegaRevolt left perl6
01:52 stevan_ joined perl6
01:55 bsb joined perl6
01:56 Aankh|Clone joined perl6
02:04 mdiep_ joined perl6
02:19 dmq joined perl6
02:33 eric256 joined perl6
02:33 eric256 hello
02:34 * eric256 wonders if he is in the wrong time zone for everyone else ;)
02:37 eric256 143 people an no one is around? /me whistles
02:50 amnesiac joined perl6
02:50 sunnavy joined perl6
02:51 eric256 been a while since i did anything on p6 or pugs...is there a seperate pugs chat room?
02:56 eric256 there hasn't been a smoke of pugs done since oct?
02:59 allbery_b most pugs stuff happens here.  things are quiet because most stuff that goes on at this time of day involves putter, who isn't around, or audreyt who is in hospital.
03:00 allbery_b couldn' tell you much else, sorry
03:00 eric256 thanks for telling me that much ;)
03:00 * eric256 goes to wathc hereos and studio 60...but i'm getting my feather account fired back up
03:08 Aankh|Clone is now known as Aankhen``
03:08 TimToady eric256: there have been lots of smokes of pugs since oct.  where are you looking?
03:10 TimToady you want to look at the repository entries, not the release entries
03:10 TimToady no point in resmoking the release, it'd presumably just give the same answer every time.
03:11 ingy hi TimToady
03:11 ingy we never met up in Mountainview
03:11 ingy but that's ok
03:12 ingy I was just sleeping in a crappy hotel there
03:12 ingy all the hacking was in Palo Alto
03:12 TimToady well, my schedule has been insane in any event
03:13 TimToady and I almost can't even eat out anymore between food allergies and low-salt diet...
03:14 ingy :(
03:15 TimToady but it beats hepatitis, I'm sure
03:15 ingy it's really too bad you won't be going to .jp
03:15 TimToady speaking of high sodium diets...
03:15 ingy haha
03:16 mako132_ joined perl6
03:16 ingy is that why?
03:16 TimToady no, prior commitment on east coast that week
03:16 ingy I could supply you with applesauce
03:16 ingy ok
03:17 TimToady well, I'm sure I could survive on just rice for a week, if it came to that.
03:17 ingy any word on YAPC::Beijing?
03:17 TimToady dunno
03:18 ingy I heard rumors
03:19 ingy TimToady: if you ever want to feel the true extent of your creation, try installing a minicpan
03:20 merlyn installing the whole thing?
03:20 merlyn that could take months. :)
03:20 TimToady hey, 10 years or so ago i was trying to compress CPAN onto a CD
03:20 merlyn or do you mean just downloading it
03:20 ingy I'm on hour 2, at DBIx-Wrap
03:20 TimToady (for O'Reilly)
03:20 merlyn the minicpan *just about* fits on a CD still
03:21 TimToady with everything precompiled?
03:21 merlyn uh, no
03:21 merlyn sources
03:21 TimToady these were binary rpms...
03:21 merlyn ahh
03:21 merlyn current MINICPAN = 631M
03:22 ingy TimToady: 7 years ago I did something similar for ActiveState
03:22 merlyn that's still a CD, I think
03:22 TimToady but the Perl Resource Kit for Unix was never a good seller
03:22 ingy but that was only 1200 mods
03:22 ingy heh
03:22 allbery_b that, and it had the problem that it was out of date before it was released, CPAN being what it is
03:22 * allbery_b has a perl resource kit, never even bothered with the modules :)
03:23 ingy CPAN is my test database
03:23 ingy it's a good chunk of data
03:29 GabrielVieira joined perl6
03:30 TimToady dinner &
03:43 justatheory joined perl6
03:47 * Coke yawns.
03:52 GabrielVieira2 joined perl6
04:07 hobbs joined perl6
04:24 reZo_ joined perl6
04:49 stevan__ joined perl6
04:51 jdv79 joined perl6
05:06 REPLeffect_ joined perl6
05:10 GabrielVieira joined perl6
05:13 eric256 if i want to patch documentation..do i do that in the //mirror/pugs? or somewhere else?  S29 had some minor code issues i was hoping to help fix ;)
05:15 rfordinal joined perl6
05:16 allbery_b I think the synopses are more resrcited; post your issues here, and TimToady or someone else with access will fix
05:16 allbery_b *restricted
05:19 eric256 okay, in the definition of reduce, and reverse the brackets { } arn't balanced, reduce is missing one, and reverse has a ) instead of a }
05:20 eric256 shouldn't there at least be a readme in that folder then explaining not to mess with them? i found Functions.pod in /docs/Perl6/Spec
05:26 eric256 hmm just found the same file as /pugs/docs/feather/syn_index.html
05:26 eric256 hehe now i'm confused
05:27 Ziggy6 i i think the synopses are on another svn repo
05:27 eric256 err scratch that.  itw as the index, not the same doc.
05:27 eric256 ahh..
05:30 Aankhen`` joined perl6
05:30 eric256 maybe if i figure this out my first task can be making it more obvious for the next guy! ;)
05:33 REPLeffect joined perl6
05:34 Aankhen`` joined perl6
05:35 eric256 actualy affter looking around, i think that IS the right place to edit S29 well i can always apply my changes and if its wrong it can get undone..thats tbe beauty of svn right?
05:38 ofer0 joined perl6
05:47 TimToady The proper place to edit S29 is in pugs/docs/Perl6/Spec/Functions.pod
05:48 TimToady only S1-6,9-13 are in the svn.perl.org repo
05:48 TimToady I leave the others over in pugs so that they can be edited by people like you.  :)
05:49 TimToady eric256: see above
05:50 eric256 hehe thanks! apparently i lost my commiter bit somewhere in there. could someone set me up with [email@hidden.address]  i got the announcment it was changing, but can't find the email with a link to change my password
05:50 eric256 thanks TimToady, i figured out the smoke thing after i said it
05:51 eric256 mind if i add a message at the bottum of S29 explaining where to update it at?
05:52 fengc joined perl6
05:52 TimToady I'd put it at the top, myself...
05:52 TimToady commit bit sent
05:52 eric256 thanks
05:53 TimToady thank you
05:56 gaal TimToady: is &sort clever about its input somehow? Or should examples in Snn say sort :numerically or something?
05:59 nothingmuch morning gaal
06:00 eric256 all i need to do is svk -ci right?  no push or pull or anything?  svk is a little new to me ;)
06:02 * eric256 enjoys seeing his changes take effect ;)  hopefully i can find a little time now and then to scour docs and help a bit
06:04 TimToady gaal: sort by default uses cmp which is smart about a given type.  If the keys are of inconsistent types, then you'd have to be more explicit, or use the signature form to coerce things a bit.
06:04 TimToady (assuming the signature for allows for the coercions...)
06:04 TimToady *form
06:05 TimToady sort uses Ordering which is defined in Functions
06:05 TimToady I'm sure it's still infested with a few bogons though.
06:06 TimToady I wish the people who spend endless hours debating various sorting approaches in Perl 5 would spend a little time critiqueing the new design...
06:07 avarab joined perl6
06:08 TimToady I do think canonicalized is a horrid long word.
06:08 tene I like it.
06:09 TimToady how 'bout "canned" for short.   :)
06:10 TimToady or maybe c11d :)
06:10 REPLeffect Yeah, but then the guy at s11n.net would claim trademark or something.
06:11 TimToady he should be flattered that we borrowed a feature. :)
06:11 REPLeffect hehe.
06:12 REPLeffect Except that's a C++ library :-)
06:12 TimToady oh, we'll probably end up borrowing that too...
06:12 REPLeffect yeesh.  He's out with cancer -- is everyone getting seriously ill lately?
06:13 TimToady we'll have to put some extra stuff in there so the Pava and P# peopel can chop it back out later.
06:13 TimToady s/el/le
06:13 REPLeffect Is that the British spelling of peopel? :-)
06:13 avarab_ joined perl6
06:14 REPLeffect no, wait, that would be peouple.
06:14 TimToady well, I hope I got done with being seriously ill three years ago.
06:14 REPLeffect Was that the stomach trouble?
06:14 TimToady nod
06:14 REPLeffect So, what was the exact condition?
06:15 REPLeffect (other than "miserable")?
06:15 TimToady called GIST "gastro-intestinal stromal tumor"
06:15 Ziggy6 joined perl6
06:15 TimToady fast growing, but tends not to metastasize, fortunately.
06:15 REPLeffect So did they try to give you the old "irritable bowel" as a preliminary diagnosis?
06:15 TimToady by the time they took it out it was the size of a fist
06:16 TimToady no, not when I was pouring blood out my lower end
06:16 TimToady had two ulcers on the tumor
06:16 REPLeffect Well, yes, that tends to be an indicator of something worse :-)
06:16 TimToady had to have two units of blood just for that part
06:17 REPLeffect Youch.
06:17 REPLeffect I've just noticed, that a lot of times when they don't know what it is ...
06:17 REPLeffect ... and it is gastro-related "Oh, it's irritable bowel".
06:17 TimToady and I was off on Kauai at the time; we were at our timeshare there
06:18 REPLeffect Where's that?
06:18 TimToady not how I wanted to spend an extra week in Hawaii
06:18 REPLeffect ah.
06:18 REPLeffect Was your family with you?
06:18 TimToady it's the westernmost main island
06:18 TimToady my wife.  my in-laws had just flown out earlier that day
06:18 TimToady and the oldest and most eroded
06:19 TimToady but pretty
06:19 REPLeffect (nice save) :-)
06:19 TimToady got to look at it a lot from my hospital room
06:19 REPLeffect oh, I thought that you were joking about your wife.
06:19 REPLeffect (ducks)
06:19 TimToady the doctor there didn't want to tell me I had a tumor and "ruin my vacation"
06:19 REPLeffect Um.  Duh...
06:20 TimToady but said in no uncertain terms that I would see a GI specialist
06:20 TimToady when I got back home
06:20 REPLeffect By that time I'd say twas ruined.
06:20 TimToady I did, and he sent me to the surgeon
06:20 REPLeffect So how long was your recovery -- post surgery?
06:20 TimToady the surgeon did a CT scan, and before I was home from that, he and my wife arranged surgery for the next day
06:21 TimToady they sent me home after about ten days, but I ended up right back in the hospital in a day
06:21 TimToady apparently the new plumbing had scarred up
06:21 REPLeffect youch.
06:21 TimToady we waited another month and a half for it to open back up, but it never did.
06:22 GabrielVieira2 joined perl6
06:22 TimToady so eventually they went back in and replumbed it a different way.
06:22 REPLeffect PVC or copper? ;-)
06:22 TimToady basically, I didn't eat or drink a thing for most of two months.
06:22 TimToady everything came through tubes
06:22 TimToady couldn't take pills
06:22 TimToady it was either morphine or nothing
06:23 gaal rehi; thanks for the explanation, TimToady, smartcmp++.
06:23 eric256 with the smart linking, i was linking t/operators/value_equivalenc.t and wondered if i could make it two large code blocks...will the smart linking catch that and link that whole bit..then smart links inside that could link to just those sub code blocks?  
06:23 TimToady basically, I thought I was recovered two months after that
06:23 REPLeffect TimToady: Between the cornea transplant and that I'm sure you'd prefer ...
06:23 TimToady but in retrospect, I wasn't really back online for most of a year
06:23 REPLeffect ... to stay out from under the knife for a good long time.
06:24 TimToady yeah, now it's just hypertension, grrrr.
06:24 REPLeffect As my Grandpa says "it's hell gettin' old, ain't it!"
06:24 TimToady beats the alternative, barely
06:24 gaal nothingmuch: remoose
06:25 REPLeffect Well, from what I understand, not in your case (bad for family, but not for you)
06:25 REPLeffect But noone wants to leave before their time.
06:25 TimToady eric256: no clue
06:25 REPLeffect s/noone/no one/
06:26 REPLeffect can't believe I did that -- one of my pet peeves.
06:26 TimToady Q: Why is it that we laugh at a birth and cry at a funeral?  A: Because we are not the person involved.
06:26 REPLeffect hehe.
06:27 LCamel joined perl6
06:27 TimToady well, time to take my blood pressure again...
06:27 REPLeffect enjoy :-)
06:28 LCamel joined perl6
06:29 TimToady 134 / 89, not too bad
06:29 TimToady just don't say anything exciting, and I should last a while yet.
06:30 REPLeffect anything .... exciting
06:31 REPLeffect I got nothin'
06:31 REPLeffect should be safe.
06:33 REPLeffect On a slightly perl-6-ish topic.  I haven't seen anything, but are there plans for a macro mechanism in perl 6?
06:33 REPLeffect I mean, like lisp macros, not C macros.
06:33 allbery_b yes, it's in one of the symopses
06:33 allbery_b *synopses
06:34 REPLeffect Seems it would be much more difficult to implement, perl having syntax and all (unlike lisp).
06:34 REPLeffect in my fairly uneducated estimation.
06:34 allbery_b they operate on ASTs
06:34 allbery_b (that is, the internal representation)
06:35 REPLeffect So, how does that translate to the perl 6 code?
06:35 REPLeffect (feel free to point to the synopsis, if you know which one)
06:35 TimToady see S06:2010
06:35 TimToady section "Macros"
06:35 REPLeffect OK.  
06:36 allbery_b was just about to check S06, having just scanned S02
06:36 REPLeffect Funny, after asking the question, that sounds a bit familiar :-)
06:36 * allbery_b has not memorized the synopses...
06:36 REPLeffect perhaps old-timers has just set in.
06:36 allbery_b neh, just perl6 is rather lower on the stack than a number of other things
06:37 jisom joined perl6
06:37 REPLeffect Either that, or I've just slept since then :-)
06:38 * allbery_b goes back to searching for a different kind of macro
06:38 drupek12167 joined perl6
06:41 REPLeffect TimToady: am I missing something?  S06 has just one line about macros that I can see.
06:41 allbery_b hrm, I saw a whole section about them, admittedly without much detail
06:41 TimToady about 2000 lines below that
06:41 REPLeffect Am I looking in the wrong place?  (perl.org)
06:42 jisom joined perl6
06:42 bsb left perl6
06:42 allbery_b http://perlcabal.org/syn/
06:42 lambdabot Title: Official Perl 6 Documentation
06:42 jisom joined perl6
06:42 REPLeffect ah (gasp 2003!) no wonder.
06:42 allbery_b S06 / Advanced subroutine features / Macros
06:43 TimToady http://dev.perl.org/perl6/doc/design/syn/S06.html#Macros
06:43 lambdabot Title: Synopsis 6: Subroutines - perl6:
06:43 REPLeffect Much better.
06:44 TimToady don't look at the original date, look at the last modified date
06:45 REPLeffect I was looking here: http://perl6.org/doc/design/syn/S06.html
06:45 lambdabot Title: Synopsis 6
06:45 REPLeffect Last Modified: 12 Apr 2003
06:46 REPLeffect just a tad out-of-date.
06:46 TimToady yes, that's very old
06:46 REPLeffect So, I'm assuming that none of that is actually implemented yet.  Is that correct?
06:47 REPLeffect Or is that an "unfair" statement?
06:48 TimToady ?eval macro prefix:<foo> { "say" }; foo "bar"
06:48 evalbot_r15255 Error: No compatible subroutine found: "&foo"
06:48 eric256 i remember now how this can quickly suck up a ton of time! ;) later all and thanks for helping me get back in the groove ;)
06:48 TimToady ciao
06:48 eric256 left perl6
06:49 TimToady ?eval macro foo { "say" }; foo "bar"
06:49 evalbot_r15255 OUTPUT[␤] Bool::True
06:49 TimToady seems not to be entirely functional yet...
06:49 REPLeffect But at least there is something there.
06:49 TimToady probably parses correctly but doesn't actually mutate the grammar appropriately yet
06:50 TimToady the current pugs parser doesn't really do the syntactic categories thing yet.
06:50 TimToady that's part of why I'm writing the Perl 6 grammar in Perl6 now.
06:51 TimToady to see how all that works together
06:51 REPLeffect If you could just write Perl 6 in Perl 6, you'd be golden :-)
06:51 REPLeffect (all of it, I mean)
06:51 REPLeffect except for that little bootstrapping problem.
06:52 TimToady maybe someday we'll get there.  for now I'd just be happy for the parser to be in Perl 6
06:52 jisom how are perl6 macros different from perl5 constant functions?
06:52 allbery_b self-bootstrapping is a solved problem :) start simple, each new revision parses a bit more
06:52 TimToady constants are just variables that are initialized at compile time, basically.
06:52 TimToady they don't change the grammar
06:53 TimToady you can use macros to define constants, but it's kind of overkill.
06:53 REPLeffect jisom: are you familiar with lisp-style macros?
06:53 jisom no, only c, and pir
06:53 REPLeffect totally different beast from C
06:54 REPLeffect C macros are just text substitution, essentially.
06:54 TimToady 'course, the nice thing about Lisp is that the language *is* the AST...
06:54 REPLeffect hehe.
06:54 jisom I'd take forth over lisp any day, though
06:54 REPLeffect If you can just get used to the parens (someone will say it eventually, might as well be me)
06:54 TimToady I'm trying to think if there's anything else nice about Lisp... :)
06:55 jisom good with lists?
06:56 REPLeffect actually, I would submit that the language being the AST is a pretty big win -- if you can get used to it.
06:56 TimToady nah, uses all these strange lopsided . trees to represent what should be a simple structure.  :)
06:56 TimToady it's a big win for the compiler writer  :/
06:57 REPLeffect No doubt!
06:57 TimToady it'd be an even bigger win for the compiler writer if we could just get the user used to writing I*86 assembly
06:58 TimToady ;), of course
06:58 jisom not portably, I use a ppc :)
06:58 TimToady then you'll just have a harder time getting used to it...
06:59 jisom yeah, or hack parrot and it's jit to use that for your programming
06:59 REPLeffect TimToady: I'm curious.  Have you ever written anything fairly large in lisp (I don't know if you've done much in it at all)?
06:59 TimToady not since grad school
06:59 TimToady and I wouldn't really call it "large".
06:59 REPLeffect So, was that homework assignments then?
07:00 TimToady well, course project in natural language processing
07:00 REPLeffect Don't get me wrong, I'm not trying to "convert" you, I'm fairly new to lisp myself.
07:00 jisom that many parenthesis aren't natural
07:01 REPLeffect I was just curious.
07:01 REPLeffect I am *not* new to perl.
07:01 REPLeffect s/perl/Perl/
07:02 allbery_b jisom: there's always the interlisp-style ]
07:02 REPLeffect lisp programmers would argue that many paren-challenged versions of lisp have been tried and all failed.
07:02 TimToady also used (and hacked on) the mock-lisp in Gosling's emacs, but that's arguably not real lisp.
07:03 REPLeffect I have to admit.  What I've seen of macros in lisp impresses me.
07:03 TimToady um, *all* languages have been tried and all have failed.  :)
07:03 REPLeffect I was waiting for it.
07:03 TimToady you give good straight lines
07:03 allbery_b lisp macros are powerful.  they're also incredibly brain-twisty
07:03 jisom perl6 has failed already???
07:04 allbery_b having the language and the AST be identical has its downside
07:04 TimToady oh, certainly, we've planned for it in advance.
07:04 REPLeffect Which downside are you referring to?
07:05 allbery_b the brain-twisty
07:05 TimToady arguably, planning to have failed is the *one* thing that Perl 6 has done better than any other language.
07:05 REPLeffect hehe.
07:05 allbery_b really easy to confuse the map and the territory when they're indistinguishable
07:05 REPLeffect Actually ...
07:06 REPLeffect so far I see it as mainly a good thing.
07:06 REPLeffect I've tried to to a fair bit with code generation.
07:06 jisom does perl 6 require alphanumeric characters?
07:06 REPLeffect And lisp is the first language that seems to make it a natural part of the language.
07:06 allbery_b for unicode definition of same, I believe
07:07 TimToady jisom: not sure what you're asking
07:07 REPLeffect The verdict is still out in my case (as to whether I'll try to do much with it).
07:07 jisom with trickery, a perl 5 program doesn't need any alphanumeric characters, can perl 6 do the same?
07:08 jisom all line noise
07:08 TimToady it will be more difficult
07:08 TimToady most of the punctuational variables are gone, for instance
07:09 REPLeffect !@#$@%$@%!!!
07:09 devbot6 REPLeffect: Error: "@#$@%$@%!!!" is not a valid command.
07:09 REPLeffect (sorry)
07:09 REPLeffect couldn't resist.
07:09 TimToady have you looked at Haskell yet?
07:09 tene ?eval !@#$@%$@%!!!
07:09 evalbot_r15255 Error: ␤Unexpected "#$@%$@%!!!"␤expecting "@" or "::"
07:10 jisom only looked.....not understood
07:10 REPLeffect It's on my list (if you're asking me)
07:10 jisom haven't done the homework
07:10 TimToady it's definitely more of a brain-pretzel than Lisp...
07:11 REPLeffect I kind of picked up that vibe.
07:11 allbery_b if you avoid keywords you can write haskell programs without alphanumerics
07:11 jisom I remember one of audrey's blog posts, about some code that worked, but she didn't know how
07:11 allbery_b <*> is a perfectly good variable name
07:11 jisom "Gentlemen, that is surely true, it is absolutely paradoxical; we cannot understand it, and we don't know what it means. But we have proved it, and therefore we know it must be the truth."  - Benjamin Peirce
07:12 TimToady well, $<*> is a perfectly good variable name... :)
07:13 REPLeffect Is there a "straight" tie-fighter operator yet?   |-o-|
07:13 Ziggy6 left perl6
07:14 TimToady ?eval sub infix:<|-o-|> ($a,$b) { say "Use the $a, $b!" }; "Force" |-o-| "Luke"
07:14 evalbot_r15255 OUTPUT[Use the Force, Luke!␤] Bool::True
07:15 TimToady that good enough?
07:15 REPLeffect works for me :-)
07:15 REPLeffect Still haven't figured out how Darth let that other stupid tie fighter run into him in the trench.
07:15 REPLeffect geez -- chosen one -- didn't you forsee that?
07:16 TimToady well, you know, family squabbles get you hyperfocused...
07:16 REPLeffect hehe.
07:16 jisom that one needs to go into a faq somewhere
07:16 REPLeffect Even when you don't know they are family.
07:16 REPLeffect The tie fighter, or the darth vader reference?
07:17 jisom the little command
07:17 jisom perl6-amusement
07:17 REPLeffect Your next book, TimToady.
07:17 TimToady will already be too fat...
07:17 REPLeffect Perl 6 3000 (ducks)
07:18 TimToady Pyrl
07:18 TimToady Puby
07:18 TimToady Pcl
07:18 TimToady Pisp
07:18 REPLeffect <shudder>
07:18 TimToady Paskell
07:18 jisom python?
07:18 REPLeffect oops.  That's a little too close.
07:18 TimToady Portran?
07:18 REPLeffect Porth?
07:19 REPLeffect Pimula?
07:19 TimToady PPL
07:19 allbery_b perthon, of course
07:19 TimToady and, of course, PL/I
07:19 jisom hmmm......a perl that uses postfix
07:19 allbery_b PerL/1?
07:19 REPLeffect Perlfix?
07:19 jisom perl forth....
07:20 REPLeffect But please, no P++
07:20 TimToady ?eval sub postfix:<!> ($x) { [*] 1 .. $x }  10!
07:20 evalbot_r15255 3628800
07:20 marmic joined perl6
07:21 REPLeffect And no Pasic of any form :-)
07:21 REPLeffect (visual or not)
07:21 jisom makes me think of pir's "foo = print"
07:21 TimToady Pua
07:21 Ziggy6 joined perl6
07:21 Ziggy6 left perl6
07:21 REPLeffect Pogo?
07:22 REPLeffect I actually kinda like that one.
07:22 REPLeffect If I do say so myself.
07:22 TimToady purtle graphics
07:22 jisom no one's going to mention p
07:22 REPLeffect Next book typeset in Patex.
07:23 REPLeffect Or is that Perlatex?
07:23 REPLeffect Heck, that may already exist.
07:23 TimToady Next nintendo box is the Pii
07:23 REPLeffect think of the children
07:23 REPLeffect ... in the public swimming pool
07:23 REPLeffect As if Wii wasn't bad enough.
07:24 TimToady Darn, I forgot to Pivo that program...
07:24 REPLeffect Actually, I think the next version is the "Uss" (pronounced "us")
07:25 TimToady all just goes to show that P is much more flexible than Py
07:25 REPLeffect [cough] [sputter] [flying coffee]
07:25 REPLeffect go away bad visuals!!!!
07:26 TimToady well, I think my blood pressure is down in the basement now.  probably should head off to bed before I do any more damage to the ecology.
07:26 REPLeffect That's because Py is not in liquid form.
07:26 REPLeffect sleep well, TimToady ...
07:26 TimToady K
07:27 REPLeffect (I'd say dream of large women ...
07:27 REPLeffect ... but there was already one incorrect reference to females in your life earlier)
07:27 TimToady except my wife is 4'10"...
07:27 REPLeffect so she probably wouldn't appreciate that.
07:27 REPLeffect No matter how it was interpretted.
07:28 TimToady well, g'nite.
07:28 REPLeffect I should get back to work also.
07:28 REPLeffect good evening.
07:28 REPLeffect left perl6
07:29 GabrielVieira joined perl6
07:43 leed joined perl6
07:46 offby1 joined perl6
07:46 offby1 is there a built-in way to "adjoin" an element to a list -- i.e., to "push" it if there isn't already an equivalent value?  (I suspect not, but ...)
07:47 allbery_b sounds more like you want a set than a list
07:48 offby1 ya
07:48 offby1 trying that now.
07:48 offby1 'nother question: at the pugs command line, can I find out what methods are defined for a particular variable?  There seem to be all sorts of handy things whose documentation I've never run into.
07:49 allbery_b no introspection as yet, no :(
07:49 offby1 ok, more specifically: if I've got a file handle, and read some lines from it, can I get it to tell me how many lines I've read?
07:49 offby1 seems silly for me to have to keep track myself.
07:49 offby1 I guess I want the perl6 equiv of $.
07:53 allbery_b hm, S16 hasn't evolved that far yet.  guess it's a question for @Larry
07:54 avarab_ offby1: in p5 people would generally say "use a hash"
07:54 avarab_ the same probably applies in p6
07:54 avarab_ is now known as avar
07:54 offby1 avar: doin' that now :-)
07:54 allbery_b well, except p5 didn't have a set type; p6 is supposed to
07:55 allbery_b (may not be implemented yet, of course)
07:56 offby1 aha
07:56 offby1 see, I didn't know that :-|
07:57 jisom isn't there a @array.contains($foo) type thing in perl 6?
07:57 offby1 that'd be nifty
07:57 offby1 let's see.
07:57 allbery_b @array ~~ $foo?
07:57 lambdabot Keelhaul the swabs!
07:57 offby1 well, pugs ain't got it
07:57 allbery_b whoops
07:57 offby1 nope
07:57 offby1 ~~ don't do it needer
07:57 offby1 pity.
07:57 allbery_b ?eval <a b c> ~~ 'a'
07:58 evalbot_r15255 Bool::False
07:58 offby1 is evalbot running pugs?
07:58 allbery_b hm, I think thatmade the synopsis a few weeks ago and pugs hasn't been updated to match yet
07:58 offby1 ah
07:58 allbery_b smartmatch gets overhauled every week or so :)
07:58 jisom then it'd just make it a push unless contains type thing
07:58 offby1 I have to trust that it's not just flattening the array into a string and then doing a regexp match against that ... :-)
08:00 allbery_b oh, duh
08:01 allbery_b ?eval any(<a b c>) eq 'a'
08:01 evalbot_r15255 (Bool::False | Bool::True)
08:01 allbery_b hm, right, got that bug still :)
08:01 offby1 hmm
08:01 offby1 let's see if that bites me too
08:02 allbery_b ?eval my @foo = <a b c d e>; any(@foo) eq 'c'
08:02 offby1 works though.
08:02 evalbot_r15255 (Bool::False | Bool::True)
08:02 offby1 allbery_b: thanks.
08:02 offby1 at least, it works in an "if".
08:03 offby1 which prompts me to say: "Everything I Do Gonna Be Funky (From Now On)"
08:03 allbery_b ?eval my @foo = <a b c d e>; if any(@foo) eq 'c' { "yea" } else { "nay" }
08:03 evalbot_r15255 "yea"
08:03 jisom ?eval my @foo = <a b c>; any (@foo) eq 'd';
08:03 evalbot_r15255 (Bool::False)
08:03 * offby1 blows allbery_b a kiss
08:03 allbery_b ?eval my @foo = <a b c d e>; if any(@foo) eq 'f' { "yea" } else { "nay" }
08:03 evalbot_r15255 "nay"
08:03 allbery_b if provides the right context to avoid the autothread bug
08:03 offby1 I assume that's no worse than linear time in the size of @a?
08:04 allbery_b I don't know the implementation
08:04 offby1 ah, hell; I'll code as if it were reasonably fast.
08:04 allbery_b no worse, potentially better if it autothreads
08:04 offby1 i.e., I will not prematurely optimize.
08:04 iblechbot joined perl6
08:05 devogon joined perl6
08:05 offby1 what would "autothreads" mean?
08:05 allbery_b junction operators like any() can automatically take advantage of multiple CPUs by doing multiple operations in parallel threads
08:06 offby1 kewl.
08:07 offby1 p6 is about 10 years ahead of any other language I know of.
08:10 jisom maybe look into erlang, it's designed for multiprocessing
08:11 jisom single operator multithreading....sounds good considering how common multi core/multi cpu computers are becoming
08:11 moritz jisom: I'm sure erlang doesn't have rules... or at least not as powerfull as p6 ;)
08:23 avar offby1: how about lisp?:)
08:24 offby1 I already do lisp ... p6 is kewler :-)
08:24 avar mm, m-expressions;)
08:24 svnbot6 joined perl6
08:24 moritz 22:18 < TimToady> Perl 6 is just another dialect of Lisp
08:25 offby1 perl and scheme are diametric opposites (I like both).  Scheme says "Programming languages should be built, not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary".  Perl takes the opposite approach.  Both work!
08:25 offby1 moritz: what do perl 6 macros look like?
08:25 moritz offby1: I have no idea ;)
08:25 allbery_b one could argue that haskell does a better job of being scheme than scheme does; call/cc can be implemented as a library, not as a builtin :)
08:26 offby1 haskell ain't got macros, far's I know
08:26 allbery_b (in fact, it is:  Control.Monad.Cont)
08:26 audreyt offby1: template haskell is typesafe macro
08:26 allbery_b Template Haskell
08:26 allbery_b *blink* hello!
08:26 audreyt much better/hygenic than scheme's :)
08:26 * offby1 stands corrected
08:26 audreyt greetings
08:26 moritz offby1: I see the same with eiffel... I used to use that, and it's a very neat language ;)
08:26 audreyt so. limited time awake. but the most dangerous phase is behind me (where I was largely unconscious)
08:26 moritz audreyt++
08:27 allbery_b yay!  audreyt++
08:27 offby1 and furthering the common misapprehension that I am audreyt's evil twin, it's time for me to go to bed.  Thanks for the hints, folks.
08:27 allbery_b also, some things you'd do with macros can be done with generics instead.  Data.Generic aka SYB
08:28 allbery_b (hm, except that may use TH under the covers)
08:30 * allbery_b should go back to being eviltwin_b :)
08:42 wolverian audreyt, very glad to hear that. get well soon.
08:45 audreyt well, I need to roll my 1d20 tomorrow
08:45 audreyt 95% chance that it'll take but another week (or two) for this to be over
08:45 audreyt 5% chance that it'll get chronic
08:46 audreyt the saving throw is to be checked ~14hr from now, so I better get some more sleep...
08:46 moritz we keep our fingers crossed
08:46 audreyt thanks :D
08:47 audreyt at least it's just acute Hepatitis B and not fulminant failure...
08:47 clkao audreyt!
08:48 audreyt clkao: heya
08:48 clkao 別爆肝啊
08:48 audreyt 肝若不好人生是撥接的
08:48 audreyt 肝若是好人生是寬頻的
08:49 audreyt clkao: anyway... the doctor will decide if my immune system needs to get modded tomorrow
08:49 audreyt if not, that means I get to stay conscious most of the time, and you're welcome to visit
08:50 audreyt if I need to get modded... it may be more fun to watch plants grow than visit ;)
08:50 clkao best to you
08:50 audreyt danke
08:50 clkao i will be in taipei tomorrow
08:52 audreyt k. will keep you posted
08:54 audreyt keyboarding during IV requires too much aerobics...
08:54 audreyt so bbl :) *wave* &
08:55 clkao SvIV
08:57 jamhed joined perl6
09:07 pfarmer joined perl6
09:09 REPLeffect_ joined perl6
09:29 BooK joined perl6
09:37 andara joined perl6
09:44 buetow joined perl6
09:53 Psyche^ joined perl6
10:02 fengc_ joined perl6
10:05 andara joined perl6
10:09 Psyche^ is now known as Patterner
10:19 drrho joined perl6
10:25 nipra joined perl6
10:25 drupek12167 joined perl6
10:25 sunnavy joined perl6
10:29 ruoso joined perl6
10:29 kanru joined perl6
10:47 VanilleBert joined perl6
10:49 rfordinal joined perl6
10:57 dalecooper joined perl6
10:58 elmex joined perl6
11:04 cmarcelo joined perl6
11:10 dduncan left perl6
11:12 b_jonas joined perl6
11:21 reZo joined perl6
11:27 andara left perl6
11:30 andara joined perl6
11:35 jamhed joined perl6
11:48 IllvilJa joined perl6
11:49 IllvilJa joined perl6
12:08 chris2 joined perl6
12:17 ludwig- joined perl6
12:26 buetow joined perl6
12:36 GabrielVieira2 joined perl6
13:28 araujo joined perl6
13:30 REPLeffect_ joined perl6
13:37 pbuetow joined perl6
13:49 mj41 hi, see http://www.ohloh.net/projects/4406 maybe somebody should add pugs too
13:49 lambdabot Title: Parrot Metrics Report
13:50 rindolf joined perl6
13:56 moritz mj41: see http://www.ohloh.net/projects/3300
13:56 lambdabot Title: Pugs Metrics Report
13:59 thepler joined perl6
14:09 wolverian ohloh doesn't count haskell, I think, which makes it a bit useless for pugs.
14:14 ofer1 joined perl6
14:19 vel joined perl6
14:47 chris2 joined perl6
14:56 Coke see also "PIR" for parrot. :|
14:56 Coke cia is more helpful, I think.
14:56 bonesss joined perl6
15:04 iblechbot joined perl6
15:15 rindolf joined perl6
15:26 __Ace__ joined perl6
15:30 pdcawley joined perl6
15:37 GabrielVieira joined perl6
15:38 VanilleBert joined perl6
15:40 broquaint joined perl6
15:55 iblechbot joined perl6
16:22 justatheory joined perl6
16:32 REPLeffect_ joined perl6
16:39 silug joined perl6
16:48 BooK joined perl6
16:53 cjeris joined perl6
17:16 bjoern_ joined perl6
17:22 elmex joined perl6
17:26 pasteling "bjoern_" at 84.57.242.159 pasted "Simplifying regular expressions" (48 lines, 1.4K) at http://sial.org/pbot/22962
17:27 bjoern_ Hi. In the paste above I give an algorithm to perform a certain simplification of regular expressions
17:27 bjoern_ My algorithm works as I want it to, except that it does not terminate if the expression uses inf repetition like in `a+`
17:28 bjoern_ I so far failed to fix that problem. Suggestions most welcome.
17:30 [particle] you could leave nodes with repetition modifiers alone
17:30 [particle] (until you have a better solution)
17:31 rashakil_ joined perl6
17:32 bjoern_ I think that does not work. One of the operators I have is something similar to http://relaxng.org/spec-20011203.html#interleave-pattern
17:32 lambdabot Title: RELAX NG Specification
17:32 bjoern_ In relax ng, <interleave>a* b c</interleave> would match e.g. `a b a c a a a`. I need to turn this into a choice of groups, if I keep the repetition where it is, the result would be incorrect
17:33 [particle] how would you "simplify" that expression?
17:35 bjoern_ Well one option would be a*ba*ca* | a*ca*ba*
17:36 [particle] would that expression match 'a'? or are b and c always required?
17:36 bernhard joined perl6
17:36 bjoern_ the latter
17:37 bjoern_ I could handle the simple case of a repetition of one terminal simply by checking `if rest == p` and then generating `head+`
17:37 baest that should be possible to do with p6 rules. Name every group as a rule and have <a>* <b> <a>* <c> <a>*. Maybe this could be done simpler, but shouldn't that approach work?
17:38 bjoern_ Yes, I basically have a validation engine for arbitrary context-free grammars, I just want to, if the grammar describes a regular language, turn the grammar into a regular expression
17:38 bjoern_ In principle my question is totally non-perl6 related
17:39 bjoern_ ... but head+ does not work if more than one terminal is repeated, as in the (ab)+c example in the paste
17:46 wilx` joined perl6
17:48 eric256 joined perl6
17:48 svnbot6 r15256 | eric256++ | Adding/fixing some smartlinks
17:51 eric256 .... first looks like ti would be easy to implmement, but its not there yet.. would it be added in prelude or somewhere else?
17:52 moritz ti?
17:55 sunnavy joined perl6
17:55 svnbot6 r15257 | lwall++ | sigs and captures mostly
17:57 TimToady eric256: prelude makes sense to me
17:58 eric256 hehe now to learn how to use a Matcher object ;)
17:58 TimToady in the long run we'd like to have almost everything in the prelude in a self-referential way, and then cut the circularity with a "circularity saw".
17:58 TimToady that would make tiny embedded interpreters practical
17:59 TimToady and fancier run times would just replace more of the prelude with built-in magic
18:00 moritz the build system is a bit weird...
18:01 TimToady for now you could implement it with a return from inside a grep, I think.
18:01 eric256 hehe wwow that was easy.  for @list -> $val { return $val if $val ~~ $test}...  probably even a niecer way to right that
18:01 moritz when I do `make' twice in a row, it still compiles stuff in the second run
18:01 moritz is that intended?
18:02 TimToady I think some of it is.
18:02 moritz and on `make install` there are some compiliations as well
18:02 xinming joined perl6
18:02 moritz that is ugly, because if you run make as a user, and make install as root, your repository fills with uid=0 files ;(
18:02 TimToady yeah
18:03 Coke wow, sounds like pugs build is not much better than parrots.
18:03 Coke it's on our list of things to fix. =-)
18:03 TimToady same kind of make install problems, which is why most of us never do make install...
18:03 moritz I don't easer (dpkg-buildpackage is much more pretty once it works ;)
18:04 moritz s/easer/either/  ;)
18:04 offby1 left perl6
18:05 TimToady make install run as root should just depend on the existence of the executable, not it's up-to-dateness
18:05 TimToady s/it's/its/ grr
18:06 TimToady but the basic underlying problem is that there are all sorts of subtle build dependencies that make is just too stupid to capture
18:06 TimToady and the smarter your compiler and linker are, the more they fool make
18:07 justatheory joined perl6
18:07 rashakil__ joined perl6
18:07 TimToady make is sort of like vice grips.  it's the wrong tool for every job, but it'll do every job.  :)
18:08 moritz so should we just du it in perl? *g*
18:08 moritz s/du/do/ *grml*
18:09 TimToady well, the whole problem with make is that it has little clue what "do" and "it" mean.
18:10 TimToady all it really knows is file granularity and "touch" semantics
18:10 eric256 do i need to remake in order to see changes to Prelude?
18:11 TimToady pugs will reload the prelude every time if you don't remake the precompiled version
18:12 eric256 i'm just using feathers pugs so i don't know where it is looking for its Prelude.pm can i convince it to look at my own Prelude?
18:13 TimToady ENOCLUE
18:14 TimToady biab &
18:16 * eric256 beggins building pugs to final test his first method ;)
18:20 moritz btw is there something like "Design by Contract" for Perl6?
18:20 ludwig- joined perl6
18:23 TimToady moritz: yes, grep S04 and S06 for PRE and POST
18:23 moritz TimToady: cool, thanks
18:24 eric256 on 37 out of 106... well when i get back from lunch it should be done ;) /me goes to look at see if you can control where pugs looks for Prelude.pm
18:24 __Ace__ hey, TimToady, what say you about creating a bigger project in C (instead of C++)? :)
18:29 moritz TimToady: sounds like a start...
18:30 weinig joined perl6
18:30 moritz TimToady: not quite as sophisticated as in eiffel, but that's hard to beat ;)
18:34 ashleyb joined perl6
18:34 moritz TimToady: how would a sub with PRE and POST look like? sub foo() PRE { true } { work} POST {true}?
18:38 ashelyb_ joined perl6
18:45 TimToady moritz: block traits typically go inside the block their modifying
18:45 Lorn joined perl6
18:45 TimToady it's possible DBC blocks could be an exception to that
18:46 TimToady and we need to work out the semantics on multis/protos
18:50 renormalist joined perl6
18:57 weinig is now known as weinig|away
18:59 rindolf joined perl6
18:59 rindolf Hi all.
19:02 pdcawley joined perl6
19:04 neonse joined perl6
19:15 jisom joined perl6
19:24 araujo joined perl6
19:47 theorbtwo joined perl6
19:51 rindolf Is there a list of bugs for pugs somewhere?
19:51 [particle] t/pugsbugs ?
19:52 rindolf [particle]: OK, checking.
19:54 rindolf [particle]: I cannot find it in the pugs repository.
19:55 rindolf I'm using http://svn.pugscode.org/pugs
19:55 lambdabot Title: Revision 15257: /
19:58 [particle] sorry, can't help :(
19:58 svnbot6 r15258 | lwall++ | heredoc stubs
20:00 allbery_b I think for the most part the list f pugs bugs is generated by "make test" or "make smoke"
20:00 TimToady grep for :todo<bug>
20:02 rindolf Let's suppose I have a list of prime numbers, and I'm generating IDs for them using a method. Now I'm interested in the pair (prime and its ID) with the least ID.
20:02 rindolf What's the neatest way to do it in Perl 6?
20:03 diotalevi ?eval undef.defined
20:03 rindolf In Lisp I solved it using a map followed by a reduce with a really hideous lambda.
20:03 evalbot_r15258 Bool::False
20:03 tene what sort of data structure are you storing it in, rindolf?
20:04 rindolf tene: storing what?
20:04 tene the pairs?
20:04 justatheory_ joined perl6
20:04 rindolf tene: I don't have the pairs to start with.
20:04 tene so what do you have to start with?
20:04 rindolf tene: the primes are a list or an array - your choice.
20:04 tene a list and a method?
20:04 tene Okay.
20:05 rindolf tene: yes, a list and a method.
20:06 diotalevi ?eval undef.HOW.can( 'defined' )
20:06 evalbot_r15258 Error: No compatible subroutine found: "&can"
20:06 * diotalevi squints at that. Odd.
20:07 allbery_b I don't think the metaobject stuff is there yet
20:07 allbery_b there's a start at an implementation but it';s not hooked in or doing much yet IIRC
20:09 diotalevi /me'd recently implemented "interesting values of undef" in Perl 5 and was looking at Perl 6 for examples.
20:10 tene rindolf: one option is to procedurally stuff them all in a hash, then min(%hash.keys)
20:11 weinig|away is now known as weinig
20:13 rindolf $v = f:x("a") "b" - what does it mean?
20:13 rindolf I'm talking about t/operators/adverbial_modifiers.t
20:14 tene ?eval sub id($n) { $n+100 }; my %hash = map {{foo($_) => $_}}, 1..10; %hash.perl.say
20:14 evalbot_r15258 Error: No compatible subroutine found: "&foo"
20:14 tene ?eval sub id($n) { $n+100 }; my %hash = map {{id($_) => $_}}, 1..10; %hash.perl.say
20:14 evalbot_r15258 OUTPUT[{("101" => 1), ("102" => 2), ("103" => 3), ("104" => 4), ("105" => 5), ("106" => 6), ("107" => 7), ("108" => 8), ("109" => 9), ("110" => 10)}␤] Bool::True
20:15 tene ?eval sub id($n) { $n+100 }; my %hash = map {{id($_) => $_}}, 1..10; min(%hash.keys)
20:15 evalbot_r15258 "101"
20:16 tene or...
20:20 tene ?eval sub id($n) { 100-$n }; my @primes = 1..10; min(@primes,->$a,$b{id($a) cmp id($b)})
20:21 evalbot_r15258 10
20:22 tene ?eval sub id($n) { 100-$n }; my @primes = 1..10; my $min = min(@primes,->$a,$b{id($a) cmp id($b)}); {$min,id($min)}
20:22 evalbot_r15258 (\10, 90)
20:22 justatheory joined perl6
20:22 tene ?eval sub id($n) { 100-$n }; my @primes = 1..10; my $min = min(@primes,->$a,$b{id($a) cmp id($b)}); {id($min) => $min}
20:22 REPLeffect_ joined perl6
20:22 evalbot_r15258 (90 => \10)
20:22 tene rindolf: any of that work for you?
20:23 wolverian I think @primes.min(&id) should work as well.
20:23 wolverian although I do wonder why [1..4].min doesn't work.
20:24 allbery_b ?eval [1..4].min
20:24 evalbot_r15258 [1, 2, 3, 4]
20:24 allbery_b ?eval (1..4).min
20:24 evalbot_r15258 1
20:25 rindolf tene: let me see
20:25 TimToady ?eval [min] 1,2,3,4
20:25 evalbot_r15258 Error: ␤Unexpected "1"␤expecting operator
20:26 tene wolverian: are you suggesting that min checks the arity of &by and compares the results of two separate calls if it only takes one parameter?
20:26 wolverian tene, yes.
20:26 rindolf tene: let's assume that we map the primes into their prime => id pairs.
20:26 rindolf tene: and work from there.
20:26 tene rindolf: that's what I did in the first example.
20:27 rindolf tene: ah.
20:27 wolverian (it's just a suggestion though, I don't know what it actually does. :)
20:29 tene That sort of cleverness seems potentially bad.
20:30 TimToady min should take arguments like sort
20:30 TimToady conceptually min is just first(sort())
20:30 TimToady only O(n), we hope
20:31 wolverian isn't it annoying how practicalities get in the way of concepts?
20:32 rindolf http://paste.lisp.org/display/36814 - this is the lisp version
20:33 allbery_b ?eval [min] (1,2,3,4)
20:33 evalbot_r15258 Error: ␤Unexpected "("␤expecting operator
20:34 tene wolverian: such cleverness would probably lead to unexpected behavior.
20:35 TimToady ?eval 1 min 2
20:35 evalbot_r15258 Error: ␤Unexpected "min"␤expecting operator
20:35 TimToady infix:<min> not yet impl
20:39 TimToady ?eval sub infix:<minval> ($a,$b) { min $a.value, $b.value } [minval] :a(1), :b(2), :c(3), :d(0), :e(5)
20:39 evalbot_r15258 Error: Named argument found where no matched parameter expected: ("a",Ann (Pos (MkPos "<eval>" 1 67 1 68)) (Val (VInt 1)))
20:40 TimToady ?eval sub infix:<minval> ($a,$b) { min $a.value, $b.value } [minval] (:a(1), :b(2), :c(3), :d(0), :e(5)
20:40 evalbot_r15258 Error: ␤Unexpected end of input␤expecting operator or ")"
20:40 TimToady ?eval sub infix:<minval> ($a,$b) { min $a.value, $b.value } [minval] :a(1), :b(2), :c(3), :d(0), :e(5))
20:40 evalbot_r15258 Error: ␤Unexpected ")"␤expecting ",", bare or pointy block construct, ":", identifier, term postfix or operator
20:40 TimToady ?eval sub infix:<minval> ($a,$b) { min $a.value, $b.value } [minval] (:a(1), :b(2), :c(3), :d(0), :e(5))
20:40 evalbot_r15258 Error: No compatible subroutine found: "&value"
20:42 rindolf ?eval: ([3,5],[1,6],[7,9],[8,100]).min({$^a.[0] <=> $^b.[0]})
20:42 evalbot_r15258 Error: ␤Unexpected ": (["␤expecting "::"
20:46 Daveman joined perl6
20:57 zgh I think the NBL is Perl 6: http://steve-yegge.blogspot.com/2007/02/next-big-language.html
20:57 lambdabot Title: Stevey's Blog Rants: The Next Big Language
21:07 rindolf ?eval: ().min
21:07 evalbot_r15258 Error: ␤Unexpected ": ()."␤expecting "::"
21:11 allbery_b er, rindolf?  why "?eval:"?
21:11 allbery_b bot doesn't like that colon
21:12 tene ?eval ().min
21:12 evalbot_r15258 undef
21:14 rindolf allbery_b: I see.
21:14 rindolf eval: 5+6
21:14 buubot rindolf:  11
21:14 allbery_b cute.  mixing bot activations :)
21:15 czth joined perl6
21:19 nothingmuch ?eval: sub prefix:<:> ($x) { $x } 1+1
21:19 evalbot_r15258 Error: ␤Unexpected ": sub"␤expecting "::"
21:19 nothingmuch =(
21:19 rindolf Hi nothingmuch
21:19 nothingmuch all is fair if you predeclare, i guess
21:19 nothingmuch hola
21:21 weinig is now known as weinig|bbl
21:21 justatheory joined perl6
21:21 rindolf nothingmuch: what's up?
21:22 nothingmuch work
21:22 Aankhen`` joined perl6
21:31 Psyche^ joined perl6
21:32 rashakil_ joined perl6
21:33 gaal http://www.youtube.com/watch?v=KyLqUf4cdwc # perl recognized
21:37 tene zgh: re NBL post: refactoring tools?  IDE support?  Are there big plans for those in Perl6?
21:38 jisom does he know that open(info) is ok?
21:40 stevan__ wow,.. I hope Perl 6 has such advanced Vista intigration
21:41 jisom should try that on a system 7 mac...
21:41 jisom might work better
21:41 nothingmuch "just how easy", eh?
21:41 lichtkind joined perl6
21:42 jisom he doesn't try "upper case info"?
21:42 lichtkind sorry for rude question but what has changed in perl6 since last 2 month?
21:42 merlyn plenty
21:42 merlyn do you want my diffs? :)
21:43 lichtkind when i get them?
21:43 merlyn give me a few minutes... I have to find a log entry from two months ago
21:43 lichtkind hi merlyn yesterday i praised you before my friends :)
21:43 jisom svn diff r1:r16?
21:44 jisom sort of
21:44 * merlyn looks for something around dec 13
21:44 lichtkind merlyn no joke i was really surprised how kind you was
21:45 merlyn is there a pastebot here?
21:45 nothingmuch pasteling
21:45 nothingmuch sial.org
21:45 nothingmuch see also the topic
21:45 allbery_b several, actually, but sial.org is the useful one :)
21:46 ashelyb_ lichtkind: http://dev.pugscode.org/timeline
21:46 lambdabot Title: Timeline - Pugs - Trac
21:46 pasteling "merlyn" at 67.171.133.77 pasted "summary of difference between perl6 archive between two months ago and now" (543 lines, 33.2K) at http://sial.org/pbot/22970
21:46 merlyn 542 files changed. :)
21:47 merlyn oh - let me do it with rename and copy detection
21:47 lichtkind shiii i meant more like something like biggest feature chandes
21:47 Psyche^ is now known as Patterner
21:48 lichtkind but thanks a lot
21:48 pasteling "merlyn" at 67.171.133.77 pasted "differences with rename/copy detection enabled" (529 lines, 32.3K) at http://sial.org/pbot/22971
21:48 nothingmuch lichtkind: unfortunately no one is really blogging actively anymore, but that was the best option before, i think
21:49 lichtkind hello nothingmuch
21:49 lichtkind ok i try to explain
21:49 merlyn 34067 insertions, 3575 deltions
21:49 merlyn sounds like we're making progress!
21:49 merlyn 528 files changed
21:49 lichtkind some momth i did some serious effort to write perl6 tutorial
21:49 lichtkind and paused a little
21:50 merlyn here's a big one - src/perl6/Perl-6.0.0-STD.pm
21:50 lichtkind now im writing artikel for the new german perl magazin
21:50 merlyn and this one too -  misc/pX/Common/redsix/redsix
21:50 lichtkind and just want to be shore not to overlook some new cool feature
21:50 nothingmuch merlyn: i'm not sure that's helpful
21:50 merlyn maybe you want a diff of the status
21:51 lichtkind sounds good
21:52 Shai-Hulud joined perl6
21:52 lichtkind i copied newest files and made also svn check out
21:52 Shai-Hulud hi
21:52 merlyn I track perl6-svn with git - it has nice tools for differences and stuff, including good rename detection
21:53 lichtkind i also ask what from you perpektive important in perl6
21:53 lichtkind hallo robin :)
21:53 pasteling "TimToady" at 71.139.17.198 pasted "synopsis diffs in the last 2 months" (5708 lines, 211K) at http://sial.org/pbot/22972
21:53 mako132_ joined perl6
21:53 nothingmuch TimToady++
21:53 Shai-Hulud @lichtkind: do I know you? :)
21:53 lambdabot Unknown command, try @list
21:53 merlyn ahh yeah, I've been tracking those as well
21:54 lichtkind thanks tim
21:54 lichtkind looks a bit creepy but shurely helpful
21:54 Shai-Hulud yes that's a bit annoying
21:56 pasteling "merlyn" at 67.171.133.77 pasted "perl6doc diffstat for last two months" (10 lines, 422B) at http://sial.org/pbot/22973
21:56 lichtkind some big thing like intro of captures happened?
21:57 Southen_ joined perl6
21:58 lichtkind thanks
21:58 lichtkind that should keep me busy a while :)
21:59 Shai-Hulud and your latest red alert game of course *g*
22:04 Shai-Hulud I don't even know what I'm supposed to do here, I'm a FORTRAN guy (yes and still not retired) ... bye
22:04 Shai-Hulud left perl6
22:05 nothingmuch red alert? he must be really old ;-)
22:08 pasteling "moritz" at 80.193.211.68 pasted "Pugs Build Error" (19 lines, 1.1K) at http://sial.org/pbot/22974
22:08 mj41 lichtkind: hi, I prefer my Synopses diffs :-), e.g. http://perl6.cz/w/index.php?title=Synopses%2FS04&amp;diff=3444&amp;oldid=2121 ,  see http://perl6.cz/wiki/Synopses
22:08 lambdabot Title: Synopses/S04 - perl6.cz, http://tinyurl.com/yrkl3x
22:09 moritz any idea why pugs build failed? (see pastebot)
22:09 lichtkind nothingmuch no im 30 :)
22:09 nothingmuch not you, Shai-Hulud
22:09 lichtkind hes under 20 :)
22:10 lichtkind perl6.cz eho of you is czech?
22:10 lichtkind s/eho/who/
22:11 allbery_b I thought the parrot embedding stuff was bitrotted
22:11 mj41 lichtkind: I am Czech.
22:12 lichtkind mj41 a jak jse jmenujes?
22:12 moritz allbery_b: any way I can prevent it from building?
22:12 mj41 lcihtkind: michal jurosz
22:12 allbery_b I thought parrot foo only built if you had envirobnment variable spointing at a parrot tree
22:13 moritz allbery_b: I had parrot installed previously, but I purged it all
22:13 mj41 lcihtkind a ty? odkud jsi ze mluvis cesky?
22:13 allbery_b you might need to make clean to disappear any dangling references, then
22:14 PerlJam make realclean
22:14 moritz ok, I'll do that
22:14 allbery_b and go through the configure foo again
22:14 lichtkind mj41 protoze jse nemec :) :)
22:16 lichtkind jsem
22:17 PerlJam nazdar!
22:17 PerlJam Jaz se mas?
22:17 * PerlJam exhausts all the czech he thinks he knows
22:17 lichtkind nazdar vsechno plno cechu tady?
22:17 reZo joined perl6
22:17 mj41 lichtkid aha, ja nemecky neumim asi ani vetu :-(
22:17 lichtkind mj41 cool you also do wxperl, why i never did you see in the lists?
22:18 polettix joined perl6
22:18 mj41 tak to je parada, ja pilne studuju anglictinu, abych se tady domluvil a oni vsichni mluvi cesky :-)
22:19 lichtkind mj41 no tak vidis jak ten svet je kruty :)
22:19 lichtkind PerlJam not bad for a beginner :) my pozor im native speaker
22:20 lichtkind mj41 co je WxMageApp ??
22:20 PerlJam lichtkind: my wife was the gym director at a local organization called "Sokol".  I heard Czech all the time but didn't really pick up on it  (sounded too much like mumbling to me)
22:21 mj41 lichtkid I am php "coder" now, not time for wxperl
22:21 PerlJam mj41: me too!
22:22 lichtkind PerlJam ah interesting, but czech is really language for poets
22:22 * PerlJam commiserates
22:22 lichtkind how sad
22:22 dduncan joined perl6
22:22 lichtkind mj41 yes but you did write this code so you know what it does http://wiki.kn.vutbr.cz/mj/index.cgi?Projekty
22:23 lambdabot Title: Projekty : MJWiki
22:23 lichtkind ja take delal hodnje v wikipedii
22:23 lichtkind chtel rict take hodne
22:24 lichtkind k back to perl6 :)
22:24 lichtkind PerlJam did you recognized some major new features in last month popping into perl6?
22:25 Caelum joined perl6
22:25 PerlJam lichtkind: yes I did.  It even worried me for all of a few hours  :-)
22:27 lichtkind PerlJam what do you exactly mean ? :)
22:29 PerlJam I worried briefly about the language growing "too big" or "too complex", but then I realized this is how perl has always been.  The trick is just in compartmentalizing knowledge so that you can let your associative memory work in your favor.  Lucky perl compartmentalizes well :-)
22:30 lichtkind like a boss i would say thank for you opinion but thats not what im asked for :)
22:33 lichtkind PerlJam i meant new features :)
22:34 weinig|bbl is now known as weinig
22:41 lichtkind PerlJam i sometime also bit worried cause too complex, but like larry sad you dont have to use it
22:41 Limbic_Region joined perl6
22:43 lichtkind the gather blew my mind but im good hope that i will understand
22:52 weinig is now known as weinig|food
22:54 Debolaz I don't know, I prefer certain things just being modules and the language's job is just to make sure that it's easy to write those modules. That is one of the thing that has made perl 5 so popular.
22:55 tene Debolaz: explain?
22:56 Debolaz I like perl 5 because it's minimalistic, yet does a very good job giving you the facilities you need to write the functionality you need. I think things such as junctions does not need to be a part of the core language, even though I do see that they are usefull.
22:59 Psyche^ joined perl6
23:00 allbery_b hm?  junctions in core gives you automatic parallelization in core.  this is a good thing
23:00 lichtkind Debolaz so dont use it, even perl5 is full with tons of features
23:00 Debolaz lichtkind: You completely missed my point.
23:01 lichtkind Debolaz i think the job of a language is to make programming easier, to write everything i need sounds to me more like TCL
23:01 Debolaz allbery_b: Yes, automatic parallelization is a good thing but I don't believe junctions neccesarily requires core support in order to achieve this. Perhaps there could be some API to allow delegating tasks to a new thread.. less high level than junctions? This way, more than just junctions could take adventage of it.
23:02 lichtkind Debolaz you made good point but it does not meet perls objectives
23:02 Debolaz lichtkind: You wouldn't need to write every single little thing you need. That's completely ignoring the existence of modules.
23:03 lichtkind so you want modules that add core features?
23:03 Debolaz No?
23:03 Debolaz Junctions wouldn't need to be a core feature.
23:04 REPLeffect_ I suspect that junctions are to be in the core because there are advantages to having them there ...
23:04 REPLeffect_ .. and because
23:04 REPLeffect_ .. they are totally ignorable if you don't want them, so no major advantage in leaving them out of the core.
23:05 Debolaz REPLeffect_: The adventages are autoparallellization, but the "right" solution imho would be exposing an API to allow modules to tell core what it can autoparallellize rather than restricting it to a few included high level builtin functions.
23:05 lichtkind Debolaz thats the design philosophy of minimal core
23:05 Debolaz You can of course do both, but this solution would've allowed both junctions and this from the getgo whileas right now there are just junctions.
23:06 tene Debolaz: Junctions *are* an API to autoparallellize things.
23:06 lichtkind i understand the need to keep the core small as possible
23:07 jisom if it's running on parrot, wouldn't it just be able to access parrot's threading methods and do it itself?
23:07 lichtkind but that was never the perl way to do things
23:08 tene Debolaz: Junctions are *how* you tell perl to autoparallelize.
23:08 Debolaz lichtkind: It was imho perl 5's way of doing things. Keeping things minimal, just make it possible for modules to implement things in a good way and not stuff every feature the developers thinks are nifty into the core language. A new language should not be a free ticket to change what made perl 5 popular.
23:08 REPLeffect_ I by no stretch of the imagination an expert on the implementation of junctions, but I suspect there technical reasons for having the implementation be part of the core.  Perhaps someone with more intimate knowledge of the design could chime in on that.
23:08 tene What sort of API were you thinking of?
23:09 REPLeffect_ s/there/there are/
23:09 Debolaz tene: My complaint was that junctions were too high level.
23:09 GabrielVieira2 joined perl6
23:09 tene Debolaz: howso?  Provide an alternate suggestion.
23:11 Debolaz A function like async_if_efficient {} for instance, leaving it to the core to determine if a thread should be created.
23:12 Psyche^ is now known as Patterner
23:12 lichtkind Debolaz: that i way to see ist, i could argue that was made perl popular is Tim Today so you can use junctions, loops or arrays or..., perl was about have an choice and we adding new
23:12 allbery_b um, you still can.  there are just more ways to do it now
23:12 lichtkind thats a way to see it
23:13 allbery_b it's not like junctions are replacing lists
23:13 tene Debolaz: how would you implement junctions using async_if_efficient?
23:13 allbery_b should we rip out arrays because you can simul;ate them with hashes, or vice versa?
23:14 lichtkind but debolaz did very valid psychological point: its all gaining much complexity
23:14 IllvilJa left perl6
23:14 Debolaz Ultimately, I suspect perl 6 might end up suffering from PS3 syndrome: While technically superior to the competition, it's difficult for developers to really exploit it fully making them prefer xbox 360 which although simpler is easier to take full adventage of.
23:14 lichtkind thats one of the biggest PR hrdles for perl 6
23:15 lichtkind Debolaz: thats possible
23:15 lichtkind but not likely
23:15 jisom nonsense, few will actually take full advantage of perl6, just as many don't take full advantage of perl5
23:15 Debolaz And of course, you don't *need* to know how to take full adventage of perl 6 in order to use it, most simple stuff doesn't require much more than perl 5 knowledge. And the same is true for PS3, it's got a good ol' powerpc unit running in it. But from there it gets more difficult whileas xbox 360 (In the case perl, that's ruby) is much easier to learn to really take adventage of.
23:15 lichtkind because features like junktions made a whole series of languages inceasingly popular
23:16 jisom how many use regexes in perl5 when they should use pack?
23:16 tene Debolaz: I don't see how async_if_efficient could even work... waiting for a return value and spawning off a new thread and returning immediately are extremely different.
23:17 lichtkind thatswhy is to have junction also a question to be up to date
23:19 lichtkind jisom made the point, we raise the bars to bottom and to the top
23:19 lichtkind Debolaz is right in the senze that simple languages can be picked up quickly
23:19 Debolaz Saying "nonsense" doesn't make the elephant at the dinner table go away. Perl 6 is a lot more complex than ruby, you can do more with ruby given the same initial learning period than you can do with perl 6 assuming perl 5 knowledge.
23:19 diotalevi Like Scheme!
23:20 lichtkind Debolaz perl6 complexitiy is not mandatory
23:20 Debolaz lichtkind: I addressed that above.
23:21 tene I disagree.  I don't see very much in Perl6 being very complex at all.
23:22 jisom most people don't use the full features of a language, they generally use a subset, and let it grow from there, having many options suits multiple thinking methods to make it easier for a greater portion of people to learn "their" subset
23:22 tene Give me some specific examples of thigns in perl6 that are difficult to learn whose counterparts in other languages are easy to learn.
23:22 Debolaz tene: I picked up ruby a lot quicker than I picked up perl 6 and as far as I hear most people that has tried have the same experience.
23:23 lichtkind debolaz i think some things you can do in perl6 less complicated than in ruby
23:23 moritz jisom: but it means that in order to understand code from somebody else, you might have to understand language features you never used yourself...
23:23 moritz jisom: or possible have never even seen them before
23:23 tene I know that, for me, all I need to learn in order to use a new feature is a little bit of syntax.
23:23 tene Also, there isn't much teaching material for Perl6.
23:24 tene Regardless, I'd like to hear soem specific examples.
23:24 lichtkind debolaz o course your right but as larry said perl optimized for expressivness not lernability
23:24 Debolaz I mostly looked at code examples as well.
23:24 Debolaz lichtkind: I did assume perl 5 knowledge in my statements above though.
23:24 moritz tene: have you seen the code under t/ and examples/ in the pugs repository?
23:24 Debolaz As I assume that is going to be the biggest source of new users.
23:25 jisom reading somebody else's code is generally impossible if they didn't include comments, or your own code
23:25 moritz jisom: yes, but it's even harder if you don't know the syntax they are using
23:26 Limbic_Region I suspect anyone who knows perl 5 will pick up 80 - 90% of perl 6 within a few months
23:27 Limbic_Region I suspect anyone brand new to perl will pick up the same within a year
23:27 jisom like if I use perl 5's pack because it's quicker than a regex, and someone reads it and doesn't understand it?  it's harder for them, but if they want to understand it it also pushes them to learn more and figure out why it was choosen
23:27 lichtkind Debolaz i do not exactly understand your last sentence but one thought, even if perl6 get more complex, so you can express ideas shorter, more native to a certain logic which can makes programms easier to understand, so it compensates the complexety a bit
23:27 Limbic_Region the remaining 20% may take a lifetime
23:28 Debolaz tene: I don't have any specific examples on the top of my head. But keep in mind, everyone is not a genious. In fact, most developers aren't, they're just trying to get their job done. Ruby, I could understand pretty much by just looking at the code based on my perl 5 knowledge. It's not obvious what $foo!bar means. It's not obvious that you cannot write "is private" when defining something but must use some weird ! syntax.
23:28 [M]erk joined perl6
23:28 jisom programs are only as complex as the programming
23:28 jisom not the language
23:28 jisom anyway, just document your code :)
23:28 czth IDENTIFICATION DIVISION.
23:29 czth (or, in other words, verbosity isn't always good)
23:29 lichtkind czth your another czech here ?
23:29 allbery_b aaaaaaaaa
23:29 * allbery_b runs away
23:29 diotalevi % Do some constraint logic programming here instead of the long way with loops and goo.
23:29 diotalevi % :-)
23:29 diotalevi ...
23:29 czth no, not czech, sorry
23:29 moritz jisom: you're absolutely right, but it's allways easier to look up a function than some syntax elements
23:29 Debolaz lichtkind: What I meant was that most of perl 6 users will probably come from the group of perl 5 users.
23:30 Limbic_Region diotalevi - your recent foray into prolog and oz - academic exercise only or did you have something real you needed to use it for?
23:30 czth maybe we can suck in all the popular open source languages to run on the parrot backend :)
23:30 diotalevi LR, I plan to use it in Perl 6, of course!
23:30 jisom czth, it's possible, tcl's running
23:30 Limbic_Region ok - but for what problem domain
23:31 diotalevi Not having logic programming in perl is a major downer for me.
23:31 czth yeah, so i hear, i remember when Will Collada?(sp) I think it was started that project
23:31 jisom it's still going strong
23:31 Limbic_Region #parrot is on irc.perl.org and yes, still going strong
23:31 Limbic_Region in fact, it is probably the most developed HLL targetting parrot
23:32 diotalevi LR, general application stuff. Very often I find there's things I think could be better expressed using some constraints or rules but because I'm using Perl or another non-logic language I write the search strategy out in normal code.
23:32 czth now we need to get python and ruby on board (but ban PHP forever)
23:32 TimToady just need a refactoring PHP to Perl 6 translator to take over the world.
23:32 czth yay
23:32 diotalevi But see, normal code that looks through a search space doesn't have to be that verbose. I think you can abstract all that stuff away.
23:33 jisom I believe the .net->pir converter worked well....
23:33 moritz btw is anybody planning to write a shellscript-compiler with parrot backend? that might speed up some linux boot processes ;)
23:33 Limbic_Region diotalevi - I can see that.  Are there features in Perl 6 that will allow you to do that or is there something stock that I just don't know about?
23:33 Debolaz While there's no doubt in my mind that perl 6 is going to get out the door, I'm sceptical about parrot. The project just seems like the typical beurocratic government run project that never really gets anywhere despite the fact that it consumes enormous amounts of man hour.
23:33 lichtkind czth nop :)
23:33 czth moritz: do you really think boot is substantially slowed by the speed of shell script execution?
23:33 diotalevi I don't mind if there's no one but me and some converts using CLP or logic. If it comes to it, it's just something you declare.
23:34 jisom parrot has fewer people than pugs
23:34 moritz czth: I'm not quit sure, but there are just so many processes beeing started to do really simple stuff, that just hurts
23:34 weinig|food is now known as weinig
23:34 moritz czth: and it would just be a rather cool project ;))
23:35 Limbic_Region diotalevi - well, one primary goal of perl 6 is extensibility so I was wondering if you were planning on adding in a logic grammar plugin, if the language already had the constraint syntax you needed and I didn't know about it, or if it just provided some tools that could be bent to your whim
23:35 czth so won't an equal number of processes need to be started for parrot? or do you mean for scripts things like 'true'?
23:35 * Limbic_Region is honestly interested
23:35 czth i imagine there's some caching going on there
23:35 Debolaz I think it being an official project of the perl foundation is hurting it. Pugs didn't have any beurocratic restraints and got where it is today in incredible speed whileas people has kept bikeshed painting parrot to death. And that's not just my personal opinion.
23:35 jisom moritz: maybe write an init program instead of an init script
23:36 lichtkind Tim Toady sos ..take over the world, but during your speeches you play the humble guy :)
23:36 diotalevi I haven't heard anything to say that I can do Prolog or Mozarty things in Perl 6's existing grammar. Actually, with Prolog you have to be very careful to think of execution order so I'm hoping to move on from that. Mozart seems pretty cool by having the search strategies be parameters.
23:37 Limbic_Region Debolaz - I will make a wager with you.  When pmichaud finishes his perl 6 compiler to pass the perl 6 sanity test suite (4 failing tests ATM) and the entire perl 6 test suite in pugs (minus a few implementation specific tests) is available to it, that parrot development will take off like dynamite
23:37 diotalevi I heard similar things about Mercury but haven't spent time with it.
23:37 Debolaz Limbic_Region: I certainly hope you're right. :)
23:37 Debolaz Limbic_Region: I consider parrot a pretty darn cool idea.
23:38 Limbic_Region Not sure if it is still true but Tivoli used to use Prolog for its custom event monitor
23:38 diotalevi I've heard that too, LR.
23:38 Limbic_Region Debolaz - well, there is a LOT already done.  The trouble is that natively you need to speak PASM to use parrot
23:39 Limbic_Region granted PASM is OO
23:39 Limbic_Region it is still beyond what most want to pick up just to use something changing every day
23:39 jisom you can use pir, far easier
23:39 jisom many prefer pir over c even
23:39 Limbic_Region OTOH, if there was a popular HLL that mostly worked - parrot users would sky rocket
23:39 Debolaz Limbic_Region: A lot done, after a *really* long time.
23:39 moritz jisom: that might be the right thing to do, but it would imply to refactor all init scripts
23:39 moritz jisom: and that's probably a pain in the ass
23:39 Limbic_Region and hence bug reports
23:39 jisom kind of a hinderence
23:39 Limbic_Region and hence failing test cases
23:39 Limbic_Region and bug fixes
23:39 Limbic_Region and ....
23:40 Limbic_Region yadda
23:40 Limbic_Region jisom - PIR is a far cry from a HLL
23:40 * jisom wonders why more perl6 people aren't working on parrot to get perl6 using less than a gig of ram
23:41 * Limbic_Region wanders off to show some videos
23:41 SamB parrot has so many damn opcodes...
23:41 jisom namespaces, inheritence, object oriented, pge, etc.....it's very high level, most can't be jitted even!
23:41 jisom it's a cisc, not a risc
23:41 Debolaz Limbic_Region: At my old job, a government institution, projects like that weren't uncommon. Even seemingly simple tasks took an enormous amount of time because of the bikeshed painting effect. Everything had to be done just right and nobody could agree on what that was and the beurocratic process allowed everybody to keep arguing even insignificant points to death.
23:41 larsen_ joined perl6
23:41 Debolaz Installing ldap, just installing the server software, took 6 months.
23:42 Debolaz I'm very happy I don't work there anymore. :-)
23:42 jisom even perl6 needed documents saying how it should end up being before you can really get to implementing it...even if those documents change
23:43 hexmode joined perl6
23:43 moritz ?eval sub foo(int $i) { PRE { $i < 2; } say $i;} foo(1);
23:43 evalbot_r15258 OUTPUT[1␤] Bool::True
23:44 moritz ?eval sub foo(int $i) { PRE { $i < 2; } say $i;} foo(3);
23:44 evalbot_r15258 OUTPUT[3␤] Bool::True
23:44 moritz on my machine it doesn't even compile :)
23:44 Debolaz And I do firmly believe that had parrot been some nonofficial project, it would've at least been running python and perl 5 at production level today. Of course, that's merely speculation since we can't go back in time and change things.
23:46 SamB someone should make a *new* VM...
23:46 moritz SamB: not again ;)
23:46 SamB I meant, a tiny bytecode...
23:47 SamB or, well, I guess almost any bytecode would be small compared to parrot...
23:47 moritz does size matter?
23:47 SamB yes
23:48 jisom parrot bytecode is not compressed, and using 32 bit ints, which is one of those "space/speed" tradeoffs...
23:49 SamB the bigger something is, the longer it takes to do things to it...
23:49 Patterner we need an UTF8-like encoding of bytecode :)
23:49 SamB see Glulx
23:50 * diotalevi votes for UTF-32.
23:50 diotalevi No wait, UTF-64.
23:50 * moritz offers a generic UTF-2^n
23:50 Debolaz Then we get UTFCube.
23:50 moritz with arbitrary n, of course
23:51 jisom no, cause each opcode is 32 bits, and from the opcode you know how many arguments there are, and read those ints, and it's simpler to read and parse without any weird hacks like you see in intel........a custom compression algorithm for the bytecode would help for the hard drive space though
23:51 Debolaz And I'm not entirely sure how to make a pun of Wii and UTF..
23:51 beppu Wiinicode
23:51 beppu weenie code
23:52 jisom wiitf
23:52 diotalevi Custom? I vote for gzip or something like that.
23:52 * beppu suicides self
23:53 jisom eh, that'd still work, but since the data involved is easily known, something else, but even then, people are more likely to run a perl6 script, including compiling it, than saving the pbc file and running it
23:54 jisom anyway, improving the core is more important than discussing the bytecode size which is trivial to many people
23:59 SamB why do you need so many damn opcodes?
23:59 jisom which ones are you refering to?

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

Perl 6 | Reference Documentation | Rakudo