Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-05-18

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 TimToady_ probably is considering each statement a separate scope
00:01 TimToady changed the nick to TimToady_
00:02 Tene *nod*
00:03 japhb OK, I think I've got the smoking gun for my problem:
00:03 japhb pugs> class Foo { has %.bar; method add_baz { %.bar<baz> = 'quux' } }  my $foo = Foo.new; $foo.add_baz; say $foo.bar<baz>;
00:03 japhb quux
00:03 japhb pugs> class Foo { has %.bar; method init { .add_baz; } method add_baz { %.bar<baz> = 'quux' } }  my $foo = Foo.new; $foo.init; say $foo.bar<baz>;
00:03 japhb (That's a blank line there at the end)
00:04 TimToady why would method init have $_ set to self?
00:04 japhb Ah!  So my code depended on now-dead syntax?
00:05 TimToady not dead, just means something other than $.add_baz
00:05 japhb Ah, so if I change all .method to $.method, it should work again?
00:05 TimToady in theory
00:06 japhb pugs> class Foo { has %.bar; method init { $.add_baz; } method add_baz { %.bar<baz> = 'quux' } }  my $foo = Foo.new; $foo.init; say $foo.bar<baz>;
00:06 japhb quux
00:06 japhb EXCELLENT
00:06 TimToady or declare all your invocants to be named $_
00:06 japhb with 'method init($_:) { ... }' ?
00:06 TimToady yes, but I'm not recommending it...
00:07 japhb Oh, of course not, just making sure I'm halfway up on current syntax.
00:07 TimToady it's an invariant that <ws>.foo means $_.foo
00:07 TimToady and methods no longer set $_ to invocant
00:08 TimToady so you have to use either self.foo or $.foo
00:09 * japhb will probably use the latter -- I really hate P5's constant $self->foo, because it fills the left column of text with repeated meaninglessness, forcing the important part into the middle of a visually dense mess
00:10 dduncan I'm not sure if this was previously declared universal or just certain platforms, but I also get "user error" concerning the prelude
00:11 japhb dduncan: seems universal
00:11 japhb At least, win2k and debian
00:11 dduncan I've got Mac OS X PPC 10.4.9
00:12 japhb And there we go.
00:12 TimToady I didn't get it on my windows 2000 pro
00:12 dduncan where I got it was mid-way through "make" around the precompiling prelude ... but make didn't die and carried on until completion
00:13 dduncan running ./pugs says "loading prelude ... done"
00:13 japhb OK, gotta run for a bit.  Will do the s/.foo/$.foo/g later and restest ....
00:13 dduncan so maybe the message I saw didn't actually affect anything important
00:13 japhb & # Mmm, dinner ...
00:14 Aankhen`` Is $.foo interchangeable with @.foo and %.foo for non-accessor methods, or is there something special about $.foo?
00:14 dduncan anyway, now starting "make smoke" ...
00:15 dduncan and that did die ...
00:16 Aankhen`` Awww.
00:16 dduncan no viable module found: syntax error at (eval 5) line 1, next token ???
00:16 dduncan BEGIN failed--compilation aborted at ./util/yaml_harness.pl line 6.
00:16 dduncan Could not run yaml harness:  at util/run-smoke.pl line 92.
00:16 theorbtwo joined #perl6
00:17 TimToady my smoke was a little slower, but not 2x slower
00:17 jrockway joined #perl6
00:17 dduncan could my last problem be caused by an older prerequisite Perl 5 module?
00:17 TimToady (linux smoke, that is)
00:18 TimToady yes, there were yaml changes not so long ago
00:18 dduncan so I'll try the latest YAML::Syck and try again ...
00:19 stevan_ joined #perl6
00:19 edenc joined #perl6
00:22 dduncan ... or I think it was actually just YAML that I had before ... unless Pugs can use either, or just Syck now
00:22 dduncan looking ...
00:25 dduncan yaml harness seems to accept either YAML::Syck 0.85+, or any YAML version, but I have a YAML installed ...
00:25 DarkWolf84 joined #perl6
00:25 dduncan version 0.39
00:27 TimToady I know I had to upgrade my YAML::Syck to 0.85
00:29 dduncan well, I'm going to use that now
00:33 dduncan installing YS 0.85 did the trick ... smoke is now running numbers ...
00:35 TimToady afk &
00:43 poletti changed the nick to polettix
00:46 polettix changed the nick to poletti
00:49 nipotan changed the nick to nipotaway
00:52 edenc joined #perl6
00:52 edenc joined #perl6
01:03 crashmatrix changed the nick to hatsuseno
01:04 Aankhen`` @tell agentzh I was just looking at smartlinks.pl again, and I was wondering why you explicitly set .smartlink_snippet { display: block; }, since it's a `div`, i.e. it's already a block-level element with a corresponding style.  Was it showing up as an inline element for you?
01:04 lambdabot Consider it noted.
01:04 hatsuseno changed the nick to crashmatrix
01:05 SubStack joined #perl6
01:13 * QtPlatypus wonders how difficult it would be to do stream fusion in perl6.  Or even if it is possable.
01:21 kcwu joined #perl6
01:28 jrockway stream fusion?
01:30 wolverian trn's keys are supposed to do the right thing in each context--so why does 'q' quit the pager _and_ the thread selector in one go? I just wanted to quit the pager!
01:31 wolverian sorry, ww :)
01:31 dduncan I have a question:  Supposedly The Perl Foundation holds the copyright on Perl 6, but what does that mean in practice?
01:31 dduncan AFAIK, no part of Pugs is copyrighted to them
01:32 SamB it means they own the ends of the world
01:32 wolverian they own the perl onion trademark. dunno about copyright.
01:33 wolverian whoh, perl is licensed under gpl _v1_ ?
01:33 jrockway perl is old
01:33 dduncan TPF's web site says they "hold the copyright on Perl 6 and Parrot"
01:33 wolverian jrockway, yeah. :)
01:33 jrockway there's no such thing as perl 6 though
01:33 jrockway it's a spec
01:33 wolverian about time for artistic 2
01:33 jrockway i guess they own the spec
01:33 jrockway anything that passes the spec can be called perl6 though
01:33 dduncan my own guess is what they mean is that they own copyright on the Perl 6 spec plus the Parrot implementation
01:34 dduncan the question is whether that is actually true or not
01:34 jrockway right now the parrot+perl6 is in the parrot tree, right
01:34 jrockway i assume they think they own everything in parrot svn
01:34 jrockway i think the thing we signed said something like that
01:34 jrockway (i was drunk when i signed it :D)
01:35 dduncan afaik, they sponsored people to write the Perl 6 specs, and parts of parrot, so that would be a reasonable claim ... but afaik they never sponsored any Pugs development, which was done "for fun"
01:37 jrockway who knows what TPF is up to :)
01:37 tenen changed the nick to Tene
01:37 jrockway i think we should start YATPF :)
01:38 jrockway i'm not too keen on someone owning trademarks on free software
01:38 jrockway but then... that's not my decision to make
01:39 thoughtpolice joined #perl6
01:41 ggoebel joined #perl6
02:02 obra Nobody claims ownership of pugs.
02:02 obra TPF does not claim ownership of pugs.
02:02 obra jrockway. great way to find out what TPF is up to is to volunteer.
02:03 obra one point of an organization like tpf owning the trademarks is to make sure that you don't see someone ELSE owning the trademark and starting to sue.
02:04 jrockway obra: any suggestions on what i can do to volunteer
02:05 tenen ?eval "foo foo" ~~ /(ident) <ws> $1/
02:05 evalbot_r16421 *** Cannot parse regex: (ident) <ws> $1␤*** Error: ␤Match.new(␤  ok => Bool::False, ␤  from => 0, ␤  to => 0, ␤  str => "", ␤  sub_pos => (), ␤  sub_named => {}␤)
02:05 tenen ?eval "foo foo" ~~ /(<ident>) <ws> $1/
02:05 evalbot_r16421 *** Cannot parse regex: (<ident>) <ws> $1␤*** Error: ␤Match.new(␤  ok => Bool::False, ␤  from => 0, ␤  to => 0, ␤  str => "", ␤  sub_pos => (), ␤  sub_named => {}␤)
02:06 obra jrockway: helping to write up perl success stories for press releases is one thing that I keep hearing about.
02:06 jrockway i don't have a lot of perl success stories; most of my work is just OSS stuff
02:07 jrockway i think i've written 20 lines of code at work in the last 2 months or so :)
02:07 obra ...not suggesting TPF is not useful and should be replaced is probably another ;)
02:07 obra jrockway: other peoples' perl success stories. see the recent discussion on l.pm
02:09 jrockway TPF is just a little too slow-moving for my tastes... the grant program is fine though
02:10 jrockway little things like planet perl being python powered with we have plagger... etc.
02:10 jrockway i don't really care though
02:10 obra ok. what bits about TPF are too slow moving for you?
02:10 jrockway well, we missed the SoC deadline for this year IIRC?
02:11 jrockway and there's been plans for a perl.org calendar forever
02:11 obra that has NOTHING to do with TPF being too slow moving.
02:11 jrockway events calendar
02:11 jrockway ok
02:11 obra and tpf DID submit
02:11 obra Google chose not to accept tpf's application
02:12 obra great. perhaps you could help with making the event calendar happen?
02:12 jrockway sure
02:12 obra I've never heard anything about it.
02:12 jrockway i don't know what was holding it up before
02:12 jrockway i will find out
02:12 obra excellent
02:12 jrockway software, perhaps
02:13 obra well, brian foy is keeping a public google calendar of perlish events.
02:13 obra oh. no
02:13 obra it's cog
02:13 obra http://icalx.com/public/cog/perl.community.ics
02:14 jrockway i think we need a sidebar on perl.org (like php.net)
02:15 obra Great. jump on it.
02:15 jrockway k
02:17 justatheory joined #perl6
02:18 Aankhen`` joined #perl6
02:19 Aankhen`` Pugs build failed. :-(
02:19 Aankhen`` Going to pastebin, waiting for Firefox to open.
02:24 pasteling "Aankhen" at 24.80.73.85 pasted "Pugs build failure on Debian" (747 lines, 50K) at http://sial.org/pbot/24955
02:24 Aankhen`` I've pasted the entire log in case there's anything of help.
02:25 Aankhen`` The relevant portion, of course, is at the end.  It fails on Pugs.Help, saying "error: Parrot_hsc.h: No such file or directory".
02:27 dduncan my smoke has just done
02:27 svnbot6 r16422 | tene++ | Fixes for Net:IRC::OO
02:28 dduncan so the wall clock time for my smoke was just under 2 hours
02:30 dduncan and its result is http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r16421-darwin-normal--1179455126-6698--18919-17929-990-2024-715-37--d0f1600000ba97caa46fe4bc0485233f.html
02:30 lambdabot Title: TAP Matrix - Fri May 18 02:25:05 2007 GMT, http://tinyurl.com/26t8ye
03:15 mako132_ joined #perl6
03:21 bonesss joined #perl6
03:21 SCalimlim joined #perl6
03:44 mobutu joined #perl6
04:10 lisppaste3 joined #perl6
04:27 REPLeffect joined #perl6
04:30 SubStack joined #perl6
04:36 Tene joined #perl6
04:40 SubStack joined #perl6
04:43 SubStack joined #perl6
04:46 araujo joined #perl6
05:02 mobutu left #perl6
05:09 BooK_ joined #perl6
05:16 spinclad (pad-rewrite branch merge)++
05:16 spinclad (audreyt being back)++
05:16 spinclad audreyt+
05:16 spinclad +
05:16 spinclad (spoil my own punchline)--
05:17 spinclad audreyt++
05:20 spinclad btw, re coolie: my dictionary (Random House college edition, 1968) gives: "[ < Urdu _kūlī_ < Tamil _kūli_ hire, hireling ]"
05:21 jisom joined #perl6
05:23 spinclad but (a) i can't vouch for its any greater accuracy, and (b) this doesn't rule out the Tamil term deriving from Chinese (unless it fits into the native Tamil web of words).
05:25 charsbar_ joined #perl6
05:27 sri__ joined #perl6
05:42 jisom_ joined #perl6
05:45 mjk joined #perl6
05:45 SubStack joined #perl6
06:19 amnesiac joined #perl6
06:26 Averell joined #perl6
06:26 dduncan TimToady, I just noticed a typo in S02: see the description of the Bag immutable type
06:27 * Tene read that as "Blag"; too much xkcd
06:27 dduncan it says does KeyHash but should say does KeyBag
06:35 weinigLap changed the nick to weinigLap_
06:39 kanru joined #perl6
06:43 iblechbot joined #perl6
07:02 franck__ joined #perl6
07:03 bsb left #perl6
07:05 devogon joined #perl6
07:11 svnbot6 r16423 | Darren_Duncan++ | ext/QDRDBMS/ : updated Language.pod to add quasi-nonscalar data types, for when plain nonscalar data types just won't do
07:20 buetow joined #perl6
07:24 SubStack_ joined #perl6
07:28 SubStack_ joined #perl6
07:29 SubStack changed the nick to SubStack_
07:41 weinigLap joined #perl6
07:49 japhb OK, got another error trying to get some of my 3D code running under the latest pugs:
07:50 japhb $ ./pugs -e 'use perl5:SDL::OpenGL; my %symbols = eval q{%SDL::OpenGL::}, :lang<perl5>; say %symbols.elems;'
07:50 japhb 2022
07:50 japhb $ ./pugs -e 'use perl5:SDL::OpenGL; sub foo { my %symbols = eval q{%SDL::OpenGL::}, :lang<perl5>; say %symbols.elems; } foo()'
07:50 japhb *** Odd number of elements found where hash expected: VStr "*SDL::OpenGL::"
07:50 japhb    at -e line 1, column 34-84
07:50 SCalimlim joined #perl6
07:53 Aankhen`` Small update: this time it looks like pugs compiled just fine.  Going through the smoke now, on t/operators/negated_smartmatch.t
08:09 Aankhen`` Ah man.
08:10 Aankhen`` I named my file smoker.yml instead of .smoker.yml, so the `smokeserv-client.pl` didn't pick it up.
08:10 Aankhen`` Hmm, 37.28 min, up from 24 last time.
08:13 drupek12 joined #perl6
08:14 japhb @tell audreyt Please take a look at http://moritz.faui2k3.org/irclog/out.pl?channel=perl6;date=2007-05-18#id_l199 -- that smells like a bug in how the new pads and the Perl 5 bridge interact.  This was confirmed to work correctly in the rev immediately before your big merge.
08:14 lambdabot Consider it noted.
08:16 japhb @tell audreyt (Or rather, the larger program using this construct was confirmed to work, rather than this test eval per se.)
08:16 lambdabot Consider it noted.
08:18 dduncan left #perl6
08:18 japhb blessed_sleep & # Good night all, and pleasant dreams ....
08:18 moritz japhb: good night ;)
08:27 rindolf joined #perl6
08:32 laye joined #perl6
08:39 ozo joined #perl6
08:46 prism joined #perl6
09:02 the_dormant joined #perl6
09:06 ozo joined #perl6
09:26 the_dormant_ joined #perl6
09:28 mr_ank joined #perl6
09:39 iblechbot joined #perl6
09:41 mr_ank hey one question... i'm slowly studying parsers. Is there a proof somewhere that perl 6's grammar is syntax-dependent and cannot be reduced to syntax-free? what about perl 5?
09:42 mr_ank (i'm reading perl 5's perly.y/toke.c combination as well)
09:47 stef__ joined #perl6
09:48 kane_ joined #perl6
10:01 buetow joined #perl6
10:07 mr_ank oops. s/syntax-dependent/context-dependent/ and s/syntax-free/context-free/
10:10 moritz we silently passed revision 2^14, and nobody noticed it ;)
10:10 moritz mr_ank: I'm not a perl guru, but "proof" and "perl" don't sound as if the fit together very well ;)
10:11 ayrnieu joined #perl6
10:17 deq` joined #perl6
10:19 the_dormant joined #perl6
10:32 lampus_ joined #perl6
10:35 mr_ank moritz: hehehe. there's proof (in the "perl is very complex, dude!" sense) in places like http://www.perlmonks.org/?node_id=471598 and http://www.perlmonks.org/?node_id=44722
10:35 lambdabot Title: Perl not BNF-able??
10:36 mr_ank I had seen merlyn's post before but didn't know the grammar types until a few minutes ago.
10:41 mr_ank Anyway, toke.c/perly.y are proof
10:41 mr_ank gtg
10:48 rindolf joined #perl6
10:49 wolverian perly.y is relatively sane... and then you open toke.c and run out screaming
10:50 * moritz hopes for a perl6 binary that exports syntax trees cleanly to enable syntax hilighting
11:01 franck__ joined #perl6
11:01 chris2 joined #perl6
11:17 elmex joined #perl6
11:34 fglock joined #perl6
11:40 ggoebel joined #perl6
11:42 sapir joined #perl6
12:05 fglock moritz: re cleanly: do you have an example of what it would look like?
12:06 ggoebel joined #perl6
12:08 fatman joined #perl6
12:08 fatman hello, i am fat-man and i weigh 400 pounds.  you can see video of my supreme fatness at www.fat-man.org
12:08 fatman left #perl6
12:11 wolverian uh, okay.
12:13 lumi joined #perl6
12:17 nipotaway changed the nick to nipotan
12:20 tlb joined #perl6
12:21 Limbic_Region joined #perl6
12:23 buetow joined #perl6
12:26 buetow joined #perl6
12:32 Limbic_Region salutations all
12:33 DarkWolf84 joined #perl6
12:55 buetow joined #perl6
12:55 kanru joined #perl6
13:00 moritz @tell fglock for syntax hilighting it would be great if a list of tokens [$text, $type] or so would be available - but I guess it's not too hard to construct that from STD.pm
13:00 lambdabot Consider it noted.
13:00 rissy joined #perl6
13:03 ruoso joined #perl6
13:07 zperl joined #perl6
13:10 the_dormant joined #perl6
13:14 agentzh joined #perl6
13:16 stef_ joined #perl6
13:17 agentzh moose
13:17 lambdabot agentzh: You have 3 new messages. '/msg lambdabot @messages' to read them.
13:17 agentzh @messages
13:17 lambdabot Aankhen`` said 3d 6h 48m 40s ago: I'm not seeing the load handler run more than once on Firefox; a profiling session shows that it runs once, calling addEvent 83 times (or more, or less, depending
13:17 lambdabot on the number of smartlink snippets). Which browser did you see this behaviour under?
13:17 lambdabot perlDreamer said 2d 9h 25s ago: I think that the closure work is done in t/TASKS, but I'd like to double check with you since you added it. What specific things were you thinking of?
13:17 lambdabot Aankhen`` said 12h 13m 2s ago: I was just looking at smartlinks.pl again, and I was wondering why you explicitly set .smartlink_snippet { display: block; }, since it's a `div`, i.e. it's already a
13:17 lambdabot block-level element with a corresponding style. Was it showing up as an inline element for you?
13:22 moritz what would we do without lambdabot?
13:23 PerlJam moritz: we would notice something is missing and create it.
13:23 agentzh @tell Aankhen`` i was using the Win32 version of Firefox 1.x and added an "alert('blah');" line to the handler body. The alert function got called many times.
13:23 lambdabot Consider it noted.
13:23 moritz PerlJam: you're right ;)
13:25 ilbot-test joined #perl6
13:26 stef_ joined #perl6
13:27 moritz how do change the case (upper/lower) of a word in vim?
13:27 [particle] ~ iirc
13:27 [particle] oh, mayb ethat's a letter
13:27 moritz yes, one letter
13:28 blaze-x ~w?
13:28 fglock joined #perl6
13:28 moritz ho, that changes one letter, and then moves one word
13:28 blaze-x indeed, looking for the right answer, brb :)
13:28 moritz guW
13:29 moritz no, gUw to change to uppper case
13:29 blaze-x darn ;p was into g~w :)
13:29 moritz and guw to lower case
13:29 moritz a, thanks
13:30 stevan_ joined #perl6
13:30 blaze-x but you'd need to be at the word start,
13:33 [particle] b~ might do it
13:34 buetow joined #perl6
13:34 [particle] bgUw
13:34 agentzh @tell perlDreamer well, that entry was created in the last summer when i created the t/closure_traits directory and several .t files in it. I'm glad to see many new tests have been added there. feel free to remove the task if you think it's already done :) i'm lacking the tuits right now.
13:34 lambdabot Consider it noted.
13:36 agentzh @tell Aankhen`` i'm not an HTML person (unfortunately). "display: block" is mostly a placeholder since i previously wrote "display: none" there to debug the line-anchor stuff. :)
13:36 lambdabot Consider it noted.
13:36 svnbot6 r16424 | moritz++ | [irclog] preparations to add a primary key to the database
13:36 svnbot6 r16424 | moritz++ | (why didn't I do that in the first place? silly me).
13:36 svnbot6 r16424 | moritz++ | whitespace fixes.
13:37 topic for #perl6 is: Think twice before running "make install" for Pugs | http://moritz.faui2k3.org/irclog/ | http://pugscode.org | http://sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse (show (scanl (*) 1 [1..] !! 4)) | "Perl 6 Today" video from YAPC::Asia: http://xrl.us/v6op
13:39 avar @telll audreyt Please give me comaint (AVAR) on re::engine::PCRE so I can update it to work with blead (and PCRE 7.*)
13:39 lambdabot Consider it noted.
13:41 buetow joined #perl6
13:48 svnbot6 r16425 | rhr++ | [examples/unitsdat-grammar.pl] Add support for num^num, minor cleanups
13:49 rhr week-long vacation &
13:51 moritz can somebody tell me if t/operators/precedence.t is the right plae to test the precedence of self defined operators withe the is {looser,equiv,tighter} traits?
13:52 sapir joined #perl6
14:02 Limbic_Region moritz - it might be better to do create a precedence sub-directory t/operators/precedence/foo.t, user.t, etc.t
14:03 Limbic_Region but then again, I had put in 40 hours of work by Wednesday this week and can't be trusted to be thinking coherently
14:09 rlb3_work joined #perl6
14:12 agentzh Limbic_Region: that sounds like a great idea.
14:13 agentzh i did the same thing for closure traits and it worked out quite well :)
14:13 agentzh bed &
14:13 agentzh left #perl6
14:21 lampus_ changed their nick to lampus
14:25 stef_ joined #perl6
14:25 moritz for the moment I continue in precedence.t, and when I'm more motivated or the file grows too large, I'll split it
14:26 avar it would probably be better if only builtins were there, but sure, do that:)
14:26 avar ideally the test suite would be in pseudo implementation-dependency-order
14:26 avar but it's really messy:)
14:26 moritz avar: where would non-builtin operators be tested for precedence?
14:27 avar t/operators/precedence/watchimacallit.t
14:27 avar just pick some name and fly with it:)
14:28 moritz ok
14:30 bernhard joined #perl6
14:31 rhandom joined #perl6
14:32 * moritz wonders why he keeps wrting "pubs" instead of "pugs" ;)
14:34 Limbic_Region . o O ( cause it's Friday? )
14:39 the_dormant_ joined #perl6
14:42 svnbot6 r16426 | moritz++ | splitted t/operators/precedence.t in precedence/{builtins,self-defined}.t
14:42 svnbot6 r16426 | moritz++ | added a more specific tests for prefix/infix/postfix operators.
14:45 avar wohoo:)
14:46 svnbot6 r16427 | moritz++ | [irclog] now output is ordered by id, so the correct ordering no longer
14:46 svnbot6 r16427 | moritz++ | depends on the goodwill of the mysql engine
14:49 REPLeffect joined #perl6
14:52 the_dormant joined #perl6
15:02 franck__ joined #perl6
15:05 rodi joined #perl6
15:14 iblechbot joined #perl6
15:16 TimToady my kitchen linux smoke went from 145 to 172 minutes, 18% slower
15:17 amerinese joined #perl6
15:17 amerinese left #perl6
15:18 Limbic_Region Wasn't the pad refactor supposed to make things faster?
15:22 TimToady mostly supposed to make things more correct
15:23 TimToady plus audrey had to disable an optimization for lack of support in 6.6; don't know how much effect that had
15:26 TimToady people with faster machines seem to be getting bigger slowdowns, but not many datapoints on that yet.
15:27 TimToady I left a smoke running at work on my windows box there, but it never showed up on smokeserver, so I'll have to see whether it didn't complete or just didn't send.
15:31 Limbic_Region I had a build failure and didn't run the smoke
15:31 Limbic_Region I might try again tonight
15:31 * Limbic_Region wanders off to find food
15:39 pbuetow joined #perl6
15:51 bonesss joined #perl6
16:00 weinigLap joined #perl6
16:02 toshinori joined #perl6
16:05 justatheory joined #perl6
16:08 deq` joined #perl6
16:10 fglock joined #perl6
16:10 silug joined #perl6
16:16 Jmax are there any platforms that are desired to be smoked on?
16:16 Jmax i have a rather large array of virtual machine images
16:18 Jmax Solaris, OpenBSD, FreeBSD, a few Linuces, SCO, XP, Vista, Windows 2000 come to mind
16:18 moritz openbsd has very little smokes
16:18 Jmax ok
16:18 moritz there is an overview of all available smokes on http://m19s28.vlinux.de/cgi-bin/pugs-smokeserv.pl
16:18 lambdabot Title: Pugs Smoke Reports
16:19 Jmax i wonder if there's a haskell compiler that works on sco
16:19 REPLeffect joined #perl6
16:20 [particle] jmax: any tuits to smoke parrot, too?
16:20 Jmax sure :)
16:21 [particle] yay!
16:21 Jmax does parrot come with a nice-and-easy "make smoke"?
16:21 moritz I seem to recall that there wereparrot regressions on freebsd
16:21 moritz Jmax: of course ;)
16:22 [particle] yes, we've got "make smoke"
16:22 [particle] it submits to http://smoke.parrotcode.org/smoke
16:22 lambdabot Title: Parrot Smoke Reports
16:22 japhb [particle]++ # representing parrot here
16:22 [particle] you can see which platforms aren't represented there
16:32 svnbot6 r16428 | fglock++ | [v6-MiniPerl6-JVM] - MiniPerl6 for the Java Virtual Machine
16:32 svnbot6 r16428 | fglock++ | - "hello.pl" works
16:34 [particle] fglock++
16:34 fglock that's phase III of the World Domination Plan(tm)
16:34 lambdabot fglock: You have 1 new message. '/msg lambdabot @messages' to read it.
16:36 [particle] now, to get java to compile to mp6 :)
16:37 fglock hmm - not quite there yet
16:40 haelix joined #perl6
17:09 Psyche^ joined #perl6
17:10 TimToady my windows box at work was 32% slower
17:14 TimToady but for some reason did not deign to turn smoke.yml into smoke.html.  said it couldn't spawn the perl.exe but couldn't give a good reason why not...
17:14 svnbot6 r16429 | fglock++ | [mp6-jvm] t/01-sanity.t passes
17:14 TimToady will try again to see if it was just a cosmic ray
17:15 moritz fglock++ # multiple backends
17:15 moritz fglock: do you compile to java code or to jvm byte code?
17:16 fglock moritz: I'm using Groovy - http://groovy.codehaus.org
17:16 lambdabot Title: Groovy - Home
17:16 fglock as an intermediate language
17:17 fglock laziness
17:17 moritz cool ;)
17:18 TimToady how...OOish
17:18 moritz veraible interpolation without sigils ;)
17:18 TimToady we can do that too. :)
17:19 TimToady you just have to declare your variable as an rw sub...
17:19 TimToady then say "answer = {mysub}"
17:20 moritz is there anything we can't do with perl 6?
17:20 Juerd Perl 5 formats :)
17:21 [particle] parse perl 5 :)
17:21 TimToady hmm, still a little weak on logic programming, I expect
17:21 moritz TimToady: that can be left to modules ;)
17:21 TimToady translating toke.c to P6 might be "fun"
17:22 TimToady Oz claims to support eight paradigms
17:22 Psyche^_ joined #perl6
17:22 obra TimToady: indeed. I _almost_ convinced muttley that translating toke.c to a subset of perl5 would be worthwhile.
17:23 [particle] fglock will have an mp5 before you know it :)
17:23 fglock hmm
17:24 TimToady I haven't even figured out how to use mp3's yet...
17:24 moritz ;)
17:25 TimToady I wonder where Perl 6 should fit in terms of the paradigms on http://en.wikipedia.org/wiki/Multi-paradigm_programming_language
17:25 TimToady has Perl 5 down for 3 paradigms
17:25 TimToady Oz: concurrent, constraint, dataflow, distributed, functional (evaluation: eager, lazy), imperative, logic, object-oriented (class-based)
17:26 PerlJam TimToady: Perl 6 needs a new one--inifite paradigms  ;)
17:26 Psyche^_ changed their nick to Patterner
17:26 fglock "it lets you implement your own paradigm"
17:27 TimToady I think they call that "dialectic"
17:27 * PerlJam wonders why his fingers don't work well sometimes.
17:27 TimToady but maybe they're thinking in terms of dsl subsets mostly
17:27 rindolf Hi PerlJam, TimToady, fglock [particle], obra
17:27 moritz hi rindolf ;)
17:27 rindolf Hi moritz ! What's up?
17:27 PerlJam Hello rindolf.
17:28 rindolf PerlJam: hi.
17:28 rindolf PerlJam: what's up?
17:28 moritz rindolf: not mutch... my programs are still are not working ;)
17:28 PerlJam rindolf: apparently my fingers can't spell "infinite" without some prodding.
17:28 rindolf moritz: which programs?
17:29 moritz rindolf: I'm writing a program that recognizes eyes in images of human faces... 65% recognition rate only or so
17:35 rindolf moritz: oh nice.
17:35 moritz rindolf: I'm not yet satisfied
17:35 justatheory joined #perl6
17:36 rindolf moritz: what are you writing it in?
17:36 moritz rindolf: C
17:36 moritz and in parallel I'm writing a pixel bases weak classifier to detect skin
17:37 diakopter TimToady: which paradigms (of the ones mentioned on that wikipedia page, and any that aren't) would Perl-6-As-Currently-Spec'd support OOTB?
17:37 moritz and I hope someday I can combine it
17:39 svnbot6 r16430 | fglock++ | [mp6-jvm] passes t/02-int.t
17:43 TimToady diakopter: it really kinda depends on which of those "paradigms" you consider to be subsets of the others
17:43 TimToady arguably if you have lazy functional, you already have the basis for dataflow
17:44 TimToady concurrent and distributed are much the same
17:44 TimToady is class-based OO different from prototype-based OO?
17:45 TimToady are our roles sufficiently parametric to count as generic programming?
17:45 * offby1 looks deep within himself
17:45 offby1 my roles may be insufficiently parametric, but I blame my agent
17:48 TimToady and the set of paradigms there doesn't really use all the paradigms listed under http://en.wikipedia.org/wiki/Programming_paradigm
17:48 lambdabot Title: Programming paradigm - Wikipedia, the free encyclopedia
17:49 TimToady is AOP a paradigm?  DBC?  grammar-based programming?
17:49 TimToady we kinda do all of those
17:50 TimToady and we certainly do structural programming.  :)
17:50 TimToady not to mention imperative and procedural
17:50 TimToady at some point the word paradigm starts going wonky on us
17:54 prism joined #perl6
17:59 Khisanth joined #perl6
18:03 dmq joined #perl6
18:04 SubStack joined #perl6
18:06 svnbot6 r16431 | fglock++ | [mp6-jvm] pass t/05-bind.t
18:09 obra TimToady: It might be interesting to see a talk on how "These fundamental properties of dynamic languages let you use _all_ n of these programming paradigms nicely.
18:10 obra "...And here are the paradigms that you could use, but require conceptual bludgeoning."
18:10 obra "...and here are a few new programming paradigms I made up during the coffee break. If you use them,
18:10 * [particle] picks up a concept menacingly and looks around...
18:11 obra Damian will hunt you down and make you watch a lecture about object intercal"
18:11 TimToady sure, but then I'd have to do enough research to actually know what I'm talking about, or at least fake it better than I do...
18:27 diakopter I bet someone has published a dependency graph somewhere of those properties/categories.
18:34 obvio171_ joined #perl6
18:36 obra TimToady: quite possibly. But people might just believe you ;)
18:38 buetow joined #perl6
18:44 jrockway .PLEASE CREATE AN OBJECT WITH AN ACCESSOR NAMED FOO WHICH ACCESES A READ-ONLY MEMBER CALLED FOO
18:44 jrockway :)
18:45 [particle] what's that, oo-cobol? :)
18:45 svnbot6 r16432 | audreyt++ | * util/gen_prelude.pl: More sensible msg at the end of prelude generation.
18:47 jisom joined #perl6
18:47 avar audreyt: !
18:47 * avar bothers
18:49 avar does p6 have something like bless {} => sub {}; ?
18:49 svnbot6 r16433 | audreyt++ | * Pugs.Run: Eliminate the utterly unhelpful and harmless
18:49 svnbot6 r16433 | audreyt++ |   "user error" message when recompiling prelude.
18:49 * avar wants his objects to be completely lexical
18:49 avar I know you have lexical classes, hrm
18:49 avar I guess I'm wondering how dispatch ends up and how hackable that is:)
18:52 [particle] should be hackable though the MOP
18:52 diakopter TimToady: here's a bit of material for that research http://www.dmst.aueb.gr/dds/pubs/  his '94 thesis esp.
18:52 lambdabot Title: Diomidis Spinellis Publications
18:52 justatheory joined #perl6
18:52 TimToady maybe you should just ghostwrite my talk :)
18:53 TimToady then I wouldn't have to understand it....
18:53 diakopter better hope the WG2.8 folks aren't in attendance...
18:54 dduncan joined #perl6
19:01 svnbot6 r16434 | audreyt++ | * Prelude: &evalfile should refer to the global &*eval as such,
19:01 svnbot6 r16434 | audreyt++ |   not assuming it's within the lexical scope.
19:21 polettix joined #perl6
19:33 REPLeffect joined #perl6
19:35 SamB joined #perl6
19:38 japhb joined #perl6
19:55 svnbot6 r16435 | audreyt++ | * Pugs.Parser.Util: Add parameter variables into the known-variable
19:55 svnbot6 r16435 | audreyt++ |   set to be closed over.
19:57 the_dormant joined #perl6
20:04 svnbot6 r16436 | audreyt++ | * Pugs.Parser: This error is finally a compile-time one, instead
20:04 svnbot6 r16436 | audreyt++ |   of a runtime one:
20:04 svnbot6 r16436 | audreyt++ |     Global symbol "$foo" requires explicit package name
20:04 svnbot6 r16436 | audreyt++ |   As a result, a lot of ext/ code broke -- but they were really
20:04 svnbot6 r16436 | audreyt++ |   broken already.  Fixes welcome!
20:06 baest joined #perl6
20:09 dduncan oh, I should have a look then ... so far, most of my tests are just that the code compiles
20:09 dduncan on a related note, it seems the compiler hadn't 2 days ago checked that references to attributes actually exist
20:10 dduncan whereas those should be checkable at compile time ... will test now ...
20:10 dduncan audreyt, are your commits of today all new work, or are they older stuff that was being checked in now more incrementally?
20:13 Jmax a bit off topic, did anyone get ghc 6.6+ working on openbsd? the port/package are a bit outdated
20:19 svnbot6 r16437 | audreyt++ | * Better diagnostics message for undeclared variable.
20:26 BooK joined #perl6
20:28 justatheory joined #perl6
20:31 svnbot6 r16438 | lwall++ | typo in new error message
20:33 Tene dduncan: last night she said she was going to commit more old stuff today.
20:34 dduncan I remembered a comment about "another half" of stuff to be committed in the near future, but I don't recall today specifically
20:34 dduncan in any event, still good to see it
20:37 fglock does anyone have a clue of Groovy syntax? I can't make a simple accessor
20:38 Aankhen`` joined #perl6
20:41 svnbot6 r16439 | audreyt++ | * Variables inside an eval"" is now correctly checked
20:41 svnbot6 r16439 | audreyt++ |   against outer lexical scope.
20:53 thoughtpolice joined #perl6
20:56 svnbot6 r16440 | Darren_Duncan++ | ext/QDRDBMS/ : fixed a one-line bug in PhysType.pm that newest Pugs uncovered
20:56 dduncan and besides that one line, both of my ext/ projects have no compile errors now
20:56 dduncan that make-test reveals
20:56 svnbot6 r16441 | fglock++ | [mp6-jvm] class declarations, constructor, accessors
20:56 japhb I'm just starting to backlog, so forgive me if this has already been mentioned ... but I got a "server too busy" error from irc.pugscode.org.  With a refresh, it went away, but that's still worrisome.
20:58 moritz japhb: did you get that response from irc.pugscode.org or from the server that it redirects to?
20:58 dduncan I normally use http://colabti.de/irclogger/irclogger_log/perl6 myself
21:00 japhb moritz: I'm not sure, actually
21:00 japhb I think maybe the former
21:08 svnbot6 r16442 | audreyt++ | * Pugs.hs - Recover lexical scope continuation in interactive
21:08 svnbot6 r16442 | audreyt++ |   shell, as reported by avar++
21:09 * avar doesn't recall
21:12 moglum joined #perl6
21:12 TimToady I think it was Tene++
21:12 bernhard joined #perl6
21:12 Tene What was me?
21:12 _bernhard joined #perl6
21:13 TimToady reporting the shell not keeping its lexicals from line to line
21:13 Tene Yes, that was me.
21:13 TimToady http://moritz.faui2k3.org/irclog/out.pl?channel=perl6;date=2007-05-17#id_l1339
21:13 lambdabot Title: IRC log for #perl6, http://tinyurl.com/29p8sk
21:18 SubStack joined #perl6
21:19 svnbot6 r16443 | audreyt++ | * Some tidying up for preserving lexicals in interactive shell
21:19 svnbot6 r16443 | audreyt++ |   (which was reported by Tene++ instead of avar++, mea culpa.)
21:20 japhb audreyt: did you have a chance to look at the problem I reported last night?  Or is that delayed until after the MO merge?
21:20 dduncan is the MO merge happening today, or some later day?
21:21 dduncan I recall hearing something about instability yesterday
21:22 audreyt dduncan: it's happening not today. I hope early next week but no promises.
21:22 lambdabot audreyt: You have 3 new messages. '/msg lambdabot @messages' to read them.
21:22 dduncan okay
21:22 audreyt japhb: the eval"" bug? looking at it now
21:22 japhb audreyt: thanks
21:23 dduncan anyway, I still have significant additions to make to QDRDBMS before Pugs goes on CPAN again, so things like this happening later can possibly provide the time
21:24 dduncan aka, blessing in disguise
21:24 audreyt sure :)
21:25 dduncan fyi, I have so far been implementing my data types in terms of Hash and Array, like the Perl 5 versions, because afaik other types like Seq, Mapping, Set don't exist in Pugs yet, and won't until after the MO merge
21:26 audreyt japhb: try these two lines in your command line:
21:26 audreyt ./pugs -e 'sub { say eval q[%ENV] :lang<perl5> }()'
21:26 audreyt ./pugs -e '{ say eval q[%ENV] :lang<perl5> }'
21:26 audreyt or rather, the first line should be
21:26 audreyt ./pugs -e '{ say eval q[%ENV] :lang<perl5> }()'
21:26 audreyt (same thing either way)
21:26 audreyt do they output different things?
21:27 dduncan likewise, I'm assuming that being able to use Object as a hash/mapping/set key won't work until after the MO merge
21:27 audreyt correct, and maybe not immediately after that, either
21:27 japhb audreyt: first and third are the same (as expected), and give just: '*main::ENV'
21:27 dduncan so I've hacked together my own in the mean time
21:27 audreyt (i.e. not considered a 6.28 blocker)
21:27 audreyt cool
21:27 japhb audreyt: the third gives a big pile of stuff
21:28 japhb er, the *second*
21:28 audreyt japhb: k, so that's the bug. looking into it...
21:28 japhb audreyt: cool
21:28 dduncan likewise, I'm assuming that even if I declare desired data types of parameters, that they aren't actually being checked yet, so I still do explicit .does checks on arguments, as in Perl 5
21:28 audreyt I wonder at which circumstances will perl5 evaluate %ENV into *main::ENV
21:29 audreyt dduncan: at the moment they affect defaults, but not passed-in args
21:29 dduncan okay
21:29 audreyt sub f (Moose $x?) { ... } # Moose.new if you call f()
21:29 japhb audreyt: can you trace across the Haskell/P5 boundary?  I can only imagine it's something like a context change
21:29 audreyt or rather actually ::Moose, not Moose.new
21:29 japhb scalar versus list, or something
21:30 audreyt but %ENV under scalar context is 17/32
21:30 audreyt still looking
21:30 dduncan either way, I've generally been treating Pugs' Perl 6 like it is Perl 5 as far as implemented features go, which has led to the code being more verbose ... but that's the cost of wanting it to work now
21:30 audreyt nodnod.
21:30 dduncan and I'll refactor it when Pugs implements things that I want
21:31 dduncan my own assumption so far is that once the MO is in place, implementing the things I want will be orders of magnitude easier, and come along relatively quickly
21:31 moritz just finished a smoke in 40m23
21:31 audreyt that is correct.
21:31 audreyt moritz: how much slower was that? I benched here and it's 15% or so slower
21:32 dduncan sounds good
21:32 * dduncan away for a bit
21:33 moritz audreyt: 45%, but I had some load while smoking this time
21:34 audreyt k. will look at performance once the branch merge's glitches are ironed out (there doesn't seem like to be too many of them)
21:34 audreyt japhb: your intuition is entirely correct
21:35 audreyt %ENV evaluates to *main::ENV under void context
21:35 audreyt the question is now why this is in void context...
21:35 dduncan my last 2 smokes went from about 90 mins, a few months ago, to about 110 mins yesterday
21:35 * dduncan away again
21:36 audreyt $ ./pugs -e '{ say want }()'
21:36 audreyt Void
21:38 moritz is it normal to have failing tests in ext/File-Spec/t/20_win32_test.t on linux?
21:38 audreyt it's a bug, but I havn't investigated.
21:38 svnbot6 r16444 | audreyt++ | * Make InvokePerl5Result derive Show/Typeable to make
21:38 svnbot6 r16444 | audreyt++ |   debugging a bit easier.
21:38 audreyt I get it here too
21:38 moritz not very intuitive ;)
21:39 audreyt no ;)
21:41 zgh joined #perl6
21:43 thoughtpolice can anybody offer a reasonable way to get more into perl6/pugs development? i've been reading O'reilly's book and writing little snips of code on my openBSD box via pugs, but the actual implementation and development of it is still somewhat of a mystery; i assume getting a commit bit would be a good start, but i feel as if I'm getting dropped in foreign territory arbitrarily or somesuch
21:44 PerlJam thoughtpolice: yes, getting a commit bit would be a good start  :-)
21:44 svnbot6 r16445 | moritz++ | ext/File-Util: fixed variable named that caused compiler errors
21:44 Tene thoughtpolice: PM me your email address and desired username and I'll send you a commit bit.
21:44 moritz thoughtpolice: for a start, we need an email address ;)
21:44 PerlJam thoughtpolice: do you know haskell?
21:44 offby1 thoughtpolice: I'm exactly the wrong person to ask
21:44 offby1 thoughtpolice: I just lurk here a lot, and occasionally write a tiny bit of perl6
21:44 thoughtpolice PerlJam: I've been really into haskell for the past 2 months or so now
21:45 PerlJam thoughtpolice: excellent!  Perhaps you can help audrey & co. with the pugs implementation  :)
21:45 thoughtpolice and pugs seems to be something like a bridge between perl6 and haskell, so it's only natural I get interested
21:45 PerlJam thoughtpolice: But if not, we still need more perl 6 tests, more docs, more ... well, everything
21:46 thoughtpolice i'm one of those types of people who have enough trouble writing docs for my own apps, unfortunately. :p
21:47 thoughtpolice but pugs seems like a good project to get interested in because it has a good goal (so far I've been really impressed with perl6 in general,) and I like haskell a lot (in 2 months it ranked in as my favorite functional language by far for several good reasons)
21:47 japhb thoughtpolice: I would get yourself familiar more or less with the lay of the pugs code, and certainly the test library, but be aware that a big branch is being merged next week.  (a big one got merged last night, too)
21:47 audreyt thoughtpolice: your email address pleaser? :)
21:47 audreyt *please
21:47 thoughtpolice audreyt: I gave it to Tene
21:48 audreyt oh ok. good
21:48 thoughtpolice audreyt: btw, i liked your presentation on pugs/perl6, I saw it on google video about 2 weeks ago.
21:48 * Tene is loading commitbit interface as we speak. :)
21:48 thoughtpolice it cropped up on programming.reddit.com which I read pretty regularly.
21:48 thoughtpolice :)
21:48 audreyt thoughtpolice: thanks :) in any case, http://search.cpan.org/dist/Perl6-Pugs/docs/Pugs/Doc/Hack.pod can get you started
21:48 lambdabot Title: Pugs::Doc::Hack - How to hack on Pugs - search.cpan.org
21:48 audreyt the url there is now http://svn.pugscode.org/pugs instead of openfoundry
21:48 lambdabot Title: Revision 16445: /
21:49 thoughtpolice mucho appreciated. and yeah I have the svn repo here on my svn box.
21:49 thoughtpolice er
21:49 thoughtpolice s/svn/openbsd/
21:49 PerlJam you have the openbsd repo on your svn box?
21:49 thoughtpolice of course that might need something like a :p5 annotation in this channel I guess?
21:49 PerlJam thoughtpolice: s:2nd/svn/openbsd/  # :-)
21:50 thoughtpolice :)
21:50 thoughtpolice i'm simply glad this o'reilly book didn't lie when it said "most of what you read will be out of date when you read it," luckily wall's apocalypses are fun reads anyway.
21:51 audreyt thoughtpolice: I assume you've glanced at the synopses at spec.pugscode.org?
21:51 thoughtpolice yeah those're the ones that're cross referenced right?
21:52 audreyt aye
21:52 thoughtpolice i haven't quite looked through all of them, primarily I've been looking through the ones that've pertained to the little p6 app I've been tooling with recently to get the feel of the current spec.
21:52 thoughtpolice but i like the results.
21:53 audreyt thoughtpolice: so just play with the pugs you built, and then check in your little p6 app under either ext/ or examples/, write some tests for it
21:53 audreyt and add your name to AUTHORS
21:53 audreyt actually, first add your name to AUTHORS
21:53 audreyt and then we'll take you rom there :)
21:53 audreyt *from
21:53 PerlJam thoughtpolice: what's your little p6 app?
21:53 Tene /admin/project/Pugs/people is still not loading for me.
21:54 audreyt japhb: finally located the bug into the fact that eval"" doesn't propagate context info anymore. testing and will commit in a bit
21:54 japhb audreyt: fantastic
21:54 thoughtpolice PerlJam: it's a little prompt implementation, the code is kind of ugly to a degree but it's just a test, mainly. gimme a sec, I was going to upload it to my site where I have my darcs repo's just now anyway
21:55 japhb Oh, svn v. darcs v. whatever reminds me:
21:55 avar audreyt: if it's not too much trouble, could you give me comaint on re::engine::PCRE?
21:55 avar I'm fixing up the re::engines after I broke everything in blead and I might as well do ::PCRE too:)
21:55 thoughtpolice PerlJam: http://anapnea.net/~thoughtpolice/promptr/
21:55 lambdabot Title: Index of /~thoughtpolice/promptr/
21:56 avar did my pcre comments get through? Cat disabled the internet connection:)
21:56 audreyt Tene: better now?
21:56 svnbot6 r16446 | moritz++ | ext/Set: fixed two typos/brainos that caused compiler errors
21:56 svnbot6 r16446 | moritz++ | audreyt++ # pugs detecting more errors
21:56 audreyt avar: doing so
21:56 Tene Internal Server Error now. :)
21:56 avar audreyt: whee:)
21:57 japhb I need to make a source repo (3D Perl, natch) available to myself and someone else.  We're both behind firewalls at different companies, so neither of us can put up an SVN server that the other can see.  Is there a source control system that works naturally via just email?
21:57 moritz japhb: is it open source?
21:57 japhb moritz: yes
21:57 offby1 use google code hosting?
21:58 audreyt Tene: I really don't know what's happening to commitbit/jifty on feather :/
21:58 japhb But for now it's just a couple blokes, so whatever it is must be *easy*, like commitbit easy
21:58 thoughtpolice japhb: you can just send your patches via darcs send, if that'll work.
21:58 japhb offby1: hmmmm, interesting.  sf.net clone?
21:58 moritz offby1: I wanted to suggest the same ;)
21:58 thoughtpolice if you have some sort of client like mutt you can have it auto-apply them if the sender has sent a valid signed email as well.
21:59 japhb thoughtpolice: ooh, interesting.
21:59 japhb Does darcs work across Win32/OS X/Linux/BSD?
21:59 offby1 japhb: kinda.  Seems more reliable though.
21:59 thoughtpolice yeah, but it's kind of rough on win32.
22:00 offby1 japhb: and it has the advantage that a couple of the developers are frequently on #svn, and all-around nice guys
22:00 japhb offby1: that's key.  I got burned before trying to use the svn hosting that Pugs used to be on.
22:00 irc joined #perl6
22:00 svnbot6 r16447 | audreyt++ | * Prelude: Work around the eval-not-propagating-context bug
22:00 svnbot6 r16447 | audreyt++ |   by using no closures in the body of &eval.
22:00 TimToady load avg on feather currently 15
22:00 thoughtpolice japhb: for some reason darcs send doesn't like me (I have msmtp configured and it works too,) but you can just create a patch with darcs send, output it to a file and just attach the patch to an email and send it later
22:00 japhb offby1: you know, for some reason I am much more willing to use a service hosted by nice people.  :-)
22:00 offby1 japhb: read their google groups archives to get an idea of the problems people have encountered
22:00 japhb offby1: cool, thank you
22:00 offby1 most have been fixed quickly, I think
22:01 offby1 oh, and mention my name so that I'm eligible for the $150 kickback! :-)
22:01 audreyt avar: you're comaint now, have fun :)
22:01 japhb thoughtpolice: and thank you, as well, I'll consider that
22:02 avar audreyt: woohoo:)
22:02 * avar lurks and doesn't do anything with it for a few months:)
22:03 thoughtpolice japhb: currently there're some nasty darcs bugs however; most of them manifest themselves mainly in very large scale projects, however (see: the Glasgow Haskell Compiler)
22:03 japhb nasty darcs bugs?!?
22:03 thoughtpolice luckily one of haskell.org's google SoC projects is to fix the most major of the bugs
22:04 thoughtpolice the main one is a conflict bug that just takes a long time to merge conflicts across branches of extremely large size, but that's most major one, but it's the one getting fixed in the SoC.
22:04 japhb OK, so it's perf bugs not "corrupting your repo" bugs?
22:04 avar yay student^Wslave labour
22:04 thoughtpolice no.
22:04 thoughtpolice no real 'corruption' bugs
22:04 audreyt uh, it's O(n^2) perf bug
22:05 thoughtpolice yeah
22:05 thoughtpolice when I said takes a long time
22:05 thoughtpolice I meant it
22:05 thoughtpolice but like I said, only very large scale projects (dealing with thousands and thousands of patches like GHC) seem to be affected most directly; reports have been ranging from hours to days to merge conflicts based on repo size.
22:06 TimToady anyone else had trouble with strawberry perl coredumping on Perl_regclass_swash()?  I hit that when trying to run testgraph.pl, and haven't changed anything recently...
22:07 PerlJam O(2^n) would take a long time.  O(n^2) is just a little while  :)
22:07 thoughtpolice i've been aware of it for a while now
22:07 thoughtpolice but it's posed no problems in my experiances
22:07 TimToady not for n == 3
22:07 audreyt PerlJam: well yeah :) that's why people still use darcs...
22:07 thoughtpolice then again I'm not writing a 100 kLOC application like GHC,
22:08 audreyt I've been bit by that repeatedly when working with ghc
22:08 thoughtpolice so you may wish to take my words with a grain of salt or two
22:08 thoughtpolice audreyt: doesn't suprise me, marlow & co have talked about it with roundy on the darcs mailing lists.
22:08 audreyt if not for the bug it might be that I'll spend moretime hacking GHC than pugs ;)
22:08 thoughtpolice and roundy is addressing it by being the supervisor for the SoC project that's fixing the bug.
22:09 audreyt thoughtpolice: *nod*, we all voted on Jason's proposal -- I think it's the only unanimous one
22:09 PerlJam What is it that's missing for Perl 6 to have another water-shed event (like pugs) and become "real" in the popular sense?
22:10 thoughtpolice audreyt: yeah. roundy said it's not really that complicated of a fix, but it'll take some time and more technical considerations (efficiency, disk space, etc..)
22:10 dduncan some killer app written in perl 6 that is used in production
22:10 moritz PerlJam: a feature complete release? compiling to parrot?
22:10 audreyt PerlJam: the Camel book, then Llama book, and an implementation that runs them?
22:11 PerlJam dduncan: do you really think a killer app is necessary?
22:12 audreyt Tene: have you gone through with commitbitting to thoughtpolice?
22:12 PerlJam dduncan: You don't think "build it and they will come" works here?
22:12 moritz PerlJam: it will work for the perl folks, but perhaps not for other folks
22:12 PerlJam audreyt: well, what I mean is ... why don't we have that implementation already?  Where are the roadblocks?
22:13 Tene audreyt: it only barely loaded.
22:13 TimToady loadavg is 11
22:13 audreyt TimToady: is this legal? sub f ($x = sub { $x }) {}
22:13 PerlJam And what would be a "killer app" for perl 6?
22:13 TimToady I think Perl 6 will be its own killer app once it can compile itself.
22:13 Tene sending now
22:13 dduncan let me clarify that a killer app is one way, not the only way
22:14 thoughtpolice PerlJam: wall is still working on the specs (along with the p6 lang mailing list,) so that's kind of a block right there since wall is BDFL of perl.
22:14 dduncan and yes, as TimToady says
22:14 audreyt thoughtpolice: around here usually "TimToady" instead of "wall", fyi :)
22:14 TimToady speaking of the thought police... :)
22:14 dduncan generally speaking, when we have something that people will do anything to get, that either is or requires Perl 6
22:14 thoughtpolice audreyt: thanks.
22:15 thoughtpolice :p
22:15 PerlJam dduncan: perhaps I'm a pessimist today, but I don't see any such thing on the horizon.
22:15 PerlJam (other than perl 6 itself)
22:15 moritz PerlJam: another good way would be really good integration for rules - that's kinda killer as well ;)
22:16 dduncan but I also agree with the idea of having a Perl 6 camel book et al should be a big driver ... basically when the average perl developer feels that Perl 6 can be used now
22:16 TimToady audreyt: it doesn't seem terribly useful to return a closure of the unbound parameter
22:16 audreyt TimToady: oh, but that construct is used here...
22:16 audreyt my $x = sub { $x };
22:16 audreyt which seems pretty useful
22:16 dduncan on a tangent, do any other languages have killer apps?
22:17 thoughtpolice library support is a huge issue in reality, luckily CPAN is pretty much the best there is, so we know there'll be lots of libraries already waiting for perl6.
22:17 PerlJam dduncan: ruby has rails.  :)
22:17 thoughtpolice dduncan: rails contributed a lot to ruby
22:17 dduncan right
22:17 japhb What is wrong with this in current pugs?
22:17 japhb    %.lookup<command_action> = {
22:17 japhb          quit          => &action_quit,
22:17 japhb          screenshot    => &action_screenshot,
22:17 japhb ...
22:17 japhb I get:
22:17 audreyt TimToady: so after the vardecl/signature unification, perhaps it's easier to apply the once-declared-it's-visible-to-the-right rule
22:17 japhb $ ~/svk/pugs/pugs step075-nogfx.p6 ***
22:17 japhb    Unexpected ","
22:17 japhb    expecting "::" or signature value
22:17 japhb    Variable "&action_quit" requires predeclaration or explicit package name
22:17 japhb    at step075-nogfx.p6 line 110, column 40
22:17 dduncan so is it not feasible that Perl 6 could have something that brings attention to it in similar ways, aside from just the language itself being good?
22:17 thoughtpolice i can't see the future, but django will probably work pretty well for python. also, seaside is working to smalltalk's advantage (i realize I'm going on about web frameworks here, but whatever :p)
22:17 japhb And I didn't get that yesterday
22:18 audreyt japhb: well, is &action_quit is in scope?
22:18 audreyt pugs just got the ability to check for stricture in compile time :)
22:18 japhb audreyt: yep, just farther down in the file.  Do I need to stub at top of file now?
22:18 TimToady audreyt: in any case, the $x in the sub would certainly refer to the declared $x
22:19 audreyt japhb: spec is not terribly clear on that
22:19 TimToady assuming we don't come up with a good reason for breaking that consistency
22:19 audreyt from the current reading, only
22:19 audreyt action_quit(); ...; sub action_quit {...}
22:19 audreyt can compile correctly # provisional call
22:19 audreyt but
22:19 audreyt &action_quit ... ; sub action_quit {...}
22:19 thoughtpolice dduncan: library support, like I said, is extremely critical, but that's already covered. cpan is a good enough reason to consider perl for some of your tasks if you ask me.
22:19 audreyt should fail the same as as "$x ...; my $x" fails
22:20 thoughtpolice it may not be *the* reason you choose perl, but it would have a good factor in that decision I would assume.
22:20 japhb audreyt: AH, interesting!
22:20 audreyt but I'm not sure if spec has changed in the past two months
22:20 PerlJam I agree that some form of documentation (Camel,Llama,etc.) are needed, but I think Perl 6 doesn't need a "killer app" as much as it needs to be put into production (even if it's just pugs) in a visible and "eating our own dog food" way.
22:20 audreyt so a sanity check from TimToady would be appreciated :)
22:20 TimToady hasn't change in that respect
22:20 dduncan this could just be hubris, but I like to think that my database project will shake up the database world in general, and if so, provide a killer app for Perl since it is written in that
22:20 TimToady *changed
22:20 audreyt japhb: k, so predeclare.
22:20 dduncan still, Perl 6 should likely become its own killer app before that happens
22:20 Tene thoughtpolice: it *might* have sent youa commit bit.
22:21 thoughtpolice Tene: yeah I got it
22:21 Tene yay
22:21 audreyt Tene++
22:21 thoughtpolice :)
22:21 DrSlump joined #perl6
22:21 DrSlump hi
22:21 japhb audreyt: OK, thanks.
22:21 japhb Does predeclare have to match signature, or can I just say 'method action_quit {...}' at the top?
22:21 audreyt japhb: we're used to the p5 way where all \& resolution is runtime and package scoped
22:22 audreyt and all other sigils are compile time and lexical
22:22 audreyt but in p6 everything is lexical if it looks lexical
22:22 japhb audreyt: yes, and that's a source of guaranteed perf loss, isn't it?
22:22 japhb (I mean in P5 case)
22:22 audreyt oh yes.
22:22 audreyt japhb: another way is saying &ThisPackage::action_quit
22:22 audreyt explicitly
22:23 japhb audreyt: but wouldn't that make my class hard to inherit from?
22:23 Tene DrSlump: Hi!
22:23 audreyt japhb: uh, I think you really want
22:23 PerlJam japhb: nah, you just override &ThisPackage::action_quit from your subclasses when you need to  ;-)
22:23 audreyt { self.action_quit }
22:23 audreyt or some such, instead of &action_quit
22:23 audreyt if you care about inheritance
22:24 audreyt { $.action_quit }
22:24 audreyt means the same thing
22:24 thoughtpolice oi, Tene, now I'm sort of seeing why it might have taken so long.
22:24 Tene thoughtpolice: heh.  Yeah, there are load problems on that box these days.
22:24 TimToady currently 13
22:24 thoughtpolice it's fine
22:24 diakopter TimToady: earlier you mentioned rw subs as sigil-free vars... how would one effect a pragma to allow one to declare such subs as in: Dim BareWord or var BareWord
22:24 japhb audreyt: well, methods from that table later get called using '$action.(self: $command, |@args);'
22:24 * audreyt sees the "Dim" word and shudders
22:25 japhb s/methods from/methods looked up from/
22:25 thoughtpolice also, I should mention my svn up isn't working, and svn.pugscode.org/pugs is giving me a 403
22:25 thoughtpolice i'm pretty sure that's not natural.
22:25 audreyt japhb: ah. in that case... just use strings.
22:25 TimToady presumably one would have to hook into the recognizer for unrecognized words in such declarations.
22:25 audreyt ?eval my $x = 'sqrt'; 123.$x
22:25 evalbot_r16421 changed their nick to evalbot_r16443
22:25 evalbot_r16443 11.090536506409418
22:25 TimToady and assume type prefixes will always be predeclared
22:26 audreyt and then invoke as
22:26 TimToady my Foo Bar baz;
22:26 audreyt self.$action($command, |@args)
22:26 TimToady is illegal unless Foo and Bar are predeclared
22:26 audreyt where $action is a simple Str
22:27 TimToady alternately do an inside-out shellish trick where declaring $baz also creates the bare func
22:27 japhb audreyt: but wouldn't that be slower than having $action be a Routine?
22:27 TimToady arguably already happens if you declare "my Foo Bar &baz;"
22:27 TimToady except that it deoesn't
22:27 audreyt japhb: but if $action is a Routine it's not upto inheritance anyway.
22:28 audreyt i.e. even if there's a subclass, you still run parent class's &action_quit
22:28 japhb (Note: I'm trying to learn the most performant way to do this ...)
22:28 audreyt even if subclass overrides ^action_quit
22:28 audreyt er &action_quit
22:28 TimToady sounds like you want to curry on the invocant, perhaps
22:28 japhb audreyt: ah!  right.  Duh.
22:28 audreyt for (I hope obvious) reasons...
22:28 japhb audreyt: yep, just needed the clue by four
22:28 audreyt :D
22:29 japhb OK, so there are really two requirements here:
22:30 japhb 1. My command lookup needs to be secure in the sense that noone can send me a requested action that is not in my list of safe actions.
22:30 japhb 2. It needs to be as fast as possible, as I'll be processing a LOT of them
22:30 audreyt but you want inheritance.
22:31 japhb Oh right, ("comfy chair!"):
22:31 audreyt so really, a by-name lookup checked against a junction (or a set, or a map, or a regex) seems like the only way out
22:32 audreyt facier if you obtain that check using a method so your subclass can override the check
22:32 TimToady or self.$(%isok{$action}//fail)
22:32 audreyt *fancier
22:32 * amnesiac waves
22:32 audreyt right.
22:32 TimToady but if you know the allowed actions already, they're presumably defined methods
22:32 PerlJam introspection to the rescue!
22:33 japhb 3. And my method has to allow an inheriting class to override an action
22:33 japhb audreyt: It would certainly be nice for an inheriting class to be able to extend the action list.  But for now at least that's just a bonus.  Override is a necessity.
22:34 TimToady what's the matter with self.$action(...)
22:34 svnbot6 r16448 | audreyt++ | * Allow params to refer to themselves in their initializing
22:34 svnbot6 r16448 | audreyt++ |   expressions, for example:
22:34 svnbot6 r16448 | audreyt++ |     sub f ($x = sub { $x }) { ... }
22:34 svnbot6 r16448 | audreyt++ |     my $x = sub { $x }
22:34 audreyt TimToady: I advised a ($action ~~ any(< ok1 ok2 ok3 ok4 >)) and then a $.$action()
22:34 TimToady but then you can't add actions in a subclass
22:34 audreyt eq instead of ~~, anyway
22:35 audreyt and yes, the list would be obtained from a method, presumably
22:35 PerlJam Seems a simple naming convention would do.
22:35 TimToady self."ACTION_$action" is supposed to work
22:36 japhb PerlJam++ # The Lazy solution
22:36 PerlJam japhb: hey, perl taught me all about laziness, so  TimToady++  :-)
22:37 japhb OK, either audreyt's latest or PerlJam/TimToady's latest will be my fallback position.
22:37 japhb Now on to the premature optimization phase:
22:38 TimToady in this case, when I say "is supposed to work", I mean "is specced", not "is implemented yet"
22:38 audreyt I hear that premature evil is the root of all optimizations...
22:38 japhb If I know that no new class will get in the way of things at *runtime*, can I improve on this?  Or does the "compilation units are separate" rule get in the way of doing the optimization that I know at program compile time the entire class heirarchy surrounding this module?
22:39 japhb s/optimization that/optimizations based on knowing that/
22:39 TimToady that's what all the verbiage about "the application as a whole gets to decide which classes can be finalized" is abpout
22:39 PerlJam japhb: well, now you're back to self.$action  (given that you know new classes will "get in the way")
22:39 audreyt sorry, mind too fried to parse english. back to hacking a bit and then sleep...
22:40 PerlJam guten Nacht audreyt :-)
22:40 japhb audreyt: sleep well
22:40 audreyt 'nite :) &
22:40 thoughtpolice later
22:40 dduncan yes, that
22:40 amnesiac audreyt, so you're saving energy to parse Perl6 only?
22:40 amnesiac clever.
22:40 TimToady see S12:1650
22:41 japhb Thank $deity for moritz++'s logbot
22:42 perlDreamer joined #perl6
22:42 thoughtpolice hm, pugs is available as a ghc lib?
22:42 thoughtpolice learn something new every day
22:42 japhb TimToady: Ah, nice.
22:44 japhb So what syntax could I use in my class to allow the top-level program to optimize things if it wants to?  The lookup table using { $.action_foo } blocks?
22:44 dduncan so I guess 16448 is audrey's last commit before sleep, then?
22:44 dduncan in which case, I'll start a smoke
22:44 TimToady the point is that the top-level program is always allowed to decide
22:45 TimToady she said she was maybe going to do some sleephacking first
22:45 dduncan so not the last then?
22:46 dduncan fyi, it takes 2 hours for me to do a smoke, so I prefer to do so at optimal times
22:46 japhb TimToady: I understand that ... I meant, "How do I build my dispatcher such that I don't make it useless for the top-level program to decide to optimize?"
22:46 audreyt dduncan: I can make it the last, so let's call it the last :)
22:46 dduncan okay
22:46 japhb TimToady: or better "What construct do I use that is even amenable to optimization?"
22:47 TimToady that would depend on the optimizer, and whether it knows how to do something with self.$action
22:48 japhb TimToady: hmmmm
22:48 TimToady but all you have to do from the global standpoint is refrain from marking classes as open or non-final unnecessarily
22:48 TimToady using a construct like self.$action will not mark any classes
22:48 * japhb decides to let Lazy take over from Impatient for now, and leave this to when an implementation actually has on optimizer
22:49 japhb nodnod
22:49 TimToady deriving from a class markes it as non-final automatically
22:49 japhb right
22:49 TimToady s:2nd/e//
22:49 TimToady if you want to add classes at run-time, then you might be forced to mark a base class as non-final explicitly
22:50 japhb makes sense
22:50 TimToady I believe "basal" is the word currently used for that
22:50 TimToady but you'd only have to mark leaf nodes that way
22:51 japhb gotcha
22:53 TimToady dduncan: why does it matter how much CPU time you burn provisionally?  If you see a new patch, just restart the build...
22:56 dduncan it's not a big deal
22:56 perlDreamer Is anyone else seeing build errors in a Prelude file?
22:56 lambdabot perlDreamer: You have 1 new message. '/msg lambdabot @messages' to read it.
22:56 perlDreamer @message
22:56 lambdabot Maybe you meant: messages messages?
22:56 perlDreamer @messages
22:56 lambdabot agentzh said 9h 22m 19s ago: well, that entry was created in the last summer when i created the t/closure_traits directory and several .t files in it. I'm glad to see many new tests have been added
22:56 lambdabot there. feel free to remove the task if you think it's already done :) i'm lacking the tuits right now.
22:56 moritz perlDreamer: I just compiled successfully
22:57 perlDreamer What's the channel pasting policy?
22:57 avar to not have a policy about it
22:57 avar :)
22:57 avar but you can use the topic thingy for anything big-ish
22:57 moritz http://sial.org/pbot/perl6
22:57 lambdabot Title: sial.org Pastebot - pasteling
22:58 dduncan now starting smoke
22:58 pasteling "perlDreamer" at 204.17.142.54 pasted "pugs error during build of Prelude file" (13 lines, 689B) at http://sial.org/pbot/24975
22:59 perlDreamer thanks moritz
22:59 TimToady ignore that, unless you're trying to use the JS backend
23:00 TimToady it's undergone considerable bitrot in the last year
23:01 perlDreamer cool, thanks, TimToady
23:01 Yaakov Hello, Larry.
23:01 Yaakov Hope you are wel.
23:01 Yaakov l
23:01 TimToady I'm doing pretty good.
23:01 TimToady how are you?
23:12 mr_ank perl =~ /(ways todo it)+/
23:19 perlDreamer When do the test-linked specs on perlcabal.org get updated?
23:21 moritz perlDreamer: I don't know when, just how often...
23:21 moritz perlDreamer: it's once an hour, but the test results only once a day
23:24 perlDreamer thanks, moritz
23:24 moritz perlDreamer: thanks
23:24 japhb What is the current way to get from a string containing a method name to the Method itself?  self.can('foo') doesn't seem to exist
23:31 avar .HOW?
23:31 svnbot6 r16449 | thoughtpolice++ | added name to AUTHORS
23:31 avar thoughtpolice: yay:)
23:31 moritz thoughtpolice++
23:31 moritz are named arguments generally broken atm in pugs?
23:32 thoughtpolice :)
23:32 thoughtpolice i'm so happy.
23:32 thoughtpolice unfortunately though for the time being I have to jet
23:32 thoughtpolice luckily school's over next week so I have about 3 months to contribute all I can.
23:33 thoughtpolice later
23:39 REPLeffe1t joined #perl6
23:39 svnbot6 r16450 | moritz++ | Perl6::Value::List: fixed variable name that caused compiling error
23:42 justatheory joined #perl6
23:42 svnbot6 r16451 | moritz++ | removed :todo from succeeding tests in var/my.t
23:44 Southen_ joined #perl6
23:55 Jmax \/win 41
23:55 Jmax whoops!

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

Perl 6 | Reference Documentation | Rakudo