Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-03-15

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 TimToady ayrnieu: q:w:s(a b $a) is not legal syntax if you're expecting (...) to be the quote delimiters.
00:00 ruoso s/is in/appears in/
00:01 TimToady q:w:s (a b $a) would work
00:02 ayrnieu oops, right.
00:02 TimToady and in fact it does work in my pugs.
00:02 Juerd Yet another reason for using [] as your favourite delimiters.
00:02 ayrnieu I normally use //
00:02 Juerd // is incredibly limited :/
00:03 TimToady [] not good enough here, since q:w:s[] would also feed [] to :s as its argument.
00:03 Juerd TimToady: Oh.
00:03 TimToady :foo<> etc. is the same syntax everywhere.  Better to just get used to putting space if you want a bracket delim.
00:04 Juerd ayrnieu: If you work with HTML and javascript, you have lots of slashes in your strings: </foo>
00:04 ayrnieu Juerd - I change the delimeter in those cases :-)
00:04 Juerd TimToady: I've always found spaces between quoting operator and delimiters ugly; and it's bad for golf ;)
00:04 ayrnieu It's not as if I ever embed backwhacked delimeter-characters.
00:05 TimToady should be using here docs for multi-line HTML anyway...
00:05 ayrnieu Juerd - only for "perl goes here".elems golf.
00:05 Juerd TimToady: Well, maybe. I've ignored heredocs in perl 5 mostly.
00:05 Juerd ayrnieu: chars
00:05 TimToady hopefully they'll be a little more useful in Perl 6.
00:05 LeTo besides golf, it's just confusing and adds to the mentioned 10%
00:06 ayrnieu yeah. that.
00:06 eric256 left perl6
00:06 ayrnieu LeTo - what 10% ?
00:06 Juerd TimToady: Well, they are better in Perl 6.
00:06 Juerd Fortunately HTML is whitespace agnostic, so I can indent the string itself one extra level.
00:06 LeTo the 100%-90% thingy above
00:07 ayrnieu LeTo - ... where?
00:07 Juerd ($foo = <<'BLAH';)
00:07 Juerd    aoeu
00:07 Juerd BLAH
00:08 LeTo ayrnieu: < TimToady> It is nice to go back through perlmonks though and realize that just about 90% of the newbie traps are now closed.
00:09 ayrnieu ah.  OK.
00:09 LeTo < TimToady> doubtless we've introduced other newbie traps, of course...
00:10 LeTo and that's imho for sure a bad one
00:10 TimToady but at least the :s() trap is consisten everywhere...
00:10 TimToady earlier we had some :foo taking args and others not, and that was going to be a much worse nightmare...
00:10 Juerd Weren't most of the old newbie traps also very consistent?
00:11 LeTo TimToady: don't listen to me, I'm not a perl programmar, just a poor parrot implementor ;)
00:11 TimToady Well, at least we shortened "use strict; use warnings" to "use v6"... :)
00:12 Juerd Hmmm
00:12 TimToady one recent change is that you can declare your own composite quote operators:
00:12 TimToady   quote qws;
00:12 Juerd Do we get v-strings back then ;)
00:12 TimToady and then qws(a b $a) without
00:12 TimToady the s being taken as an adverb.
00:13 LeTo TimToady: is that also for P6 or already P7 ;)
00:13 Juerd TimToady: Hm, I would have thought that quote ops would get an &foo: category
00:13 Juerd TimToady: And that you would compose them with .assuming
00:13 Juerd And/or .wrap
00:14 TimToady They're just term: macros really...
00:14 LeTo why does it need core support then?
00:14 TimToady It's all sugar.
00:14 LeTo macros are there already
00:14 Juerd LeTo: Everything needs core support, because if the core isn't supported... ah, nevermind :)
00:15 LeTo why that much sugar?
00:15 Juerd LeTo: Well, if everything boils down to method calls, there's only one thing left to optimize ;)
00:15 TimToady Perl 6 is not minimalistic.  It's trying to define a useful initial sublset.
00:16 LeTo TimToady: the 'useful' is currently beyond any reasonable grokability (for my poor mind)
00:17 TimToady As long as the useful subset you do grok doesn't interfere with the useful subset that someone else groks, it's okay if they two subsets are only partially intersecting.
00:17 TimToady *the
00:18 Juerd LeTo: But have you ever grokked all of Perl 5, then?
00:19 LeTo sure, but I don't think that all is needed for P6.0.0, the more that all is constructable by user already via macros
00:19 LeTo Juerd: certainly not
00:19 Juerd LeTo: Has that ever been a problem?
00:20 TimToady What we discovered with Perl 5 is that, where we don't supply a cultural convention, people supply their own conventions (plural).  Sometimes that very plurality is a problem.  See P5 OO, for instance...
00:21 Arathorn how often is http://dev.perl.org/perl6/doc/design/syn synced against http://svn.perl.org/perl6/doc/trunk/design/syn/ ?
00:21 LeTo Juerd: not at all of course, the problme is just that I'm trying to implement something that would run P6 ;)
00:21 TimToady As long as the convention is easily overridden, it's not like we've told people they *have* to do it this way...
00:21 Juerd LeTo: But if it desugars much, there's not that much to implement, right?
00:21 TimToady We're just trying to boil down a little more culture for them beforehand.
00:21 LeTo TimToady: 'k for the culture
00:22 Juerd LeTo: Everything that desugars to a method call requires no further implementation
00:22 Juerd Eh, no further special hackery  for implementation :)
00:22 LeTo Juerd: yes, I hope so, but there are too many possible leaks for not being able to be desugared
00:23 Juerd I'm not sure I understand; what kind of leaks?
00:23 hexmode joined perl6
00:24 LeTo e.g. a (possibly MMD) function call hits argument flattening that imposes further MMD
00:25 Juerd Hm
00:25 LeTo and what if one of the things isa Junction?
00:26 Juerd These are things I never thought about; mostly because I don't fully understand them.
00:26 LeTo where are the specs, how all this works together and doesn't fall onto the runtime?
00:26 TimToady But MMD is *supposed* to fall onto the runtime...
00:26 LeTo TimToady: sure, one level, but not, if after expansion of args, these start flattening and are in MMD position
00:27 LeTo is this case already prevented?
00:28 TimToady I suspect before you start MMD dispatch you have some idea of the number of arguments you might need from a lazy list.
00:28 TimToady (for a given short name).
00:28 LeTo yes, but I don't know types yet
00:29 TimToady but we can tell the list to figure out its first, say, three arguments.
00:30 LeTo a function call doesn't have any info about how many args are needed to MMD properly
00:30 TimToady but at some point it has to ask for the next value.
00:30 Juerd I'm going to try and get some sleep
00:30 Juerd Good night
00:31 LeTo and still: 'and what if one of the things isa Junction? '
00:31 TimToady autothreading happens <mystical handwaving>
00:32 LeTo I really don't like that <mystical handwaving>
00:32 TimToady Language designers are really good at it.
00:32 ayrnieu or humans are really forgiving.
00:33 LeTo and autothreading is or course useful, if e.g. you got some spare CPUs to do it, but how?
00:34 avar joined perl6
00:34 TimToady Can I get a PhD if I answer?
00:34 ayrnieu you can get a PhD, and then answer!
00:35 TimToady but by then the answer will be "it depends"...
00:35 Steve_p Hmmm..."magic happens here"
00:35 LeTo sorry, I'm not in the position of spending Phds - albeit it would be useful to at least have one (in .at)
00:37 TimToady I think the Junction vs MMD problem is pretty much solved by requiring the Junctional type to match exactly, but I tend to let Luke and Damian thrash that out...
00:40 LeTo TimToady: I see the future PC having a lot of CPUs (my shiny new Athlon X2 got 2 already), having just more M^HGhz tendency is already stopped, the 'autothreading' or whatever parallel construct should consider this
00:40 TimToady Certainly, that's one of the reasons we're installing gizmos like junctions, hyperops and such even though we don't entirely understand them yet.
00:41 TimToady pipe ops as well.
00:41 TimToady They're all ways of explicitly promising not to care about the
00:41 TimToady interactions between the parallel bits.
00:42 TimToady Once the program makes such promises, the optimizer can start thinking about splitting out microthreads in various ways...
00:44 LeTo TimToady: I see that exactly like above, OTOH it must be assured by lang semantics that there are no other bad side-effects
00:44 TimToady Some of this can be assured, some of it can only be promised by the programmer.
00:45 LeTo like exploding Junctions in some unwanted expression or whatnot
00:45 TimToady We'll do what we can to make it safe, and leave the rest to the programmer.
00:45 LeTo and to me it looks that this isn't really fully specced
00:46 TimToady Yeah, we can probably put some limits on exploding junctions in lexical scopes that aren't expecting them.
00:46 TimToady Right, it's not fully specced, because we're doing basic research of an experimental nature, and we expect some of the experiments to go *boom*.
00:46 TimToady Little bits of junction flying all over the place... :)
00:47 LeTo I'd prefer it the other way: a Junctiong might run parallel here and here ... and is forbidden ...
00:47 LeTo s/g//
00:48 TimToady At some point the culture comes up with new guidelines saying "use stricter", or we decide the defaults are wrong, and eventually we come up with Perl 7, or 6.1, or something...
00:55 LeTo what about the relationship to fortress ( http://lambda-the-ultimate.org/node/1320 ) - I'm seeing some with P6?
00:56 ayrnieu you think of them as connected, but don't know why you think of them this way?
00:56 LeTo not connected, but trying to implement new concepts
00:57 LeTo (or the same in a better way)
00:57 TimToady there are certainly some similarities there, not entirely accidental
00:58 TimToady A successful gene pool requires experimentation with incorporating new genes.  This is often hard on the
00:58 TimToady individuals of the species.
00:59 TimToady Different gene pools try to balance that different ways.
00:59 TimToady Using "try" in abstract sense not including much intentionality, as
01:00 TimToady in the frequent statements of the form "The dinosaurs decided to evolve wings and become birds." and such.
01:00 LeTo P5 is already having the biggest gene pool, it's called CPAN, but that doesn't mean (IMHO) that the next organism should have almost all of it and try figure ;)
01:02 szbalint hm, in this context pmc started as a small evolutionary disadvantage which turned into a great evolutionary advantage a few years later.
01:02 TimToady Indeed not.  But we can't lock genetic change out of the core either.
01:03 TimToady szbalint: potentially, thought the proof is in the pudding yet.
01:03 TimToady *though
01:03 LeTo but what is in (P6) core would need some evolution in that model though
01:03 TimToady Nevertheless, "a good tool is used for things unanticipated by its inventor" is
01:03 TimToady the cultural way to say that.
01:04 TimToady But it means you have to put enough variety into your gene pool for selective pressures to take over.
01:05 TimToady I made some good guesses with Perl 5 on that score, but also some bad guesses.  Now we're making a different set of guesses, and some of them will be wrong, or at least wrong temporarily...
01:05 TimToady and some of them will be right temporarily, alas...
01:06 * LeTo is just seeing some (handwavy 50%) of current Sd+ sugar should be delayed to undergo evolution for a P6.1 or even P7
01:07 TimToady I think the percentage is lower than that, but if we agree on everything, one of us is redundant. :)
01:08 TimToady A lot of these changes don't work well unless you also make the other changes.
01:08 LeTo well, I'm at bed anyways since hourhs - please dont care ;)
01:09 TimToady Well, I'll shut up now--all this philosophizing is giving me a headache...
01:10 LeTo nm - I don't care at all, unless it starts falling onto the runtime
01:12 LeTo (besides of course, what a runtime ought to do anyway)
01:27 mako132_ joined perl6
01:36 LeTo re underspecced (sorry) $ grep -w junction design/syn/S06.pod |wc -l
01:36 LeTo 2
01:37 LeTo g. night
01:39 LeTo s/-w/-i/ above please (same result)
01:41 LCamel joined perl6
01:43 TimToady s/06/09/ gets more results
01:46 LeTo sure, but afaik should junction autothread on subs, which are covered in S06
01:49 LeTo e.g. what happens if the multi sub 'substr' also got some slurpy or named variants and is called with        substr("camel", 0|1, 2&3)
01:52 LeTo /away now really
01:52 vel joined perl6
02:04 foof joined perl6
02:35 r0nny joined perl6
03:09 mako132_ joined perl6
03:14 FurnaceBoy joined perl6
03:55 geoffb joined perl6
03:56 xern joined perl6
03:56 FurnaceBoy_ joined perl6
03:57 K joined perl6
04:01 K is now known as Quell
04:09 amnesiac joined perl6
04:10 GabrielVieira joined perl6
04:57 cnhackTNT joined perl6
05:04 puetzk_ joined perl6
05:04 puetzk joined perl6
05:09 svnbot6 r9580 | ingy++ |  r5680@bytes:  ingy | 2006-03-14 21:07:40 -0800
05:09 svnbot6 r9580 | ingy++ |  Removing old S26 attempts and adding Damian's more comprehensive one.
05:15 svnbot6 r9581 | ingy++ |  r5682@bytes:  ingy | 2006-03-14 21:14:15 -0800
05:15 svnbot6 r9581 | ingy++ |  The artist formerly known
05:16 ingy seen TimToady
05:25 obra is kwid dead or part of damian's plan?
05:30 tcliou joined perl6
05:30 arcady kwid seems to be mentioned as an option in the S26 that ingy just committed
05:30 arcady so presumably it's part of the plan
05:35 PerlJam there's a plan?  ;
05:35 PerlJam ;)
05:37 arcady at any given point in time, presumably yes
05:37 arcady though not all these plans stay unchanged for very long
05:40 PerlJam no plan survives contact with reality (to paraphrase)
05:40 PerlJam (grossly)
05:44 arcady but hopefully whacking successive iterations of the plan with reality causes it to converge to something
05:44 arcady if we're lucky, it might even be something good
05:46 PerlJam "chance favors the prepared mind" --Louis Pasteur
05:46 PerlJam as long as we have enough prepared minds, we'll get good things
05:51 arcady speaking of plans, is anyone planning on writing the remaining synopses?
05:54 PerlJam I haven't heard any specific plans, but anyone is free to stab at them.  If the stab is good enough, it may be blessed by $Larry.
05:57 |cnhackT| joined perl6
06:01 * lypanov returns
06:01 lypanov oops. wrong room
06:03 hmisty joined perl6
06:06 _cnhackT_ joined perl6
06:09 _cnhack3 joined perl6
06:30 avar joined perl6
06:48 Aankhen`` joined perl6
06:55 xinming joined perl6
06:57 GeJ_ joined perl6
07:01 beppu_ joined perl6
07:03 xinming joined perl6
07:10 GeJ joined perl6
07:41 marmic joined perl6
07:44 Quell I'm out. See ya later guys.
07:50 GeJ greetings folks
07:50 svnbot6 r9582 | audreyt++ | * repo-copy S26.pod and S29.pod into docs/Perl6/Spec/.
07:50 GeJ morning audrey
07:52 iblechbot joined perl6
07:53 diotalevi Is cperl-mode semi-reasonable to use when pugs is in the shebang?
07:53 diotalevi For emacs, of course.
07:53 ayrnieu diotalevi - alas, no.
07:53 ayrnieu diotalevi - I think rules confuse it.
07:53 diotalevi drat.
07:55 diotalevi I can *almost* go to sleep. Just a few patches to the elisp in Perl Hacks and I can sleep soundly. :-/
07:55 svnbot6 r9583 | audreyt++ | * Retire the docs/AES/ directory for real.  Add a README:
07:55 svnbot6 r9583 | audreyt++ | The community-maintained Perl 6 Spec drafts no longer lives in this
07:55 svnbot6 r9583 | audreyt++ | directory, as they are now part of the Perl6::Doc tree at docs/Perl6/Spec/.
07:55 svnbot6 r9583 | audreyt++ | The few draft PODs here should probably be cleaned up into Spec-like
07:55 ayrnieu I used to say 'perl' in shebangs for optimism, but went back to 'pugs' when both cperl-mode and perl-mode failed.
07:55 svnbot6 r9583 | audreyt++ | formats and moved to Perl6::Spec space.
07:59 hmisty_ joined perl6
08:07 ghenry joined perl6
08:13 evalbot_9583 joined perl6
08:16 nothingmuch joined perl6
08:22 cm joined perl6
08:40 kane___ joined perl6
08:47 drrho joined perl6
09:08 szbalint oooh 6pan draft! Uninstall! Finally ;)
09:39 blm joined perl6
09:42 bsb joined perl6
09:47 svnbot6 r9584 | pmurias++ | + complement
09:47 svnbot6 r9584 | pmurias++ | + a dummpy Term::ANISColor qw(:constants)
09:47 svnbot6 r9584 | pmurias++ | + attr alias-for
09:48 pawel joined perl6
09:48 pawel is now known as pmurias
10:01 pmurias hi all
10:02 pmurias why is PIR so low-level?
10:04 foof left perl6
10:05 tcliou joined perl6
10:05 lypanov pmurias: because the more there is already the less you can write only using pir?
10:06 f joined perl6
10:10 hugues23 joined perl6
10:16 pmurias got to catch a bus,bbl
10:16 pmurias .exit
10:42 f0rth joined perl6
11:07 foosroo joined perl6
11:09 f is now known as fandango
11:15 SamB joined perl6
11:20 nothingmuch moose
11:21 rgs mickey moose ?
11:21 nothingmuch http://www.forum2.org/moose/moose05.html
11:22 nothingmuch mickey møøse!
11:24 GeJ where is this moose-mania coming from in the first place? Anything to do with Holy Grail?
11:24 nothingmuch yes
11:24 nothingmuch it's all gaal's fault
11:29 GeJ # grep moose FreeNode-#perl6.log | awk '{print $4}' | sort | uniq -c
11:29 GeJ 57 <gaal>
11:29 GeJ 40 <nothingmuch>
11:29 GeJ you're pretty close though
11:30 GeJ but it's not the 24/7 logs... So I may be far from the real results
11:30 nothingmuch gaal and I are in the same time zone
11:30 nothingmuch so it should be pretty accurate
11:30 nothingmuch either way
11:30 nothingmuch i had a slight moose fixation before gaal
11:31 nothingmuch holy grail + swedish chef
11:31 nothingmuch but gaal helped it mature into a fully blown obsession
11:31 anatoly all part of the master plan
11:34 nothingmuch =)
11:34 GeJ Han, swedish chef... + moose... of course :)
11:35 GeJ I think my favorite's the chicky in thi basky
11:38 nothingmuch GeJ: yeah, it's wonderful
11:38 nothingmuch http://nothingmuch.woobling.org/chef.tar.gz
11:40 GeJ you sir, just made my day.
11:40 GeJ thank you :)
11:42 elmex joined perl6
11:44 ruoso joined perl6
11:55 rindolf joined perl6
11:55 rindolf Hi all!
11:55 rindolf audreyt: here?
11:55 pasteling "rindolf" at 88.153.140.201 pasted "Another pugsbug" (26 lines, 244B) at http://sial.org/pbot/16329
11:56 audreyt rindolf: please commit it to t/pugsbugs/
11:56 * audreyt is getting ready for a perlcast interview
11:57 rindolf audreyt: OK.
11:57 rindolf audreyt: break a leg!
11:57 audreyt hm, anyone here on skype? I need to verify if my sound settings works etc
12:01 audreyt ..probably not :)
12:03 nothingmuch audreyt: behind NAT
12:03 audreyt nothingmuch: skype doesn't care
12:03 nothingmuch firing it up
12:04 * Ara5n is politically obliged to shun skype, what with working at a telco who supports open standards rather than random proprietary ming like skype
12:05 nothingmuch Ara5n: what telco is that?
12:05 Ara5n random small uk outfit called mxtelecom
12:05 nothingmuch audreyt: yuvalkogman
12:06 Ara5n mainly does messaging rather than voice/video, but i do voip stuff
12:06 Ara5n life's hard enough with sip & h323 & xmpp without throwing skype going and screwing it all up ;)
12:06 audreyt ah. I'm not on skype, but perlcast demands it :)
12:06 _cnhackT_ joined perl6
12:06 * Ara5n grumbles
12:06 Ara5n didn't Ekiga get released the other day?
12:06 nothingmuch audreyt: err, you wanna sign on?
12:06 audreyt nothingmuch: a sec, skype just crashed
12:07 nothingmuch Ara5n: voip is one of those fields I have managed to avoid debugging
12:07 nothingmuch audreyt: okies =)
12:07 * audreyt mumbles something about win32
12:07 * nothingmuch wonders how hard it is to get 'autreyt' logins... autrijus is pretty unique, after all
12:09 TimToady joined perl6
12:09 nothingmuch i hear you
12:09 nothingmuch i said "moosage"
12:09 nothingmuch i think i hear balas
12:09 audreyt nope
12:09 nothingmuch i heard "cannot hear you at all"
12:10 audreyt yeah
12:10 nothingmuch ah there, you are
12:10 audreyt and I heard "blahblahblah"
12:10 nothingmuch that doesn't sound like you at all
12:10 audreyt latency is impossible
12:10 nothingmuch yeah, it is
12:10 nothingmuch i said blah blah blah before you said "cannot hear you at all"
12:10 audreyt :/
12:10 * nothingmuch says goodbye to skype for another 6 months
12:10 * audreyt hopes the perlcast guy has a better connection to here
12:10 * Ara5n grumbles some more from the peanut gallery
12:11 Juerd I gave up on skype, and then after a month they destroyed my $10 credit.
12:11 nothingmuch audreyt: i'm behind a pretty fat pipe
12:11 Juerd That's how they make money.
12:11 nothingmuch we video conference with the US all the time
12:11 audreyt nothingmuch: maybe both-side-nat hurts?
12:11 nothingmuch no clue
12:11 nothingmuch hope not
12:12 nothingmuch obra: ping
12:14 * audreyt decides to start recording voice track for the talks just for fun
12:14 svnbot6 r9585 | shlomif++ | Added the lexical array in inner block pugsbugs test, that tests for false
12:14 svnbot6 r9585 | shlomif++ | persistence of lexical array refs inside a function inner block.
12:14 audreyt <Pugs Haskell VB Mariner>
12:14 nothingmuch voice tracks?
12:15 nothingmuch as in, downloadable almost-videos?
12:15 audreyt yeah
12:15 audreyt probably flash
12:15 nothingmuch that would rock =)
12:15 audreyt not sure how to turn xul into flash
12:15 nothingmuch why?
12:15 audreyt or add voice tracks to xuls
12:15 nothingmuch can't xul contain that?
12:15 audreyt you mean I record one .mp3 for each slide?
12:15 nothingmuch i mean, you can prolly script the XUL transitions based on an array of delays
12:15 nothingmuch the slides are on the same page, right?
12:15 audreyt yes
12:15 audreyt you have the takahashi.js
12:15 nothingmuch so you can have an invisible div autoplay an mp3
12:16 audreyt mmm
12:16 nothingmuch and then you script the takahashi.js with an array of delays
12:16 audreyt right.
12:16 * Ara5n would have thought using a media plugin (vlc or quicktime or whatever) to play an mp3 in the background's the best bet
12:16 audreyt however I'm somehow not motivated to hack js to do that
12:16 Juerd No, don't do it invisible. People with sane settings have players to default to *stop*, and want to hit *play* manually :)
12:16 nothingmuch audreyt: i'll have a look
12:16 audreyt Ara5n: but how does the user know when to scroll to next slide?
12:16 Ara5n it'd have to autoscroll in time to your soundtrack.
12:16 nothingmuch where can i find takahashi.js in some repo/
12:16 Juerd audreyt: Then hack Perl 6 to do it, and compile it to JS? :)
12:17 nothingmuch Ara5n: that
12:17 nothingmuch 's exactly my thoughts too
12:17 audreyt Juerd: that crossed my mind :)
12:17 Ara5n audreyt: alternatively, I could hack up a XUL to flash renderer for you
12:17 audreyt Ara5n: takahashi doesn't quite work like that...
12:17 Ara5n no, i mean taking the XUL script
12:17 Ara5n parsing it in actionscript
12:17 Ara5n and dropping it into a .swf with your .mp3
12:17 audreyt wow. you can do that?
12:17 Ara5n yeah
12:17 nothingmuch impressive =)
12:17 Juerd There's a simpler solution, though
12:18 Juerd Flash can drive a browser
12:18 * Ara5n is a flash hacker (as well as a voip hacker) for his day job
12:18 audreyt ok... try dubbing http://perlcabal.org/~autrijus/osdc/mariner.xul
12:18 Ara5n yeah, you could just use FSCommands from Flash to prod the browser
12:18 audreyt with random mp3
12:18 Juerd Have flash decide when to load the next slide
12:18 Juerd That saves you the trouble of writing a XUL parser and renderer
12:19 Ara5n that's certainly an easier solution - although it ends up being XUL only
12:19 Ara5n so in terms of portability worst of both worlds
12:19 Juerd Well, Flash isn't portable either
12:19 Juerd So why bother?
12:19 Juerd Flash doesn't even work on the computer I'm using right now.
12:19 nothingmuch Juerd: flash is more portable than XUL
12:19 Ara5n well, Flash is more common than XUL, at any rate
12:19 Juerd Sure
12:19 nothingmuch and XUL+flash together are pretty decent
12:20 Juerd Though XUL works on more platforms than Flash.
12:20 Ara5n indeed
12:20 Juerd It's just that XUL doesn't work in all browsers that Flash supports.
12:21 * Ara5n wonders how you'd compile all the mp3 snippets into the swf 'remote control' for the XUL without a proper version of Flash
12:21 Juerd Roughly, Flash exists for Windows, Mac OS X, linux-x86.
12:21 nothingmuch audreyt: i think i can hack "animation" for takahashi in ~10 mins
12:21 Juerd Not for linux-powerpc, for example.
12:21 Ara5n Juerd: gnash is coming on quite well
12:21 Ara5n and the other opensource players - hell even swfplayer would be good enough for this
12:21 Juerd Ara5n: So far all segfault.
12:22 Ara5n Juerd: i run swfplayer on embedded platforms all over the place with pretty decent stability :)
12:22 Ara5n (and non-embedded, for that matter)
12:22 Ara5n although its ActionScript support is nonexistent
12:22 Ara5n it does support FSCommands, which is all that's needed for this
12:22 Ara5n nothingmuch: isn't the question whether audrey wants XUL to autoscroll, or let the user flip through the slides?
12:23 Ara5n (and skip the audio to match)
12:23 * Ara5n awaits clarification before leaping off into Flash land
12:24 foosroo isn't this for a version of the slides with a soundtrack? then they have to be synchronized
12:24 nothingmuch Ara5n: i think the thing will need to autoscroll for simplicity
12:24 nothingmuch foosroo: yes
12:24 nothingmuch synchronization is based on delays
12:24 nothingmuch and we can even have a "record" feature that records the delays for you
12:25 Ara5n nothingmuch: not if you used flash + fscommands, as juerd suggested, though
12:25 Ara5n it'd be dead easy to skip from audio clip to audio clip as navigation buttons on the swf snippet were pressed
12:25 Ara5n and then send fscommands through to the browser to run arbitrary javascript
12:25 nothingmuch that means slicing up the audio
12:25 nothingmuch which is not that easy
12:26 nothingmuch remember that takahashi slides change mid sentance
12:26 nothingmuch mid word even
12:26 Ara5n ah, of course
12:26 Ara5n hum
12:26 * Ara5n looks to audrey for clarification
12:27 Ara5n (of course, working embedded media browser plugins are even rarer under *nix than working Flash plugins ;)
12:27 Juerd You need a single audiotrack, and an event track to drive the browser.
12:28 Juerd I thought Flash could easily do that?
12:28 Ara5n yeah, it can
12:28 Ara5n but just as easily as recording a bunch of time offsets and doing it in XUL
12:28 nothingmuch yeah
12:28 nothingmuch we'll we'll multitask
12:28 nothingmuch i think yours will work better
12:28 nothingmuch but mine will be there in ~2 mins
12:29 Ara5n hehe
12:29 Ara5n sounds like a challenge
12:29 * Ara5n defers lunch to race
12:31 Ara5n by far the hardest thing's going to be finding somewhere private to record the test audio :P
12:33 audreyt :D
12:33 audreyt I'll record the test audio here
12:33 KingDiamond joined perl6
12:34 Ara5n perfect, then
12:35 audreyt I don't have a mic though, expect a lot of noise
12:35 nothingmuch okay, done
12:35 nothingmuch audreyt: this is probably going to go out of sync later
12:35 nothingmuch i don't know how to capture events from objects
12:35 nothingmuch but if you can split the audio into chapters
12:35 nothingmuch and start new chapters given points in time
12:36 pasteling "nothingmuch" at 212.143.92.226 pasted "basic takahashi automation" (26 lines, 538B) at http://sial.org/pbot/16330
12:36 nothingmuch tested on vb.xul
12:36 Juerd nothingmuch: Why would it go out of sync much?
12:36 nothingmuch Juerd: because there are no explicit sync points
12:36 nothingmuch and timer fuzz will accumilate
12:36 Juerd nothingmuch: But time is a worldwide agreed on standard :)
12:36 nothingmuch if the audio is slightly too fast, etc
12:36 nothingmuch HAHAHAHAHAHAHAHAAAAAA
12:37 nothingmuch seriously =)
12:37 Juerd Digital audio isn't slightly too fast :)
12:37 nothingmuch also, make the <command cmd_forward> thing *record* an array of delays
12:37 nothingmuch Juerd: yes it is
12:37 nothingmuch very often
12:37 Juerd It's video that tends to be too fast or too slow
12:37 nothingmuch try playing MP3s in two players at the same time
12:37 Juerd Audio is much more reliable
12:37 nothingmuch they go out of sync
12:37 nothingmuch much more, but not absolutely
12:38 Ara5n surely the latency of the media player starting up is the bottleneck
12:38 Juerd They differ maybe one second every 10 minutes?
12:38 Juerd Ara5n: "Please click the [play] button in 3, 2, 1, NOW."
12:38 Ara5n ew
12:38 Juerd ;)
12:39 nothingmuch hehe
12:39 Ara5n the only problem I see with the Flash technique is providing a way of getting the timings in
12:39 nothingmuch we need to catch events from the audio starting and ending etc
12:39 Ara5n it's dead easy if you have the flash authoring app to hand
12:39 nothingmuch Ara5n: can't flash things peek into a URI's query params
12:39 Ara5n yeah, amongst many other ways of shoving data into it
12:39 nothingmuch in which case js could query window.location with a big array of 10,2,4, etc
12:40 Ara5n i guess so - but it'd be much much nicer if you had the authoring app to hand, and could just look through the waveform and plonk an event on the timeline where necessary
12:40 Juerd Ara5n: Is it still not possible to play a flash movie and hit a hotkey to add random markings in the timeline?
12:40 Ara5n oh, i guess so
12:40 Juerd That's been a much wanted feature since day 1
12:40 Ara5n you can do that as of flash 4 or thereabouts
12:41 * Ara5n will hack that up, then
12:41 * Juerd has used the first few versions of flash
12:41 * Ara5n joined the game at flash 3
12:41 Juerd When I still cared about GUIs and Windows
12:42 fglock joined perl6
12:42 * nothingmuch http://service.real.com/help/library​/guides/extend/htmfiles/ch01_emb.htm
12:42 nothingmuch hmm
12:42 nothingmuch seems like real audio can help us a lot
12:43 Juerd nothingmuch: Dragons.
12:43 Juerd nothingmuch: *hint*
12:43 Juerd :)
12:43 nothingmuch Juerd: it's just *a* platform
12:43 nothingmuch we're compiling to it
12:43 nothingmuch not making it canonical =)
12:43 Juerd Dragons!
12:44 nothingmuch OnPosChange
12:46 Ara5n don't touch Real :\
12:46 Ara5n gah
12:46 Ara5n whee, this is working
12:46 * Ara5n looks for some mp3
12:46 nothingmuch okay, so the canonicl slide timing format we'll be using is an array of delays, for writability, kies?
12:46 nothingmuch Ara5n: woot!
12:47 fglock stevan, audreyt: about the PCR Grammar class - which should be used: Class::MOP, Class::C3, plain p5?
12:47 nothingmuch fglock: prolly Class::MOP
12:47 theorbtwo Subsecond timing will be useful if we're talking about timing against continious audio.
12:47 nothingmuch or Moose
12:47 nothingmuch easiest to port to Perl 6
12:47 audreyt fglock: p5 first
12:47 nothingmuch theorbtwo: yes, it's in floats, i guess
12:47 nothingmuch prolly converted to milliseconds, since that's pretty standard
12:48 audreyt nothingmuch: where is Moose.pm?
12:48 nothingmuch stevan's repo
12:48 blm joined perl6
12:48 nothingmuch err, i thought it was public, sorry
12:48 Ara5n theorbtwo: you can have whatever timing resolution you want
12:48 Ara5n up to the scheduler or so
12:48 nothingmuch ask him to share it, i'm not sure I'm allowed
12:48 fglock audreyt: anonymous Grammar == 'hash of rules' is ok?
12:48 Ara5n 20ms granularity works almost reliably
12:48 nothingmuch fglock: noooooooooooooooooooooooooooooooooo
12:48 audreyt Ara5n: btw, http://perlcabal.org/~autrijus/osdc/mariner.mp3
12:48 audreyt fglock: sure thing
12:48 nothingmuch fglock: keep it extensible
12:49 nothingmuch please please pretty please
12:49 audreyt fglock: ignore nothingmuch, just get something working :)
12:49 fglock audreyt, nothingmuch: please agree on something :)
12:49 nothingmuch ugh
12:49 nothingmuch the get something working approach is really slowing us down with pugs
12:49 Juerd Ara5n: Re some mp3 to test with: I suggest that any Weird Al Yankovic fits any Takahashi talk ;)
12:49 audreyt it can be extensible when we need it extensible :)
12:49 nothingmuch i thought we were going to aim for slightly more future hackability this time
12:49 audreyt nothingmuch: er, have you looked at P::C::R?
12:49 nothingmuch yes
12:49 nothingmuch but not recently
12:50 nothingmuch like 1 week ago
12:50 nothingmuch before it was PCR
12:50 ruoso nothingmuch, 1 week ago it didn't exist...
12:50 ruoso nothingmuch, it was still just iterator_engine.pl
12:50 nothingmuch yes
12:50 audreyt fglock: an anonymous grammar probably wants some accessors, so probably bless it into P::R::Grammar
12:50 fglock audreyt: I need to rewrite some PCR parts to make rules==methods, so I need a 'Grammar' to exist
12:50 audreyt fglock: but internally it's a hash of rules
12:50 fglock audreyt: ok
12:51 audreyt fglock: I think for now, AUTOLOAD so it dispatches
12:51 audreyt fglock: we can hook to MOP later
12:51 audreyt when Moose.pm arrives to the repo
12:52 audreyt or to CPAN
12:53 fglock audreyt: Package rules can still be installed with *name = $rule->code, because code returns sub{ $grammar->$rule }
12:54 audreyt nothingmuch: it's pretty hard to hook into a MOP without a native method dispatcher, and without Moose it can't easily be made into conforming with Class::MOP later
12:54 Ara5n audreyt: thanks
12:54 audreyt nothingmuch: so instead of retooling, I think keeping the module interface at method calls level is the right call.
12:54 * Ara5n cues it in
12:54 audreyt nothingmuch: I think that makes sense
12:55 * nothingmuch lost context
12:55 audreyt fglock: cool
12:55 nothingmuch ah
12:55 nothingmuch well, whatever
12:55 nothingmuch make stevan release it
12:55 nothingmuch it's almost done
12:55 nothingmuch we can also use QTNEXT for QT
12:55 fglock audreyt: should I add a temp dir for non-yet-working implementations? maybe under pX?
12:55 nothingmuch as yet another slice-audio backend
12:55 nothingmuch http://www.apple.com/quick​time/tutorials/embed2.html
12:55 audreyt fglock: pX seems correct
12:56 Juerd nothingmuch: Baby dragons :)
12:56 Ara5n audreyt: your audibility's slightly screwy, i think
12:56 nothingmuch Juerd: yeah yeah, you hate everything, we know =)
12:56 Juerd nothingmuch: Not everything!
12:56 audreyt Ara5n: I'm using Asus's builtin mac
12:56 nothingmuch ;-)
12:56 Juerd I like Flash. I just don't like that I can't get it.
12:56 nothingmuch svg!
12:56 audreyt I mean, mic
12:56 Ara5n right - but you're sampling at 16kHz, but compressing to 112kbps
12:56 Juerd Ooh, animated svg would be useful.
12:56 Juerd Scalable vector audio!
12:56 nothingmuch heh
12:57 nothingmuch it's scripted with JS
12:57 audreyt Ara5n: wow.
12:57 nothingmuch animated with JS too
12:57 audreyt Ara5n: this is temp test anyway -- I'll rerecord properly when I'm back to .tw
12:57 Juerd meknows
12:57 Ara5n okay
12:57 fglock [OT] we should try voice conferencing some day
12:57 Ara5n whereas quality would be a lot better if you sampled at 44.1Khz and compressed to, uhm, 96kbps or something
12:57 nothingmuch http://developer.apple.com/documentatio​n/QuickTime/IQ_InteractiveMovies/advanc​edinteractive/chapter_8_section_7.html
12:58 Juerd 44.1 seems like overkill
12:58 nothingmuch also intruiging
12:58 Juerd A non-professional mike doesn't go much further than 25 anyway :)
12:58 nothingmuch Juerd: frequency, not sampling rate
12:58 Juerd Ohh, nevermind.
12:58 Juerd Indeed.
12:58 nothingmuch sampling rate should be ~~ 24x frequency
12:58 nothingmuch 2-4
12:58 nothingmuch sorry
12:58 nothingmuch 24x *IS* overkill
12:58 Juerd Heh
12:59 audreyt 24x is CD-R ;)
12:59 audreyt (totally different context)
12:59 nothingmuch http://www.ozoneasylum.com/8605
12:59 Ara5n uhm, a pro mike should be able to pick up frequences beyond 12.5kHz...
12:59 Ara5n non-pro, even
12:59 audreyt this is not a mic even... it's embedded into the front panel of the laptop
12:59 audreyt consistently bad reception
12:59 Ara5n either way, the sibilance at 16kHz is pretty bad ;/
13:00 * ruoso still fighting the broken macro rule
13:00 mako132_ joined perl6
13:01 nothingmuch okay
13:01 nothingmuch i'm convincede dthat Ara5n's is the one true way to add audio
13:01 nothingmuch i'm afraid we'll have sync issues after 5 mins or so with the timeout stuff
13:02 Ara5n rofl
13:02 nothingmuch real player support is prolly not worth the effort
13:02 nothingmuch why?
13:02 Ara5n rather amusingly flash totally fails to understand the 16kHz sampling
13:02 Ara5n and plays it back at 44.1kHz
13:02 nothingmuch eek
13:02 Juerd That makes the talk even faster!~
13:02 Ara5n s/flash/flash player/
13:02 Ara5n yeah
13:03 Ara5n v. amusing
13:03 * Ara5n switches from using simple embedded .mp3 to streaming the mp3 on the fly and using macromedia's idea of cue points
13:03 Ara5n c.f. http://www.macromedia.com/devnet/fla​sh/articles/media_behaviors_02.html
13:04 Ara5n hm, although that seems to lose the time granularity :(
13:04 Ara5n is now known as Arathorn
13:05 nothingmuch as long as the granuality loss is not accumilating i think that's OK
13:05 nothingmuch that's the problem with the setTimeout algorithm: the sync loss accumilates on both sides: the video and the timeout, potentially
13:05 nothingmuch so they can become almost orthogonal after a while =)
13:05 Juerd nothingmuch: There is a setTimeout-like thing that automatically repeats. It's supposed to be better.
13:06 Juerd nothingmuch: Also, JS can read system time, and you could sync with that every 10 seconds, for example
13:06 nothingmuch Juerd: i was looking for that, it's non portable
13:06 Juerd Oh
13:06 nothingmuch yeah, but that means starting to implement fuzz algorithms
13:07 Arathorn brb
13:07 nothingmuch which is OK, but not a 3 minute hack like the code i nopasted earlier is
13:07 iblechbot joined perl6
13:07 nothingmuch note that this actually works: http://slipgate.za.net/darcs/darcs_osdc/
13:07 nothingmuch err
13:07 Juerd Use AJAX! ;)
13:07 nothingmuch fuck
13:07 nothingmuch stupid clipboard
13:07 Juerd Let a server send the events ;)
13:07 nothingmuch http://sial.org/pbot/16330
13:07 nothingmuch eeek
13:07 Limbic_Region joined perl6
13:09 nothingmuch cool: http://www.treehugger.com/file​s/2006/03/philips_smokele.php
13:13 KingDiamond nothingmuch: where do I look for the core of the p5 module import stuff?
13:14 nothingmuch KingDiamond: searching
13:15 KingDiamond nothingmuch: I tried, but yeah, I'm just new :)
13:15 nothingmuch =)
13:17 nothingmuch aha
13:17 nothingmuch no wait
13:17 nothingmuch err
13:18 nothingmuch there we go
13:18 nothingmuch ruleUsePerlPackage
13:18 nothingmuch in Parser.hs
13:18 * theorbtwo blinks.
13:19 theorbtwo I'd forgotten that autrijus/audreyt's voice would have changed.
13:19 KingDiamond nothingmuch: thanks
13:20 * Arathorn back
13:21 theorbtwo Also, she lost his accent.
13:21 audreyt I've been working on my accent.
13:21 audreyt (after the pugs.blogs.com comment feedback from OSDC.il)
13:21 Juerd I'm bad at noticing changes like that -- all I know is that I understood audreyt better during GPW than in Amsterdam
13:22 * audreyt is glad to hear that.
13:22 theorbtwo I didn't have any problems understanding you at the Toronto Hackathon.
13:23 rjbs Juerd: hey, I recently stumbled across Exporter::Tidy. neat
13:24 Juerd rjbs: Thank you
13:24 * ruoso needs help with the macro rule...
13:25 theorbtwo ...though the next time I saw a Jet Li movie, he kept reminding me of Autrijus, which is an... interesting... pairing.
13:25 audreyt heh
13:26 cm my head pronounces "audreyt" like "outright" :(
13:26 svnbot6 r9586 | fglock++ | px/Common/Pugs-Compiler-Rule - devel version
13:26 audreyt I wish freenode can let me register "audrey"
13:27 Juerd My head pronounces audreyt as Audrey; I'm just too lazy to not use tab completion :)
13:28 Arathorn do freenode nicks ever expire?
13:28 Juerd Arathorn: One can request a long unused nick to be removed from the system
13:28 Arathorn and woo, pulling in the .mp3 from an external source seems to work
13:28 Juerd But afaik, not automatically
13:28 * Arathorn nods
13:29 nothingmuch theorbtwo: i was surprised too, at the hackathon there was no voice change yet
13:29 nothingmuch i thought she was balas =)
13:30 nothingmuch KingDiamond: found out anything cool yet?
13:30 nothingmuch (over skype)
13:32 kolibrie joined perl6
13:33 cognominal joined perl6
13:34 KingDiamond nothingmuch: I'll need time... hoping to figure *something*
13:34 foosroo I thought it was kinda useful to have an AudreyT around
13:35 theorbtwo In case any Audreys need to be transformed?
13:35 foosroo no, in case bogons need to be detracted
13:35 nothingmuch KingDiamond: need splaining?
13:35 foosroo an AudreyT doesn't transform Audreys, it transforms other things
13:36 * nothingmuch thinks of a tasteless jokes involving g^Hmonad lifting and voice changes
13:36 foosroo nothingmuch: free your mind and you know what follows
13:38 foosroo &
13:38 nothingmuch ciao
13:38 nothingmuch btw, KingDiamond: foosroo is the guilty party for all things use perl5: related nowadays, methinks
13:39 nothingmuch KingDiamond: but I can also kinda read through that code OK
13:39 KingDiamond heh
13:39 nothingmuch he is better known as gaal around here
13:39 KingDiamond I know gaal... through LJ
13:39 nothingmuch from before the conf?
13:40 KingDiamond yeah
13:40 KingDiamond he doesn't know me
13:40 nothingmuch cool
13:40 KingDiamond nothingmuch: basically one of the things broken(?) is that I cannot call mod funcs without doing &func = Module::Foo.can("func"), right?
13:40 anatoly you got a LJ perchance, nothingmuch?
13:41 nothingmuch KingDiamond: right
13:41 nothingmuch no importing
13:41 Nouk joined perl6
13:41 nothingmuch anatoly: yes, but unused
13:41 nothingmuch yuval_kogman
13:41 nothingmuch it's just for reading gaal's journal
13:42 anatoly ah, k
13:42 * nothingmuch tried getting into the blogging mindset but never managed
13:45 * lypanov also just uses his for reading others
13:46 * anatoly got into the blogging mindset too deeply, he thinks :)
13:46 * lypanov used to have an emo-blog, but anything he wants to write in every day he doesn't like other people to read ;)
13:48 KingDiamond nothingmuch: so "fixing it" would (as in being able to do Data::Dumper::Dumper()) would involve playing with rulesUsePerlPackage, or...?
13:48 KingDiamond nothingmuch: I should've bugged gaal and you to explain a lot of things IRL there :)
13:48 audreyt KingDiamond: well, two things; one is
13:48 audreyt use perl5:Data::Dumper <Dumper>;
13:49 audreyt this is easier to implement
13:49 audreyt auto-import by bridging namespaces
13:49 audreyt is quite a bit harder
13:49 audreyt because p5 has no idea of p6 (lexical) receiving namespaces
13:50 Limbic_Region audreyt - I am pretty sure if you told Demerphq what he needed to know, he would create a version of Data::Dump::Streamer to do the right thing
13:50 audreyt Limbic_Region: uh, what?
13:50 Limbic_Region Data::Dump::Streamer is already far superior to Data::Dumper in doing the right thing with regular p5
13:51 audreyt that was just an example
13:51 audreyt use perl5:CGI <header>; # easier
13:51 audreyt use perl5:CGI; # hard
13:51 Limbic_Region oh - sorry, misunderstood
13:51 audreyt I do agree D::D::S is wonderful though :)
13:51 Limbic_Region because p5 has no idea of p6 (lexical) receiving namespaces
13:51 audreyt yeah
13:51 Limbic_Region I did a mental s/p5/D::D/
13:51 audreyt and their exporter would have a hard time glob-assigning to it
13:52 audreyt it can probably be emu'ed
13:52 nothingmuch KingDiamond: sorry, back
13:52 nothingmuch smalltalk
13:52 nothingmuch yes
13:52 nothingmuch the import thing is currently punted
13:52 Limbic_Region audreyt - mind if I /msg you a couple personal questions or are you busy ATM?
13:52 nothingmuch oh wait, audreyt is explaining =)
13:52 KingDiamond audreyt: hmm...
13:52 KingDiamond nothingmuch: yeah :)
13:53 audreyt Limbic_Region: /msg is fine
13:53 audreyt (though I'mm 5-way multiplexing as usual)
13:53 KingDiamond audreyt: hmm... so, yeah, hackage would be required in Parser.hs
13:54 KingDiamond nothingmuch: okay to /msg you for help, no?
13:55 audreyt KingDiamond: an idea is for require_perl5 to set up a pseudo NS
13:55 audreyt collect it, and then assign it to perl6-space
13:55 audreyt eg
13:56 audreyt use perl5:Data::Dumper;
13:56 Arathorn audreyt: did you record that audio to raw samples (PCM), or straight to mp3, btw?
13:56 audreyt if you put symbols into %Data::Dumper::EXPORTS in the p6-land
13:56 audreyt Arathorn: straight to mp3
13:56 audreyt with keys being '&Dumper' etc
13:56 audreyt and vals being ::Data::Dumper.can('Dumper') etc
13:57 audreyt then all will magically work
13:57 KingDiamond audreyt: ah, interesting
13:58 audreyt you can hack it in the require_perl5 Prim
14:00 audreyt try it with just a single hardcoded export of &Dumper first
14:00 audreyt see if that works, and go from there :)
14:00 KingDiamond audreyt: looking
14:01 audreyt ingy: M::I 0.61 is on CPAN; sorry for the delay
14:02 iblechbot_ joined perl6
14:02 KingDiamond audreyt: you're talking about the require_perl5 in /src/Pugs/Prim.hs, right?
14:04 audreyt yes
14:05 KingDiamond audreyt: thanks
14:05 audreyt np - pair with nothingmuch should prove helpful... feel free to ask me anything here :)
14:06 elmex joined perl6
14:07 audreyt interview starting
14:07 nothingmuch KingDiamond: yes
14:11 Qiang joined perl6
14:13 nothingmuch KingDiamond:
14:13 * Arathorn tries to work out how to embed swf into xul :/
14:13 nothingmuch joined perl6
14:13 nothingmuch sorry, IRC broke
14:13 nothingmuch KingDiamond: sure, you can message
14:13 nothingmuch but it's better to IM since I occasionally lost /msgs
14:14 nothingmuch AIM: foobargorch,  jabber, yahoo, msn, icq etc also available
14:20 KingDiamond nothingmuch: cool, thanks
14:20 rindolf audreyt: did you have the perlcast interview yet?
14:21 * rindolf is back from a bike ride.
14:21 nothingmuch rindolf: you bike in the city?
14:21 stevan fglock: ping
14:22 rindolf nothingmuch: yes.
14:22 nothingmuch rindolf: for recreation?
14:22 rindolf nothingmuch: and for sport.
14:22 nothingmuch in the parks?
14:22 rindolf nothingmuch: in Park Ha'Yarkon, yes. But also there and back.
14:22 * nothingmuch imagines biking in the city for any purpose other than commuting is prolly depressing
14:22 nothingmuch ah
14:23 * nothingmuch bikes in Yaar Lahav and Gvaot Goral
14:23 nothingmuch lots of hills and places to explore
14:23 fglock stevan: pong
14:25 audreyt rindolf: yeah, just finished the interview
14:26 rindolf audreyt: how did it go?
14:26 audreyt will have a zeroth-cut preview version tomorrow
14:26 audreyt quite fun
14:26 rindolf audreyt: good. :-)
14:26 audreyt I jittered quite a bit toward the end though
14:27 audreyt fortunately josh says I can send in rerecordings and he'll mix it in
14:27 stennie joined perl6
14:28 rindolf audreyt: OK.
14:30 gene9 joined perl6
14:33 fglock audreyt: can PCR use Module::Install from CPAN?
14:33 * nothingmuch can't listen to perlcast
14:33 nothingmuch the guy who does it has this voice which drives me nuts
14:33 nothingmuch instead of listening for the meaning i keep losing my concentration because of his pronounciation
14:35 osfameron yeah, me too
14:35 * Arathorn can't work out how to make the <html:embed/> flash component display in the takahashi xul :(
14:35 svnbot6 r9587 | ruoso++ | debugging strange bug...
14:35 ruoso really weird
14:38 pasteling "ruoso" at 201.8.196.176 pasted "Strange bug...." (92 lines, 2.6K) at http://sial.org/pbot/16334
14:38 ruoso fglock, please take a look at http://sial.org/pbot/16334
14:39 nothingmuch audreyt: please briefly explain what the PerlSV resulting from eval_perl "require ..." is
14:39 nothingmuch it makes no real sense to me
14:39 fglock ruoso: looking
14:39 nothingmuch because perl 5's require doesn't reaturn anything meaningful
14:39 nothingmuch oh wait
14:39 nothingmuch oops
14:39 nothingmuch hehe
14:42 fglock ruoso: I've seen this before in other programs - but I can't explain it (Dumper changes the structure it dumps, maybe autovivifies something)
14:42 ruoso fglock, that's my bet...
14:42 ruoso fglock, but what
14:43 KingDiamond the internal eval method for p6 is Pugs::Internals::eval, yeah?
14:43 stevan fglock: ping (sorry, $client called just after my last ping)
14:44 fglock stevan: np
14:44 Arathorn bah
14:44 stevan fglock: re: Class::MOP, Moose, etc
14:44 foosroo KingDiamond: yes. See also Prelude.pm &eval
14:44 foosroo KindDiamond: and Pugs.Prim.Eval
14:45 Arathorn audreyt/nothingmuch/Juerd: can't work out how to <html:embed/> a flash player into a XUL <page/> like takahashi's
14:45 Arathorn works fine in a <window/>, but not a <page/>
14:45 * Arathorn goes to lunch, but won't guarantee anything :/
14:45 stevan fglock: I would suggest using Class::MOP, because it will handle class attributes for you (like p6 does)
14:46 stevan fglock: Moose is nothing more than some sugar over the top of that
14:46 rjbs left perl6
14:46 foosroo put the sugar on the Moose.. moose moose
14:46 stevan :)
14:46 fglock stevan: ok - that's for creating a Grammar class, which may end up being used by pugs
14:47 elmex_ joined perl6
14:47 stevan fglock: Class::MOP is what you want then
14:47 fglock stevan: ok
14:48 stevan fglock: I can help you write it if you want,.. do you have any code-sketches?
14:49 diotalevi left perl6
14:49 * Arathorn gives up and just changes takahashi.xul to use <window/> :)
14:49 KingDiamond foosroo: on success, does Pugs::Internal::eval return a PerlSV?
14:49 stevan Class::MOP is fairly un-intrusive, it just *adds* to the p5 OO system, but doesnt' try and change it too much
14:50 * ruoso wonders how to debug Data::Dumper autovivifications...
14:50 fglock stevan: I'm setting up a working dir at misc/pX/Common/Pugs-Compiler-Rule - the plan is to create Pugs::Runtime::Grammar (it's not there yet)
14:52 |mjk| joined perl6
14:52 stevan fglock: ok, let me know when I can help, I should have some free time today
14:53 fglock stevan: if you could put a minimal example there, it would great, as I'm fixing up other files right now, in preparation to moving rules to OO
14:53 vel joined perl6
14:53 stevan fglock: sure, any particular kind of example?
14:54 fglock lib/Pugs/Runtime/Grammar.pm - how about new, add_rule - I'm not familiar with Class::MOP yet
14:55 stevan fglock: ok
14:55 foosroo KingDiamond, PerlSV is a p5 thing :)
14:56 KingDiamond foosroo: yeah, figured :)
14:56 foosroo KingDiamond - it returns a Val
14:56 KingDiamond ah, thanks
14:56 fglock stevan: I've committed a ChangeLog file with some possible Grammar usage - check if it makes sense
14:56 stevan ok
14:57 rindolf OK, I have to restart KDE because I upgraded a few packages.
14:57 rindolf See you at the other side.
14:57 rgs he still thinks he'll be able to restart kde.
14:58 fglock stevan: re API: maybe Grammar->compile_rule( '.*' ) would call PCR->compile and add the rule to the grammar
14:59 fglock stevan: rules are just methods - the problem is that you can have unnamed rules
15:00 stevan fglock: so you need unnamed methods?
15:00 fglock stevan: which will belong to an unnamed grammar, which inherits from the base grammar, I think
15:00 stevan fglock: ok, that will have to be built on top of Class::MOP, but it's simple enough
15:01 stevan fglock: can you maybe sketch out the Grammer class in pseudo-p6?
15:01 stevan class Grammar { has $.??; etc etc }
15:01 ingy audreyt++ # M-I-0.61
15:01 stevan no methods, just the attributes it would need, their default values maybe, etc etc
15:01 fglock stevan: maybe use a wrapper for unnamed rules: $rule = sub{ $nogrammar->norule(@_) }
15:02 stevan fglock: anon-classes are easy enough,.. and far less magical
15:02 foosroo how does curry-howard work with lists again? e.g. (a -> b) -> [a] -> [b]  # map or filter etc.
15:02 stevan ingy++ # F-X-0.13a-25
15:02 foosroo how do you derive a from [a]?
15:03 rindolf joined perl6
15:03 rindolf Hi all!
15:03 rindolf I'm back.
15:03 rindolf audreyt: here?
15:03 fglock stevan: a Grammar is just an empty Class - everything (rules) can be added later
15:03 nothingmuch foosroo: you mean the type info?
15:03 ingy stevan?
15:03 stevan ingy?
15:03 * nothingmuch pets ingy
15:03 ingy what is F-X?
15:04 foosroo nothingmuch: i mean proofs-as-programs
15:04 stevan ingy: shhhh,... this is not a secure location
15:04 ingy omg sorry
15:04 nothingmuch oh
15:04 * nothingmuch thinks
15:04 * stevan drinks more coffee (I know i should stop, but but but.. it makes me feel funny)
15:05 foosroo alternate syntax: (a -> b) -> List a -> List b
15:05 nothingmuch basically the implementation of map proves that [a] -> [b] ?
15:05 stevan fglock: so the Pugs::Compiler::Rules needs to be able to create Grammars at runtime?
15:05 foosroo no, that given (a -> b) and [a], we can deduce [b]
15:05 nothingmuch that's what I meant =)
15:05 foosroo args are premises and -> is implication
15:06 foosroo the list type I don't grok
15:06 Nouk joined perl6
15:06 foosroo oh wait, what's the type of [a]
15:06 svnbot6 r9588 | ruoso++ | now supports die... parameters checking in lrep.p6 working
15:06 fglock stevan: yes - it needs a place to store the rules it compiles, so that they can call each other
15:06 * ruoso leaved the Data::Dumper->Dump there... it works this way, great... later I find out the problem...
15:06 foosroo @t (:)
15:06 * nothingmuch learns about CH in wikipedia
15:06 stevan fglock: okay, I will hack out a base Grammar then
15:07 nothingmuch foosroo: #haskell
15:07 foosroo (:) :: a -> [a] -> [a]
15:07 foosroo doesn't help for these purposes
15:07 fglock stevan: nice!
15:07 foosroo nothingmuch: I'm sure they know.. but I kinda can't go there now
15:08 rindolf nothingmuch: what's CH?
15:08 nothingmuch Curry Howard
15:08 foosroo rindolf: Curry Howard isomprphism
15:08 rindolf foosroo, nothingmuch: I see.
15:11 pmichaud joined perl6
15:11 nothingmuch joined perl6
15:22 KingDiamond audreyt: there?
15:25 clkao audreyt: when do you arrive tokyo?
15:30 nothingmuch hmm
15:30 nothingmuch gaal: thanks
15:31 nothingmuch this curry howard stuff is helping me sort out some compilation issues in my head
15:31 foosroo any time. what for? :)
15:31 nothingmuch wikipedia++
15:31 foosroo ah yes
15:31 GabrielVieira fglock which SO u use?
15:31 foosroo not to mention I completely wrecked your prospective Compiler Writer Humiliation score
15:32 * GabrielVieira *SO = OS :)
15:32 foosroo but when you figure out the higher-order type thing, please explain it to me. :)
15:32 anatoly hey gaal
15:32 foosroo hey toly
15:32 nothingmuch foosroo: okies =)
15:33 nothingmuch anatoly can prolly also do it, right?
15:33 foosroo anatoly: do you maybe understand that?
15:33 bsb hey pm.il-ers
15:33 anatoly do what?
15:33 foosroo heh.
15:33 foosroo yo bsb
15:33 bsb thanks for your great hospitality, all
15:33 foosroo anatoly: do you know Curry-Howard?
15:33 bsb lumi groks CH
15:34 * foosroo summons lumi
15:34 svnbot6 r9589 | ruoso++ | $a = this(sub); working... one more line to lrep.p6
15:34 bsb If it wasn't such a lame, pomo thing to do, I'd quote myself, "Types are boring"
15:34 anatoly foosroo: yeah, but not necessarily well enough to explain :)
15:35 foosroo instead you are chic enough to ironically make a hypothetical suggestion about quoting yourlsef
15:35 bsb foosroo: remind me to print some stuff for the plane
15:35 foosroo anatoly: the Q is simple, how to derive a from [a]
15:35 foosroo i hope the answer isn't something trivial like [a] -> a is an axiom
15:36 nothingmuch hola bsb
15:36 bsb hi nothingmuch
15:37 GabrielVieira could someone tell me a great perl editor for win?
15:37 foosroo bsb: are dinner plans crystallyzing?
15:37 foosroo GabrielVieira: vim works on win
15:38 GabrielVieira foosroo tkz :)
15:38 anatoly gabrielvieira: google scite
15:38 anatoly foosroo: ... you're talking about howard-curry type inference in haskell.
15:39 rindolf audreyt: here?
15:40 anatoly foosroo: I don't know that stuff, I could wax poetic a bit on Curry-Howard as isomorphism between deductions and computations. Just a bit, not enough foundation there to apply this to Haskell.
15:40 bsb foosroo: dinner plans are still in solution
15:41 * ruoso lunch
15:43 foosroo bsb: I got off the hook early and should be moving towards you soon
15:43 ruoso left perl6
15:43 foosroo anatoly: the aspect of the isomorphism in question here is between logic and types
15:43 foosroo like, take any .hs function and :t it
15:44 foosroo read -> as implication
15:44 GabrielVieira anatoly tkz :) looks nice
15:44 foosroo the simple cases I understand.. but they're too simple
15:44 foosroo e.g. :t ($)
15:44 foosroo ($) :: (a -> b) -> a -> b
15:44 foosroo which indeed obtains :)
15:44 anatoly foosroo: I don't understand what you don't understand.
15:45 foosroo anatoly: do you understand what I do understand in ($) ?
15:45 nothingmuch bsb: you guys are having a dinner?
15:45 foosroo nothingmuch: join us!
15:45 nothingmuch and you didn't invite me? assholes!
15:45 anatoly foosroo: are you saying you understand the meaning of notation (a->b) -> a -> b?
15:45 nothingmuch it's a possibility =)
15:45 nothingmuch where?
15:45 anatoly foosroo: or how this is obtained?
15:45 nothingmuch and when?
15:46 foosroo anatoly: I understand it as a tautology in logic
15:46 foosroo nothingmuch: TLV, tonight
15:46 bsb nothingmuch: early
15:46 foosroo anatoly: wanna also come?
15:46 foosroo anatoly: it's bsb's last night
15:46 nothingmuch bsb: define that more accurately please =)
15:46 nothingmuch i gotta arrange for a car
15:47 nothingmuch bus service is too flakey later in the evening
15:47 anatoly foosroo: 'd love to, but $work's keeping me late tonight, until 9pm probably
15:47 eric256 joined perl6
15:47 rindolf nothingmuch: did you return Ran Eilam's book to him eventually?
15:47 foosroo I gotta moose. see you in ~47.338 minutes
15:47 foosroo &
15:47 bsb done by 9-9:30
15:47 nothingmuch rindolf: not yet =)
15:47 nothingmuch bsb: okies
15:47 nothingmuch where in TLV?
15:49 nothingmuch okay, suckage
15:49 nothingmuch i don't think i can make it
15:49 nothingmuch ride will be later
15:49 nothingmuch i'll ask my dad to pick me up from work
15:50 eric256 any of you geniuses know how to compute the start date of the current quarter in Oracle?
15:51 rindolf eric256: get the month.
15:51 rindolf eric256: divide it by 3, floor() it and multiply by 3.
15:52 nothingmuch rindolf: ?!
15:52 rindolf eric256: maybe you should subtract one beforehand.
15:52 * eric256 stares at rindolf and begins scribbling on a peice of paper
15:52 stevan fglock: so should this be Pugs::Compiler::Grammer?
15:52 rindolf nothingmuch: I'm helping eric256.
15:53 nothingmuch rindolf: %
15:53 rindolf eric256: would a PostgreSQL expression that does that help you (/me doesn't have Oracle)
15:53 rindolf >
15:53 rindolf ?
15:54 eric256 rindolf yea that might help
15:54 rindolf eric256: OK.
15:55 nothingmuch why not use mod?
15:55 nothingmuch month - ( month % 3 );
15:55 nothingmuch no need to involve deep floor magic
15:55 nothingmuch that has occasional edge cases
15:56 eric256 hehe oracle has a Q format that returns the quarter.. i just need to make that into a date, which should be (qtr-1) * 3 for the month.. thanks. /me was not going about this the right way
16:00 Arathorn gah
16:01 Arathorn if i have to hear audrey recite earen^Wlarry was a mariner at 44.1/16 times speed again
16:01 * Arathorn looks vaguely traumatised
16:02 eric256 perlbot nopaste
16:02 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
16:02 pasteling "eric256" at 66.102.136.70 pasted "Date to Quarter Start Date" (7 lines, 149B) at http://sial.org/pbot/16337
16:02 Arathorn does anyone know how to invoke a javascript method at runtime?
16:03 cm left perl6
16:03 * Arathorn thought that var bar="methodname"; Foo[bar](args); would work
16:03 eric256 thansk rindolf  .. thats what i came up with.. i've spent days trying to figure out how to generate a table of all the quarters etc.... and it was right there all along .lol
16:03 rindolf eric256: you're welcome.
16:03 rindolf eric256: does || concatenate strings in Oracle?
16:03 eric256 eya
16:04 * PerlJam notes a dearth of perl6 talk on #perl6 this morning.
16:04 eric256 lol
16:04 rindolf PerlJam: yo!
16:04 PerlJam greetings
16:05 rindolf PerlJam: what's up?
16:05 PerlJam nothing much.
16:06 PerlJam I'm sitting outside watching my son and his cousin trying to make baskets (in the basketball sense)
16:07 rindolf PerlJam: I see.
16:07 rindolf PerlJam: is it vacation in .us?
16:08 PerlJam Spring Break.
16:09 rindolf PerlJam: I see.
16:09 rindolf PerlJam: are you a university worker?
16:09 pmichaud heya, pj
16:09 rindolf Hi pmichaud
16:09 * eric256 wants a spring break
16:10 rindolf eric256: where are you from?
16:10 eric256 colorado, US .....but no break for the working ;)
16:10 PerlJam hey pm
16:10 PerlJam rindolf: yep.
16:10 eric256 does =begin DATA work yet?
16:11 eric256 i get a "no method in class Any &begin" error which is odd
16:11 PerlJam pm: Working on PGE today?  Or just hanging out?
16:11 pmichaud pj: working on pge and p6 parser today
16:11 pmichaud something broke pge so I'm trying to track that down
16:14 nothingmuch http://www.starfrit.com/upload​/videos/Product/Kitchen/15.mpg
16:14 nothingmuch wow!
16:14 nothingmuch i never thought spray could change my life
16:14 nothingmuch but that woman's tone really convinced me
16:15 lumi Mu
16:16 lumi List constructor [] is :: forall a. [] a
16:16 audreyt pmichaud: hi!
16:16 pmichaud greetings, audrey
16:16 audreyt pmichaud: result objects :)
16:17 PerlJam pm: any plans to make PGE more OOPy?
16:17 pmichaud audreyt: yes, I looked it over and I sent off a couple of questions about result objects to larry
16:17 * eric256 misread that as poopy lol
16:17 TimToady saw it.
16:18 pmichaud hello, TimToady , glad to see you :-)
16:18 TimToady I'll answer it there.
16:18 audreyt which questions?
16:18 audreyt ooh cool :)
16:18 Arathorn audreyt: got your flash working :)
16:18 nothingmuch Arathorn: woot
16:18 * Arathorn is just transcoding the audio to 44.1kHz/112
16:18 nothingmuch wanna see
16:18 Arathorn so it doesn't play at 4x speed (and pitch ;)
16:19 pmichaud audreyt: at any rate, I know I can get result objects into PGE, no sweat, I just had a couple of implementation questions and trying to understand where they're  headed
16:19 audreyt Arathorn: ooh - but I got a new .mp3 :)
16:19 Arathorn ooh!
16:19 pmichaud audreyt: did my comments about {{...}} make sense?
16:19 rindolf audreyt: have you looked at my recent bug? I think it's pretty serious.
16:19 Arathorn did you record it at 11kHz, 22kHz or 44.1kHz sampling?
16:19 audreyt rindolf: no, not yet, sorry, a sec
16:19 Arathorn (either way, where is it?)
16:20 Arathorn nothingmuch: the audio callback timing is accurate to about 200ms, which isn't ideal :\
16:20 Arathorn but on the plus side, it streams the mp3 from an external file, and the cuepoints work as you scrub & stuff
16:20 TimToady pmichaud: I'll go ahead and answer here since it was just on 6p.
16:20 pmichaud TimToady: excellent
16:20 TimToady You're basically spot on with the motivation.
16:21 nothingmuch Arathorn: consistently? or not consistently?
16:21 nothingmuch i.e. is it ±200ms?
16:21 TimToady Handiness of <(...)> with typing of {return...}
16:21 nothingmuch or a constant (per display) fudge that is within 200ms?
16:21 TimToady I'd say <(...)> doesn't take quantifiers.
16:21 Arathorn i think it's accurate to the mp3 frame length
16:21 nothingmuch ah, that makes sense
16:21 Arathorn not ideal, but hopefully good enough
16:22 * nothingmuch remembers his MP3 days
16:22 fglock back
16:22 nothingmuch MPEG::Audo::Frame was my very first module =)
16:22 Arathorn :)
16:23 nothingmuch so, can we see XUL translated to SWF?
16:23 Arathorn sure - although I need the new audio
16:23 TimToady In fact, I think <( and )> are just special tokens, and maybe you could even have one without the other (syntactically, but maybe it's better social policy to require both).
16:23 Arathorn or alternatively i'll just transcode that which i have atm
16:23 pmichaud just a sec -- on phone
16:23 TimToady np
16:24 audreyt TimToady: <( means "reset .from ehre" and )> means "reset .to here" ?
16:24 pmichaud audreyt: that's how I've interpreted it...
16:25 audreyt rule { foo <(  [ bar  <( baz ]?  }
16:25 nothingmuch oh wow! pmichaud! it's been a long while since you've been here
16:25 * nothingmuch didn't notice
16:25 TimToady It means "I'm not using the {return...} mechanism, and instead I just want to return the string that starts at <( and ends at )> assuming everything else matches.
16:26 TimToady so pre-<( functions as lookbehind (but scanned forward), while post-)> functions as lookahead.
16:26 stevan fglock: ping
16:27 fglock stevan: pong
16:27 audreyt stevan: I want a Pony^WMoose
16:27 TimToady so, basically, yes, if .from and .to are the default result match methods.
16:27 stevan audreyt: I will try to do a Moose pre-release today
16:27 stevan audreyt: I can give you a sneak peek if you want
16:28 audreyt I'd much rather you release :)
16:28 stevan audreyt: ok
16:28 audreyt call it 0.00_01, whatever :)
16:28 stevan 0.01 + CAVEATS is fine with me
16:28 audreyt k
16:28 pasteling "stevan" at 67.186.136.119 pasted "rough Grammer sketch" (15 lines, 396B) at http://sial.org/pbot/16338
16:28 stevan fglock: is this what you are thinking
16:29 audreyt stevan: Grammar here is working thru MOP?
16:29 stevan audreyt: it is delgating through Class::MOP mostly, yes
16:29 audreyt cool!
16:29 stevan not working yet,.. just example code
16:29 stevan but shouldnt take too long
16:30 fglock stevan: grammar or grammer? (looking)
16:30 pmichaud okay, back from phone call (sorry about taht)
16:30 * stevan was never very good at spelling :)
16:30 pmichaud hiya, nothingmuch -- good to be back again
16:30 stevan fglock: nothing is checked in yet
16:30 TimToady but we do have decide whether to impose a balancing constraint for sanity.
16:30 pmichaud TimToady: I'm not sure why <( ... )> needs to resort to a separate "result object".
16:31 pmichaud it's no problem to do so, but it "feels" wrong somehow
16:31 audreyt I'd say they are orthogonal concepts
16:31 ingy TimToady: got time for a S26 question?
16:31 justatheory joined perl6
16:31 pmichaud yes, I was thinking they're orthogonal as well
16:31 * stevan ponders the phrase "impose a balancing constraint for sanity"
16:31 PerlJam stevan: Just think of grammar as a pirate word.  GramAAAARRRRR  ;-)
16:31 audreyt result object defaults to look at .from/.to if not set
16:31 pmichaud audreyt: exactly
16:31 ingy ELK!
16:31 fglock stevan: it looks right to me!
16:31 TimToady that's fine by me.
16:32 stevan PerlJam: my brain hears ER, and my fingers comply,..
16:32 stevan fglock: okay I will hack something together
16:32 pmichaud so, I'm wondering if S05 refers to result objects for <( ... )> because it's conceptually simpler for others to read, or ...?  Because I found it a bit confusing
16:32 stevan fglock: what to do i need to install to make P::C::Rule work?
16:32 * audreyt thinks it's confusing as well :)
16:32 pmichaud also, S05 seems to run into problems with the word "result"  in other sections of the document :-)
16:32 TimToady we can clean that up.
16:32 pmichaud okay
16:33 pmichaud as long as I have the concept okay then I think we're okay
16:33 pmichaud let me see if I can rephrase it how I see it
16:33 kisu joined perl6
16:33 pmichaud the  <( ... )>   sets the starts and end of the returned match object
16:33 pmichaud thus  / foo <( \d+ )> bar /   results in a match object, but the start and end of the match object is around the digits
16:34 fglock stevan: you can install from CPAN or ~/perl5 - the version in pX is broken, until the OO transition is finished - just use the normal Makefile.PL
16:34 pmichaud A return statement in a closure sets a special result value for the match object; the match object then uses the result object for a variety of operations/coercions
16:34 stevan fglock: it is complaining about a missing v6.pm
16:35 TimToady I remember that part of the motivation for calling that "result" is the correspondence between the parens in <(...)> and $/().
16:35 fglock stevan: it should stop complaining after 'make'
16:35 stevan ok
16:36 stevan fglock: wow! it's magic !!!!
16:36 stevan :P
16:36 stevan I am writing some basic tests too,..
16:36 pmichaud Hmmm, is that sort of correspondence really useful?
16:36 audreyt ergonomitcally, yeah :)
16:36 TimToady Mnemonically, perhaps.  Also:
16:37 TimToady foo <( \d+ )> bar { return $() + 1 } /
16:37 pmichaud wouldn't someone just be able to do    / foo <( \d+ )> bar { return $/ + 1 } /  ?
16:38 TimToady syntax error.
16:38 fglock stevan: re magic: it is - see audreyt latest blogs :)
16:38 TimToady maybe
16:38 audreyt stevan: they are Perl5 Magick Cookies :)
16:38 * stevan happily eats the magic cookies
16:38 audreyt pmichaud: actually I think the orthogonality saves us here
16:38 * stevan is feeling a little funny
16:38 audreyt pmichaud: the <( and )> sets .from and .to
16:38 TimToady but whether or not, $/ inside /.../ is visually confusing.
16:39 audreyt the "return $/+1" evaluates that
16:39 audreyt returns a Int
16:39 audreyt shuffle them inside the "result" slot in the match obj
16:39 audreyt s/them/it/
16:39 audreyt and signal a match success
16:39 pmichaud audreyt: yeah, that part makes sense
16:39 pmichaud I guess I'm wondering if there's any real difference between     $/ and $/() when <( ... )> is used
16:39 PerlJam I didn't have a problem with $/ inside /.../ in pmichaud's example just now (FWIW)
16:39 audreyt stevan: your fortune is now magick as well
16:39 gaal rehi
16:40 audreyt pmichaud: the idea is that +$/ and ~$/ dispatch to $()
16:40 audreyt (which is sugar for $/())
16:40 audreyt pmichaud: so no matter whether <( )> is used or not
16:40 TimToady I'd just like people to be able to match <(...)> consistently with $().  Otherwise we're falling back into the \1 vs $1 backref trap kind of thing.
16:40 audreyt $/ and $() would be different only on boolean, arrayderef, hashderef, and method calls
16:41 audreyt for string, numeric, and other coertion contexts, they are identical because $/ dispatches to $()
16:41 PerlJam TimToady: seems like you just answered yourself wrt requiring balanced <( )>
16:41 TimToady hmm, well, we also have to think through what <(...)> means matching array elements...
16:42 audreyt TimToady: what's wrong with the "<( sets .from, )> sets .to" concept?
16:42 pmichaud audrey:  if $/ and $() are different only on boolean, arrayderef, hashderef, and method calls, they seem pretty close to the same for me (well, I guess not for method calls)
16:42 TimToady Hey, there you go, if you say /<(/ you have to say $( and if you say /)>/ you have to say $)...   :P
16:42 pmichaud match objects were already "special" in this sense to begin with
16:42 audreyt pmichaud: p6 is mostly method calls :)
16:43 pmichaud or, more to the point    $/  was already "special" in this sense to begin with
16:43 audreyt pmichaud: but indeed, this is mostly generalizing the ~$/ == +$/ idea
16:43 TimToady yes--it's just the "return" that refines what the Item in the match object is.
16:43 Arathorn audreyt/nothingmuch: going to have horrible problems with image preloading
16:43 audreyt if they are the same coercion for something, then we call that something the $(), and allows people to change it
16:44 pmichaud audreyt: yes, I do like the ~$/ == +$/ aspect
16:44 chris2 joined perl6
16:44 fglock stevan: in 'my $grammar = Pugs::Compiler::Grammar->new('Foo');' - is 'Foo' optional? (can it create an unnamed class?)
16:44 audreyt or rather, override the default way of calculating it (which is by substr'ing the input with .from and .to)
16:44 stevan fglock: yes
16:44 fglock s/create/use/
16:44 TimToady right, but I'd still like to use $() within the return expression.
16:45 audreyt that's fine, as it forces calculation.
16:45 audreyt but it can still be rebound by the user code, for sure
16:45 TimToady I'm beginning to really hate $/ inside /.../
16:45 xerox ``chromatic says: My productivity increased when Autrijus told me about Haskell's trace function. He called it a refreshing desert in the oasis of referential transparency.'' *laugh*
16:45 TimToady but it's probably just my Perl 5 neurons freaking...
16:46 pmichaud okay, so what we have is:   <( ... )>  doesn't quantify  (thankfully)
16:46 Arathorn audreyt/nothingmuch: http://arasphere.net/perl6/takahashi/mariner.xul
16:47 TimToady I think we've decided that <(  and )> are actually two separable tokens.
16:47 Arathorn i only did the first minute of timing or so as a proof of concept
16:47 audreyt TimToady: you can call it $() most of the time :D
16:47 Arathorn (that's hosted off my home DSL connection, which has only 2M/s upstream, so be gentle ;)
16:47 audreyt (and $0 / $<x> on all other times)
16:47 pmichaud okay, having <( and )> separate tokens works for me
16:47 TimToady yes / \d+ { return $() + 1 } /
16:48 TimToady And as a first approximation we teach people that $() just means $&.
16:48 TimToady but without the "slowing down everything else" caveat.
16:49 audreyt why are we calling $/   $/ then
16:49 audreyt why not $?MATCH :)
16:49 audreyt (as it's now sugared away)
16:49 pmichaud audreyt: I've been wondering the same t hing -- why do we need $/ ?
16:49 Arathorn (it requires Flash 7 player - if you give focus to the flash media widget thing and start hitting 'p', it'll dump out to firefox's stdout chunks of XML which describe the cue points).
16:49 TimToady $?MATCH should be a compile-time constant.  It's bogus the same way $?SELF is.
16:49 pmichaud a convenient de-sugared form of $(), $0, $<xyz>, etc?
16:50 audreyt its only context now is the boolean context, and for that we always encourage people to use it inside if() anyway
16:50 pmichaud I think we need a way to reference the result of the last match without constraining it down to one of its closure, boolean, arrayref, hashref, etc. forms
16:51 pmichaud and that's what $/ does
16:51 TimToady $/ is the Match object, so it still is meaningful in any object context not otherwise specified.
16:51 TimToady agreed
16:51 pmichaud yeah, what TimToady said more concisely than I
16:51 audreyt oh, we need that. it's just that $?MATCH may describe it better :)
16:51 pmichaud s/I/me/
16:52 audreyt (but it's a minor point (and involves $?SELF) so I'd not argue :))
16:52 pmichaud I'll leave it to you folks to decide what to call it :-)
16:52 PerlJam audreyt: wouldn't that be $*MATCH?
16:52 audreyt PerlJam: no, it's in the current lexscope.
16:52 audreyt TimToady: in my mind the ? twigil means lexically-scoped magickal.
16:52 audreyt not compile-time-constant.
16:53 audreyt it isn't a constant in &?SUB
16:53 audreyt and as you pointed out, isn't in $?SELF
16:53 audreyt so I think the constant connotation is already lost anyway :)
16:53 pmichaud audreyt: are you blocking on <( ... )> support in PGE for anything?
16:53 pmichaud or, for that matter, what's blocking on PGE?
16:53 audreyt pmichaud: nope. I need return, not <( )>
16:54 audreyt pmichaud: http://search.cpan.org/src/FGLOCK/Pugs-Compi​ler-Rule-0.01/lib/Pugs/Grammar/Rule/Rule.pm
16:54 audreyt pmichaud: note the "return" and "$()" there
16:54 pmichaud okay, but that's really going to be more for the perl6 engine to handle than PGE
16:54 TimToady so basically $?foo is a non-parameter $^foo...hmm...one could make them self-declaring.
16:54 TimToady but that's perhaps where we require the compiler to know the word.
16:55 pmichaud What I'll have to do is to have PGE see if a called closure returns a result, and if so to use that as the result object in the match
16:55 audreyt pmichaud: right. from PGE, it's just that a Match obj need to have one more slot
16:55 audreyt $:result
16:55 audreyt and a way to bind that result
16:55 audreyt using .return() or RETURN() or something.
16:56 audreyt also, __get_string dispatch there if it's not_null
16:56 FurnaceBoy joined perl6
16:56 TimToady $!result ?
16:56 audreyt same for __get_integer and __get_number
16:56 TimToady or are you talkin' dirty?
16:56 audreyt TimToady: right, PGE havn't retwigiled the internals
16:56 pmichaud yes, I need to do that as well.  I think I'll re-twigil things while I'm at it
16:56 pmichaud PGE is still working from the earlier twigil definitions
16:57 audreyt pmichaud: btw, chromatic said you have a more updated perl6-parsing grammar locally... is that true?
16:57 TimToady let me know if there's any other way I can jerk you around.  :-)
16:57 pmichaud audreyt: I was expecting to have it ready last week, but it's not quite there yet
16:57 pmichaud I'm still tweaking operator precedence parser stuff
16:58 fglock audreyt: where does the base grammar go - Pugs::Runtime::Grammar::Base ? (this is where <ws> is defined)
16:58 audreyt pmichaud: ok... because fglock et al are working on the same thing
16:58 pmichaud I got my other tasks off my plate (thus I can reasonably hang out on irc again), and I'm really focused on trying to get my perl6-parsing grammar together
16:58 pmichaud audreyt: yes, I've been watching the updates :-)
16:59 pmichaud I want to finish up my version a little bit further, release it, and then we can see where/if it makes sense to combine them
16:59 audreyt pmichaud: cool! a commit bit is on your way
17:00 pmichaud thanks
17:00 fglock pmichaud: working together++
17:01 pmichaud fglock: I agree
17:01 TimToady yay
17:01 audreyt yay indeed :)
17:01 audreyt fglock: Pugs::Runtime::Grammar::Base sounds good, as it keys with the default-inheritance image
17:02 PerlJam So ... when will we see a production perl6 compiler?  ;-)
17:02 TimToady by christmas
17:02 PerlJam heh
17:02 pmichaud I'm sure my version will have some differences, but none of them will be intended as "mine is better than others" -- it's just the way I put it together.  We can then jointly work out improvements from there
17:03 eric256 he didn't mention christmas of what year though ;)
17:03 fglock pmichaud: we have an experimental grammar that can compiles itself - in misc/pX/Common/lrep
17:03 pmichaud fglock:  yes, I noticed :-)
17:03 pmichaud I really have been watching :-)
17:04 TimToady The limit of the number of christmases after Perl 6 comes out over the number of christmases before Perl 6 comes out goes to infinity.
17:04 pmichaud after perl 6 comes out, every day will be christmas :-)
17:04 PerlJam pmichaud: for who?
17:04 TimToady It just gets to infinity faster that way.
17:04 audreyt if what this sentences says is true, then today is christmas!
17:05 TimToady feels more like peeking.
17:05 audreyt # http://en.wikipedia.org/wiki/Curry's_Paradox
17:07 TimToady If Lewis Carrol were alive today, he would like that.
17:07 * theorbtwo wonders if there's a reason for the "nearly" in "Natural languages nearly always contain all these features.", or if the author was just being cautious.
17:08 pmichaud some natural languages aren't ?
17:08 ingy TimToady: he would like being alive?
17:08 fglock audreyt: s/Pugs::Runtime::Grammar::​Base/Pugs::Grammar::Base/ ?
17:08 audreyt theorbtwo: it's the wikipedian rhetoric
17:08 audreyt fglock: right.
17:08 TimToady nobody want to claim to be intimately familiar with 6000 human languages.
17:08 ingy If I were dead today, I would not like that.
17:08 pmichaud okay, back to see if I can figure out why PGE broke
17:09 pmichaud TimToady: thanks for the quick confirmations
17:09 audreyt ingy: today is not yet over, better watch out :D
17:09 TimToady irc is great when it's not sucking
17:09 audreyt IRC hits you! -- More --
17:09 audreyt You lost five hours.
17:09 ingy TimToady: beware the ides of March
17:09 theorbtwo audreyt++
17:10 ruoso joined perl6
17:10 svnbot6 r9590 | stevan++ | Pugs::Compiler::Grammer - first draft (P::C::Rules is breaking, so I cant test easily) + some basic tests in t/
17:10 TimToady Isn't it already past the Ides of March where you are?
17:10 audreyt stevan: in-repo PCR is breaking?
17:10 ingy aye
17:10 ingy I no longer need to worry
17:10 stevan audreyt: yup :)
17:10 TimToady so he can't be dead today...
17:10 audreyt horrors.
17:10 ingy :)
17:11 audreyt stevan: oh wait, you mean the pX one
17:11 stevan audreyt: yes
17:11 audreyt k
17:11 ingy TimToady: can I ask you that S26 question now :)
17:11 stevan audreyt: is there another one?
17:11 audreyt stevan: there's perl5/ one
17:11 stevan oh
17:11 stevan :)
17:11 TimToady fire at will (rogers? he's safely dead)
17:11 stevan where should I have put Grammar?
17:11 audreyt well, ask fglock not me :)
17:12 TimToady roy too, for that matter.
17:12 stevan fglock: ping
17:12 ingy $*DOC will likely point to the Perldoc object for that class
17:13 TimToady what is "that class"
17:13 ingy I'm wondering what %*DOC would do if anything
17:13 ingy well I'm not sure
17:13 ingy my Perl 6 sux
17:13 ingy what is the $Foo::DOC in p6?
17:13 eric256 if we can access pod directly from the program...can it write to it too?   ;)  writing your own DATA in the file could be fun
17:14 TimToady We were gonna give the = twigil to all of the doc object tree to play with.  Not sure why you also want *.
17:14 ingy quick recap. what is = * and ?
17:14 TimToady if you want to get at the document object associated with some object, seems to me it'd be some method on the object.
17:14 rindolf audreyt: <nag /> on me pugsbug
17:15 TimToady $*foo is short for $GLOBAL::foo
17:15 cdpruden joined perl6
17:15 ingy I think I want the PDOC object for a given class
17:15 TimToady $?foo I think of as (today) as a magical lexical whose name happens to be recognized by the compiler as not needing to be complained about.
17:16 TimToady and maybe the compiler gives it some special meaning.
17:16 ingy audreyt: where did you put S26?
17:16 theorbtwo I don't think it makes much sense for a class to have a doc object, only a file.
17:16 ghenry joined perl6
17:16 TimToady $=foo means something fooish in the DOM.  Haven't nailed down what the top level names mean though.
17:17 fglock stevan: pong
17:17 TimToady %=POD{foo} is one possibility for top-level POD, but maybe to unhuffmanly.
17:17 stevan fglock: did you want this in pX or perl5/?
17:17 PerlJam theorbtwo: I think it makes sense for a class to have a doc object.
17:18 fglock stevan: pX is ok - I'll move it back to perl5/ when it starts passing the tests
17:18 stevan ok
17:18 stevan fglock: then you have a first draft then :)
17:18 PerlJam theorbtwo: Primarily because I want to be able to say "perldoc Foo" and see *all* of the methods available to the Foo object, including inherited and composed.
17:19 theorbtwo In that case, you need a well-specified, light way of adding documentation to individual methods (and suchlike thingies).
17:19 theorbtwo I'd love that, but it's not really the POD sort of model.
17:20 TimToady ingy: anyway, top-level names can be worked out between you and Damian.  Since the current class is a lexically scoped name, maybe $?DOC could be short for $?CLASS.meta.fetch_doc() or some such.
17:20 theorbtwo (It is, of course, easy to do in a literal-programming-ish way, by just writing sub foo(...) is documented(<<<'BIG LONG STRING') ... BIG LONG STRING {...}
17:20 TimToady The Perl 6 pod model is to make the pod (and perhaps the comments) near a function accessible to that function easily.
17:20 theorbtwo ...but experince tells me that people are unlikely to use that.
17:21 ingy TimToady: ok thanks. I'll take it up with him. Sorry to ask a question when I don't know what the heck I'm really talking about yet.
17:21 theorbtwo But most people don't write their documentation near the thing it documents, for some strange reason.
17:21 TimToady np, some of us just fake it better than others.  :)
17:21 TimToady to2: maybe we can fix that.
17:21 theorbtwo Well, a not so strange reason -- it gets in the way when what you want to see is the code and not the documentation.
17:22 PerlJam theorbtwo: It's because when you're programming, you want to read the code, not the documentation
17:22 PerlJam right
17:22 pmichaud what we need is an editor that let's us easily hide the comments :-)
17:22 TimToady If there's consistent syntax then the editor can presumably hide it.
17:22 TimToady great minds...
17:23 PerlJam pmichaud: as long as that editor starts with "vi"  we're good  :-)
17:23 ingy I think proximity is somewhat orthoganal
17:23 pmichaud perljam: well, even vim would be able to handle it with syntax highlighting -- just have it change the color for comments to match the background color
17:23 ingy proximity just saves you from a name reference
17:23 pmichaud of course, then you'd be tempted to delete the "blank" lines :-)
17:23 TimToady when you have non-proximity, the document tends to get lost, and forgotten about, and never up-to-date.
17:23 integral vim has proper folding, pmichaud
17:23 TimToady that's the lesson of POD.
17:24 pmichaud integral: Well, now you know how much I use syntax highlighting (which is to say, not at all :-)
17:24 svnbot6 r9591 | stevan++ | Pugs::Compiler::Grammer - tweaking the way the rule/method is created
17:24 ingy TimToady: that might be do to poor tools though
17:24 kattana_ joined perl6
17:25 stevan fglock: I have to do some $work, ping me if you need me, this should be enough to get you started :)
17:25 fglock stevan: thanks!
17:25 TimToady There's nothing that can't be fixed by another level of indirection except the problem of too many levels of indirection...
17:25 svnbot6 r9592 | fglock++ | PCR - added 'grammar' parameter in Rule::Compiler->compile
17:25 stevan fglock: no problemo :)
17:25 ingy I should be able to apply various filters to restructure my program without breaking the DOCument model
17:25 audreyt rindolf: ACK'ed the nag, but this is my final day at leo's, and I want to get all AbsPIR thing worked out first
17:25 audreyt rindolf: I'll get back to it.
17:26 * audreyt is currently deep in the parrot metamodel (and noted even more brokeness)
17:26 ingy audreyt:
17:26 fglock stevan: "de nada" = portuguese
17:26 audreyt (but seems the container type can save us)
17:26 ingy where is S26??
17:26 TimToady I have to bbiab. &
17:26 eric256 ingy: if the pod is IN the function it is describing then such filters shouldn't break anything
17:27 theorbtwo BTW, I /would/ very much like interogatable documentation, don't let anything I'm saying confuse you as to that.
17:28 theorbtwo I just think a glance at CPAN will show you that people don't like putting their documentaion next to the code it documents in many cases.
17:29 theorbtwo Hm, I suppose there's nothing stopping you from writing sub foo, and then a very long way down in the code, writing &foo.docs = ...;
17:29 theorbtwo s/doc/s
17:29 pmurias joined perl6
17:29 theorbtwo s/docs/doc/
17:32 theorbtwo Anyway, I have to go.  Later, TimToady, audreyt, all.
17:32 svnbot6 r9593 | fglock++ | PCR - renamed P::Compiler::Grammar -> P::Runtime::Grammar
17:32 svnbot6 r9593 | fglock++ | - created P::Grammar::Base
17:33 ruoso fglock, P::G::B is already the rules for perl 6 staments and terms?
17:33 ruoso fglock, or still just rules?
17:34 fglock ruoso: PGB is just <ws>, <space> - simple built in rules only
17:34 ruoso fglock, ok...
17:35 ruoso fglock, cause there is some statement grammars in lrep-compiler...
17:35 ruoso s/grammars/rules/
17:35 ruoso fglock, it may be usefull when implementing a more complete grammar
17:37 fglock ruoso: we'll have P:G:Base, P:G:Rule, P:G:Perl6... maybe P:G:P5Regex and others
17:38 ruoso fglock, I'm still aiming writing lrep.p6... and I'm extending a bit the grammar you wrote...
17:38 fglock ruoso: ok!
17:45 Arathorn audreyt: let me know if you get the chance to take a look at my ghastly xul/flash takahashi hybrid
17:45 hexmode joined perl6
17:45 * Arathorn trundles off to lunch
17:45 pmichaud lunchtime for me also -- bbiaw
17:53 svnbot6 r9594 | ruoso++ | sub lala { say "Hello World" }... already working... three more lines on lrep.p6
17:57 svnbot6 r9595 | ruoso++ | die usage(); working...
17:57 svnbot6 r9596 | fglock++ | PCR - some tests pass
17:57 fglock ruoso: cool!
18:00 svnbot6 r9597 | ruoso++ | return literal; was already working...
18:00 nothing_pasta joined perl6
18:00 nothing_pasta FUCK!
18:00 elmex joined perl6
18:01 nothing_pasta why is it that every time i upgrade fucking gentoo *SOMETHING* has to break
18:01 * nothing_pasta is switching distros at his next oppertunity
18:01 nothing_pasta now iptables is blocking all my output
18:01 nothing_pasta gaal: ping
18:01 nothing_pasta bsb: ping
18:01 gaal nothing_pasta: where are you?
18:02 nothing_pasta gaal: can't make it
18:02 nothing_pasta dad's back hurts
18:02 nothing_pasta gotta watch my sister
18:02 gaal too bad!
18:02 nothing_pasta unless i can get there at 21:30 or so
18:02 gaal no pasta for you honey
18:02 nothing_pasta but bsb said that's too late
18:02 gaal I think that's too late for mr brad here
18:02 nothing_pasta =(
18:02 nothing_pasta can anyone help me?
18:02 nothing_pasta i don't have NAT
18:03 nothing_pasta i need to find out who did what to iptables on gentoo recently
18:03 nothing_pasta and doing that with lynx will take me forever
18:05 gaal what do you need
18:05 gaal ?
18:06 nothing_pasta to unbreak my iptables
18:06 gaal be specific please :)
18:06 nothing_pasta i have no clue what's wrong
18:06 nothing_pasta iptables -L looks OK
18:06 nothing_pasta but when i turn it on i can't reach anywhere
18:06 Arathorn nothing_pasta: http://arasphere.net/perl6/takahashi/mariner.xul fwiw
18:06 nothing_pasta when I turn it off everything works
18:06 Arathorn focus on the flash widget and stab p and it'll chuck out timing XML fragments to gecko's stdout
18:06 nothing_pasta Arathorn: no internet
18:07 Arathorn ah, ok
18:07 gaal we're leaving in ten but if there's a particular doc I can relay to you...
18:07 Arathorn (if anyone is on a mac or *nix box with flash 7 player installed into their favourite mozilla variant, i'd be interested if that works)
18:11 nothing_pasta joined perl6
18:11 nothing_pasta GREAT BIG WADS OF STUPIDITY
18:11 * eric256 indexs a table and goes from 30 seconds to run a query to 2.6 ;)  databases can be fun'
18:12 gaal nothing_pasta: I can get you that, sure, let me just mail nothingmuch < teh_internets
18:12 nothing_pasta gaal: please, i'm really not in the mood
18:12 nothing_pasta my sister is driving me nuts
18:13 * ruoso have another meeting...
18:14 nothing_pasta someone please find an example iptables NAT entry
18:14 nothing_pasta SNAT --to-source
18:14 nothing_pasta i think this entry is corrupted
18:15 gaal dinner &
18:16 nothing_pasta UTGHHHHHHHHHHHHEQW
18:16 nothing_pasta now it broke my mutt too
18:16 nothing_pasta *sigh*
18:17 nothing_pasta this is absurd
18:19 * kolibrie is afraid his NAT is mostly broken and only works while holding it with two hands to keep it balanced
18:20 nothing_pasta joined perl6
18:21 svnbot6 r9598 | fglock++ | PCR - remove old (lrep) rule engine
18:21 audreyt stevan: ok, I understand the parrot metamodel now :)
18:21 Arathorn kolibrie: keeping track of all those connections by hand can get tedious
18:22 kolibrie Arathorn: if only I knew what I was doing, I could maybe fix it
18:24 svnbot6 r9599 | fglock++ | PCR - renamed Pugs/Runtime/Rule2 -> Pugs/Runtime/Rule
18:30 fglock audreyt: I'll rewrite the rule grammar in p5, as the lrep code is not compatible with PCR
18:32 audreyt fglock: sure!
18:32 audreyt fglock: but do remember to decompile it some day :)
18:34 eric256 lol. just did a complete rewrite of a query that used like 10 decodes into one that used two views and two subselects and it works twice as fast..../me loves oracle almost as much as pugs ;)
18:35 audreyt nice!
18:35 * audreyt notes that sqlite views/subselects are quite rad as well
18:35 clkao i thought i was on #svk and this is about svk views
18:35 clkao made me wondered a bit
18:35 clkao :P
18:36 eric256 yea i'd always used mysql before which didn't have subselects until recently
18:36 audreyt *nod*
18:37 audreyt hm, sasada-san says he is not sure if I can pair-code with him, due to his nonfluency in spoken english
18:37 eric256 before now i'd never even written a query that didn't have a source table. lol just two subselects, much easier to read then a mess of decode functions to get a sort of cross-tab query
18:37 audreyt a 2005 quote of sasada: "Please ask Question in (1) Japanese, (2) Ruby, (3) C, or (4) Java. But I prefer not Java."
18:38 clkao you've learned so many languages, why not learn japanese as well :)
18:38 clkao when are you arriving japan?
18:39 audreyt maybe he'll just learn perl6 and I ask questions in perl6
18:39 audreyt I'm thinking 27th
18:40 Arathorn did my flash takahashi abhorration work for any of the freebsd/mandriva/debian folks who tried it?
18:40 clkao ok. i need fun hacking
18:41 nothing_pasta does someone here have iptables?
18:41 * Arathorn uses pf :/
18:42 stevan audreyt: so how scary is the Parrot mm?
18:42 audreyt stevan: they need a "super" op
18:42 audreyt and a tail-yield
18:42 stevan next-methopd
18:42 audreyt yup
18:42 stevan super is ambigious
18:43 audreyt .next() then
18:43 audreyt .next_method()
18:43 audreyt there is currently no compute_all_applicable_methods
18:43 audreyt need to use metaclass->get_mro->foreach(hack_iterate_ns)
18:43 audreyt but at least there is a get_mro
18:43 stevan yeah thats fine
18:44 audreyt the namespace doesn't distinguish between subs and methods
18:44 audreyt so we really need to use metaobject to keep method table
18:45 stevan audreyt: unless we can have a method which isa(sub)
18:46 audreyt stevan: prolly can't.
18:46 audreyt only Method things gets put in the .can table
18:47 audreyt and of them, the Submethods doesn't participate into children's MRO
18:47 kolibrie nothing_pasta: I do at home - but not accessible from here
18:47 stevan neither do plain subs too
18:47 audreyt sure
18:47 audreyt point is, the .can opcode in parrot is doing a simple hash-get on the namespace
18:47 audreyt if it's there it can d oit
18:48 stevan hmm
18:48 audreyt so the encoding is that we only put methods into the namespace
18:48 audreyt unadorned
18:48 stevan well I suppose that the metaclass can manage the namespace for us
18:49 stevan assuming all class fiddling is desugared into meta-calls that should be fine
18:50 audreyt nod
18:50 rindolf nothing_pasta: can't you do an /etc/init.d/iptables stop ?
18:51 audreyt though it does mean that we need to invent ANON_* NSs for anon classes
18:51 stevan audreyt: why? for method dispatching?
18:52 nothing_pasta rindolf: please, no silly suggestions
18:52 nothing_pasta i'm much more capable than that
18:52 audreyt no, because parrot's method tables all lives in namespaces
18:52 audreyt like in p5
18:53 rindolf nothing_pasta: did you try #linux, #debian, #gentoo, etc.?
18:53 nothing_pasta yes
18:53 stevan audreyt: ah,.. ok
18:53 nothing_pasta gentoo complained that i was not polite enough
18:53 nothing_pasta linux, etc - no real point
18:53 nothing_pasta it's a distribution issue
18:53 nothing_pasta someone seriously messed up
18:53 nothing_pasta and broke the behavior i was relying on
18:53 stevan I think that is reasonable, Class::MOP will have to do the same eventually too
18:53 nothing_pasta and now all I have to do (!) is to find out what that behavior actually was
18:54 clkao so is the v6.pm plan using the current perl5 backend?
18:54 audreyt clkao: no, an updated Moose backend
18:54 clkao where's that?
18:54 audreyt clkao: stevan claims if you sleep 86400;
18:54 audreyt then you get it in CPAN
18:55 audreyt (Moose.pm)
18:55 clkao mmmmm moose salami
18:55 stevan sweet moose
18:55 stevan cause it's covered in sugar
18:55 audreyt stevan: also, parrot class slots are integers
18:55 audreyt (i.e. compile-time bound)
18:56 audreyt so we need an extra hash to hang runtime-added methods ikn
18:56 stevan class slots?
18:56 audreyt sorry, attr-slots
18:56 stevan ah
18:56 stevan ok
18:57 fglock joined perl6
18:57 clkao moose mousse...
18:58 clkao quick - 2 weeks left for april 1st
18:58 arcady joined perl6
18:58 clkao audreyt: find me a pugs task?  i might be bored on the way to tokyo
18:59 eric256 FYI "nothing_pasta: rindolf: please, no silly suggestions" -- thats a good way to get no one to care to help you
19:00 eric256 clkao  make =begin DATA work ;)  or *hash = [ ]* captures in rules. ;) just my two little wishes
19:01 nothing_pasta eric256: =(
19:01 clkao something i can reuse my perl5 knowledge a bit, i guess :p
19:02 eric256 hehe ohh. ;) lunch, later
19:04 * stevan wanders off to releng a Moose
19:04 stevan they're big suckers,.. dangerous work :P
19:08 audreyt clkao: implement the Perl 6 calling convention with Data::Alias.
19:08 audreyt clkao: you can start with very simple sub ($x, $y) {...}
19:08 audreyt clkao: that's the core of the perl5 runtime's functional part
19:09 audreyt clkao: actually, it boils down to an infix "bind"
19:09 audreyt ($x, $y, *@x) := ($a, $b, $c, $d)
19:10 audreyt clkao: you have the PIL1 "Param" type to play with
19:11 audreyt clkao: so it should be straightforward from there
19:11 audreyt if that works, we eliminate the O(N) method call overhead on perl5 method calls
19:11 audreyt and SVK can get instantly faster
19:11 audreyt Nicholas and I reviewed the D::A magic and it seems basically sane
19:13 szabgab joined perl6
19:14 szabgab I have forgotten my password and http://rt.openfoundry.org/Fou​ndry/Home/Guest/Reminder.html asks for my name too, that I probably have forgottent....
19:14 szabgab can someone help me get back my password for [email@hidden.address] ?
19:14 audreyt sure...
19:16 audreyt done
19:16 audreyt (via /msg)
19:16 audreyt dinner. bbiab.
19:17 szabgab thanks
19:18 svnbot6 r9600 | szabgab++ | is rw is rw and is not copy
19:19 rindolf szabgab: hi
19:21 Cryptic_K joined perl6
19:26 TimToady j
19:26 GeJ joined perl6
19:26 TimToady er, s/j//
19:31 ingy audreyt: ping
19:31 audreyt ingy: pong
19:32 ingy whereis S26?
19:32 audreyt ingy: see README
19:32 weinig joined perl6
19:32 ingy url?
19:32 audreyt it's in docs/Perl6/Spec/Documentation.pod
19:32 audreyt docs/AES/README
19:32 audreyt ingy: Perl6::Spec is going to supercede ::Bible
19:32 audreyt too many people look at E02 or sometihng
19:33 audreyt and mistake them as normative
19:33 audreyt so probably going to cut them out from the cpan dist
19:33 audreyt also it means we can split S12 out some day maybe
19:33 audreyt as it's not limited by camel chapters
19:34 ingy S26 was in progress this week
19:34 ingy I wanted to hack on it with dconway
19:34 audreyt ingy: please commit to docs/Perl6/Spec/Documentation.pod
19:34 ingy that's why I put it in the repos
19:34 audreyt I just did a repo copy
19:34 audreyt it just changes the path, not the content
19:34 GabrielVieira fglock are u there?
19:35 audreyt ingy: also, I sent damian a commit bit, so he can commit there as well
19:36 ingy ok I see
19:36 ingy same file
19:36 audreyt sure
19:36 ingy I thought you merged it with other docs
19:37 audreyt not at all
19:37 audreyt sorry for the confusion
19:37 ingy so damian knows the new url?
19:37 audreyt damian didn't have a commit bit
19:37 audreyt I just sent him one
19:37 ingy did you tell him the new url?
19:37 audreyt I did nt
19:37 audreyt (I didn't know he was working on the old url.)
19:38 ingy aye
19:38 fglock GabrielVieira: hi!
19:38 ingy I gave him the old url
19:38 ingy he'll probably hit it around now
19:38 ingy and find it mssing
19:38 audreyt I'll send him a mail.
19:38 GabrielVieira fglock could u help me with lrep? :) in private if possible
19:39 ingy thanks
19:39 rindolf joined perl6
19:39 * ingy wonders if dconway uses svn/svk
19:40 * Arathorn discreetly waves his 'please tell me if the voiceover & synchronisation works on your mozilla of choice at http://arasphere.net/perl6/takahashi/mariner.xul' flag in the corner O:)
19:40 ingy one of my goals at YAPC is to try to bring damian up to speed on the new world order
19:41 audreyt Arathorn: I didn't succeed in getting it to run with fbsd's flash5
19:41 audreyt er, flash6
19:41 audreyt +mozfx1.5
19:42 szbalint heh Arathorn it just sig11-d my firefox :P
19:43 TimToady from across the room I was wondering what "sigiled my firefox" would mean...
19:44 GabrielVieira fglock wake up :D
19:44 Arathorn riight :/
19:45 Arathorn it definitely requires flash 7 player, unfortunately
19:45 audreyt &firefox
19:45 Arathorn for the cueing to work
19:45 Arathorn szbalint: what flash plugin are you using?
19:45 audreyt ok, switching to 7
19:45 Arathorn (about:plugins should reveal all)
19:46 ingy Arathorn: that xul file crashed my Mac
19:46 Arathorn hoorah :(
19:46 Arathorn 'tis a real shame if the *nix gecko build can't hack <embed/>ding flash in XUL, 'cos i think it works pretty well under win2k :/
19:46 ingy I hate you
19:46 Arathorn : (
19:46 ingy not really
19:46 * Arathorn goes into a decline
19:47 Arathorn ingy: what flash plugin & gecko version was that with?
19:47 ingy I don't know
19:47 Arathorn hum
19:47 * Arathorn wonders if the problem is hiding the flash widget in the droppydowny toolbar
19:47 Arathorn so much for randomly mixing & matching RIA technologies..
19:48 ingy hmm. mozilla talkback just filed a bug report for me
19:48 ingy that was kinda kool
19:49 audreyt a bug report for ingy?
19:50 szbalint Arathorn: /me looks
19:50 audreyt oh, filed...for
19:50 szbalint Arathorn: Shockwave Flash 7.0 r25
19:52 Arathorn hum :/
19:53 Arathorn well, 7.0.6x is the most recent build, but i suspect that gecko's going to be the weak link
19:53 audreyt ooh, native support for JSON coming to syck
19:53 Arathorn i guess i'll have to debug it under *nix
19:53 audreyt no need for YAML::Syck hacks
19:53 Arathorn could anyone get it to work under non-windows?
19:54 audreyt fbsd gets a segfault.
19:54 * audreyt reverts to flash6
19:55 Arathorn well, meh
19:55 Arathorn apologies for the anticlimax
19:55 nothing_pasta woot! mooseness is spreading
19:55 audreyt Arathorn: thanks for trying
19:55 nothing_pasta someone on #catalyst just named himself a mooselester
19:55 audreyt . o O (SMIL)
19:55 nothing_pasta (a subtype of a moose f***er
19:55 Arathorn audreyt: gah
19:56 Arathorn it's a shame, as it's really quite slick under windows
19:56 * Arathorn rummages around for his debian desktop
19:56 audreyt mm, ambulant plays SMIL21
19:57 * Arathorn hasn't checked SMIL in a few years, but it used to be pretty crippled
19:58 Arathorn and certainly not interactive in the way that XUL (or flash, or combinations of the two) are
19:58 audreyt I hear SMIL2 is interactive in that way
19:58 Arathorn perhaps I should have just parsed the XUL markup into swf - especially given that flash has an HTML renderer built into it nowadays
19:58 * Arathorn is out of the loop, then.
19:58 audreyt but is it gecko?
19:58 audreyt oh, you mean htmlize it
19:59 audreyt different box models makes that hard
19:59 audreyt you'll have to do it per-slide
19:59 Arathorn it's just a simple html textfield renderer - no box modelling
19:59 audreyt ahh. but you have autozoom aka takahashi?
19:59 Arathorn yeah, flash has always autozoomed
19:59 Arathorn unless there's a special kind of takahashi autozooming i haven't found yet
19:59 Arathorn but either way, this horrible hybrid should just work, anyway :P
20:00 nothing_pasta Arathorn: takahashi autozooming means: expand every slide to a given box
20:00 nothing_pasta i.e. dynamically change the font size
20:00 audreyt yeah, seems like what flash does.
20:00 Arathorn oh, okay - you could do that in a oneliner in flash too, tho'
20:00 Arathorn i guess faking the box model would be a bit tricky
20:00 audreyt maybe I should just use OOo Impress's Flash export ;)
20:00 * Arathorn shudders
20:01 audreyt write XSLT to import XUL into OpenDocument
20:01 audreyt seems like Alias's domain
20:01 Ara5n joined perl6
20:01 * Ara5n pops up in debianland
20:01 audreyt hi Ara5n
20:02 Ara5n hia
20:02 * Ara5n sets about segfaulting his geckos
20:02 audreyt hm, that means Aragorn's child woulbe Ara2n
20:02 fglock GabrielVieira: back
20:02 audreyt (or was that Ara1n)
20:03 Ara5n eldarion was aragorn's kid
20:03 audreyt I know. I was commenting on 5->3->2
20:03 Ara5n :)
20:03 audreyt (and because prime number stopped there, we don't know of any descendent of eldarion)
20:04 FurnaceBoy is now known as blubeuhoetubtohu
20:06 Ara5n the number series is more about crappy puns than primes, unfortunately
20:06 Ara5n yay, i have a debugging moz tree on this box
20:06 * Ara5n disappears into the void
20:06 Cryptic_K is now known as Quell
20:07 * audreyt is impressed by the overall hacking prowess witnessed daily in #perl6
20:08 audreyt clkao: pugs-task-sanity-p?
20:11 GabrielVieira fglock :P
20:12 GabrielVieira fglock can i talk private with u?
20:13 fglock GabrielVieira: ok
20:13 stevan nothing_pasta: Moose... it's the new Camel ":P
20:13 nothing_pasta nothing_pasta: we joked about that
20:13 nothing_pasta that since in israel all the weird animals are named "camel of ..."
20:13 nothing_pasta then in scandinavia camels must be named "desert moose" or something
20:13 audreyt changes topic to: pugs.blogs.com | pugscode.org | pugs.kwiki.org | paste: http://sial.org/pbot/perl6 | <stevan> Moose... it's the new Camel ":P
20:14 fglock stevan: the procedure for inheritance is: 'use metaclass; our @ISA = (...); ' ?
20:14 stevan fglock: no the metaclass pragma just install a .meta
20:15 stevan fglock: just do what you would normally for inheritence
20:16 stevan fglock: Class::MOP does not get in your way of doing normal p5 stuff
20:16 stevan it only adds stuff
20:16 stevan like .meta
20:16 stevan and it will help you manage your attributes and create your instances, but only if you want it too
20:17 fglock stevan: so to make Pugs::Grammar::Base be a Grammar I just use (use base?) the module you started?
20:17 stevan yes pretty much
20:18 fglock stevan: I renamed it Pugs::Runtime::Grammar
20:18 fglock stevan: ok!
20:18 stevan the .grammer is the meta-object though,.. so it lives in the meta level
20:18 stevan oh wait
20:19 stevan oop
20:19 stevan s
20:19 stevan fglock: I think I did something different than what you wanted
20:19 stevan one sec.,.. $client called
20:20 fglock stevan: how about moving your implementation into Pugs::Grammar::Base - this may simplify things (all grammars inherit from it)
20:20 stevan I think that is not exactly how you should go about it
20:21 levengli joined perl6
20:22 levengli left perl6
20:22 Arathorn hm, the XUL works fine straight off on this firefox under debian: http://www.arasphere.net/perl6/mariner.jpg
20:22 audreyt purr :/
20:22 Arathorn and on a random build of moz 1.7.12
20:23 audreyt well then
20:23 * Arathorn wonders if this is a 7.0.63 v. 7.0.25 problem
20:23 audreyt I'll boot to win32 tomorrow and try it out
20:24 Arathorn weird that nobody else has got it to work, though
20:24 * Arathorn shrugs :(
20:24 gaal meow
20:26 * GabrielVieira fglock :~)
20:32 stevan fglock: sorry,.. damn $client and their @needs
20:33 stevan fglock: Grammar is a Class
20:33 stevan which is a meta-level "thing"
20:33 fglock stevan: ok
20:33 stevan the Grammar::Base would be equivalent to Object
20:33 stevan but I am not sure you actually need that
20:34 * eric256 hates it when people send a simple email, then panic when its not done right away, when the original email didn't even look important. blah
20:34 stevan what I wrote will actually create the p5 package for you , and then add_rule will install a method into that package
20:34 fglock stevan: things I need:
20:34 fglock anonymous classes, and C3 inheritance
20:35 stevan hmm
20:35 stevan why C3?
20:35 fglock stevan: just for 'p6 compatibility' - not important now
20:35 stevan ok, cause C3 is tricky, it requires that we subvert perl's method dispatcher
20:36 stevan which means AUTOLOAD, which means fragility and big performance drain
20:36 stevan in other words,.. avoid it if we can
20:36 fglock stevan: np - performance is more important
20:36 stevan unless we can get putter or someone to hack p5 internals to add C3 support
20:37 fglock about rules - $rule is (in my vision) a method of an anonymous class that inherits from Grammar::Base - but I may be wrong :)
20:37 stevan what does Grammer::Base have?
20:37 stevan in terms of methods, etc
20:38 fglock Grammar::Base have other rules: <ws>, <space> - things that are put in a grammar by default
20:38 stevan ok
20:38 audreyt rindolf: I got the bug.
20:38 audreyt ?eval sub f ($j) { my $a = $j; { say $a } } f(2); f(3);
20:38 audreyt rindolf: if you remove the inner block it work
20:39 evalbot_9583 is now known as evalbot_9601
20:39 evalbot_9601 OUTPUT[2 2 ] bool::true
20:39 stevan fglock: I think I know what you want then
20:39 audreyt that's quite embarassing ;) will fix in a bit
20:40 fglock stevan: how about:  $rule = sub{ $anon_grammar->rule( @_ ) }
20:40 stevan fglock: where is $anon_grammer?
20:41 stevan fglock: which dir are you working in perl5/ or pX/?
20:41 fglock stevan: it can be lexical, or a package variable - it depends on how 'compile' was called, I think
20:42 stevan Rule->compile?
20:42 fglock stevan: pX
20:43 fglock stevan: let's say you have $rule1 = PCR->compile(...); $rule2 = PCR->compile( '  <$rule1> ' )
20:44 fglock stevan: how does $rule2 knows in which place $rule1 is? (I think they need to share a grammar)
20:44 szabgab is there a replacement for Data::Dumper ?
20:45 stevan fglock: I would assume that $rule2 would know about $rule1 because they are in the same lexical scope
20:45 stevan rule1 does not have a "name"
20:45 rindolf audreyt: hi
20:45 stevan I would think there is a difference between anon rules and named rules
20:45 fglock stevan: they are not in the same scope, because the compiler eval happens inside the PCR package
20:46 rindolf audreyt: thanks
20:46 stevan fglock: hmm, thats a problem maybe
20:46 stevan fglock: how does rule2 know that rule1 is called $rule1?
20:46 fglock stevan: can PCR use caller() info to create a grammar in the caller scope?
20:47 fglock stevan: dunno - by using PadWalker?
20:47 stevan fglock: yeah thats what I was thiking too
20:47 Maddingue joined perl6
20:47 stevan then I am not sure you need a grammer so much
20:47 fglock stevan: or - $rule1 is installed in a hidden grammar in the same lexical scope than $rule2
20:47 stevan as you need to padwalk up your call chain to find a variable which matches
20:48 stevan fglock: when is it installed?
20:48 stevan $rule1 = PCR->compile() can't padwalk to find $rule1, it doesnt exist yet
20:48 stevan LHS evaluates furst
20:48 stevan s/u/i/
20:48 fglock stevan: the first PCR->compile would create the grammar
20:48 rindolf szabgab: $var.perl ?
20:49 stevan fglock: okay, so some kind of global grammer scope
20:49 stevan but there is still the problem of finding the "name" of that first grammer
20:49 rindolf ?eval [5,6, {'hello' => "gabor"}, "shlomi"].perl
20:49 stevan s/grammer/rule/
20:49 evalbot_9601 "[5, 6, \{(\"hello\" => \"gabor\"),}, \"shlomi\"]"
20:49 stevan s/e/a/ foreach grammer
20:49 szabgab rindolf: thx
20:50 rindolf stevan: grammar not grammer
20:50 rindolf szabgab: you're welcome.
20:50 stevan grammOr
20:50 stevan grammAAArrrr like PerlJam said
20:50 fglock stevan: maybe this needs some experimentation - the first rule don't need to know about anything - the second rule will lookup $rule1 at runtime...
20:50 rindolf gramøør
20:50 stevan gramøøse
20:50 rindolf elk
20:50 GabrielVieira fglock could u tell me which files i need to modify to get "print" function working in the lrep? :)
20:52 stevan fglock: so look in global grammer scope, if not found, do padwalking magic, if still not found die
20:52 fglock GabrielVieira: you need to have the "print" statement in the parser (this is to avoid a "syntax error")
20:52 fglock stevan: and Grammar == Package, right?
20:52 stevan fglock: yes
20:53 fglock stevan: ok - I'll try that
20:53 stevan Pugs::Runtime::Grammer is the metaobject to manipulate a grammer with
20:54 stevan instances of Pugs::Runtime::Grammer can be used to add rules (basically methods) to that Package
20:55 stevan that instance of Pugs::Runtime::Grammer can be accessed by doing MyGrammer->grammer
20:55 stevan assuming you created MyGrammar with Pugs::Runtime::Grammar->new('MyGrammar')
20:55 Arathorn meh
20:56 GabrielVieira fglock ive already modified Perl5.pm, Perl6.p6 and lrep.p6 where else? :)
20:57 fglock GabrielVieira: are you in  Common/lrep-compiler ?
20:58 GabrielVieira yep
20:59 fglock GabrielVieira: you may have to add a perl5 representation in Emitter/Perl5.pm - you should actually ask ruoso for details :)
21:00 GabrielVieira hes gone ;~
21:00 GabrielVieira heheh
21:00 GabrielVieira fglock there is a "sub node::_print {" there that ive modified
21:03 fglock GabrielVieira: that's the right place
21:04 GabrielVieira but stil didnt work
21:04 GabrielVieira i'll be back, later.
21:04 GabrielVieira :P
21:04 fglock GabrielVieira: see the old lrep at Common/lrep/p6compiler.pl for reference - print should work there (but it has a much dumber syntax)
21:04 levengli joined perl6
21:04 GabrielVieira ok
21:05 GabrielVieira when i get back
21:05 szabgab left perl6
21:05 GabrielVieira cya
21:05 fglock GabielVieria: tchau!
21:05 GabrielVieira tchau :P
21:06 * Arathorn is determined to get this takahashi working
21:06 * audreyt admires Arathorn's persistence
21:10 szabgab joined perl6
21:18 stevan_ joined perl6
21:22 nothingmuch joined perl6
21:27 pmurias what would be the best way to add an alternative frontend to lrep-compiler?
21:28 eric256 hammer and nails?
21:28 arcady joined perl6
21:32 pmurias creating a Frontends directory or Grammar/Bar.p6?
21:32 fglock pmurias: what is a frontend? (user api?)
21:33 Arathorn right!
21:33 ghenry joined perl6
21:33 Arathorn can anyone possible test http://arasphere.net/perl6/takahashi/mariner.xul and see if the voice over & synchronization works? (especially if it segfaulted your gecko last time 'round)
21:34 fglock Arathorn: sorry, no sound :(
21:34 Arathorn well, if it turns the pages at roughly the right time & doesn't segfault your browser, that's good enough for me ;)
21:35 * Arathorn goes to find a mac to test on
21:36 pmurias fglock: sorry for any ambiguity, meant a language frontend
21:39 audreyt rindolf: fixed. checking in
21:39 * audreyt needs to sleep soonish
21:40 audreyt 6am plane tomorrow :/
21:40 audreyt er, sorry, 6am wakeup tomorrow
21:41 fglock pmurias: lrep is not modular - but you can compile a grammar to p5 using it as an external program
21:42 fglock audreyt: good night
21:42 audreyt rindolf++ # turning up interesting pugsbugs left and right
21:43 * Arathorn pleads for people to sacrifice their mozillas on the altar of his flash/xul O:)
21:43 * nothingmuch wonders how rindolf finds them
21:44 audreyt nothingmuch: by writing interesting perl6 programs, persumably
21:44 nothingmuch Arathorn: doesn't work for me
21:45 nothingmuch no slides change at all
21:45 nothingmuch if this works i'll use ti for all my slides
21:45 Arathorn nothingmuch: interesting
21:45 Arathorn does the voicestream play back?
21:45 Cryptic_K joined perl6
21:46 weinig is now known as weinig|away
21:46 Arathorn any errors in the javascript console
21:46 Arathorn ?
21:46 nothingmuch yes
21:46 nothingmuch iu'll check
21:46 Arathorn thanks :)
21:46 nothingmuch yes
21:46 nothingmuch plugin.SetWindow is not a function
21:46 nothingmuch Error: plugin.SetWindow is not a function
21:46 nothingmuch Source file: javascript: function jsScriptObject(obj) { this.wrappedJSObject = obj; } jsScriptObject.prototype = { evaluate : function(expression) { return new jsScriptObject(eval(expression)); } }; var plugin = document.embeds['takremote']; plugin.SetWindow(new jsScriptObject(window),1944427140);
21:46 eric256 Arathorn  works here. but the sounds quality is pretty bad
21:47 nothingmuch Line: 1
21:47 pmurias fglock: is the modularity undesired? or can I add it if I write a frontend?
21:47 nothingmuch eric256: that's audreyt's fault ;-)
21:47 eric256 ohhh then nevermind, works good here WinXP Firfox 1.5.0.1 ;)
21:48 nothingmuch Arathorn++
21:48 nothingmuch Arathorn++
21:48 nothingmuch Arathorn++
21:48 Arathorn hm, does that mean it started working?
21:48 nothingmuch no
21:48 eric256 lmao
21:48 nothingmuch it's for the effort and the style
21:48 Arathorn plugin.setWindow() is called by the depths of the flash plugin
21:49 Arathorn what plugin version, gecko build & OS is this?
21:49 nothingmuch crapx0r
21:49 nothingmuch ff 1.5.0.
21:49 nothingmuch 1
21:49 Arathorn what does about:plugins say for flash version(s)?
21:49 ruoso joined perl6
21:50 Arathorn whee, found a mac
21:50 * Arathorn tests it
21:50 nothingmuch Shockwave Flash
21:50 nothingmuch    File name: Flash Player.plugin
21:50 nothingmuch    Shockwave Flash 7.0 r24
21:51 Arathorn right - would you be able to upgrade that to 7.0 r63? (i think r24's pretty buggy :( )
21:51 svnbot6 r9603 | audreyt++ | * lexical-array-in-inner-block.t passes; shlomi++ for
21:51 svnbot6 r9603 | audreyt++ |   pointing out the immediate-executing code block
21:51 svnbot6 r9603 | audreyt++ |     sub f ($x) {   { say $x; }  }
21:51 svnbot6 r9603 | audreyt++ |   failed to capture the runtime environment.
21:51 nothingmuch oh, ok
21:51 fglock pmurias: re modularity: how about using Pugs::Compiler::Rule, which went to CPAN?
21:52 Arathorn hm, pageturning doesn't work on this mac (but at least it doesn't segfault)
21:57 svnbot6 r9604 | audreyt++ | * more parrot scribbling.
21:59 Muable joined perl6
21:59 pmurias fglock: I'll try it tommorow, I badly need to go to sleep now
21:59 fglock pmurias: ok!
22:01 * ruoso realizes rule engine must be optimized... a lot... taking almost 1 minute to compile Grammar::Perl6
22:03 fglock ruoso: I think it is backtracking - it seems to go fast first, and then slow down (it may be a problem with the grammar, but this is hard to track) - the backtracking control ':' should help with this
22:04 Arathorn woohah! got it working on the Mac
22:05 Arathorn ingy: any chance you could check http://arasphere.net/perl6/takahashi/mariner.xul again to see if it melts your gecko?
22:05 szabgab how can I tel Pugs to forget a half command when it says ....>
22:06 szabgab s/tel/tell/
22:06 eric256 szabgab ... what?
22:06 szabgab in interactive mode I type ? and press enter
22:06 ayrnieu szabgab - I hit C-d
22:07 szabgab sure, but I want to stay within pugs ...
22:07 szabgab C-d kills it
22:07 ayrnieu so do I.
22:07 ayrnieu I see.  not here.
22:07 fglock &
22:07 szabgab good for you :-)
22:07 * ruoso also realizes a refactoring in the rules is needed
22:08 ruoso like... code is made of statements
22:08 ruoso statements are made of expressions.
22:08 svnbot6 r9605 | fglock++ | PCR - removed lowercase namespaces
22:08 svnbot6 r9606 | ruoso++ | $input_file = IO::File.open($input_filename,<); now working...
22:08 ruoso code is also made of control structures
22:08 eric256 szabgab you are waiting for it to execute something but want to stop waiting?
22:08 integral C-d doesn't kill pugs for me :-)
22:08 Arathorn nothingmuch: fwiw, the slide timings are stored as http://arasphere.net/perl6/takahashi/mariner.xml and the mp3 likewise as a separate file
22:10 eric256 Arathorn  does that file jump to that specific page? like you could have it go forward and backward etc.?
22:10 szabgab eric256: no, I made a typo and pressed enter already and it is waiting for some divine help
22:10 eric256 it doesn't hang on typos, thats why i'm confused
22:10 fglock left perl6
22:11 szabgab e.g I typed ? and ENTER
22:11 Arathorn eric256: it should
22:11 Arathorn if it doesn't, please tell me (although only the first 8 pages or so have been timed up)
22:13 eric256 szabgab just type anything and hit enter
22:14 szabgab eric256: hmm, this time it worked, thanks
22:14 eric256 anyone know what ? is suppose to do in interactive mode? i don't see it mentioned in the help
22:15 Arathorn (nothingmuch: i think i fixed the race condition that was causing your plugin.setWindow() to fail, if you refresh)
22:15 ayrnieu eric256 - szabgab just offered it as an example of where pugs would wait for complete example, I thought.
22:18 szabgab eric256: ah yes, that was an example, I was trying to get to the help, so where *is* the help ?
22:18 ayrnieu :h
22:19 eric256 except it doesn't realy. because if you do that in the middle of a string, then it prints the actualy '?' but also gives you another line to type on...its odd
22:19 * ayrnieu ...
22:22 ruoso how is the syntax to read an entire file to a string?
22:22 ruoso do I still need to redefine line delimiter?
22:22 ayrnieu I believe so.
22:23 ruoso ayrnieu, but... which variable contains it? i couldn't find in the synopses...
22:23 szabgab $a = slurp "README"
22:23 ayrnieu ruoso - I don't know either :-)  I'll look, but funnily: my $f = [~](=<$f>);
22:24 eric256 arg you beat me to it....
22:24 rindolf audreyt: thanks for fixing my bug.
22:24 ruoso szabgab, could you point the synopsis? just to implement the rule as closer as I can to the spec...
22:25 nothingmuch Arathorn: it works now
22:25 nothingmuch with flash 8
22:25 eric256 ruoso http://feather.perl6.nl/~eric256/​t_index/t/builtins/io/slurp.html
22:25 eric256 test file with passing status + link to E07
22:26 szabgab ruoso: slurp works, I am not sure in is in S*
22:26 ayrnieu ruoso - perl5's $/ is now $IN_FH.input_rec_seperator "...or some such"
22:27 ayrnieu by S28
22:28 ruoso eric256, hmmm... the Perl6::Slurp module accepts a filehandle... should slurp accepts also?
22:29 eric256 you officialy know as much about it as i do. i just found the test for it and worked back from there ;)
22:29 eric256 i google sear
22:29 ruoso :)
22:29 ruoso thaks
22:29 eric256 ch the S's though. hang on
22:31 szabgab can I execute a p6 file from within pugs ?
22:31 PerlJam If slurp isn't in a synopsis, it ought to be.  (Just like File::Slurp should be part of the standard perl5 dist.)
22:31 szabgab should :l filename do it ?
22:31 Arathorn nothingmuch: cool :)
22:31 nothingmuch Arathorn: thanks, i will redo the darcs talk in takahashi plus audio
22:31 nothingmuch =)
22:31 Arathorn does it change page & stuff as you scrub the slider?
22:32 nothingmuch yes
22:32 Arathorn woo
22:32 Arathorn in order to dump out timings, stab the 'p' key whilst the flash widget has focus
22:32 eric256 pop-meeting. later
22:32 Arathorn and it'll cough xml out to stdout
22:32 nothingmuch wow
22:32 nothingmuch !
22:33 Arathorn although you may have to config browser.dom.window.dump.enabled = true in about:config to see it
22:33 szabgab left perl6
22:34 * Arathorn hopes it'll work for enough people to be usable
22:34 nothingmuch Arathorn: i don't have that
22:34 Arathorn you have to add it
22:34 nothingmuch OSX and all
22:34 nothingmuch oh
22:34 Arathorn shouldn't matter
22:34 nothingmuch i hope it goes to Console
22:34 ayrnieu PerlJam - it is used in S17 and named in S29, but not documented.
22:34 Arathorn goes to wherever you run your firefox from
22:34 ayrnieu by Perl6-Bible-0.30
22:35 Arathorn (doubt it'll go to the console, although my osx-fu is crap)
22:35 nothingmuch Arathorn: apps in OSX have no STDOUT by default
22:35 Arathorn hm
22:35 nothingmuch but we'll see =)
22:35 Arathorn well, it worked fine for me running /Applications/Mozilla Firefox/lib/firefox or something from terminal
22:35 * Arathorn shrugs
22:36 Arathorn useful thing to have anyway, if you like seeing everyone's random javascript debugging output ;)
22:36 Arathorn (and firefox's bleatings)
22:37 * ruoso will consider slurp as in Perl6::Slurp...
22:39 nothingmuch Arathorn: works
22:39 nothingmuch gotta run it manually from the terminal though
22:39 nothingmuch which is OK
22:39 nothingmuch ++
22:40 Arathorn :)
22:40 larsen joined perl6
22:41 dolmen joined perl6
22:44 svnbot6 r9607 | ruoso++ | $source = slurp $file; working...; two more lines to lrep.p6
22:45 stevan joined perl6
22:46 blubeuhoetubtohu is now known as FB|afk
22:49 ayrnieu eric256 - http://www.perlmonks.org/?node_id=536981
22:49 svnbot6 r9608 | ruoso++ | commenting lrep.p6...
22:50 ayrnieu [<[1..2]>?\d] would match 29 :-)
22:55 eric256 being picky are we? lol
22:56 eric256 the sad part is i had a different regex, and then switched it when i read one of the replies
22:56 eric256 that would have been better.
22:56 Limbic_Region joined perl6
22:57 ayrnieu why did you change it by that reply?
22:58 eric256 because it made it simpler, and i'm an idiot. lol
22:58 eric256 if closures where workingi  could just have done  \d**[1..2] { fail unless 0 < $() < 24 }
23:00 ayrnieu \d+ { fail unless $() =~ /[01][1-9]|2[0-4]/ }  :-)  /me realizing that his correction matches 00..24
23:00 ayrnieu also, ~~
23:01 ayrnieu (er, well, you know what I mean.)
23:01 eric256 why would you do that instead of just using that regex?
23:01 ayrnieu I wouldn't.
23:01 eric256 you just did
23:01 eric256 lol
23:01 ayrnieu no, I said something silly with a smiley on the end :-)
23:01 eric256 ahhh... smily got eaten by the regex...visual parse failed
23:02 FurnaceBoy_ joined perl6
23:02 * ruoso is near to parse lrep.p6 *with lrep.p6*
23:02 ayrnieu ruoso++ # craaazy
23:04 ruoso WORKED WORKED WORKED :) :) :) :) :)
23:04 Arathorn :D
23:05 ayrnieu :-)   What happens now?
23:05 ruoso ayrnieu, lrep.p6 will emit lrep
23:05 ruoso then I throw away lrep.pl
23:05 ruoso and keep only lrep.p6
23:06 ruoso and the compiled version, of course
23:06 * ayrnieu nods.
23:07 mlh joined perl6
23:07 ruoso then is just a matter of keep working to rewrite the entire lrep-compiler tree in Perl 6
23:12 Arathorn it's aaalliiive :D
23:14 ruoso HAHAHAHAHAHAHA... I just re-created the compiled lrep with the compiled lrep...
23:16 ruoso and the files were absolutely equal
23:16 svnbot6 r9609 | ruoso++ | lrep.p6 compiles lrep.p6
23:23 TimToady ruoso++++++
23:24 TimToady +++++++++++++++++++++++++
23:24 TimToady +++++++++++++++++++++++++++​+++++++++++++++++++++++++++
23:25 TimToady and everyone else who helped+++++++++++++
23:25 meppl gute nacht
23:25 TimToady oyasuminasai!
23:25 clkao WHOOT
23:39 jisom joined perl6
23:49 stevan audreyt nothingmuch: Møøse has been PAUSEd (https://pause.perl.org/incoming/Moose-0.01.tar.gz)
23:50 Limbic_Region . o O ( is it Christmas? )
23:52 Maddingue joined perl6
23:59 FurnaceBoy_ is now known as FurnaceBoy

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

Perl 6 | Reference Documentation | Rakudo