Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-08-30

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:16 kanru joined perl6
00:16 svnbot6 r12864 | markstos++ | minor syntax clean up in Differences.pod
00:26 svnbot6 r12865 | markstos++ | Add mention of the double underscore things (like __LINE__) to Differences.pod.
00:35 markstos What sub signature declares "I accept an arbitrary list of named parameters" ?
00:37 TreyHarris markstos: see my mail.  *%hash it is
00:39 TreyHarris i think the explanation starts on line 642
00:39 markstos Thanks!
00:50 pasteling "markstos" at 12.176.101.89 pasted ""returns undef" is valid ? It causes unexpected behavior with multi method dispatch" (11 lines, 395B) at http://sial.org/pbot/19350
00:50 markstos bbiab
01:00 soisoisoi joined perl6
01:02 frustrato left perl6
01:19 markstos TreyHarris. With pugs (*%hash)  means "0 or more more named arguments". To require some, this syntax works:
01:19 markstos sub foo (%Hash, *%Hash) {
01:19 frederico joined perl6
01:19 markstos My expectation was that (*%Hash) would require some, and (*%Hash?) would mean "zero or more"
01:20 markstos It's neat at (%h, *%h) works now, though, so I don't have to wait for a fix. :)
01:26 DaGo joined perl6
01:27 theorb joined perl6
01:30 kanru joined perl6
01:38 TreyHarris markstos: no.... *@array will accept zero or more, and the same goes for *%hash.  AFAICT, (%h, *%h) does not do precisely what you want:
01:39 TreyHarris ?eval sub foo (%h, *%h) { say "all good here" }; my $h = 'a'..'d' >>=><< 1..4; foo($h)
01:39 TreyHarris oh, is evalbot still gone?
01:40 TreyHarris anyway.  no named arguments
01:40 TreyHarris but it still says "all good here"
01:41 markstos What does all the fancy >><< stuff do ?
01:41 TreyHarris just a hyperop.  >>  << hypering =>.  so making a => 1, b => 2, c => 3, d => 4
01:41 TreyHarris so $h is a hash
01:41 markstos Ah.
01:42 TreyHarris i think you're trying to solve in an odd way one particular case of a general problem:
01:43 TreyHarris sub scale (Rat $ratio?, Num $percentage?, Int $pixels?) { ... }
01:43 TreyHarris in this case you need exactly one of the three args
01:43 TreyHarris there's no way to specify that in the signature
01:44 TreyHarris so instead, write
01:44 TreyHarris multi sub scale (Rat $ratio) { ... }; multi sub scale (Num $percentage) { ... }....
01:44 SubStack joined perl6
01:44 markstos TreyHarris: hmm
01:45 TreyHarris calling a general purpose "my sub _scale (Rat $ratio?, Num $percentage?, Int $pixels?) { ... }" if you so desire
01:45 markstos ?selfserviceeval  sub foo (%h, *%h) { say %h.perl; }; my $h = 'a'..'d' >>=><< 1..4; say $h.perl; foo($h)
01:45 lambdabot Unknown command, try @list
01:45 markstos [("a" => 1), ("b" => 2), ("c" => 3), ("d" => 4)]
01:45 markstos {("a\t1" => ("b" => 2)), ("c\t3" => ("d" => 4))}
01:45 markstos Interesting: the hash got a little mangled passing through.
01:46 TreyHarris odd.  i'll look at it tonight
01:46 TreyHarris must go now
01:46 TreyHarris &
01:46 markstos TreyHarris: So you would you express that you want a sub that accepts 1 or more named pairs ?
01:46 markstos s/So you would/So how would you/
01:47 drbean joined perl6
01:50 markstos TreyHarris: The weirdness goes away if you use my %h = .....  with "my $h"... it looks like an arrayref was constructed. It's wonder was the result was strange. Anyway (%h, *%h) passes the battery of tests I wrote for my application, so I'm sticking with it for now. :) A failing test case against it would be appreciated if you find one, though.
02:00 weinig|bbl is now known as weinig
02:04 markstos Perl6 blogging: I reduced the line count of my param() method by 90%...  http://use.perl.org/~markjugg/journal/30799
02:04 lambdabot Title: Journal of markjugg (792)
02:05 weinig is now known as weinig|zZz
02:06 soisoisoi joined perl6
02:38 svnbot6 r12866 | fglock++ | v6 - internal parsing of double-quoted strings
02:40 kanru joined perl6
02:58 xinming_ joined perl6
02:59 silug joined perl6
03:13 araujo hi around here
03:13 markstos araujo: hello
03:14 araujo hi markstos , what's up?
03:15 markstos Working on porting CGI::App to Perl6.
03:16 markstos http://use.perl.org/~markjugg/journal/30799
03:16 lambdabot Title: Journal of markjugg (792)
03:21 araujo nice indeed
03:36 lollan joined perl6
03:50 mako132_ joined perl6
03:58 aufrank joined perl6
04:15 Aankhen`` joined perl6
04:29 agentzh joined perl6
04:29 * agentzh gets ready to hack.
04:31 araujo :-)
04:33 agentzh ?eval my $x=0; do { $x++; last; $x++ } while $x < 4;
04:33 agentzh evalbot?
04:34 agentzh ?eval my $x=0; do { $x++; last; $x++ } while $x < 4; $x
04:34 ayrnieu ?eval "where are you?!"
04:35 agentzh pugs still support "real" do...while, which is incorrect.
04:35 svnbot6 r12867 | markstos++ | CGI.pm: change content_type to type to match p5:CGI.
04:35 svnbot6 r12867 | markstos++ | There are some tests failing in t/params.t which are unrelated.
04:35 agentzh *supports
04:37 agentzh although we can still write do {...} while ... according to today's synopses, but that's not exactly what we want.
04:40 agentzh oh, i didn't sleep very well, because i was thinking about test suite refactoring all through the night.
04:40 agentzh we need a *good* test suite by this christmas. :)
04:41 rashakil joined perl6
04:47 onsen joined perl6
04:53 rashakil_ joined perl6
04:56 Kaz__ joined perl6
04:56 svnbot6 r12868 | agentz++ | [t/statements]
04:56 svnbot6 r12868 | agentz++ | - split statement_modifiers.t into modifiers/for.t,
04:56 svnbot6 r12868 | agentz++ |   modifiers/given.t, modifiers/if.t, modifiers/unless.t,
04:56 svnbot6 r12868 | agentz++ |   modifiers/until.t, and modifiers/while.t.
04:56 svnbot6 r12868 | agentz++ | - more smartlinks and more tests.
04:56 Kaz__ left perl6
04:58 agentzh ?eval my $a; { $a++ } for 1..3; $a
04:59 agentzh is it possible to write Perl 6 code like this?
04:59 agentzh and even:
04:59 agentzh ?eval my $a; -> $i { $i++ } for 1..3; $a;
05:02 agentzh TimToady, audreyt: can i write " { say } for 1..3 "?
05:02 agentzh TimToady, audreyt: or evan " -> $i { say $i } for 1..3 "?
05:02 agentzh TimToady, audreyt: and also " do { say } for 1..3 "?
05:03 * agentzh thinks it's time for him to start a p6l thread.
05:11 rashakil__ joined perl6
05:14 cmarcelo audreyt: re soc: thank you very much! (again :) )
05:18 takanori joined perl6
05:18 agentzh joined perl6
05:18 agentzh markstos: i've answered your p6l mail. in short, ``do'' is exactly what you want. :)
05:34 pjcj joined perl6
05:40 agentzh joined perl6
05:42 theorbtwo joined perl6
05:43 agentzh Limbic_Region: you said prove6 was broken while "pugs -Iblib6/lib" worked?
05:45 agentzh Limbic_region: please remove *.tc from your t/ and try prove6 again. :)
05:53 svnbot6 r12869 | agentz++ | [util/smartlinks.pl]
05:53 svnbot6 r12869 | agentz++ | - fixed the wrong lineno in error messages.
05:59 xinming joined perl6
06:14 svnbot6 r12870 | audreyt++ | * Remove redundant imports in Pugs.AST.*.
06:17 svnbot6 r12871 | audreyt++ | * Calling methods in Embperl5 now works again
06:20 svnbot6 r12872 | agentz++ | [t/syntax/comments.t]
06:20 svnbot6 r12872 | agentz++ | - fixed the eval_ok problem. i really don't like it. :(
06:22 agentzh bbiab &
06:22 svnbot6 r12873 | agentz++ | [t/statements/do.t]
06:22 svnbot6 r12873 | agentz++ | - added more tests
06:22 svnbot6 r12873 | agentz++ | - s/eval_ok/eval/
06:22 svnbot6 r12873 | agentz++ | - more smartlinks.
06:22 agentzh left perl6
06:27 mauke_ joined perl6
06:27 Aankhen`` joined perl6
06:42 mauke_ is now known as mauke
06:48 Aankh|Clone joined perl6
07:12 Lorn joined perl6
07:19 Southen joined perl6
07:31 gaal joined perl6
07:35 bsb joined perl6
08:07 mjk joined perl6
08:17 ruoso joined perl6
08:25 ofer0 joined perl6
08:27 DaGo joined perl6
08:38 Aankhen`` joined perl6
08:40 bsb left perl6
08:44 nothingmuch_ joined perl6
09:00 araujo hello
09:00 buetow joined perl6
09:00 araujo there exist some TODO or list relatd to pugs?
09:00 araujo s/or//
09:01 SubStack joined perl6
09:02 jferrero joined perl6
09:09 xinming_ joined perl6
09:10 jferrero left perl6
09:19 buu araujo: Todo: Fix sigils. =[
09:23 explore1 joined perl6
09:24 araujo buu, you are not putting it easy, aren't you? :-)
09:24 araujo are*
09:24 * araujo should sleep
09:24 ToTimkopf joined perl6
09:24 buu araujo: Well, no, I was griping about design decisions.
09:25 explore1 left perl6
09:34 jferrero joined perl6
09:54 araujo joined perl6
09:56 onsen joined perl6
10:06 araujo morning
10:07 ofer0 yeap
10:16 [mago] joined perl6
10:17 araujo @type liftSTM
10:17 lambdabot Not in scope: `liftSTM'
10:33 elmex joined perl6
10:45 gaal @hoogle liftSTM
10:45 lambdabot No matches found
10:47 araujo ya, found it gaal
10:47 araujo it is a Pugs defined function
10:48 gaal yeah, src/Pugs/AST/SIO.hs
10:48 araujo *nods*
10:48 gaal just did the same search as you :)
10:48 gaal and it's a method, so ctags doesn't find it :(
10:48 araujo hah, yeah
10:48 araujo But grep can :-}
10:49 gaal sure, I bet you did grep 'liftSTM.*=' like me...
10:51 gaal wow, make proud_japan: http://www.s-abe.or.jp/
10:51 lambdabot Title: ‚ ‚אWŽO‚̃z[ƒ€ƒy[ƒW‚ւ悤‚±‚»II@Open ƒ{ƒ^ƒ“‚ðƒNƒŠƒbƒN‚µ‚Ä‚­‚¾‚³‚¢B
10:53 TimToady 文字化け!
10:55 * araujo read what TimToady typed , but not lambdabot
10:56 TimToady lambdabot didn't turn the Shift_JIS into Unicode...
10:58 araujo right, i thought i had started xchat without unicode support again :-P
10:58 gaal one of the candidates for the next Japanese PM uses unix and svn
10:58 gaal the bad news is that they work under root and don't use svk :)
10:59 * clkao giggles
10:59 gaal (note also use of GNU autotools)
10:59 TreyHarris hi TimToady.  I take it you are no longer at -0700
11:00 clkao it's now +0100
11:02 TimToady my brane is still at -0700, alas.
11:05 TreyHarris which brings up the good question of since i'm actually in -0700, what am i still doing up? :-)
11:07 ilogger2 joined perl6
11:11 TreyHarris ugh.  "return do given want {....}" does *not* flow
11:13 * TreyHarris gives up and goes to bed
11:21 soisoisoi joined perl6
11:24 dakkar joined perl6
11:47 wolverian spec.pugscode.org _still_ doesn't reply. should I remove it from the topic?
11:47 onsen joined perl6
11:50 mayweed joined perl6
11:53 cognominal joined perl6
11:57 Eidolos joined perl6
11:58 bpphillips joined perl6
12:04 gaal the feather faq says this: "Apache loads .htaccess on every request, so there should be no delay once you have set this."
12:04 gaal that doesn't make sense to me?
12:07 wolverian why?
12:16 markstos joined perl6
12:21 mako132_ joined perl6
12:25 xinming joined perl6
12:28 lichtkind joined perl6
12:29 DaGo joined perl6
12:29 Limbic_Region joined perl6
12:38 lollan joined perl6
12:38 svnbot6 r12874 | agentz++ | [t/syntax/comments.t]
12:38 svnbot6 r12874 | agentz++ | - switched to eval_is, which is a very good workaround
12:38 svnbot6 r12874 | agentz++ |   for parsefails.
12:40 gaal wolverian: because there should be more delay once you have set it!
12:41 gaal but I just figured out whoever wrote it meant that this setting takes effect immediately, with no need for restarting anythging.
12:43 markstos When using EmbPerl5 - how I create something in Perl6 that translates into a "scalarref" in Perl5? Hint: It's not '\'
12:43 markstos \'string'
12:43 wolverian gaal, right. I still don't get what other interpretation there could be, but okay :)
12:46 lumi I just subverted a friend of mine to use pugs
12:49 gaal wolverian: why, in the serving of the web page, of course
12:49 gaal .htaccess slows down apache
12:51 markstos I also have trouble constructing something in Perl6 that I can pass to Perl5 and have it accepted as an arrayref.
12:51 gaal markstos: Perl 6 doesn't have references, so you can't do that in p6space. (though there might be a current way to do it in pugs, since it's not up to spec in this regard)
12:52 gaal markstos: so consturct your value in p5space and reuse it in the next call
12:52 markstos gaal: Is there a way to declare a block p5space?
12:52 * markstos needs to leave for work soon
12:53 gaal NCI isn't specced, but... my $arrayref = eval '["moose"]' :lang<perl5>
12:53 gaal so presumably:
12:53 gaal eval q:to/EOP5/ :lang<perl5>;
12:53 gaal blah blah..
12:53 gaal EOP5
12:54 markstos Ah. I'll try that stuff. Thanks!
12:54 gaal but this is a quote, not a grammar shift
12:54 gaal np :)
12:55 gaal brb
12:57 markstos gaal, your tip worked!
12:57 markstos ?eval use perl5:HTML::Template; my $a = eval '["moose <!-- tmpl_var shoe -->"]' :lang<perl5>; my $t = HTML::Template.new( arrayref => $a); $t.param( shoe => 'fits'); say $t.output;
13:01 jferrero joined perl6
13:06 gaal audreyt: is there a hook for safe mode if we embed p5 and use its REs? ie. disabling /e
13:09 cjeris joined perl6
13:22 Juerd gaal: You could run it under Safe
13:29 gaal Juerd: I tend to trust Pugs safemode more than Safe
13:39 avar gaal: why would you disable /e and not just make the embedded code go through the same checks as everything else in safe mode? Or am I misunderstanding you?
13:39 ludan joined perl6
13:40 audreyt gaal: uhm, /e is not part of regex.
13:40 audreyt s:P5/xxx/{...here is some p6 code...}/
13:40 audreyt there's no s:P5:e.
13:41 audreyt and we won't allow "use re 'eval'" under safemode either
13:41 audreyt so the question is noop :)
13:42 gaal audreyt: are p5 re results bound to p6 names always?
13:42 gaal $/ etc.?
13:42 audreyt sure
13:42 audreyt as with pcre
13:43 * Limbic_Region had to make realclean this morning for pugs to build
13:43 Limbic_Region but it built quite nicely ;-)
13:43 audreyt oy :)
13:43 gaal avar: we don't control the code in p5, so we can't make it go through our checks
13:43 audreyt I locked myself out without my old laptop... using an even older G4 now
13:43 gaal avar: that's why eval only works when the language is p6
13:43 audreyt ADD can be very inconvenient sometimes...
13:44 gaal good thing you travel with a spare g4...
13:44 audreyt indeed
13:45 audreyt the situation may improve in a few hours though once the remote backup key is retrieved
13:45 Lorn_ joined perl6
13:45 audreyt offsite backup is a good idea indeed
13:46 Limbic_Region audreyt - when is the next test fail squashing session and new release tentatively scheduled?
13:46 audreyt Limbic_Region: it's supposedly today if I didn't lock myself out :/
13:46 audreyt but as it is, it'll have to wait till friday.
13:47 audreyt at which time I'd like to integrate
13:47 audreyt nothingmuch's compile time and runtime MOPs into the Hs codebase
13:47 Limbic_Region ok - so hopefully new release over the weekend or you think it will take a few days to squash failing test bugs?
13:47 Limbic_Region oh, neato
13:47 nothingmuch_ audreyt: i need to think them over a bit more
13:47 audreyt I don't know if we should make a release now, or make a release after rolling in MOP/Capture
13:47 nothingmuch_ give me till next week
13:47 nothingmuch_ writing compiletime.txt right now
13:48 gaal if the release is this weekend it'll be a minor one, not shifting to newval
13:48 audreyt nothingmuch_: okay, take your time then. I'll just focus on Capture and test release
13:48 nothingmuch yep
13:48 nothingmuch focus good
13:48 nothingmuch =)
13:48 audreyt yeah, it won't be 6.28.0
13:48 Limbic_Region that's in the foreseable future though isn't it?
13:48 audreyt it is
13:49 audreyt I'd really like to have 6.28.0 by OOPSLA
13:49 gaal if the tuits line up corectly I can work on Signatures tomorrow
13:49 nothingmuch how do you express moose's 'requires' in perl 6?
13:49 nothingmuch method foo { ... } seems... blunt
13:49 audreyt nothingmuch: but that's canonical way
13:49 nothingmuch although i guess it's the most accurate
13:49 gaal I read ghc 6.6 may be slipping :-((
13:49 audreyt xow :/
13:50 Limbic_Region gaal - slipping for a good reason or a bad reason?
13:50 ajs Yep, thats what a yadda method means in p6
13:50 nothingmuch ajs: thanks
13:50 gaal Limbic_Region: what constitutes a good reason?
13:50 audreyt Limbic_Region: igloo (the GHC releng) mentions something about too much uninvestigated buildfails
13:51 nothingmuch a good reason probably is getting something more
13:51 nothingmuch a bad reason probably means something originally decided on is having trouble
13:51 gaal audreyt: and failing tests on some platforms too, simonmar writes
13:52 audreyt yeah. the new threading RTS seems to be triggering hidden threading bugs everywhere
13:52 audreyt sometimes GHC's fault, sometimes not
13:52 Limbic_Region audreyt - that may be partly my fault
13:52 Limbic_Region gaal - if it is being delayed to do something right - that's a good reason IMO
13:52 gaal Limbic_Region b0rked ghc?
13:52 nothingmuch maybe eris will be a fast smoke machine again
13:52 ajs Hrm... actually, that's not quite what ... means.
13:52 nothingmuch it *is* smp after all =)
13:52 Limbic_Region the Win32 build can't possibly be working since the 19th
13:53 nothingmuch ajs: ... is 'die if this is executed'
13:53 nothingmuch but can also be used to stub methods
13:53 audreyt in any case... certainly the features and speedups has exceeded what's usually expected for a point release
13:53 Limbic_Region gaal - no, I was mostly kidding.  The snapshot of the binary build for Win32 hasn't been working since the 19th
13:53 ajs In a class with only stubs, it reverts to being an interface spec (and THEN it means requires)
13:53 audreyt for Pugs that is, so I'd have no problem with another point release. otoh, I'd really like to finish the Capt/Sig/MOP migration...
13:53 ajs In a class with just one non-stub, it does NOT mean requires.
13:54 gaal Limbic_Region: if the right way to do something is understood but takes long, AND the wrong way to do it is ready or nearly ready, AND transitioning them doesn't break interfaces, then shipping 6.6.0 "wrongly" and then 6.6.1 rightly is "better" imho
13:54 gaal of course it's not always the case that the three conditions obtain.
13:54 audreyt ...they did that on 6.4.0.
13:54 nothingmuch latest ruling is that MMD lives within SMD, right?
13:54 audreyt which eventually led Pugs to drop support for it ;)
13:54 nothingmuch single invocant MMD
13:55 prefiks joined perl6
13:55 gaal audreyt: that's fine though
13:55 audreyt there's multi dispatch and there's method dispatch.
13:55 audreyt method resolves first; then multi.
13:55 ajs Urgh... I wonder what this does: "class foo { method dotdotdot {...} }; my foo $bar = foo.new but role { method concrete { 1; } };"
13:55 audreyt orthogonal.
13:55 nothingmuch right
13:55 gaal since asking peoplt to upgrade 6.4 -> 6.4.1 is way more polite than asking them to upgrade 6.4.x -> 6.6
13:55 nothingmuch so $obj.foo() never dispatch needs to know about multis
13:55 audreyt the only place they relate is on "call/next METHOD"
13:55 nothingmuch until the "method" foo is found
13:55 nothingmuch which may be a multi dispatch underneath
13:56 Limbic_Region gaal - I wouldn't disagree.  It is when wrongly leads down a path that makes getting right even longer that I am opposed to
13:56 audreyt nothingmuch: right, exactly.
13:56 gaal well, in the hypothetical world where Cabal didn't break compat between versions, that is.
13:56 gaal :/
13:56 audreyt Cabal is as bad as Module::Build's early days :/
13:57 gaal that's because Haskell is immature technology! </tic>
13:57 audreyt so is M::B, but it's getting better now that the devteam finally considers reusing EU::MM a good idea... </tic>
13:58 nothingmuch really?!
13:58 nothingmuch *now* they tell me
13:58 nothingmuch when I'm half way through switching back to EU::MM
13:58 audreyt nothingmuch: reusing, as in calling EU::*'s methods
13:58 nothingmuch aye
13:58 * audreyt is happily neutral on the EUMM/MB holy war.
13:58 nothingmuch back in 2002, when I was a baby, i drank the M::B kool aid
13:59 nothingmuch then i actually started getting e.g. cpan tester failures with no output
13:59 * gaal never installs anything and doesn't care
13:59 nothingmuch yadda yadda
13:59 * Limbic_Region thinks they are both b0rk in different ways
13:59 Limbic_Region but they work well enough for what I do so I don't b1tch
13:59 nothingmuch the last straw was when i shipped a META.yml with a serialized version object
13:59 nothingmuch *after* checking the M::B changelog
13:59 nothingmuch and seeing that this was resolved
13:59 nothingmuch and making sure i was up to date
13:59 nothingmuch *sigh*
13:59 nothingmuch i like M::B much better than EU::MM, but only in theory
14:00 audreyt oh, and you committed a YAML change that broken that ;)
14:00 nothingmuch heh, oops =)
14:00 nothingmuch i guess that's karma for ya
14:00 audreyt in any case. I guess the plan is to spend Friday to triage as much testfail as possible
14:01 audreyt and if I can get it down to 100ish or so, then make a point release
14:01 audreyt (100ish should mean zero or few regressions)
14:01 audreyt would appreciate chglogging help as usual
14:01 * gaal is partially available tomorrow and saturday (and maybe friday morning IDT)
14:01 audreyt another issue is whether to turn on p5embed by default
14:02 audreyt I really would like that, but there's probably no time to roll in PGE->PCR switch
14:02 gaal fwiw I don't object to that
14:02 nothingmuch http://www.pbfcomics.com/?cid=P​BF015AD-Freaking_Vortex.jpg#84
14:02 lambdabot Title: The Perry Bible Fellowship
14:02 audreyt it breaks "make ghci" though. need to fix that
14:02 audreyt ghci doesn't like either DynaLoader.a nor DynaLoader.o here
14:02 nothingmuch audreyt: are you at YAPC?
14:02 audreyt no, ENOFUNDING
14:02 nothingmuch oi!
14:03 audreyt and I already ahve to pay myself for oopsla/dls
14:03 gaal audreyt: is there a motivation for shipping p5emb always on if we don't get the p5rx switch done?
14:03 audreyt gaal: I think so, on cultural grounds
14:03 nothingmuch $$$--
14:03 gaal the only one I see is to get more bug reports early...
14:03 audreyt i.e. if you can expect "use perl5:DBI" to _always_ work
14:03 gaal that too
14:03 audreyt then there's possibilities.
14:03 audreyt and yes, to get feedback on buildfails.
14:04 gaal audreyt: OK. So let's at least depend on a reasonable 5.8... .4?
14:04 audreyt hmm?
14:04 audreyt 5.8.2 is good enough unless you use UTF8 heavily
14:04 audreyt which we don't
14:04 audreyt and we don't need bincompat, which means 5.8.0 is good enough too
14:04 gaal which of them came with the EUMM that we need?
14:05 nothingmuch what is the actual utf8 change in 5.8.3, btw?
14:05 gaal we have an explicit EUMM min version dep
14:05 gaal now would be a good time to get rid of it
14:05 audreyt nothingmuch: not randomly corrupt memory when you do regex on it.
14:05 nothingmuch heh
14:05 audreyt gaal: care to check with corelist?
14:05 gaal I think we want that :)
14:05 gaal sure
14:05 nothingmuch i always figured it was stuff like supporting more utf8 classes, etc
14:05 * audreyt is without any tools on this G4
14:05 audreyt nothingmuch: er no. pretty basic stuff, like substr() not cutting into half of character sometimes
14:06 nothingmuch *nod*
14:06 * audreyt remembers the days where RT triggered half of the UTF8 bugs
14:06 * nothingmuch is happy all that predated him
14:07 nothingmuch i only had to deal with unicode at around 5.8.6ish
14:07 nothingmuch and that could have been plain 'use bytes', tbh
14:07 nothingmuch i didn't actually fiddle with the data, i just read it and wanted to feel good about it ;-)
14:07 gaal okay, as far as EUMM is concerned 5.8.1 is OK
14:07 audreyt 581 then.
14:07 gaal (corelist -a)++
14:08 gaal audreyt: but isn't it worth making the dep higher to avoid bogus bug reports?
14:08 nothingmuch ooh, nice
14:08 audreyt I like being able to depend on Encode and newIO and safe signals :)
14:08 audreyt gaal: don't think there'll be many bogus bug reports actually.
14:08 audreyt can certainly reevaluate later
14:08 gaal you're right. oka :)
14:08 gaal y
14:09 audreyt rebuilding evalbot with p5embed
14:09 * nothingmuch goes back to pecking his keyboard
14:10 * gaal continues to avoid c++ work
14:10 Lorn joined perl6
14:11 audreyt gaal: so you think you can chglog a bit in the next 3 days?
14:11 * [particle] wonders if someone will try to build pugs with 5.8.1, or just wait for the first bug report
14:11 audreyt or should we look for other vict^Wvolunteers?
14:11 audreyt [particle]: yes.
14:12 audreyt (yes, someone will try, and that will be the first bug report)
14:12 [particle] i figured ;)
14:12 miyagawa_ joined perl6
14:13 gaal hehe, if someone steps up I will yield them the honor, but if noone does I'll moose it
14:13 audreyt Limbic_Region: got some time to help with chglogging? :)
14:15 Limbic_Region chglogging?
14:15 Limbic_Region change logging
14:15 Limbic_Region sure
14:15 audreyt TimToady: remember to sign in to http://code.google.com/soc/mentor_home.html to get Sage his money :)
14:16 lambdabot Title: Google Code - Google Summer of Code - Edit Profile
14:16 Limbic_Region audreyt - give me a range of commits and I will find some time at lunch
14:16 Limbic_Region circa 2 hours?
14:16 Limbic_Region or did you have something more specific in mind
14:18 gaal Limbic_Region: we usually start with the last release - you can see it at the top of the current changelog -- and move forward in time. every time we take a break, we commit and write in the new section where we stopped.
14:19 Eimi joined perl6
14:20 Limbic_Region gaal - ah, so I am to take the first watch?
14:21 Limbic_Region well, I can't get started for a couple of hours because I am supposed to be finishing up a $work project
14:21 Limbic_Region so I will check back in around lunch time
14:23 gaal Limbic_Region: me either, so just go ahead when you get a moment, leavning a note on the channel that you actually did,
14:23 gaal that way there can't be duplicate efforts.
14:23 gaal (I probably won't have time for this in the next 16 hrs anyway)
14:24 gaal in fact, gotta go now :)  moose &
14:26 * audreyt finally got her keys, so will moose as well &
14:28 evalbot_12874 joined perl6
14:32 cookys joined perl6
14:37 miyagawa_ joined perl6
14:41 nothingmuch ya know the is cached trait for subs?
14:42 nothingmuch i think it should get a feature, for objects
14:42 nothingmuch so that it's cached per instance
14:42 nothingmuch but over other methods/attributes
14:42 nothingmuch that is, the caching of this method will expire if the caching of method so and so expired
14:42 nothingmuch and the caching of this method expires if attr foo has changed
14:43 nothingmuch and, of course, an api to explicitly un cache things
14:43 nothingmuch moose has 'lazy => 1', which is *immensely* useful
14:43 nothingmuch and an evil way to clear lazy fields
14:43 nothingmuch and triggers can clear lazy fields
14:45 svnbot6 r12875 | fglock++ | v6 - added Str, Pair compile-time objects
14:47 pasteling "[particle]" at 144.81.84.139 pasted "v6 test failures, what did i do wrong?" (53 lines, 2.8K) at http://sial.org/pbot/19362
14:49 vel joined perl6
14:50 Odin- joined perl6
14:58 gaal nothingmuch: as usual you want to leave nothing to the programmer :-)
15:01 nothingmuch gaal: i've been using this, and liking this a lot
15:01 nothingmuch it really helps write code haskell style
15:01 nothingmuch you exrpress it how it is
15:01 nothingmuch and don't worry that it's horribly inefficient, because hey! it's cached =)
15:02 nothingmuch (especially since when only expressed once it actually *is* efficient)
15:08 gaal the question is whether the API for this doesn't change the language too much
15:10 nothingmuch well, it
15:10 nothingmuch s not a huge difference
15:10 nothingmuch is cached over instance methods  will probably declaare an implicit slot in the instance
15:10 nothingmuch for nullary methods that will be just a value
15:10 nothingmuch for argument methods it will contain a hash whose key is probably .valueid of *@args
15:12 dakkar_ joined perl6
15:13 gaal you gotta support user defined normalization then... mjd wrote about this exact problem i think, how he got many patches/requests for features to memoize
15:14 gaal come to think of it normalization you have to give an api for anyway with is cached
15:14 gaal but you get my point
15:18 nothingmuch yes, of course
15:18 nothingmuch 'is cached' exists
15:18 nothingmuch i personally don't want to deal with it
15:18 nothingmuch it's a problem for memoization via normalization
15:18 nothingmuch which is a harder problem than i'm bargaining for
15:19 nothingmuch otoh consider my $sum = Sum.new( x => 5, y => 10 );
15:19 nothingmuch $sum.result;
15:19 nothingmuch this is a dumb, trivial example
15:19 nothingmuch if result is defined as a cached method { $.x + $.y }
15:19 nothingmuch cached over $.x and $.y
15:19 nothingmuch is cached($.x, $.y)
15:19 integral this 'is cached' is going to be provided by a module, right?
15:20 nothingmuch integral: i dunno
15:20 nothingmuch it seems core
15:20 nothingmuch which is IMHO quite.... insane
15:20 nothingmuch but *shrug*
15:20 nothingmuch the case of caching i'm interested in is much simpler
15:20 integral *nod* definately insane
15:20 nothingmuch in Moose i would declare result as a lazy attr
15:20 nothingmuch whose default value is the method call 'sum_parts' or something like that
15:21 nothingmuch and as long as the parts are ro it makes sense
15:21 nothingmuch if they are rw, i
15:21 gaal (sorry, gotta go again.. will packlog or p6-l this?)
15:21 nothingmuch need to clear the attr on any set of $x or $y
15:21 gaal s/pa/ba/
15:21 nothingmuch i'll p6l
15:21 gaal nothingmuch++
15:21 gaal &
15:27 miyagawa_ joined perl6
15:28 justatheory joined perl6
15:53 marmic joined perl6
15:57 lisppaste3 joined perl6
16:00 svnbot6 r12876 | audreyt++ | * Disable embedding flags for "make ghci" as it doesn't work yet.
16:00 svnbot6 r12876 | audreyt++ | * Enable Perl 5 embedding by default.
16:00 svnbot6 r12876 | audreyt++ |   (Set the PUGS_EMBED environment variable to "!perl5" to disable this.)
16:00 svnbot6 r12876 | audreyt++ |   This is one of my last-one-before-sleep commits, so if this broke
16:00 svnbot6 r12876 | audreyt++ |   builds horribly, please feel free to revert it...
16:05 elmex joined perl6
16:16 Psyche^ joined perl6
16:26 Limbic_Region ok, gaal and audreyt aren't around - anyone know what rev was last changelogged?
16:26 Limbic_Region = Changes for 6.2.12 (r10930) - June 26, 2006 is in the change log
16:27 Limbic_Region but above that is = Changes for 6.28.0 (rXXXXX) - July XX, 2006
16:27 Limbic_Region with content below - so I am guessing a bit of work was done since 10930 but no rev is given for how much
16:27 [particle] what rev is the changelog?
16:29 Limbic_Region particle - let me see if I can find out
16:29 [particle] svn log ChangeLog
16:30 Limbic_Region that's gives the remote rep ver not the local - cool
16:31 Limbic_Region particle - I am not sure that is safe
16:31 [particle] well, you know it hasn't been updated since r12750
16:31 Limbic_Region what I mean by that is I am not sure that the change to the changelog at that revision was cumulative
16:32 [particle] you can svn diff
16:32 Psyche^ is now known as Patterner
16:32 [particle] svn diff -rPREV:HEAD ChangeLog
16:32 Limbic_Region we are on 17876 now
16:32 Limbic_Region I am positive there have been more than 176 commits since the last cumulative update
16:32 [particle] not according to svn info
16:33 Limbic_Region particle - no, you are missing what I am saying
16:33 [particle] oh, since last release
16:33 [particle] sure, just browse the diffs
16:33 [particle] or svn blame
16:33 ruz_ joined perl6
16:33 Limbic_Region yeah - looking at the diffs may give me some idea of what changed
16:33 Limbic_Region but it isn't going to tell me from where the change came
16:34 Limbic_Region IOW - I still have no idea what commits have been chronicled at what hasn't
16:34 ofer0 I had a feeling that "svn blame" has been influenced by Larry. Is that true?
16:34 [particle] that can only be helped by good commit messages
16:34 Limbic_Region that is without doing some pretty intense reviewing of all comitts
16:35 [particle] when you commit, do something like <changelog up to r99999>
16:35 [particle] so it's easier on the next folks :)
16:35 Limbic_Region particle - that's what gaal told me was supposed to be in there
16:35 Limbic_Region it's not
16:35 Limbic_Region that's why I am asking here
16:35 [mago] joined perl6
16:35 Limbic_Region you feel like doing the change logging then?
16:36 [particle] i can't. production release prep for $work
16:36 [particle] last good note i see is r10930
16:36 [particle] * This be Pugs, version 6.2.12.
16:37 [particle] you can bet that's up to date
16:37 Limbic_Region particle - I just noticed that the log history shows number of lines
16:37 Limbic_Region that's probably what I will use then
16:37 [particle] ok, glad i could help some
16:37 * Limbic_Region only has a half hour of lunch left himself
16:37 * [particle] has no lunch (or breakfast) today
16:40 Limbic_Region 1946 commits to check in 20 minutes - I doubt I will get very far.  Perhaps the best I can do is update the changelog to reflect 10930 to save the next person the trouble of tracking it down
16:41 [particle] even that will help :)
16:42 Eidolos is now known as Testfrog
16:44 Testfrog is now known as Eidolos
16:46 svnbot6 r12877 | Limbic_Region++ | Note to indicate where changelogging should begin and that I am not working on it
16:52 Eidolos is now known as Testfrog
16:52 Testfrog is now known as Eidolos
17:03 amnesiac joined perl6
17:14 bpphillips left perl6
17:14 svnbot6 r12878 | gaal++ | * another bunch of svn:ignore props
17:14 crem joined perl6
17:16 frederico joined perl6
17:16 gaal perl5/Pugs-Compiler-Perl6 authors, please make it so that tests copied over all go under moretests/ or something, so we can svn:ignore that
17:18 frustrato joined perl6
17:19 gaal English question: I'm looking for a term that includes parameters and arguments, but nothing else
17:19 avar Paramaters and arguments in what context?
17:19 [particle] else meaning results and returns?
17:19 gaal "options" would be the crummy unix-heritage answer....
17:19 gaal avar: of a function declaration / call
17:20 gaal context: Parser.Operator has a function called makeCircumOp
17:20 PerlJam gaal: why does the term need to talk about both parameter and arguments?
17:20 gaal but it's wrongly named, because it's hardwired to only parse "actual" args
17:21 gaal in refactoring, I will expand it to parametrically (hah) also accept signatures
17:22 PerlJam gaal: I think you'll need to make up a term :)
17:22 gaal so the set of all *real* circumfix operator will be constructed by makeXXXOp (nee makeCircumOp), *plus* whatever future circum ops we have that don't have anything to do with args/params
17:23 [particle] multi?
17:23 gaal no.. the current use for this is just one parser: for captures
17:23 PerlJam makeCapture doesn't work?
17:23 [particle] isn't that called a Capture in Perl 6?
17:23 gaal \( $moose: $elk )
17:23 PerlJam I think I lost some contet
17:24 gaal and now I'm about to add Signatures:
17:24 PerlJam er, context
17:24 gaal :(Int $moose: Str $elk, Caribou $x? = 'lola')
17:25 gaal it just so happens that the haskell type signature for Capture and Signature parsers is the same
17:25 gaal but this is an incorrect assumption for circumfix ops in the general case
17:25 gaal because this signature is:
17:26 gaal RuleParser (Maybe Exp, [Exp])
17:26 gaal that is, maybe an invocant, and a list of everythign else
17:27 gaal the *general* type for a circumfix parser is RuleParser [Exp]
17:27 gaal okay, I think in homage to Miranda July I'll name this 'makeArgyOp'
17:31 hexmode joined perl6
17:39 [mago] joined perl6
17:55 Limbic_Region gaal - just popping my head in, I didn't get a full hour at lunch and what time I did have was mostly spent tracking down what revision to start at
17:55 Limbic_Region sorry I couldn't be of more help
17:55 * Limbic_Region & # work
17:58 aufrank joined perl6
18:03 gaal Limbic_Region: no problem :)
18:04 nothingmuch http://lambda-the-ultimate.org/node/1707
18:04 lambdabot Title: Gradual Typing for Functional Languages | Lambda the Ultimate
18:07 xinming_ joined perl6
18:21 Daveman Hi gaal :)
18:22 gaal hola
18:48 svnbot6 r12879 | mjreed++ | Add minimal tests for tr/// operator.
18:48 svnbot6 r12880 | mjreed++ | Fix plan count.
18:50 SamB joined perl6
18:52 SamB joined perl6
18:57 ruz__ joined perl6
19:00 SamB joined perl6
19:06 larsen joined perl6
19:08 fglock joined perl6
19:31 Revision17 joined perl6
19:32 svnbot6 r12881 | fglock++ | v6 - double quoted text still need '"', in order to expand escaped chars
19:33 fglock [particle]: re paste, I can't replicate the same v6 test failures - maybe you need to update Data::Bind?
19:36 ToTimkopf joined perl6
19:38 svnbot6 r12882 | audreyt++ | * add "make ctags" and "make etags" targets to simplify
19:38 svnbot6 r12882 | audreyt++ |   generation of Vi and Emacs tags files, based on the accurate
19:38 svnbot6 r12882 | audreyt++ |   location information from GHCi.
19:38 svnbot6 r12882 | audreyt++ |   (requires GHC 6.5+.)
19:44 svnbot6 r12883 | fglock++ | v6 - fixed null strings (was broken in the new string parser)
19:45 frederico joined perl6
19:45 wolverian nothingmuch, whoa.
19:45 nothingmuch wolverian: ?
19:45 wolverian the gradual typing paper
19:46 nothingmuch ah
19:46 * nothingmuch has yet to read it
19:46 nothingmuch only skimmed
19:46 nothingmuch i didn't write it though ;-)
19:46 nothingmuch no "whoa" for me
19:52 fglock nothingmuch: do you know if Class::MOP can be used to create anon classes?
19:52 nothingmuch yes, it can
19:52 nothingmuch but they are not truly anon
19:53 nothingmuch (e.g. it's not an AUTOLOAD hack, they just exist in a secret package... impl details stolen from Class::Prototyped)
19:56 svnbot6 r12884 | mjreed++ | Mental note: try running tests before checking in.  Sigh.
19:57 fglock nothingmuch: I wonder if I can emulate roles by just using an extra level of indirection in the object method calls
19:58 fglock or is this too ugly
20:01 fglock nothingmuch: like: $obj->call_method( 'meth', @args )
20:02 nothingmuch fglock: i'm working on some goodies for you
20:02 nothingmuch http://code2.0beta.co.uk/moose/​svn/notes/nuffinmop/runtime.txt
20:02 nothingmuch ideally if you provide this interface, i can emulate it in p5 space
20:07 fglock nothingmuch: while I read it - would you take a look at the v6 emitter output? maybe you can find some obvious things that I could change
20:07 nothingmuch okies
20:08 mauke_ joined perl6
20:12 pen1 joined perl6
20:13 ruz__ is now known as ruz
20:15 svnbot6 r12885 | masak++ | [READTOO]
20:15 svnbot6 r12885 | masak++ |   added gradual typing paper, referenced just now by nothingmuch
20:15 masak :)
20:15 nothingmuch heh
20:15 nothingmuch it's referenced by LtU you silly people!
20:15 masak yes, but READTOO references LtU as well
20:16 masak it's the fact that it's referenced on #perl6 that makes it worth referencing in READTOO
20:16 masak (as far as I gather)
20:17 masak I have to say that READTOO is a hell of a reading list nowadays
20:17 masak I wonder how many papers I would get through
20:17 masak before my head exploded
20:18 * aufrank just read gradual typing
20:18 aufrank for the parts I actually got, it seems really really clean
20:20 kanru joined perl6
20:25 mauke joined perl6
20:31 ruz_ joined perl6
20:42 svnbot6 r12886 | fglock++ | v6/v6 - README update, minor fixes in P6Rule.pm
21:00 cjeris left perl6
21:11 masak hm, IRC spam
21:13 Limbic_Region joined perl6
21:23 svnbot6 r12887 | fglock++ | v6 - fixed sub/hash in emitter
21:23 svnbot6 r12887 | fglock++ | v6 - less tests in MANIFEST for next release
21:33 diakopter joined perl6
21:42 SubStack joined perl6
21:43 Limbic_Region audreyt - if you backlog, I think the enable p5 embedding by default is b0rk on Win32.  If I do not set PUGS_EMBED="perl5" it does not compile at all, but setting it - it does
21:49 rashakil joined perl6
21:50 rashakil left perl6
21:52 frederico joined perl6
22:08 svnbot6 r12888 | fglock++ | v6 - fixed parsing of ?\194?\171...?\194?\187 quotes
22:09 fglock left perl6
22:31 takanori joined perl6
22:31 ingyfoo joined perl6
22:32 markstos joined perl6
22:46 amnesiac_ joined perl6
22:57 ingy joined perl6
23:12 nothingmuch • [syeeda:~] nothingmuch % perl -e 'my $obj = {}; my $sub = sub { warn @_ }; $obj->$sub'
23:12 nothingmuch HASH(0x1801380) at -e line 1.
23:12 nothingmuch awesome
23:14 wolverian er. I didn't know that.
23:14 * nothingmuch neither
23:14 wolverian oh.
23:14 nothingmuch =D
23:14 wolverian it's because $obj->$sub is really $sub->($obj)
23:14 nothingmuch my first perl secret =)
23:14 nothingmuch yes
23:14 nothingmuch but the thing is that my $method = $string || $code_ref;
23:14 nothingmuch DWIMs
23:15 nothingmuch so it *is* object dispatch
23:15 nothingmuch but it just short circuits before checking the invocant
23:15 nothingmuch when the method is a code ref
23:15 nothingmuch </guessing>
23:16 wolverian symrefs are evil ;)
23:16 nothingmuch symrefs?
23:16 nothingmuch oh you mean method names? ;-)
23:17 wolverian sure, it's okay if you're perl!
23:17 wolverian time to sleep :) cheers
23:17 nothingmuch likewise
23:17 * nothingmuch goes to have nightmares about purely functional class protectedslot allocation
23:31 amnesiac_ is now known as amnesiac
23:43 mako132_ joined perl6
23:45 markstos ?eval use CGI; my $q = CGI.new; say $q.perl
23:45 evalbot_12874 is now known as evalbot_12888
23:45 evalbot_12888 pugs: *** Unsafe function 'use' called under safe mode     at -e line 16, column 7-94
23:48 pasteling "markstos" at 12.176.101.89 pasted "mystery: passing named arguments through a wrapper flattens in them." (10 lines, 228B) at http://sial.org/pbot/19376
23:48 markstos I'm trying to pass on named arguments through a wrapper, but they are mysteriously getting flattened. Pastling has details.
23:48 * markstos gets some food
23:52 Limbic_Region joined perl6

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

Perl 6 | Reference Documentation | Rakudo