pugscode.org/ | nopaste: sial.org/pbot/perl6 | ?eval [~] <m oo se> | We do Haskell, too | > reverse . show $ foldl1 (*) [1..4] | irclog: irc.pugscode.org/
Set by diakopter on 11 July 2007.
agentzh dlocaus: re Trac interface: dev.pugscode.org/changeset/18737 02:37
lambdabot Title: Changeset 18737 - Pugs - Trac
pugs_svn r18738 | moritz++ | [irclog] fixed a templated that caused broken links on the index page 06:48
pugs_svn r18739 | agentz++ | [PCR] some POD added 09:00
ruoso ldeniau.web.cern.ch/ldeniau/oopc.html 10:26
lambdabot Title: Object Oriented Programming in C
ruoso ^ interesting C Object System...
wolverian COS is pretty clean compared to gobject.. :) 10:29
ebassi it has more boilerplate macros as well, compared to gobject :-) 10:33
wolverian yes :) 10:40
pugs_svn r18740 | agentz++ | [PCR] updated my email address to [email@hidden.address] 11:09
agentzh PCR 0.27 is on CPAN now :) 11:11
search.cpan.org/~agent/Pugs-Compiler-Rule-0.27/
lambdabot Title: Agent Zhang (&#31456;&#20134;&#26149;) / Pugs-Compiler-Rule-0.27 - search.cpan.o ...
ruoso fglock, had you take a look in the link I just posted?
fglock ruoso: looking 11:12
fglock agentzh++ 11:23
moritz_ agentzh++ indeed 11:36
agentzh thanks :) 11:58
pugs_svn r18741 | agentz++ | [PCR] added a SEE_ALSO section to gen-tracer-view.pl's POD 12:20
fglock agentzh: do you know how is <?xyz> different from <?before <xyz> > and from <before <xyz> > ? 12:39
agentzh fglock: no, sorry :( 12:40
fglock: haven't read S05 for a long time ;) 12:41
fglock also, how to tell if <.ws> is a sub-token or a method call
agentzh: np 12:42
pugs_svn r18742 | fglock++ | [kp6-perl5] refactored class initializations, docs 13:38
pugs_svn r18743 | fglock++ | [kp6-kp6] t-bootstrap/ - temporary tests for debugging the bootstrapped compiler 14:00
pugs_svn r18744 | fglock++ | [kp6-kp6] more tests 14:03
pmurias fglock: why do you write this tests in p5? 14:23
pmurias fglock: where should the perl6 version of mangle_name live? 14:32
moritz_ pmurias: perhaps Runtime::Perl6::Name ? 14:33
or ::Names or something
pmurias or Emit::Perl5? 14:34
fglock: kp6 treats '\'' into "\\'" 14:54
s/into/as/
pugs_svn r18745 | pmurias++ | [onion] Emit::Perl5 emits hello world (output broken by wrong handling of '\'' in kp6) 14:57
fglock b 15:04
pmurias: re write in perl 5, because these are just for debugging 15:05
fglock longs for a non-smoking workplace 15:08
pmurias fglock: how is work on getting the grammars to work going? 15:18
fglock the regexes seem to work fine, but there is still some problem in the closures 15:24
ruoso globalnerdy.com/2007/10/23/the-real...d-harmful/ 15:25
lambdabot Title: Global Nerdy 􏿽xBB Blog Archive 􏿽xBB The REAL Reason GOTO is Considered Harmful, tinyurl.com/24etxx
fglock I needs a public caldav server for running some tests
ruoso heh
fglock * need 15:27
ruoso fglock, davical formerly rscds 15:28
pmurias does #line impose a runtime penaly? 15:59
rgs what, the cpp directive ? 16:00
pmurias in perl5 16:01
rgs nope
pmurias thought saw, but wasn't certain
rgs zero penalty at runtime, infinitesimal one at compiletime
(as in: if you're worried about such penalties, remove all your comments first :) 16:02
PerlJam comments don't exist at run-time :)
rgs unless you're MAD
pmurias rgs: kp6 dosn't emit comments
TimToady it would be possible for #line to have a runtime effect, but that would also be very small
you'd have to be relying on the line number somehow 16:03
and feed it a large line#
PerlJam #line 9827398723628728376283746 (perl, please don't barf)
TimToady for example, if your program took the factorial of the current line number...
pmurias taking the factorial was the example which also came first to my mind 16:05
rgs and is it a sign of sanity ? 16:06
TimToady is the sign of sanity + or -?
PerlJam pmurias: rejoice! Your brain is warped into a similar configuration as TimToady's
pmurias: er, I mean ... you poor poor soul
TimToady one of us must be redundant... :) 16:07
pmurias ;)
TimToady rudundant array of insane developers
PerlJam less like an array and more like a hash I think 16:09
TimToady maybe it's a match
PerlJam Or some chaotic thing
[particle] smartmatches against a Bag of Junctions full of filehandles containing #line decls 16:11
TimToady just put it into the IO monad, and everything will work out 16:14
or rather, you will have worked everything out by the time the compiler is happy :/ 16:15
[particle] hope i've got enough memory 16:18
TimToady memory is a necessary but not sufficient condition to make the Haskell compiler happy :) 16:33
[particle] happiness is a warm memory bank
dlocaus I was snooping around yesterday and I noticed that svn.perl.org/perl6/pugs/ is at revision 14468 and svn.pugscode.org/pugs/ is at 18745 ... is this a problem? :) 16:38
lambdabot Title: Revision 14468: /pugs
[particle] svn.perl.org seems like an out-of-date mirror 16:39
TimToady dlocaus: did you feel the earthquake last night?
dlocaus urhmm... shouldn't "perl.org" be up to date?
oh man...
I was afraid my dog would pee on the bed. :) 16:40
[particle] svn.pugscode.org is the primary repo. i don't know who made the perl.org mirror, or why
TimToady I figured you did, given your pacbell location
dlocaus :)
TimToady which is very close to my home's
dlocaus The epicenter is about 2 hours drive south of me. 16:40
TimToady I'm also on snfc21
dlocaus oh cool!
TimToady though not as far as irc knows... 16:41
let's see, that puts you at about Santa Rosa
or Dunnigan :)
dlocaus a little bit south of that... about a cross the bridge. :)
Its nice to know my dog trusts me to fix everything, I just wish she wouldn't let me know during an earth quake. 16:42
TimToady our cats always wanted us to stop the rain 16:42
I was on top of a stepladder when it hit, so now I've fulfilled one of my life's goals. 16:43
Tene fears a pun. 16:44
dlocaus I remember when one of my cats first saw snow. His eyes just popped wide open. Of course, I had to throw him into the yard. I got tired of him testing the snow with his foot. 16:45
TimToady cats always do that in the doorway even when there isn't snow
dlocaus well, I was out there with him watching it... freezing... 16:46
TimToady anyway, the epicenter was only about 15 miles east of me, so I got a pretty good ride
dlocaus what were you doing on a step ladder at 8pm? 16:47
TimToady I was about to do a circuit test on the tweeter of the right speaker in my church, which has refrained from tweeting. 16:48
the speaker, not the church 16:49
Tene So the church tweets?
TimToady it's an ancient Yamaha speaker that weighs about two tones
*tons
dlocaus uhrmm... I don't know much about electricity, but the earthquake's timing wasn't that great... ~zap~
TimToady well, 1 volt is not usually much of a problem 16:50
funny thing is that I was the guy who put the extra earthquake straps on those speakers 15 years ago
'cause they're right over some of the exits, and I could just imagine them coming down on people panicking and running out... 16:51
dlocaus Test::Harness
TimToady actually, they only weigh about 119 lb each...
but that would still be a bad day for someone 16:52
anyway, I didn't realize at the time that it could have been a bad day for me. :) 16:53
kolibrie so the straps held?
dlocaus I was thinking of the next big one... where the west coast of california was supposed to sink into the sea.
TimToady yup
[particle] so are sf and la closer or further apart now? 16:54
TimToady not really, wasn't the SAF this time 16:54
[particle] oh well
TimToady but given the overall trend here, they're probably a few fractions of an inch further apart now 16:55
dlocaus Calvadarous(sp?)
TimToady calavaras
interesting question is now whether the hayward will pop off, given this was right at one end of it 16:56
dlocaus I've got my emergency food & supplies ready for the big one. I haven't been able to figure out what to do about water though...
The problem mostly is trying to figure out how to get a 55gallon (208 liters) into my house. 16:57
55 gallon drum.
TimToady water is divisible, y'know... 16:58
dlocaus its the drum that is the problem.
dlocaus it won't fit in my car. 16:58
and shipping is expensive.
dlocaus also... I'm not sure my floor would hold 55 gallon's of water :) 16:59
[particle] how far are you from a water source? filters and pumps are cheap. 17:01
dlocaus that's not a problem, I can run a hose into the house np
or do 1 gallon 2x a day by hand.
its getting the drum and transporting it into my house. 17:02
[particle] will be drinking filtered and carried water for the next 3+ weeks
TimToady what's so sacred about 55 gallons?
dlocaus no one can steal it.
also, since it's a common container its pretty cheap.
[particle] they do roll.
dlocaus I would like to see someone roll a 55 gallon container on the hill I'm on. :) 17:03
TimToady rock on. now all we need is the drummer. 17:03
dlocaus svn.pugscode.org/pugs/v6/v6-KindaPe...chSugar.pm 17:04
package KindaPerl6::Runtime::Perl5::DispatchSugar::Dispatch;
That package has an AUTOLOAD routine in it. Does anyone have an idea of how I can find out if it is being used?
lambdabot tinyurl.com/27k624
[particle] change the routine to die when called?
TimToady darn it, now you've gone off topic. :)
dlocaus [particle]: that only works if the code I try, has an execution path that will invoke it. 17:05
[particle] is there a test suite to run?
dlocaus [particle]: not sure. 17:06
there is a test suite, but I don't know how through it is.
dlocaus I'll give that die a try. 17:07
pmurias dlocaus: i used warn last time
it's only used from MOP 17:08
dlocaus so, the AUTOLOAD routine is actually used? 17:09
pmurias yes 17:12
what would be the use of the module otherwise?
dlocaus I was hoping it might be some unused code that someone had put in there. 17:13
pmurias AUTOLOAD works on methods also
pugs_svn r18746 | dlo++ | Fixed a comment, that sugar_off was not in use. It is used in t/p5/test_dispatch_sugar.t 17:15
pmurias dlocaus: you documented what the AUTOLOAD is used for yourself ;) 17:18
dlocaus pmurias: Yes, I know what AUTOLOAD is used for, I don't know if it is in use. :) 17:26
dlocaus I'm sorry, I should know this, but how do you run the test suite for kp6? 17:27
fglock perl Makefile.PL ; make test 17:32
dlocaus oh duh 17:35
pugs_svn r18747 | pmurias++ | INTENTIONS section has been changed to NOTES (content also makes sense now) 17:44
dlocaus pmurias: ping 18:02
pmurias: when you said to remove Runtime::Perl5::DispatchSugar, a few days ago, you ment replacing $var = sugar { }; with $var = bless { }, ...Runtime::Perl5::DispatchSugar::Dispatch'; correct? 18:03
pmurias: irclog.perlgeek.de/perl6/2007-10-29#i_133836 18:05
lambdabot Title: IRC log for #perl6, 2007-10-29
fglock dlocaus: $var = { ... }; 18:06
dlocaus fglock: ?
fglock perl 6 objects can be plain perl 5 hashes 18:07
pmurias dlocaus: yes
no
dlocaus yes/no? 18:08
pmurias i meant what fglock said
dlocaus but MOP.pm isn't perl6, but perl5. $var has to be blessed into DispatchSugar::Dispatch so that the AUTOLOAD will still be invoked.
pmurias you can use ::DISPATCH($obj,'method',...) instead of $obj->method(...) 18:09
fglock i meant what pmurias said :) 18:10
dlocaus pmurias: that is what I was looking into earlier, there are a lot of instances of $obj->method is invoked via AUTOLOAD. How would I find them?
pmurias warn in the AUTOLOAD 18:11
or grep|ack|editor search on MOP.pm for '->'
dlocaus ok, I think I got it 18:17
dlocaus pmurias: ping 18:41
I'm not sure that removing $obj->method is a good idea.
::DISPATCH( $meta_Method, 'add_parent', $meta_Routine );
$meta_Method->add_parent($meta_Routine);
the later case is much more readable... 18:42
Do you still want me to go though with it?
pasteling "dlocaus" at 63.192.210.11 pasted "readability?" (21 lines, 394B) at sial.org/pbot/28366 18:45
pmurias dlocaus: most of the ::DISPATCH calls in MOP could be turned into a call to make_class 19:02
dlocaus pmurias: hurmm, not sure I'm up to that yet. 19:05
pmurias: let me finish with just turning it into ::DISPATCH...
pmurias i hope you aren't converting all of them by hand... 19:06
dlocaus :) 19:08
!no... no I'm not!
really!
pmurias should we believe you? ;) 19:09
moritz_ parrot has problems again with parallelized make 19:13
[particle]: are these problems known, or should I report them? 19:14
[particle] moritz_: it's been mentioned in channel iirc but please email the details to [email@hidden.address] with [BUG] in the subject 19:15
moritz_ [particle]: ok, will do 19:16
[particle] moritz_++
moritz_ I tried it twice, and both times it ended with a segfault. Now I started `script' and tried again, and it works like a charm 19:19
heisenbug
[particle] the best kind. 19:19
dlocaus pmurias: I've converted everything to ::DISPATCH, and removed Runtime::Perl5::DispatchSugar.pm 19:29
The test results look the same as before I futzed, with everything. Should I commit?
pmurias yes 19:30
dlocaus I've also removed DispatchSugar's test cases, and entries and Makefile.PL, still want me to commit?
pmurias yes
pmurias the policy here is to commit if in doubt and revert if wrong 19:31
dlocaus what about entires in compiled/perl5-kp6-mp6/...
[particle] ...and when you're sure of something, delete it and start over.
dlocaus pmurias: ping? 19:32
pmurias dlocaus: pong 19:34
dlocaus commit compiled/perl5-kp6-mp6/* changes as well?
pmurias yes 19:34
pmurias to save on the long compiles the practice here is to keep the compiled image in the repo 19:34
pugs_svn r18748 | dlo++ | Factored Runtime::Perl5::DispatchSugar out of MOP.pm. 19:38
r18748 | dlo++ |
r18748 | dlo++ | The test case for DispatchSugar was removed, since DispatchSugar was the only test case for the perl5 script/run_tests_kp6_mp6.pl section, the code
r18748 | dlo++ | now checks to SEE if there ANY test cases for the p5 code, before executing. A warning (not an error) is issued if there are no test cases found.
r18748 | dlo++ |
r18748 | dlo++ | This code produces the same test case results as before I started the refactoring.
r18748 | dlo++ |
r18748 | dlo++ | TODO: convert ::DISPATCH code into make_class()
dlocaus I get 1 karma point for each line of "svn commit" comment? hummm...
karma dlo
moritz_ @karma dla 19:40
lambdabot dla has a karma of 0
moritz_ @karma dlo
lambdabot dlo has a karma of 22
dlocaus pmurias: can you look that over before you go to bed? I'll do the next iteration if that looks good to you (convert it into make_class)
moritz_ dlocaus: the idea is to encourage verbose log messages
moritz_ ;-) 19:40
dlocaus yep, bring back the meaning of "kloc" 19:41
[particle] ok kpok (thousand points of karma)
pmurias dlocaus: ok
pmurias shower& 19:48
avar dlocaus: s/make_class/make_instance/ :) 19:50
dlocaus avar: can you elaborate on that more? 19:53
dlocaus avar: I think pmurias is refering to the sub make_class on line 214. 19:53
avar nothing, really:) 19:56
dlocaus ok 19:57
I'll be back in a bit.
pmurias @tell dlocaus looks fine 20:09
lambdabot Consider it noted.
pugs_svn r18749 | pmurias++ | [kp6] removed DispatchSugar completly 20:11
pmurias should done stuff in TODO be removed or marked as such? 20:12
moritz_ pmurias: marked 20:15
pmurias moritz_: there are there different styles of marking in TODO 20:21
spinclad has a cushion stuffed with kpok 20:25
Tene @karma spinclad 20:26
lambdabot spinclad has a karma of 0
spinclad that's cause i sit on em
spinclad good for cultivating bodhicitta 20:28
dlocaus hello 20:29
lambdabot dlocaus: You have 1 new message. '/msg lambdabot @messages' to read it.
pmurias dlocaus: rehi
spinclad wb dlocaus
dlocaus hi!
cool.
pmurias: would you have time to walk me though the conversion for ::DISPATCH to make_class() for one of the MOP.pm's objects? 20:30
pmurias yes
dlocaus cool
I figured out most of it, but there appears to be some nesting I can't quite figure out how to unravel
pasteling "dlocaus" at 63.192.210.11 pasted "convert this to make_class methods=> { new => ... }" (17 lines, 449B) at sial.org/pbot/28372 20:31
spinclad ah... that would be the metacircularity of the metaobject protocol
pmurias some stuff and the top needs to be node in a special way to bootstrap the metamodel
pasteling "dlocaus" at 63.192.210.11 pasted "and this one as well." (13 lines, 232B) at sial.org/pbot/28373 20:32
spinclad (i node that... really!)
pmurias spinclad: node that means? 20:34
spinclad node: past tense of new 20:35
sorry, can't make english today ... past tense of no. 20:36
dlocaus past tense of "no"?
knew?
spinclad right, that.
past tense of new
dlocaus ah, "I knew that.. really!", 20:37
dlocaus new => "something is brand new, just came out" 20:37
know => "a fact, information that is in one's head"
knew => "a fact, or infomration that one knows"
pmurias: ? 20:38
[particle] knowed => slangy word for 'knew', sounds like 'node'
dlocaus knowed?
[particle] it works better as an audible joke. 20:39
spinclad "a place in a network, that one was once aware of, but no more"
dlocaus eyes cross
[particle] don't trust anyone clad in spin 20:40
...they're bound to be lying :)
spinclad that's right!
pmurias dlocaus: working on it
spinclad snakes in the grass, belly crawlers, the lot of em! 20:41
spinclad (afk... dinner calls) & 20:42
dlocaus brb, the connection to my mouse died. I have to reboot. (Stupid DVI KVM Switch + Motherboard)
pugs_svn r18750 | pmurias++ | [kp6] moved ::Routine to make class 20:48
dlocaus reading... 20:50
pmurias dlocaus: anything unclear? I do not understand what do you mean by nesting 20:59
dlocaus bringing it up 21:00
dev.pugscode.org/browser/v6/v6-Kind...8749#L1849 21:01
lambdabot Title: /v6/v6-KindaPerl6/compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm - P ..., tinyurl.com/2omfse
dlocaus that code for instance APPLY, uses $::Method->{ _dispatch } -> new -> $::Routine 21:02
I find it a bit hard to follow the actual line of execution 21:03
dev.pugscode.org/browser/v6/v6-Kind...8749#L1864
lambdabot Title: /v6/v6-KindaPerl6/compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm - P ..., tinyurl.com/2omfse
dlocaus Why is there no ::DISPATCH($::Method ... ) to be returned, for your code. Your code just directly executes the sub routine. 21:04
dlocaus and why is there no $meta_Hash, $meta_HashCell, $meta_ArrayCell. 21:07
pmurias ...
pmurias you mean why i pass subs to make_class instead of Methods?
dlocaus for the $::Hash, $::HashCell, $::ArrayCell
well, no. I don't understand why we have a $meta_(something) 21:08
pmurias the $meta_(something) is the metaobject for a given class
$::(something) is the prototype
object 21:09
they are diffrent things
the $meta_(something) is the thing returned by .HOW() 21:10
dlocaus but you are using $meta_(something) to define the object. 21:11
my $meta_Role = ::DISPATCH( $::Class, 'new', "Role" );
$::Role = ::DISPATCH( $meta_Role, 'PROTOTYPE' );
pmurias yes 21:12
dlocaus where is $meta_Role->PROTOTYPE() defined? 21:13
pmurias 850
dlocaus: what's the point of the metaclass example? 21:15
dlocaus The documetnation at the bottom?
pmurias metaobject actually
yes
dlocaus I put it there, so people could get an idea of what the _isa inheriticae looked lik 21:16
like
All of the ::DISPATCH() content didn't make a lot of stuff to me, because I couldn't see what was being built. So I Data::Dumper::Dumper'ed it. 21:17
pmurias i figured it out it was dumped 21:18
can't people dump it themself if they want to?
dlocaus Yes. But why not dump it for them? They shouldn't have to execute the code to find out what is being produced. 21:19
pugs_svn r18751 | pmurias++ | [kp6] ::Cell is not used by anything
pmurias it needs to be updated anyway after DispatchSugar removal
dlocaus dev.pugscode.org/browser/v6/v6-Kind...8749#L1736 21:20
lambdabot Title: /v6/v6-KindaPerl6/compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm - P ..., tinyurl.com/2omfse
dlocaus true
dev.pugscode.org/browser/v6/v6-Kind...8749#L1849 (sorry, I ment this line)
lambdabot Title: /v6/v6-KindaPerl6/compiled/perl5-kp6-mp6/lib/KindaPerl6/Runtime/Perl5/MOP.pm - P ..., tinyurl.com/2omfse
dlocaus As I read that code... it says that Apply should point to an object $meta_method(?) that has a dispatched' method of new that returns the $self->{value}(and then some) 21:21
APPLY=> sub { 21:22
my $self = shift;
local $::ROUTINE = $self->{_value}{cell};
$self->{_value}{cell}{_value}{code}->(@_);
},
your code, just calls it directly.
what happened to the intervening object? 21:24
pmurias dlocaus: could you phrase it diffrently
dlocaus The original APPLY, is created via a new object created via ::DISPATCH( $::Method, 'new', &sub ) 21:26
however, your APPLY just directly accesses the &sub.
What happened to the new object that was created via ::DISPATCH( $::Method,'new', &sub )
pmurias i understand, wait
220 MOP 21:27
make_class calls ::DISPATCH($::Method,'new',&subroutine) for you
dlocaus ah, I got it
dlocaus ok. That was the nesting I couldn't figure out. 21:28
ty
pmurias ty == ?
dlocaus Thank you.
Tene www.ccs.neu.edu/home/dorai/t-y-sche...de_chap_14 -- interesting 21:29
lambdabot Title: Teach Yourself Scheme in Fixnum Days, tinyurl.com/hyw76
Tene amb 21:30
pmurias amb=? 21:32
dlocaus pmurias: line 1864 & 1866 are the same, did you mean for that to happen?
brb, must reboot 21:35
pugs_svn r18752 | pmurias++ | [kp6]
r18752 | pmurias++ | fixed repeated line
r18752 | pmurias++ | moved HashCell,ArrayCell to Hash.pm & Array.pm
pugs_svn r18753 | pmurias++ | typo & doc fix 21:36
Tene pmurias: explained at that link 21:38
pmurias sleep& 21:41
Tene I'm having trouble producing a concise description of amb. 21:46
moritz_ it's a backtracking tool that automagically guessed the right answer by backtracking 21:47
did I understand that correctly?
Tene Yeah. 21:48
moritz_ bed & 21:54
pugs_svn r18754 | dlo++ | A list of useful link that are commonly used. 23:11