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