Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-01-26

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:01 putter someone want to look at the CALLER change audreyt need to make to the other .t file, and see if it suggests a solution to subroutines.t...?
00:02 putter svn diff -r8714:r8715     though there is probably a shorter way
00:02 bsb I'm offline in 5 minutes until about next thursday
00:02 putter ah. :)
00:02 putter Lunar New Year?
00:03 putter anyone else want to go potentially-low-level-banana grabbing?
00:05 whiteg Lunar New Year is the Chinese New Year
00:05 putter bsb: a surprising range of ideas resulted from your refactoring number.  :)   thanks!
00:05 whiteg it begins from this Saturday
00:05 bsb I'm moving house, not celebration involved unfortunately
00:06 rantanplan_ joined perl6
00:07 putter ah, no.  good luck.  *shudder*
00:09 bsb I only have one big suitcase
00:09 bsb What ideas popped out from Number.hs?
00:09 bsb And why didn't I have them? :)
00:10 putter :)
00:10 putter let's see...
00:11 putter the most recent chain was it got me and tewk looking at your refactoring and audreyt's :2<1> patch.
00:12 putter which was a good way to learn more haskell, and raised the idea of having "learning code reviews" of hs patches be a regular thing to do.
00:12 putter and also turned up the :2<1> bugs you recently wrote tests for.
00:13 putter and got me thinking that dealing with hs is _much_ more managable in small chunks.  so why dont we backtrack which chunks broke the current tests.
00:14 putter which led to a flame, a pugs "kennel" of old pugs versions, a kwiki page, a TASKS file, and so on, and so on.
00:14 putter :)
00:14 putter bread upon the waters
00:15 bsb wow
00:15 putter kind of nifty how the world works.  I always enjoy seeing cascades like that.
00:16 bsb I'm glad it cascaded in the right direction
00:16 bsb Night putter, all
00:17 putter 'night bsb &
00:20 theorbtwo A tracker of /when/ each test started breaking would be great.
00:23 putter yeah.  where to put it...?
00:23 putter Juerd: feather?
00:24 theorbtwo The problem is how do you track a unique test over time.
00:25 theorbtwo I was assuming that it'd be from running smoke on differnet builds.
00:25 theorbtwo I suppose if you run the latest tests across old pugs, then you don't have that problem, but you eat lots of CPU running new tests on old builds.
00:28 putter ?eval sub f($x = $CALLER::_){say $x}  for 3 {say $_;f()}
00:28 evalbot_8779 is now known as evalbot_8780
00:28 evalbot_8780 OUTPUT[3 3 ] undef
00:30 putter hmm, neat thought.  just having a copy of the _old_ make test output is an improvement on status quo.  the smokeserver had gc'ed the old smokes I wanted to check.  but I like the new nexts on old pugs idea.  maybe each release, run the tests across a spread of r\d\d00 and r\d\d\d0 versions?
00:31 putter re cycles... don't want your machine to be tooo bored while you sleep...
00:34 theorbtwo Every $r%10 == 0 version from today, every %100 from the last week?  I wonder how many r/night that'd be on a typical day...
00:34 putter ?eval sub f($x = $CALLER::_){say $x}  for 3 {f()}
00:34 evalbot_8780 OUTPUT[3 ] undef
00:39 putter that could be neat.  say 300MB per pugs uncleaned.  3/GB, say 10 GB is 30.  10 at %100 is way overkill,
00:41 putter 20 at %10 is 200, which seems a bit low.
00:41 theorbtwo I'm more concerned about time taken to do all these test runs then space storing the kennel.
00:42 putter ah, but you only have to rerun the tests which changed :)
00:42 theorbtwo In fact, I think you're overestimating -- is a built pugs 300MB?  No need to store the sources, intermediate files, t dir...
00:42 theorbtwo Hm, good point.
00:42 theorbtwo (Assuming the test files are independent of each-other, which I certianly hope ours are.)
00:43 putter yeah.  I've no idea how much one could throw away and still have a working pugs + Test.pm.
00:43 theorbtwo Hopefully, everything except ./pugs and blib6.
00:43 * putter tests...
00:47 putter so it would appear. :)  neat.  so thats <20 MB.  and that order of magnitude is more than enough for the exercise.  nifty!
00:49 lypanov joined perl6
00:52 putter Then one could actually build a kennel quite fast.   make, grab ./pugs, svn up to the next version, make (little needs to be done), grab ./pugs, etc.  as long as you trust the build system to be clean about it.  I'm not sure I do.
00:52 putter maybe a clean build every N revisions, and then hops between?
00:58 putter ok, so why does the evalbot'ed $CALLER::_ line work on evalbot_8780, but not on my r8778, when svn log shows the intervening commits shouldnt have made any difference...??
01:02 theorbtwo Oh, my.
01:02 theorbtwo I wanted to get a log from a week ago to now.
01:02 theorbtwo svn log -r '{2005-01-19}' > lastweek gave me nothing at all.
01:03 theorbtwo Who can tell me what svn log -v -r '{2005-01-19}:HEAD' > lastweek gave me, and why I am an idiot?
01:04 putter ?
01:04 theorbtwo This is 2006.
01:04 putter <suspense builds>
01:04 putter ahhh. ;)
01:04 theorbtwo I got a log of everything from the beginning of time to a week ago.
01:05 theorbtwo Er, correction, everything from the beginning of time to right now.
01:05 putter I did that the other day to do graphs of commits vs time.  I was surprised how fast it was.  ;)
01:09 * putter tries to picture a chronological filesystem and all the problems which might occur at the beginning of each year as humans get the year wrong for a while...
01:09 putter undo is your friend. :)
01:10 putter yipes.  pairs.t was still broken back at r8300?!?
01:19 putter ok, the last two tests in t/var/state.t   In two different versions now, I've seen ./pugs -Iblib6/lib t/var/state.t do the right thing, showing them as TODO bug.  But the smokes show them red.  Huh?  what am I missing?  could someone who has already done a smoke do a ./pugs -Iblib6/lib t/var/state.t to cross check?
01:21 putter to recap: the $CALLER::_ is working in evalbot, but not in my identically versioned pugs.  Failure of same seems to be the cause of the subroutine.t failure.  Now the t/var/state.t failure seems to depend on whether you are running test or smoke?  what's going on?
01:42 dominix joined perl6
01:48 kanru joined perl6
01:55 samv_south joined perl6
02:16 buu Mmm, piracy.
02:31 putter ?
03:07 pjmm joined perl6
03:10 grayson joined perl6
03:11 bcornett joined perl6
03:33 tewk Isn't there a Rules implementation in Perl6 that someone was working on.
03:37 putter tewk: luqui's ext/Parse-Rule?
03:42 putter theorbtwo: the gotcha with attempting to use old ./pugs with current tests is that pugs, Test.pm, and tests, are tightly coupled.  This is a pain when doing a new backend.  They grew up together, and none deal gracefully with the others being out of sync.  I just failed to run r7620 on a current pairs.t, because the Test.pm api changed (grew), and the modern Test.pm parsefails.  ah well.
03:45 putter tewk: but it's just the beginnings of the engine.  something else needs to parse and compile.
03:51 putter re pairs.t - it's had failing tests for a loooong time.  at least back to early r7000's.  I'm not sure whether some particular tests have regressed (we need a test uid scheme for stuff like this).  Didn't have a chance to check.  Won't happen tonight - perhaps tomorrow.
03:53 putter recap: $CALLER::_ is flakey (subroutine.t), and that may be having broad impact.  it's unclear to me as yet whether the pairs.t failures also matter.
03:59 putter stevan: re doing additional piln backends to help refine piln: it belatedly dawned on me that a refined piln is not critical path.  do the switch to piln is.  so I wonder if alternate piln backends are just a distraction, best delayed until the other side of the bottleneck.  there are various aspects of piln I wonder about, but lets get unstuck first, as fast a possible.  no?
04:01 putter tewk: src/Text/Parser/ is also interesting (though hs of course)
04:01 putter good night &
04:18 Amnesiac joined perl6
04:30 gaal_ joined perl6
04:44 drbean joined perl6
04:50 \xe6var joined perl6
05:00 Odin- joined perl6
05:43 Khisanth joined perl6
05:47 drbean joined perl6
05:51 Southen joined perl6
06:07 Qiang joined perl6
06:12 elmex joined perl6
06:16 feng123 joined perl6
06:25 nothingmuch joined perl6
06:26 gaal_ is now known as gaal
06:45 sky_ joined perl6
06:55 GeJ greetings all
07:10 dduncan greetings GeJ
07:16 iblechbot joined perl6
07:22 Aankhen`` joined perl6
07:45 xern joined perl6
07:53 lucass left perl6
07:56 nothingmuch joined perl6
07:59 drbean joined perl6
08:11 nothingmuch http://xenia.media.mit.edu/~spiegel/thesis/
08:12 jp-autar1 joined perl6
08:12 meppl joined perl6
08:24 Cryptic_K joined perl6
08:38 r0nny joined perl6
08:49 elmex joined perl6
08:50 gaal audreyt: ping
08:51 nothingmuch hola gaal
08:51 gaal hey nm
09:14 kane_ joined perl6
09:18 pdcawley joined perl6
09:19 dada joined perl6
09:32 Aankhen`` joined perl6
09:54 G2 joined perl6
09:55 nnunley joined perl6
10:25 iblechbot joined perl6
10:55 joepurl joined perl6
11:39 * integral has just found his library offers an ebook of TaPL
12:05 scook0 joined perl6
12:44 drbean joined perl6
13:03 svnbot6 r8781 | asavige++ | Added Ruby version of rpn
13:04 chris2 joined perl6
13:11 iblechbot joined perl6
13:20 kolibrie joined perl6
13:28 hexmode joined perl6
13:47 nnunley_ joined perl6
14:18 Limbic_Region joined perl6
14:18 Limbic_Region seen audrey
14:18 jabbot Limbic_Region: I havn't seen audrey, Limbic_Region
14:18 Limbic_Region seen audreyt
14:18 jabbot Limbic_Region: audreyt was seen 3 days 4 hours 40 minutes 41 seconds ago
14:20 obra Limbic_Region: she's desperately hacking on $customer project
14:21 audreyt greetings.
14:21 audreyt $job days are over!
14:21 lypanov yay!
14:22 audreyt well, until Feb 6th anyway
14:22 theorbtwo Week and a half.  Sounds like a pretty good break to me.
14:22 audreyt yup.
14:22 audreyt and there's only one week of $job after 6th
14:22 audreyt I fly to .il on 13th
14:23 audreyt TASKS++
14:23 obra TASKS?
14:23 audreyt wow, *massive* backlogging
14:23 audreyt obra: http://svn.openfoundry.org/pugs/TASKS
14:23 audreyt I wonder if it's finally time to start using trac ;)
14:24 obra heh
14:26 * audreyt ponders a jifty-based foundry
14:27 audreyt (brokeback mountain)++ # very nice movie and a perfect context-switcher out from $job
14:27 audreyt tomorrow I'll be back to pugs... and continues all the way until 5th
14:28 audreyt hm, huge amount of backlogs
14:28 * audreyt readeth
14:29 Limbic_Region audreyt - did you get my /msg
14:29 audreyt did
14:29 Limbic_Region it is OT for the channel but on-topic for you
14:30 audreyt k
14:30 Limbic_Region out of curiosity, does anyone have an iterative algorithm for permutations n choose k in C?
14:32 audreyt not sure
14:33 Limbic_Region audreyt - was the "not sure" directed to me or are you having a conversation with someone else I am only seeing half the conversation of?
14:44 audreyt Limbic_Region: I'm not sure I know of such an algorithm
14:46 xern joined perl6
14:51 audreyt Limbic_Region: I replied the PAR node -- thanks for the ping
15:00 audreyt zzz &
15:07 * stevan wishes audreyt sweet dreams filled with dancing lambdas
15:13 hexmode joined perl6
15:15 robkinyon Limbic_Region: You just need an iterative algorithm for N! and you have N-choose-k
15:17 theorbtwo robkinyon: IIRC, ! is computable with a fairly simple formula.
15:17 robkinyon N-choose-k is just N!/(k!*(N-k)!)
15:18 robkinyon if you have an iterative N!, you have an iterative N-choose-k
15:28 rantanplan_ joined perl6
15:37 sapper joined perl6
15:45 Limbic_Region robkinyon - I have found several iterative algorithms for N! in C but my C is very poor to adapt it to my needs.
15:46 robkinyon Limbic_Region: N!/k! is just N!, but you stop at k instead of 1
15:46 robkinyon Then, do (N-k)! and divide it into N!/k!
15:47 robkinyon two step iterative process
15:47 robkinyon (There's faster, but that's irrelevant)
15:47 Limbic_Region I am still not following - I don't have a problem with the math
15:47 robkinyon or, rather, k+1 is your last term
15:48 robkinyon ok - the standard algorithm is do N * N-1 * N-2 * ... * 3 * 2 * 1
15:48 Limbic_Region huh?
15:48 Limbic_Region no - not the math
15:48 robkinyon instead of using 1 (or 2) as the lower bound for the for-loop, use k+1 instead
15:48 Limbic_Region I very well understand the math
15:49 Limbic_Region I am not understanding the C implementation
15:49 Limbic_Region say you have an array of 30 numbers - that's your n
15:49 robkinyon I'm assuming that one of the algorithms you found is a for-loop that looks something like for(i=N,r=1; i>1; r*=i,i--){
15:49 Limbic_Region and you need all permutations of length 4
15:49 Limbic_Region no robkinyon - not at all
15:49 Limbic_Region that I might be able to understand
15:50 robkinyon let's take to /msg
15:50 PerlJam I could be wrong, but it sounds like robkinyon is talking about generating a number and Limbic_Region is talking about generating the actual permutations.
15:53 Limbic_Region PerlJam - no, you seem to be spot on
15:54 robkinyon PerlJam: You're right - my bad
15:55 Limbic_Region so anyway, I need a way of generating the permutations iteratively and then a way of short-circuiting (or jumping) to a different level if appropriate - my C just isn't strong though
15:55 PerlJam Limbic_Region: jumping to a different level?
15:56 robkinyon you're thinking in terms of coros
15:56 robkinyon that'll just frustrate you in C. :-)
15:56 Limbic_Region if you think of them as nested loops PerlJam where loop 1 is 1..N and loop 2 is 1..N minus whatever loop1's current value happens to be and loop 3 is 1..N minus whatever values loop1 and 2 happen to be ... last loop which is just one value
15:57 robkinyon use the odometer algorithm
15:57 Limbic_Region then what I mean is if during the execution of loop 2 I determine that regardless of the values of the loops from this point inwards on will not meet my needs, break out of that loop
15:57 robkinyon The keyword is "break"
15:58 Limbic_Region robkinyon - I am currently but it seems to me to be terribly inefficient
15:58 robkinyon it's more efficient than hand-coding the N loops for each k
15:58 Limbic_Region you have N arrays with decreasing lengths
15:58 Limbic_Region and each loop the array is "filled" with every number but the previous loop's value
15:59 Limbic_Region if you have something simpler I would appreciate it
15:59 robkinyon that's not the odometer
15:59 robkinyon the odometer is an array of length k which contains indices into your array N
16:00 robkinyon so, you generate the first one, then do the C equivalent of @array_of_stuff[ @odometer ]
16:00 Limbic_Region robkinyon - that is what I am doing I assure you
16:00 Limbic_Region or rather, I am achieving the same result
16:00 robkinyon maybe
16:01 Limbic_Region but instead of playing with indices I am playing with values
16:01 PerlJam you shouldn't need n * (n-k) storage, but rather n + k
16:01 robkinyon but the odometer is very efficient
16:01 PerlJam (but I'm only half paying attention)
16:01 robkinyon you want to play with the indices, otherwise you have N*(N-k) storage, not N + k storage
16:01 Limbic_Region robkinyon - I would love to see an example but I have been googling for 2 days and haven't found anything I understand well enough to adapt to my own needs
16:01 Limbic_Region I don't care about memory fwiw - I care about speed
16:02 Limbic_Region this really is OT - so please /msg if it is going to continue
16:02 robkinyon Limbic_Region: Lemme play and i'll /msg you when i'm done
16:03 Limbic_Region http://paul.rutgers.edu/~rhoads/Code/perm_lex.c is an example of the kinds of iterative permuation algorithms I have found on the web though this is not N choose K
16:04 Eimi joined perl6
16:15 nnunley_ is now known as nnunley
16:36 chris2 joined perl6
16:48 gantrixx joined perl6
16:49 marmic joined perl6
16:56 nothingmuch joined perl6
16:59 nothingm1ch joined perl6
17:04 jvoorhis joined perl6
17:04 jvoorhis hi
17:06 gantrixx hi
17:06 jvoorhis so i'm looking at this crazy XUL slideshow
17:06 jvoorhis and it is making me curious about pugs/p6
17:07 jvoorhis (i haven't followed perl in years)
17:07 gantrixx what slide show would that be?
17:07 jvoorhis can anybody tell me what this grammar definition business is about? :) i am intrigued
17:07 jvoorhis http://pugscode.org/osdc/pugs.xul
17:08 gantrixx I do quite a bit in Perl
17:08 gantrixx My last two contracts have been doing perl sw development
17:08 jvoorhis i am doing ruby currently
17:09 gantrixx I've played around with perl6 also, but it's not quite ready for general consumption yet
17:09 jvoorhis and i've done a bit of .net and python
17:09 gantrixx I looked into python
17:09 jvoorhis eh, i'm not concerned about general consumption :) i just wanna play
17:09 gantrixx just to see what all the buzz was about
17:09 jvoorhis over the holidays, i had a good time learning haskell
17:09 gantrixx I don't see a need for both python and perl
17:09 jvoorhis and somebody told me perl6 has some kind of pattern matching like haskell
17:10 jvoorhis well, python proponents will tell you python is more OO and more suitable for large projects
17:10 jvoorhis whether or not that is true, that is probably why they both exist
17:10 jvoorhis python reminds me a lot of java
17:10 SamB well, Python users don't usually much like PERL
17:10 jvoorhis yup
17:11 jvoorhis and ruby people claim ruby is more OO than python and python people claim that ruby's class_eval et. al. are dirty
17:11 kolibrie http://dev.perl.org/perl6/doc/design/syn/S05.html#Grammars
17:11 gantrixx I'd say that perl5 has a workaround for OO, but Perl6 has OO built right in
17:11 jvoorhis and ruby and python people think perl is dirty, but lately p6 is arousing my curiousity :)
17:11 SamB personally, I'm not so sure about this whole "large project" thing
17:12 gantrixx so if that is the reason to create a whole new language rather than fix the existing one, then OK
17:12 jvoorhis SamB: neither am i - i think it has to do more with methodology than language choice
17:12 gantrixx my hope is that the best of Python and Ruby will be encorporated into Perl...as it should
17:12 gantrixx and Perl6 will be *the* dynamic language
17:12 jvoorhis gantrixx: python is more inspired by java than perl, i'd say
17:13 gantrixx I'm not a java fan either
17:13 gantrixx C++, and Perl
17:13 jvoorhis ah that is saying a lot - ruby was written to be a kind of "best of" language
17:13 gantrixx get rid of PHP and just use mod_perl
17:13 SamB I'm basically not sure any language is good for large projects ;-)
17:13 jvoorhis SamB: you might be right :)
17:14 gantrixx I don't think I'd write a meteorological simulator in Perl, but I have done some fairly large projects with Perl
17:14 gantrixx I've written a software deployment system in Perl
17:14 Juerd 18:22 < SamB> I'm basically not sure any language is good for large projects ;-)
17:14 Juerd SamB: I'm sure large projects can't do with any single language
17:15 gantrixx my experience has been that no one really plans to do a project in perl.  perl starts off as just scripts to make your job easier and grows into a large project
17:15 Juerd Not if you pick "the right tool" for "the job", anyway.
17:15 Juerd As any large project conists of several jobs, and it's highly unlikely that the same language is the best tool for each job.
17:15 jvoorhis i really only used perl in college years ago
17:15 jvoorhis i have a friend who does bioinformatics with it and he really likes it for that
17:15 Juerd gantrixx: My experience is very different.
17:16 gantrixx although my last two projects were large and we were told to do them in perl
17:16 Juerd gantrixx: I've worked on several largish projects that were designed to be Perl only. Often though, some parts are written in other languages, because they're easier.
17:16 SamB Juerd: for sure
17:16 Juerd Especially Java is NOT suited for large projects.
17:16 Juerd Unfortunately, it is often used as the single language of choice for large projects :(
17:17 SamB you'd at least need a lot of EDSLs, at the very least
17:17 kolibrie jvoorhis: S05 explains grammars and rules: http://dev.perl.org/perl6/doc/design/syn/S05.html#Grammars
17:17 jvoorhis SamB: EDSL? :)
17:17 gantrixx I do not like java
17:17 Juerd SamB: What are that?
17:17 gantrixx I'd like to see it fade away
17:17 jvoorhis kolibrie: thanks
17:17 Juerd gantrixx: You're in good company here. You can say that you hate it, if you want.
17:17 gantrixx I do not believe in complile once, run anywhere
17:18 Juerd gantrixx: Hmm--but Perl 6 will have that...
17:18 gantrixx I've always had a hard time trying to get java apps to run out of the box
17:19 Juerd gantrixx: That's because of the multiple implementations problem. There are way too many, often neither backward nor forward compatible, versions of VMs. And there are several VMs too, that aren't always compatible with one another.
17:19 gantrixx correct me if I'm wrong, but with Perl6 you can have it interpret precompiled parrot code or just interpret on the fly
17:19 Juerd This is my argument for NOT having formal detailed spec of Perl 6
17:19 gantrixx the problem I always have is that the java app was compiled with a different version of some library than what I have
17:19 Juerd If the implementation is the spec, you automatically avoid a much bigger problem: having multiple implementations.
17:19 gantrixx like I say, C++ and Perl
17:19 Juerd gantrixx: You're not wrong.
17:20 gantrixx these two languages have stood up to the test of time
17:20 gantrixx I'd rather see people improve the languages we have rather than try to invent new ones
17:21 gantrixx new ones are good as proving grounds to test concepts, but eventually those concepts need to find their way back to C++ and Perl
17:21 sili lisp already does everything
17:21 jvoorhis kolibrie: that page gives an overview of grammar definition, but i'd love to see a usage example
17:21 jvoorhis is there one?
17:22 kolibrie jvoorhis: the Exegesis do that sometimes.
17:22 gantrixx anyone now where I can get a pic of the Perl6 mascot?
17:22 jvoorhis ah
17:22 gantrixx that silly looking animal thing?
17:23 jvoorhis yeah i can't recall what the exegesis is :) i haven't been steeped in perl culture
17:23 kolibrie jvoorhis: I don't think there are a lot of examples yet, implementation of grammars is still very young in PGE and pugs
17:23 jvoorhis understandable
17:25 kolibrie jvoorhis: good starting point: http://dev.perl.org/perl6/
17:25 sili after you read that you gotta read mailing list posts for like the past 5 years to get up to date
17:27 jvoorhis ha yeah i was afraid of that
17:27 jvoorhis i've done some p5
17:28 jvoorhis never did any OO with it though
17:28 sili it's easy
17:31 gantrixx what do people call that perl6 animal with the horns and wings?
17:32 sili "that perl6 animal with horns and wings"
17:32 gantrixx where can I get a picture of it?
17:32 theorbtwo Silly.
17:33 integral chimera?
17:34 theorbtwo http://www.axis-of-aevil.net/archives/img/2003_08/p6_cover.jpg
17:34 theorbtwo Google image search for perl6 cover, first hit.
17:36 gantrixx I guess I was using the wrong key words
17:41 Juerd Googling is a fine art.
17:42 Juerd 18:30 < gantrixx> new ones are good as proving grounds to test concepts, but eventually those concepts need to find their
17:42 Juerd                  way back to C++ and Perl
17:43 Juerd gantrixx: Be glad that Soustrup and Wall didn't agree
17:43 Juerd I pasted the wrong line
17:43 Juerd 18:29 < gantrixx> I'd rather see people improve the languages we have rather than try to invent new ones
17:43 Juerd That's the one I was commenting on.
17:44 Juerd 18:37 < jvoorhis> never did any OO with it though
17:44 Juerd jvoorhis: Really? No, I mean... really?!
17:48 Juerd +        if ($error) {
17:48 Juerd +            $edit = $new{Message};
17:48 Juerd +            $comment = $error;
17:48 Juerd +            goto EDIT;
17:48 Juerd +        }
17:48 Juerd Fuck.
17:49 elmex joined perl6
17:50 Juerd This is a very awkward way of writing a while loop.
17:50 Juerd Or a {; redo ;} loop
17:58 Ovid joined perl6
18:00 gantrixx Juerd, C++ was an improvement to C
18:00 gantrixx Juerd, Perl was ....I don't know where it evolved from, but it was "the scripting" language
18:01 gantrixx I see technology like I see biology
18:01 Juerd 19:10 < gantrixx> I see technology like I see biology
18:01 Juerd We don't have time for evolution.
18:01 gantrixx you need diversity so you can try new things and so that these fringe things will always be available, but there needs to be a technology that incorporates the best of what is out there
18:02 gantrixx I'd rather live in a world where all humans have eyes, ears, and noses, rather than a species splintered into subspecies that has only eyes, ears, or noses
18:03 gantrixx my experience is that many companies have been burned on "new" technology
18:03 gantrixx then are left to support some Ada code with the last 5 Ada programmers on the face of the earth
18:04 Juerd Eyes, ears, noses are like variables and functions: most programming languages have those.
18:04 gantrixx This is a problem that I have run into with a particular defense contractor that I do a lot of work for
18:04 Juerd It's superpowers that we're creating now.
18:04 gantrixx They were considering using Perl, but new that Perl6 was comming out eventually and may require them to update their code base
18:04 gantrixx or they could use Python
18:05 gantrixx They would prefer to do it in a technology that will have a very long life
18:05 Juerd That'll be C then
18:05 Juerd Dynamic languages are by necessity short lived.
18:05 gantrixx it is for this reason that they have given up on Java and C# and do most everything in C++
18:05 Juerd Perl's a very scary exception.
18:06 beppu joined perl6
18:06 Juerd But won't be that exception forever.
18:06 Juerd It just doesn't make sense.
18:06 BakedB_ joined perl6
18:06 gantrixx perl doesn't make sense?
18:06 gantrixx I see perl as the "everyman" language
18:06 Juerd Having Perl around for so long without major changes does not make sense.
18:06 gantrixx it's a language that is easy enough for the non-programmer to use
18:06 beppu Juerd, stability has its perks, too.
18:06 gantrixx for example, a biologist wants to model some sort of process in nature
18:07 gantrixx perl5 has had plenty of changes
18:07 Odin- Juerd: I'd call Lisp a dynamic language too ... even if you only count the Common Lisp standard, it's been around for pretty long...
18:07 gantrixx it's just that it got to be so many changes that it was time to start fresh and clean
18:07 gantrixx my gripe is with Python and Ruby
18:08 Odin- Juerd: Perl6 is going to be at least that flexible, it seems.
18:08 gantrixx My hope is that Perl6 will take away the "Python is better" arguement
18:08 PerlJam gantrixx: I doubt it.
18:09 gantrixx not that I don't think Python isn't a good language, it's just that it basically fills the same niche as Perl
18:09 Odin- Juerd: Of course, it'll have morphed into something entirely different in ten or twenty years, but I think Perl6 might very well remain around, without major changes to spec...
18:09 gantrixx I say make Perl better, not invent a new language
18:09 gantrixx but there is so much momentum behind Python already
18:09 beppu gantrixx, I think Ruby has more momentum at the moment than python.
18:10 gantrixx it's as if home builders spend more of their time building different tools to build houses, rather than building better houses
18:10 gantrixx well, hopefully we can generate some Perl6 momentum
18:10 kattana_ ruby has more buzz, things are actualy running on python.
18:10 gantrixx right now it seems to be off everyone's radar
18:10 gantrixx I did get the coast guard interested in Perl6, but had to tell them it wasn't ready yet
18:11 Odin- Yeah, because everyone's thinking "they've been at it for half a decade with little to nothing to show for it". That's what.
18:11 PerlJam gantrixx: it should be off everyone's radar; it's vapor!
18:11 Juerd Odin-: I don't know Lisp well enough to know if I'd consider it dynamic.
18:11 beppu I think right now is a good time to be off the radar, because perl6 still has a ways to go.
18:11 PerlJam Juerd: lisp is the prototypical dynamic language.
18:11 Juerd 19:18 < gantrixx> I say make Perl better, not invent a new language
18:11 PerlJam beppu++
18:11 Odin- Juerd: I suppose it depends on what you mean by dynamic. But Lisp is often cited as the prototype, as PerlJam says.
18:11 Juerd gantrixx: Eh, we're doing the opposite, but trying to fool you by calling the new language Perl too.
18:12 Odin- Juerd++
18:12 Odin- :>
18:12 beppu thanks, PerlJam .
18:12 gantrixx well maybe that is the type of marketing buzz needed to put Perl6 on peoples radar,  just say it is a new language and generate some buzz
18:12 Juerd gantrixx: And apparently, succeeding :)
18:12 kattana_ gantrixx: perl evolved from shell scripts/awk/sed </late>
18:12 gantrixx we have Perl, ruby, how about platinum
18:12 Juerd gantrixx: Oh wow, you're so convinced that you'll even deny the truth :)
18:13 PerlJam perl6 needs "the real implementation" in order to be marketable  :)
18:13 Juerd gantrixx: Or, actually: that you think the truth is a lie you can use for marketing.
18:13 Odin- PerlJam: The perl6 one, you mean? ;)
18:13 Juerd Or something like that.
18:13 gantrixx maybe Perl6 needs something like the Fedoara Ambassador program
18:13 sili or maybe to get finished
18:13 Odin- gantrixx: Perl6 isn't ready for primetime in the short run...
18:13 Juerd gantrixx: Please let us not take Fedora as an example for anything.
18:14 gantrixx I was saying that perhaps Perl will need some sort of advocacy program
18:14 Juerd Fedora is the typical example of a bad example, both for "how to do it" and for "how not to do it", because they hover around the mean point in between.
18:14 PerlJam gantrixx: in some sense I think we've lost if that's the case.
18:15 beppu The best advocacy is to do something cool with it.
18:15 gantrixx true
18:15 gantrixx but, you have to get a corporation to buy into it
18:15 Odin- Which means it has to have some real profile.
18:15 sili camels on rails!
18:16 gantrixx and convincing a client to go with an unproven technology that they will have to live with for 10 years is a hard sell
18:16 PerlJam sili: I think it'd would perhaps morph into "camels on skis" or something.
18:16 sili PerlJam: reasonable.
18:16 PerlJam gantrixx: perl5 will be around for the next 10 years at least.
18:16 sili how about bobsleds, or luge
18:16 Odin- Pscht. Camels on wheels!
18:16 gantrixx Also, I don't understand the anti-fedora sentiment
18:17 Odin- Like, Ruby is on rails, like a train. Perl, on the other hand, is like a car. ;)
18:17 gantrixx Perl6 on mag-lev
18:17 PerlJam gantrixx: It's a stigma left over from the days of RedHat.
18:17 beppu rubyonrails kinda rolls of your tongue though...  Whatever we come up with has to sound good, too.  ;)
18:17 gantrixx Personally, I think Fedora is a pretty good disto.  I actually like it better than the RedHat stuff I use at work
18:17 PerlJam Odin-: perl is like a little bag of everything that you can carry around with you.
18:18 beppu for large values of "little".
18:18 PerlJam right
18:18 Odin- PerlJam: Hm. True. The meaning I was going for was free-range.
18:18 Odin- Perl is a portable scrap-heap!
18:18 Odin- ;)
18:18 PerlJam Let's just say it's little in this dimensional projection  but infinite in the transdimension space in which it lives.
18:18 gantrixx cpan-heap
18:18 Odin- You just weld the right things together, and you've a rocket plane!
18:19 beppu PerlJam, I like that...
18:19 gantrixx ok, I have to run to the bank
18:19 gantrixx ciao folks
18:19 Odin- PerlJam: Bag of Holding times plenty! :p
18:21 PerlJam I wonder if perl6 is killing perl if only a little
18:22 sili i say yes
18:22 sili well, maybe just for those who are waiting
18:23 Odin- It's murdering Perl for those waiting. Not sure if the others really think about it much.
18:23 sili in the meantime i still use p5 of course, but it's frustrating when all i can do is donate some here and there
18:24 PerlJam Forget those waiting, what about those as yet unmade perl hackers who trundle off to ruby or python or whatever because of all of the negative hype?
18:24 Odin- PerlJam: The negative hype around P6, or..?
18:25 stevan p5 is showing it age though, which is why we are building p6
18:25 * Odin- would seriously rather consider going to Scheme or CL than either of those...
18:25 Odin- But that's maybe just me.
18:25 PerlJam Odin-: around perl and the perl5->perl6 transition (or lack there of)
18:25 stevan Odin-: I would too :)
18:25 PerlJam Haskell!
18:25 PerlJam :)
18:25 Odin- PerlJam: True.
18:26 * stevan does not have enough uni education for Haskell :P
18:26 sili pfft
18:26 PerlJam stevan: what is that supposed to mean?
18:26 stevan nothing, just being a pain :P
18:26 Odin- PerlJam: I like having my brain in a somewhat understandable state.
18:26 PerlJam Odin-: side effect free programming is for you then!  ;)
18:26 Odin- PerlJam: (Which it isn't at current, for rather different reasons, though.)
18:27 stevan :D
18:27 stevan side_effects := (side_effects := side-effects - 1) - 1
18:27 Odin- PerlJam: Quite. Which utterly fails to explain why my brain hurts when I try to read Haskell-tutorials, documentation, or whatever. :p
18:30 awwaiid joined perl6
18:30 PerlJam Odin-: do you know latin?
18:31 Odin- PerlJam: Nope. I don't even know so much as a single romance language. :|
18:31 PerlJam Well, I was going to draw an analogy but it would be lost upon you.
18:31 sili PerlJam: you're so l33t
18:32 PerlJam If you ever do learn some latin, think of Haskell as Latin  ;)
18:32 stevan a dead language only used by stuffy academics??
18:33 stevan and catholic priests?
18:33 Odin- ROFL!
18:33 * stevan doesnt get it :P
18:33 Odin- That was nasty.
18:33 stevan sorry, I am in a punchy mood today,.. too much coffee
18:34 PerlJam stevan: Since I let the analogy variable along every axis, that's a valid position to take ;-)
18:34 PerlJam s/let/left/
18:34 * stevan is glad PerlJam has a good sense of humor :)
18:35 Juerd 19:25 < PerlJam> sili: I think it'd would perhaps morph into "camels on skis" or something.
18:35 Juerd All that gravity bound transportation sucks.
18:35 Juerd Flying camels.
18:36 Odin- Hmmm.
18:36 kattana_ Haskell made sense to me, It has features I had thought of on my own and thought would be nice.
18:39 PerlJam Juerd: Flying camels evokes something similar to flying pigs.  So perl6 will be here when camels fly?
18:40 sili PerlJam: sounds familiar
18:41 PerlJam or maybe it's more like the muppets ...  Caaaaammmmmmeellllls iiiinnnn  ssssppppaaaaaacccceeee!
18:42 Ovid joined perl6
18:44 kattana_ And Duke nukem forever will be perl6's flagship project.
18:49 Odin- Ooooh.
18:49 Odin- Nah.
18:49 Odin- That'll be released way before Perl6 is ready. >;)
18:50 PerlJam I don't think perl6 will have a flagship project.
18:51 PerlJam I think it will accidently fill some niche that suddenly everybody has an aha! moment
18:52 Odin- Eh, just get a Chomsky level-0 parser, and it will. :D
18:56 rodi joined perl6
19:04 estel joined perl6
19:06 nothingmuch joined perl6
19:10 nothingm1ch joined perl6
19:29 trym must..take over the world... using.. perl6..
19:29 trym or just watch tv..
19:50 Shachaf joined perl6
19:53 lampus_ joined perl6
20:05 eric256 joined perl6
20:05 eric256 left perl6
20:13 * integral points out that none of the dates in STATUS are in 2006
20:15 putter joined perl6
20:17 * putter thinks TASKS should have two new items: 1- do an svn blame STATUS, svn log -rXXXX each of the revs there listed, and tag the STATUS sections with [200N-NN-NN] "last time correctness was verified" labels; and
20:18 putter 2- reoccuring task: check STATUS, see if any of the [timestamps] are getting old, use rt to see who is active in that subsystem (hmm, need an entry to directory map?), and ask them if the status is current, updating entry/timestamp.
20:19 putter Skills required: 1- svn co, 2- none.
20:20 putter maybe "Needs:" is better than "Skills:".
20:20 putter or something better... something...
20:27 putter trym: "WB announced today... the voice of Pinky by @Larry[0], the Brain by Audreyt, and a new character, the Camel, a lovable eccentric sidekick, who can..."
20:29 integral putter: "use rt to see who is active in that subsystem" -- What rt?
20:29 * trym pants like a dog and turns the tv on
20:30 putter Odin-: wouldn't it be neat to have a set of rules defining a unified api for grammars, so analyzers, transformers, backends, etc, could all interoperate?  unified with the type system?
20:30 putter integral: http://rt.openfoundry.org/Foundry/Project/Source/index.html/pugs/browse/
20:31 integral oh, just the online repos browser.  I thought you meant we had a ticketing system for a minute ;-)
20:31 Odin- Hm. What, exactly, do you mean?
20:31 putter "history of this directory" lists the patches which have affected the directory you're currently browsing
20:31 integral oh handy
20:31 putter hmm, that's a line which should probably go in hack.pod
20:32 putter integral: :)
20:33 BakedB_ left perl6
20:34 putter Odin-: role (type?)  MumbleUnifiedGrammar::LALR_1 does LALR_k { methods...}   The idea being if I write
20:35 svnbot6 r8782 | bsmith++ | Added "last updated" times to each section.
20:36 marmic joined perl6
20:36 putter a (k) to (1) reducer, I can operated any anything which does these "abstract" types, and be used unchanged by any p6 grammar-related thingy.  Or, if some engine or other doesnt support left recursive rules, I can have a generic rewrite-to-remove-left-recursive-rules sub which works on any of them.  yes?
20:37 nnunley joined perl6
20:37 BakedB joined perl6
20:38 * putter reeealllly wants to never ever have to do grammar transformations by hand anymore.
20:38 Odin- Hm.
20:39 integral *argh*.   Can someone try a PERL6LIB="ext/Test/lib:blib6/lib" ./pugs ext/CGI/t/basic.t for me?
20:39 lampus joined perl6
20:40 integral I need to know if it dies after "ok 5", or if it continues up to "ok 21".
20:40 integral On my local pugs it runs to completion, but in the smoke reports, and on feather it dies with not being able to find &hex in class Any :-/
20:40 putter checking...
20:41 putter my
20:42 putter oops, r8778, goes boom as you describe
20:42 integral okay, now I need to work out why my pugs is the only one that actually works correctly
20:42 integral do you build from clean or not?
20:42 * integral tries a clean build on feather
20:42 * putter notices earlier that ?eval was doing things correctly with $CALLER::_ that my pugs was not
20:43 putter bsmith++
20:43 integral ?eval hex 5
20:44 integral ?eval "test"
20:44 evalbot_8780 is now known as evalbot_8782
20:44 evalbot_8782 Error: No such method in class Int: "&hex"
20:44 evalbot_8782 "test"
20:44 integral okay, on my pugs ./pugs -e 'say hex 5' also works just fine.
20:44 * integral feels special
20:46 putter Odin-: as in, say, something which wrapped up the usual T,N,P,S and perhaps also the concat operator (and production-running engine?).
20:46 putter lol
20:47 putter your pugs saying hex 5 is just one of the many thing which makes you special integral...
20:49 dduncan joined perl6
20:50 G2 joined perl6
20:52 putter integral: r8700 works for me.  note that hex got changed very recently as part of the adverbial numeric literals :2<10>.  perhaps the change is buggy, or changed it to use a construct which is currently malfunctioning.
20:52 putter s/construct/language construct/   like method calls.
20:54 putter btw, the "your pugs saying..." was supposed to be tagged <1950's syruppy mom voice>
20:54 integral putter: hmm, how did you build that 8700?  from clean?
20:55 * integral notes that all his pugs are from 878[12] checkouts
20:56 integral *blink* there's a message in Pugs.Prim tha says "hex() is not part of Perl 6 - use :16() instead."
20:56 putter integral: yes, from clean
20:56 putter :)
20:57 putter so sayeth docs/AES/S29draft.pod
20:58 integral I guess that my local pugs is the broken one, and the real fix will end up being fixing the damn modules to be in sync with the stupid spec.
20:58 putter But I dont think(?) :16($var) is implemented yet?
20:58 integral *blink* umm, so we've got no way to parse strings as hex numbers.  useful.
20:58 putter a TASK!
21:00 theorbtwo eval ":16($var)"
21:00 theorbtwo eval ":16<$var>", rather.
21:01 integral it's very weird that my pugs works though since I have no idea where my implementation is materialising from :-/  I can't find anything in my source
21:04 Amnesiac joined perl6
21:05 putter what is the official jargon for "the modification entities in the svn/svk change system".  ie patches, mods, mumble?
21:06 putter integral: lol.  oh, didn't you see the note go by in #perl6?  p6 has a new update system.  "Eups", the ephemeral update system.
21:06 integral changesets? revisions?
21:11 putter ok, thanks :)
21:11 svnbot6 r8783 | putter++ | 2 new TASKS - nagging about outdated STATUS entries, and adding an openfoundry related line to hack.pod.
21:12 * integral moves on to patching ext/CGI
21:12 theorbtwo The difference between r8782 and r8783 is one revision.
21:13 putter ah, thank you.
21:14 putter ?eval my $x = "11";  :8($x)
21:14 evalbot_8782 9
21:15 theorbtwo Well done.
21:15 integral oh, yeah, I forgot to say that t/builtins/hex.t appears to pass completely including :16($foo)
21:15 * putter nudges integral.  disclaims any credit to theorbtwo.  "not me, I just found it that way".
21:16 integral yeah, but I managed this without writing any code:  it was already working ;-)
21:16 putter :)
21:16 putter anyone grep the world for for \bhex\b ?
21:17 integral good idea
21:20 svnbot6 r8784 | bsmith++ | Changed CGI.pm from using hex() to :16().
21:21 putter trym: darn it!  I now keep finding my brain humming about proving mousy worth.  arg!
21:22 putter ;)
21:22 svnbot6 r8785 | bsmith++ | Changed all other mentions of hex() in ext (couldn't find any elsewhere) to :16().
21:22 putter oct?
21:22 trym hehe
21:23 integral argh, you could have said! :-P
21:23 integral nope, no uses of it in ext :)
21:23 putter ah, that's it. :)
21:23 samv_south joined perl6
21:24 samv_south is now known as mugwumpjism
21:25 putter Let's see... what next...?
21:25 lisppaste3 joined perl6
21:26 * integral is working down the smoke report :)
21:26 putter integral++
21:26 integral I've just changed some non-working "my methods" in Cipher.pm to subs.  I have no idea why they need to be lexical methods.  They don't use the object at all.
21:28 putter curious...
21:28 svnbot6 r8786 | bsmith++ | Changed the stringify and byteify utility methods to subroutines.
21:28 svnbot6 r8786 | bsmith++ | Now passes all non-TODO/SKIPed tests.
21:29 integral and Config-Tiny is failing because File-Spec's evil exporting hacks don't work.  But why did someone port File::Spec rather than Path::Class?
21:30 integral of course, File-Spec passes most of its tests.  *sigh*
21:31 putter Strawman argument.  Comments encouraged.  "Why does pugs have so many front-ends?  (JS, Ruby, Scheme, Forth, etc).  The objective for the moment is not to make people from those communities comfortable in p6, nor to be able to use the large volume of quality software written in those languages.  It is, simply, to
21:31 integral cut-off at "simply, to"
21:31 * putter paused to read about evil
21:32 putter don't think I've ever tried Path::Class
21:32 integral it's OO, and it's a wee bit nicer about using foreign path conventions
21:32 SamB joined perl6
21:33 putter in what way is the exporting an evil hack?
21:33 putter ah
21:33 integral well it requires File::Spec::{Unix,Win32} and hopes this exports to the caller.
21:35 Shillo joined perl6
21:36 putter "simply to do the implementation, a correct implementation which passes the langauge's test suite.  Why?  You see the objectives for p6 are _very_ aggressive.  There's no way we can get lots of the libraries right, for instance, without man years of domain expert work.  So we have to make p6 _flexible_.  If we can
21:38 putter "verifiably run lots of existing models of how the universe should be structured, that helps us find any places where p6 isn't being quite flexible enough, and reassures us we are not precluding right things from being done in future.".
21:38 putter comments welcome. ;)
21:39 putter integral: ah, right.  is that currently working?
21:39 * putter vaguely recalls import being worked on not too long ago
21:39 integral it appears not
21:40 integral but of course these things will be magically fixed by PIL...
21:40 putter :)
21:41 * putter thinks there will be _lots_ of work for sparkley lights, to make the invocation of pil magic manifest.
21:42 putter looking forward to it
21:42 putter (the work)
21:43 * integral boggles at fp.pm.  multi *infix:<≠> ($a, $b) { $a != $b } "doesn't work" *sigh*
21:44 mugwumpjism
21:44 mugwumpjism doh
21:45 mugwumpjism just come out of dconway's talk at Linux.conf.au
21:45 mugwumpjism he gave a keynote on technical and social lessons of Perl 6
21:45 putter so, does the import usage in F::S match that in t/packages/scope.t, which works with "the new lexical import system"?
21:45 putter doh?
21:45 mugwumpjism (the blank line)
21:45 putter ah :)
21:45 integral putter: I don't see how t/packages/scope.t can test it properly when it's not using multiple files
21:45 putter do describe!
21:46 integral oh it does
21:46 integral oh, that appears to test something different
21:46 mugwumpjism nice talk, but it would really have been nice if he hadn't have compared python programmers to the Rain Man
21:46 mugwumpjism not a good look
21:47 putter the Rain Man?
21:47 mugwumpjism a movie about a highly autistic person
21:47 putter oh, big ouch
21:48 mugwumpjism he also basically said that type theorists should be ignored...
21:48 mugwumpjism now, I am grossly oversimplifying the context there,
21:48 integral oh dear
21:49 mugwumpjism but it was those Haskell/ML devotees that effectively started cross-checking the design
21:49 putter just the kind on nonsense we need re people who are about to become colleagues  (re python)
21:50 * tewk loves to hear dconway talk, if anything he is provocative :)
21:50 putter and he is missing a great deal of the point about what will make p6 wizzy and interesting
21:50 integral more static checking is very good.  For example if one could statically check perl modules for uses of undefined subroutines, like say "hex",  you wouldn't need egrep!
21:50 putter ;)
21:51 nnunley_ joined perl6
21:51 integral you could even have the compiler help distinguish different uses of hex so it can identify the right ones to change!
21:52 tewk Provocative people cause me to stop and re-examine my gross assumptions about the world.
21:52 mugwumpjism preaching to the converted.  I'll talk to him about it at the BOF tonight
21:52 * putter 's motivation is more, if one doesn't have an insanely powerful type system, then one can't do insanely high level abstaction.  if you can't crush away most of the runtime cost by analysis, your limited to doing, well, the usual cs crap.
21:52 * integral notes that for him it's important this this is just as relevant for short scripts as for application programming
21:52 mugwumpjism precisely
21:53 tewk mugwumpjism: are slide or audio available?
21:54 mugwumpjism perhaps from linux.conf.au later on
21:54 putter being provocative ~~ useful.  I'm just worried about folks from the maligned communities seeing the remarks, and making our work more difficult. :/
21:55 mugwumpjism yeah.  The flipside of the Rain Man comparison was it ended up likening Perl to Tom Cruise, and that's my real issue ;()
21:55 mugwumpjism s/\)//
21:55 mugwumpjism ;) even
21:56 putter err, not the people making our work more difficult, but an increasing portion of our work will be attracting / working-with folks from those communities, so pointlessly pissing them off now doesnt help.
21:56 mugwumpjism well, off to a talk on rapid prototyping / self replicating machines
21:56 putter :)
21:56 putter enjoy
21:57 putter hmm, so, perl is short of stature, and enthusiastically follows a shallow corrupt philosophy completely divorsed from reality?  eep.
21:58 * integral just worries that people like dconway seem to have a totally different idea of how people actually use perl
21:58 putter in what way?
21:58 integral and his cpan modules have never made me think he's a great perl5 coder
21:59 integral I mean, a common task for me with perl is to take a big log file, and churn through it updating some summary stats for each line
21:59 integral no one seems to care about making such things fast, easy, or faster to write
21:59 putter ah, order 100 line task, rather than 1000 or 10000.
21:59 nnunley joined perl6
22:00 integral yep.
22:00 integral the only thing I've seen that's like this is in MJD's red flags talk,  he's got real code I can identify with there
22:00 putter macros! :)
22:00 putter online?
22:00 integral I don't think so :-(
22:00 putter :/
22:01 integral lots of people have little perl scripts that say use a module to grab and parse a webpage.   But all the p6 design stuff focuses on writing the modules, not the very simple, very imperative script
22:01 putter as soon as we can import macros, you can start assembling tool sets or domain specific languages for that kind of thing.
22:02 putter ahhh, there was something recent, let's see....
22:02 dduncan I think that the p6 design stuff is going about it the right way
22:02 putter oh, the examples from the ruby vs lisp macro debate.  looking for pointer...
22:02 dduncan most code that is going to be reused extensively is in modules
22:03 marmic_ joined perl6
22:03 dduncan and p6 still provides for doing brief scripts tersely
22:03 integral no it doesn't.   It doesn't detect when I mispell function or method names, so after 5 minutes my script fails, instead of after a short compile.
22:06 putter integral: ??  err, did you think dduncan said p5?  putter is puzzled.
22:07 integral putter: p6 provides for that?
22:07 putter http://planet.lisp.org/ has interesting articles, but not what I'm looking for.  still searching...
22:07 integral why did the tests that used &hex  die half way through their run instead of during compile then?
22:11 dduncan integral, I would say that may be partly because of the way the pre-pil runcore is organized ... things should be better with the pil core, such that certain work can be moved earlier and remembered
22:11 dduncan it could be an implementation issue
22:11 dduncan in the design ...
22:13 pdcawley joined perl6
22:13 dduncan whether it is caught at compile or runtime depends on how much information you provide; things are returned at run time if there isn't enough info to know whether and which &hex is going to exist at run time, since it can be created at run time
22:14 integral well that's my point, the design should be rebalancing things so that it's more likely that you're writing code in a mode where you can do compile-time checking
22:14 integral instead it's assumed that this is some kind of implementation dependent add-on extra
22:17 putter Bah.  I just dont see it.  Basically, someone wrote a blog saying "ruby, the next lisp?" or some such.  One effect was lisp blogs attempting to come up with good illustrations of what you can do with macros on an sexp-program-is-simple-data foundation.  some of the examples were dsl's applicable to your "stats on logs" task.  Ah well.
22:18 * integral &
22:18 integral good night all :)
22:19 putter some of the points will also need to be addressed for p6 ast macros.  will want ast abstractions which permit p6 macros to be as simple as their lisp conterparts, rather than say what one can now do with ruby parse_tree, which looks a lot like writing pil2 by hand.
22:19 putter good night integral &
22:24 putter Re grammars (not Grammars;), one thing to figure out is how computationally expensive runtime predicates can be integrated with the type system.  hmm, though I suppose one could just do  multi is_context_free (AbstractGrammar $G -> Bool) is cached { ...}  and then  multi foo (AbstractGrammar $G and is_context_free($G)){ ... }  (or whatever the syntax is...)
22:25 putter General question: what are we going to call grammars (in the math/cs sense) given the existence of Grammars (in the p6 sense)?  :-/
22:30 putter integral: ping?
22:30 tewk mugwumpjism: are slide or audio available?
22:30 tewk Opps
22:30 * putter wonders how far integral got on his walk of ext/ ...
22:30 putter ;)
22:37 jvoorhis left perl6
22:42 putter is the smokeserver down?
22:43 putter or rather, I'm getting dns resolution failures. :(
22:47 Limbic_Region joined perl6
22:48 dduncan I'm smoking now, r8786, and the're still ext/ failures, all of the same "no such" variety
22:53 svnbot6 r8787 | Darren_Duncan++ |  r2127@darren-duncans-power-mac-g4:  darrenduncan | 2006-01-26 14:51:11 -0800
22:53 svnbot6 r8787 | Darren_Duncan++ |  /ext/[Locale-KeyedText|Rosetta[|-Engine-Native]] : half-decremented the LKT file versions
22:56 putter ok, thanks
22:57 dduncan I'm not getting any smokeserver dns failures when going to smoke.pugscode.org and http://m19s28.vlinux.de/cgi-bin/pugs-smokeserv.pl in my web browser ...
22:58 dduncan my current smoke isn't done yet, so I can't validate whether upload works
22:59 putter nor I now.  ?  a transient i guess
22:59 dduncan I guess
23:11 drbean joined perl6
23:22 * stevan wonders what dconway could be talking about re: recent development of Perl 6 since he seems never to be around here or the mailing lists anymore
23:23 mugwumpjism Well, I'm giving a lightning talk at the Perl BOF tonight
23:23 mugwumpjism It's entitled "How Type Theorists Saved Perl 6"
23:23 stevan mugwumpjism: about perl6?
23:23 stevan nice :)
23:23 mugwumpjism :->
23:24 * stevan boggles at how for 5+ years Perl 6 was so much hand-waving
23:24 stevan and then how much it has progressed towards a reality since pugs started
23:25 mugwumpjism Perhaps with a sub-title "...and the biggest mistake in the design of Perl 6"
23:25 stevan which is?
23:26 stevan Parrot? :P
23:26 mugwumpjism specifying the virtual machine will change
23:26 SamB huh?
23:26 dduncan mugwumpjism, what event is that bof part of?
23:26 mugwumpjism linux.conf.au
23:27 SamB what is this "specifying the virtual machine will change"?
23:27 stevan mugwumpjism: please ask dconway to post his slides, audio/video is possible
23:27 stevan I would like to hear/see it
23:27 mugwumpjism the conference organisers have something funky planned
23:28 mugwumpjism annotated (via irc logs), searchable streams
23:28 stevan nice
23:28 mugwumpjism don't know what the lead time is
23:32 Juerd PerlJam: Yes, but with cause and effect the other way around: camels will fly because perl6 is there.
23:32 * stevan thought hell was going to freeze over instead
23:33 stevan hmmm maybe both with happen
23:36 cPbrian joined perl6
23:48 * leo_ was grepping for S12, if there are native typed attributes - now '  has int $.answer is rw;
23:51 stevan leo_: I assume that is legal, but i dont think S12 mentions it
23:51 leo_ above is from S12
23:51 stevan oh
23:52 * stevan rereads leo's comment :)
23:52 stevan ick
23:52 Cryptic_K joined perl6
23:52 stevan well i suppose it really shouldnt make any difference
23:52 stevan does that cause issues for you?
23:53 leo_ there is: implementation and performance
23:53 stevan how so?
23:54 leo_ the in attribute is just one indirection, like in a C struct, the boxed needs one more indirection + overhead
23:54 leo_ s/in /int /
23:56 stevan yes, this is the ideal
23:56 leo_ e.g. 'has $answer;' could be a tied something and whatnot, 'has int $answer' is just a native int, nothing else
23:56 leo_ I like that
23:56 stevan I suppose alot of this depends on how p6 is compiled down to Parrot
23:57 * stevan is really not familiar enough with the Parrot objects to make any intelligent comments
23:57 stevan and dinner is ready :)
23:57 * stevan &

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

Perl 6 | Reference Documentation | Rakudo