svk sy -s 12103 //mirror/pugs | paste: sial.org/pbot/perl6 | pugs.blogs.com | pugscode.org | pugs.kwiki.org | www.treehugger.com/files/th_images/paradigm.jpg
Set by audreyt on 11 August 2006.
froh-doh <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"> should do without intervention on the web server 00:00
00:00 fglock left, DaGo joined
dduncan that has to be issued BY the web server 00:00
froh-doh no, the META is a tag INSIDE the web page
dduncan and it is better to do it in the HTTP headers if possible, though that's a reasonable fallback if you can't control the HTTP headers
froh-doh yes, I'd classify it as a "workaround" :) 00:01
dduncan I wonder if there's a .htaccess directive for this ... putting in actual HTTP headers for static documents
nevermind 00:02
that document says you can
the AddType directive
aufrank hey folks 00:04
marksto1 Hello, aufrank.
00:04 marksto1 is now known as markstos_
froh-doh dduncan: it seems that it should work inside .htaccess as well: httpd.apache.org/docs/2.0/howto/htaccess.html 00:05
dduncan well, good luck to you all, and now, back to $job for me ... & 00:08
00:08 dduncan left
aufrank I'm about to report a pugs build bug 00:09
this is on osx 10.4 with ghc 6.4.2
during make unoptimized
pasteling "aufrank" at 65.37.87.113 pasted "pugs build error during make unoptimized" (17 lines, 2.1K) at sial.org/pbot/18934 00:10
aufrank it seems like its looking for an installed libparrot, but I have never installed parrot 00:17
00:25 kanru joined 00:27 diakopter_ joined 00:33 miyagawa joined 00:35 diakopter joined 00:43 HXanadu joined
svnbot6 r12141 | lwall++ | Some quote tests obsolete with new q[[...]] rules. 00:56
r12142 | lwall++ | just trying to shorten the longest names in the TAP matrix, which is 01:05
r12142 | lwall++ | overflowing my web page...
markstos_ I see other people making commits, but for me the last 24 hours have returned this when I do "svn update" 01:06
svn: PROPFIND of '/pugs': could not connect to server (svn.openfoundry.org)
diakopter markstos_: stale dns? 01:07
cmarcelo Ā³/quit
01:08 cmarcelo joined
markstos_ diakopter: Maybe. Is there an easy fix for that? This is on a FreeBSD server. 01:10
diakopter mine reports 140.109.17.109
TimToady if that's not it, maybe something's blocking the http port? 01:11
bbl & 01:12
markstos_ Our firewall rebooted yesterday. Maybe that's related. :) 01:13
I have 140.109.17.109, so that's the same. 01:14
Yep, seems to be our firewall. Sigh, our sysadmin just went on vacation for three weeks, the firewall runs on a floppy, and I'm scared to touch it. Oh well. I could use a different machine for this. 01:15
01:30 meppl joined
aufrank I'm going to bed, but I'll backlog in the morning to see if anyone had any ideas about the build error I posted above 01:37
thanks for any help!
buubot purge!
01:42 tup joined 01:45 meppl joined
diakopter i keep getting authorization failed when trying to commit... can someone check my commit bit? 01:48
TimToady I see no diakopter on openfoundry. or do you have a different handle there? 01:57
diakopter WILSON is the id, I think...
I log in with the correct password, and it says "account is not verified" 01:58
TimToady there's a wilson_huangtw
diakopter so I go to the email I got when I registered
not that one
and both click the link and reply to the email but still, the account is not verified
I guess I could re-register with a different email address
perhaps they had to partially restore from backup a few days ago.. I initially created the account during the outage 02:01
oh well, i'll re-register
TimToady could be. I don't see an outstanding invite either, so maybe you need a new invite.
diakopter hmm; I never got an invite 02:02
TimToady what's your email? feel free to use " at ", etc. 02:03
if you didn't get an invite, what email are you looking at? 02:09
diakopter ah, there we go; that's the first time I got the "registration successful" email - matthew at veradox com
the registration with the openfoundry site 02:10
TimToady i think you need an invite from the pugs project. hang on. 02:11
okay, I clicked the pugs box to add you to that project. but I don't see a "wilson". did you use some other id? 02:13
diakopter the second time I used diakopter
TimToady nevermind
diakopter I guess wilson is klined
TimToady yes, it's there.
you should be good. 02:14
diakopter thanks!
TimToady np
dinner &
it's customary to add yourself to AUTHORS first, by the way, in case you didn't know... 02:16
and if you did know, well, it's still customary. :)
diakopter in AUTHORS, is the () name the PAUSE id or the svn id 02:17
TimToady CPAN
so yes, PAUSE
your svn id would be in quotes as your nickname. 02:18
and your chinese or klingon name goes on the right. :)
svnbot6 r12143 | diakopter++ | my first commit - adding myself to AUTHORS.
TimToady and there you are. welcome aboard, or abroad, if you're from Taiwan. :) 02:19
re-dinner &
02:30 markstos_ left 02:40 deleff joined 03:00 lumi joined 03:04 agentzh joined
agentzh a quick question: is it okay to move t/statements/closure_traits/ to t/closure_traits? 03:05
because the path t/statements/closure_traits/* is too long...
03:06 gaal joined
agentzh gaal: do you think it's okay to create a new t/closure_traits/ with the related tests under t/statements/? 03:07
i don't want closure_traits to be under t/statements anyway. 03:08
03:11 weinig is now known as weinig|foood 03:12 weinig|foood is now known as weinig|food
audreyt TimToady: I understand that "is rw" vivifies and "is ref" not 03:18
svnbot6 r12145 | agentz++ | moved t/statements/first.t to t/closure_traits/first.t
audreyt TimToady: how else is "is rw" able to coerce its argument into a lvalue, though?
sub f ($x is rw) {$x++} f(3)
is currently error is pugs. is that correct? 03:19
s:2th/is/in/
svnbot6 r12146 | agentz++ | moved t/statements/init.t to t/closure_traits/init.t 03:21
03:22 agentzh joined
svnbot6 r12147 | agentz++ | moved t/statements/exit_in_begin.t and statements/exit_in_check.t into t/closure_traits/. 03:22
03:31 gaal joined
svnbot6 r12148 | agentz++ | readded check.t to t/closure_traits/ 03:31
03:32 weinig|food is now known as weinig|fed
agentzh lunch & 03:32
03:32 agentzh left
cmarcelo audreyt: hey. judy build integration here is up, but a lot of tests are failing with latest rev, i'm going to check this now... any news on svk situation? 03:39
audreyt cmarcelo: sadly not, either they are all busy, or something 03:42
I'll keep prodding
oh wait
it's weekend, of course nobody is there ;)
cmarcelo sorry for crashing repo for svk users.. =P 03:44
03:45 weinig|fed is now known as weinig
audreyt it's not your fault :) 03:57
03:59 deleff left 04:18 amnesiac joined 04:22 soisoisoi joined 04:44 vsoni joined
gaal motning 04:47
audreyt hey 04:53
vsoni audreyt: hi
audreyt hi vsoni
vsoni audreyt: long time
aydreyt: how was OSCON 04:54
gaal agentzh: sure, if you think there'll be many of them. an alternative is subrouting/closure_traits/* or .t
audreyt: as you saw I punted on circularity :(
I'll add Capture to Pugs.Val.Code now, and then we can have some fun 04:55
audreyt yup
I wonder how to teach Cabal about #include
gaal why does cabal need to know?
audreyt if you change Code.hs 04:56
gaal oh. hmpf.
audreyt Val.hs needds to be rebuilt
cmarcelo folks, t/builtins/hashes/delete.t is supposed to be broken in trunk ?
audreyt yes
gaal well, the answer is not to fix cabal, fix ghc so #include can be thrown away :)
j/k 04:57
#include of things like version is legit
audreyt the test is bogus 04:58
gaal Cabal doesn't depeng on ghc, right?
so the fix can't be ghc-specifig
04:59 cnhackTNT joined
TimToady audreyt: f(3) is an error. hopefully detectable at compile time in this case. 04:59
Note that this is the \'type\' of a \'sub\', and has nothing to do with 05:00
subtyping.
Maybe we should s/Sub/Code/ on SubType, SubMethod, etc.
since they're VCodes, after all. 05:01
biab &
05:01 vsoni left
svnbot6 r12149 | audreyt++ | * hashes/delete.t: fix bogus test. 05:03
05:03 kanru joined
audreyt TimToady: yeah, SubType is gone from the new AST in Pugs.Val.* 05:04
05:22 pdcawley joined 05:24 DaGo joined
spinclad ' i think i am a camel / who is looking for a camel / who is looking for a camel / who is looking for its young ' 05:29
gaal audreyt: captures are in. how to test-drive them? 05:36
svnbot6 r12150 | gaal++ | * Captures in da house 05:42
r12151 | gaal++ | * add missing fields in Code for ENTER, LEAVE, CATCH and CONTROL. 06:06
06:07 DaGo joined
audreyt gaal: write parser for \() 06:08
as its own quote
gaal k 06:10
TimToady you have c_undoBlocks in there twice 06:14
gaal trying to figure out if it's possible to reuse ruleFormalParam etc.
oops, fxing
svnbot6 r12152 | gaal++ | * remove duplicate field, reported by TimToady++. 06:15
TimToady arguably you just want to put undo and keep blocks in the leave list with conditionals around them. 06:16
gaal eaiser introspection if they're separate...
TimToady true. probably premature optimization
on the other hand, maybe they want to interleave execution 06:17
gaal hmm.
so add a datatype 06:18
c_leaveBlocks :: [LeaveCode]
06:18 tea joined
gaal data LeaveCode = NormalLeave Code | KeepLeave Code | UndoLeave Code 06:19
(except named conformantly)
TimToady something like that. arguably most blocks won't have any of these properties... 06:20
gaal but those that do would appreciate them working correctly :)
06:20 agentzh joined
gaal good thing there's no such thing as abnormal entry. 06:21
sometimes lack of symmetry is nice
agentzh TimToady: what is the type of %$pair (where $pair is a Pair object) ?
TimToady goto label; repeat { ...; label: ... } while 1;
gaal ouch 06:22
oh right, duff's device etc.
TimToady I suspect it's just Pair, but Pair does Hash, or some such. 06:23
on the other hand, maybe the intent is to transform into a Hash.
audreyt if Pair does hash then %$pair can remain Pair 06:24
but this concerns e.g.
agentzh it's a bit counterintuitive IMHO. 06:25
audreyt %$pair.<x y z> = <1 2 3
>
and
agentzh my gut feeling is % is a hash convertor or something like that.
audreyt my %h := %$pair
so maybe it should alloc a concrete Hash
which is more intuitiv
e
TimToady maybe, but if Type($thing) always constructs a new one, we need some way of saying that we don't care if there's a new one. 06:26
agentzh so then $pair has multiple keys?
TimToady new Type can construct, and Type() can just ask for the interface one way or another. 06:27
audreyt Type is vlue type
(pure)
TimToady so Type() would be a noop if it already supports the role
audreyt so "new" is the same
TimToady whereas new would force a new copy anyway
seems intuitive that saying "new" makes a new one. 06:28
and the longer thing is more work.
audreyt k.
TimToady after $a := Type($b) we don't care whether $a =:= $b 06:29
svnbot6 r12153 | gaal++ | * TimToady++ observes that LEAVE traits may be interleaved with
r12153 | gaal++ | KEEP/UNDO. Turn exit blocks into one tagged list.
TimToady or whichever one it is...
agentzh TimToady: thank you for clarification.
06:30 HXanadu joined
agentzh ?eval my $pair = :when<now>; say %$pair.does('Hash'); 06:31
06:31 evalbot_12127 is now known as evalbot_12152
evalbot_12152 OUTPUT[ ] Bool::True 06:31
agentzh heh
TimToady anyway, I think %$pair is Hash($pair) and not Hash.new($pair).
?eval my $pair = :when<now>; say $pair.does('Hash'); 06:32
agentzh TimToady: gotcha.
evalbot_12152 OUTPUT[ ] Bool::True
agentzh oh, Pair already does Hash.
so %() is a noop.
TimToady yep.
either that, or .does is hardwired to return True. :) 06:33
06:33 HXanadu_ joined
TimToady ?eval my $pair = :when<now>; say $pair.does(Hash); 06:33
evalbot_12152 OUTPUT[ ] Bool::True
agentzh hehe
TimToady ?eval my $pair = :when<now>; say $pair.does(Int);
06:33 crem joined
evalbot_12152 OUTPUT[ ] Bool::True 06:33
audreyt ?eval Pair.does(Hash)
agentzh oh, dear...
TimToady ?eval my $pair = :when<now>; say $pair.does(Array);
evalbot_12152 Bool::False
OUTPUT[ ] Bool::True
TimToady whew
agentzh is lost. 06:34
TimToady True is return value of say
audreyt aye
TimToady ?eval my $pair = :when<now>; $pair.does(Hash); 06:35
agentzh oh, i see.
06:35 evalbot_12152 is now known as evalbot_12153
evalbot_12153 Bool::False 06:35
agentzh so this is a pugs bug.
TimToady ?eval my $pair = :when<now>; %$pair.does(Hash);
evalbot_12153 Bool::False
TimToady so it would seem 06:36
agentzh this one too.
agentzh is adding these two to the test suit...
TimToady agentzh++ 06:37
audreyt while in other languages we'd use IHashCollection
and HashTable
agentzh :=)
audreyt to mean the interface and the concrete class
and perl6 also encourages the use of roles as interfaces and class for managing instance
the .does(Hash) pattern seems to run counter to that goal quite badly :)
class Hash {...}; class Pair does Hash {...} 06:38
though it's probably sound :)
but that implies that if class Hash "has $!something"
then Pair will implicitly carry around that via a closure 06:39
but it will just restrict the use
such that there is only one key
i.e. it's really a constrained mutable Hash
TimToady i've always thought of using classes as roles more like taking a snapshot of the class and calling the snapshot immutable. 06:40
audreyt but I think it's not much useful...
TimToady: but does the attr slots get carried over?
class Moose { has $!x; has $!y }
class Foo does Moose {...}
spinclad label: ...; repeat { ...; comefrom label; ... } while 1;
audreyt it's essentially noop, then? 06:41
i.e. only methods (and also public accessors of ourse) are carried over
TimToady what is noop?
audreyt the "does Moose" part
spinclad (sorry, was backlogged)
audreyt i.e. it's like saying
role Moose {}; class Foo does Moose
and unlike
role Moose {has $!x; has $!y}; class Foo does Moose
06:41 weinig is now known as weinig|sleep
TimToady why not the latter? 06:41
as long as you ignore subsequent changes to Moose? 06:42
audreyt would Foo.new() take x=> y=> ?
(I assume "yes")
i.e. Foo will alloc two slots for x and y? 06:43
TimToady I would think so.
audreyt if so, how does "Pair does Hash" work without carrying over all Hash'es internal storage?
agentzh good question.
TimToady hmm.
seems like we have two kinds of "does" here. 06:45
agentzh one does the interface and one does the implementation?
TimToady on the other hand, if a real role includes an attribute, it has to be handled by the class. 06:46
so maybe it's sane to just say does Class ignores attributes.
I dunno...
agentzh grins.
audreyt 08:46 < TimToady> so maybe it's sane to just say does Class ignores attributes.
it's sound :) 06:47
so Class does Role
and because Role isa Class
so Class ignore Role's attribute
so if you does SomeClass, its meta Class gets to act as a Role 06:48
without Roles storage :)
(er, that's probably the maximally confusing way to put this)
TimToady MEGO
could have something to do with it almost being midnight though... 06:49
audreyt anyway, I think this is a way to formalize punning
but if we don't formalize punning, then we need IConvertible IEnumerable etc etc 06:50
either way is fine. punning is breaking new grounds :)
TimToady Roles don't actually contain attributes.
they merely have the skeletons of attributes that the class sets up
audreyt A completely private role attribute may be declared like this: 06:51
has $!spleen;
The name of such a private attribute is always considered lexically scoped.
If a role declares private lexical items, those items are private to
the role due to the nature of lexical scoping. Accessors to such
items may be exported to the class, but this is not the default.
hmm.
TimToady: sure. that is another way to say "you can't instantiate a instance from a role" 06:52
TimToady we probably need stevan to hammer on this too.
audreyt Moose::Meta::Class doesn't yet handle "does" I think
stevan: hey :) 06:53
oh, stevan is about to sleep too.
tomorrow then :)
obra morning
audreyt agentzh: %$pair should definitely "does Hash"
agentzh: hold the $pair part for a bit :)
obra audreyt: nelhage wrote more RT::Plugin::REST failing tests
agentzh audreyt: thanks
audreyt good
I'll lookAtTheTests 06:54
obra once it works, he can give you cli tools for hiveminder ;)
audreyt moose ;)
06:56 HXanadu__ joined
TimToady (va)mooZzzes. & 06:57
svnbot6 r12154 | agentz++ | [t/data_types/pair.t] 06:59
r12154 | agentz++ | added tests for $pair.does(Hash) and (%$pair).does(Hash).
r12155 | agentz++ | [t/data_types/pair.t] 07:05
r12155 | agentz++ | commented out the test for $pair.does(Hash) according to audreyt.
07:13 Aankhen`` joined
agentzh (bbiab) 07:16
question: should BEGIN blocks interpolated in double-quoted strings be fired at compile-time or run-time? 07:26
for example, say "This is { BEGIN { say 'hi' } }"; 07:27
audreyt compile time. 07:33
qq is not eval.
agentzh audreyt: thanks! 07:34
audreyt =)
agentzh ?eval eval('$handle = { BEGIN { say "hello, world!" } }'); 07:35
07:35 evalbot_12153 is now known as evalbot_12155
evalbot_12155 OUTPUT[hello, world! ] undef 07:35
agentzh ?eval eval('$handle = { INIT { say "hello, world!" } }');
evalbot_12155 undef
agentzh audreyt: is this a bug?
i think INIT should run ASAP during runtime. 07:36
just like BEGIN in this example.
audreyt aye I think. 07:38
test it :)
agentzh i'll leave it failing in t/closure_traits/eval.t. 07:39
audreyt agentzh: re the thread about moving t/ to another repo 07:41
I think src/ and t/ needs to stay in the same repo, that's true 07:42
but preferably if parrot/ is in the same repo
then that will also simplify things
in particular svk merge history
agentzh yep!
audreyt so moving everything to svn.perl.org makes sense :)
[particle]'s suggestion makes a lot of sense... 07:43
agentzh hopefully you can persuade the parrot folks.
*nod*
audreyt actually Ask and Robrt are the only people we need to persuade... :)
# noc.perl.org/
lambdabot Title: The Perl NOC - perl.org
agentzh i was only thinking about expirable TODOs. but you guys think much further. ;-) 07:45
audreyt i.e. our history is already in svn.perl.org/perl6/pugs/
lambdabot Title: Revision 10863: /pugs
audreyt and if we move t/ one level up
into
svn.perl.org/perl6/t/
I think it'd be all for the best
agentzh Hmm, it looks like a great idea. 07:46
but i'm afraid you would not be able to send out commit bit freely.
audreyt especially attractive in the time of openfoundry mod_dav_svn troubles :) 07:47
sure, see my p6l reply
agentzh okay
audreyt I asked Robrt for a web gateway for sending invites
nd adding people (using their perl.org auth)
he has coded it up already
but it's not yet actively used 07:48
agentzh audreyt: nice writing! 07:50
audreyt :) 07:51
(bbl)
07:55 luqui joined
agentzh tries to fix the INIT {} bug under src/ 07:56
agentzh gives up now. 07:59
08:02 integral joined
svnbot6 r12156 | agentz++ | [t/closure_traits/eval.t] 08:05
r12156 | agentz++ | added more tests to runtime-fired BEGIN/CHECK/INIT/etc. one of the tests for INIT {} is failing due to a Pugs bug.
r12157 | agentz++ | added t/closure_traits/interpolate.t to test BEGIN/CHECK/INIT/END blocks interpolated in double-quoted strings 08:17
r12157 | agentz++ | removed the redundant syntax/begin_in_strings.t
08:20 tea left 08:36 ludan joined 08:42 nothingmuch joined
svnbot6 r12158 | agentz++ | [t/statements] 08:42
r12158 | agentz++ | renamed array_values_in_bool_context.t to values_in_bool_context.t and also added more tests to it.
agentzh blb & 08:43
09:00 agentzh left 09:08 foo\ joined 09:22 tup joined 09:30 integral joined 09:48 buetow joined 09:49 kane-xs joined 09:53 chris2 joined
svnbot6 r12159 | luqui++ | Simplified the CHECK and INIT tests. 09:59
r12160 | luqui++ | Redid the CHECK and INIT code to execute CHECKs in reverse order.
09:59 rodi joined 10:12 diakopter joined 10:15 elmex joined
svnbot6 r12161 | luqui++ | More useful error message when using a non-rhsable closure trait as an rhs. 10:29
10:32 Southen_ joined
froh-doh I've seen in Overview/Data.pod that scalars should have an "exists" method. Another mention of this is in a conjecture inside Spec/Subroutine.pod. Is this still an alive idea? Is it useful to add a test for this? 10:48
(side note: I know I've already asked this question here, should I post it in the mailing list?) 10:49
10:58 agentzh joined
agentzh luqui++ # fixed CHECK {...} and check.t 10:59
luqui froh-doh, hmm 11:00
Something tells me that they shouldn't
okay, if exists exist, it should be written $scalar.VAR.exists, I imagine 11:01
i.e. the idea that there are methods which do not direct to the cell is bogus 11:02
that is why we introduced .VAR
froh-doh is it something already available?
froh-doh tries
luqui I don't think VAR is implemented 11:03
... in any form
11:03 TimToady joined
luqui I will change and add a note for audreyt and/or TimToady to check my sanity 11:04
froh-doh you're right: '*** No such sub: "&VAR"
luqui where that sentence is the note :-p
froh-doh luqui: is there some place where I can read about VAR? 11:08
ah, Object.pod
grep++
luqui also S12
froh-doh aka S12 11:09
svnbot6 r12162 | luqui++ | Made up some stuff about .VAR and .exists on scalars. 11:11
agentzh luqui: should a "global" FIRST {...} runs before the mainline code? 11:13
*run
luqui agentzh, I would consider FIRST to belong to the lexical scope of the mainline code
that is, it would run before the mainline code *of that file*
agentzh yes, i second. 11:14
so i've hit a pugs bug. :)
luqui yeah. there's also the INIT thing with eval
agentzh :=) 11:16
svnbot6 r12163 | agentz++ | [t/closure_traits/] 11:17
r12163 | agentz++ | rewrote ascending_order.t and descending_order.t following luqui's style in check.t (one of these tests for FIRST {...} is failing due to a pugs bug)
r12164 | agentz++ | [t/closure_traits/] 11:26
r12164 | agentz++ | multiple.t: fixed the expected CHECK running order in tests and added tests for FIRST {...} (luqui++)
r12164 | agentz++ | tweaked the links in check.t.
11:37 jferrero joined
svnbot6 r12165 | agentz++ | [t/closure_traits/] 11:37
r12165 | agentz++ | simplified the rval parts of check.t and init.t
r12165 | agentz++ | fixed the parse error in rvalue.t
agentzh what's the running order of FIRST {...} versus ENTER {...}? 11:46
11:47 kanru joined
svnbot6 r12166 | agentz++ | [t/closure_traits] 11:55
r12166 | agentz++ | added tests for FIRST {...} to interpolate.t.
r12166 | agentz++ | tweaked the comments in other test files.
11:55 nnunley joined
agentzh BEGIN {... 12:03
in Perl 6, &exit call in BEGIN {...} implicitly calls END {...} while CHECK {...} does not? 12:04
Hmm, this behavior is not specified, so we should assume it remains the same as in Perl 5. 12:05
12:05 iblechbot joined
gaal audreyt: ping 12:07
12:10 lisppaste3 joined
svnbot6 r12167 | agentz++ | tidied up exit_in_begin.t and exit_in_check.t a bit. 12:10
12:10 f0rth joined 12:11 dolmans joined
agentzh ?eval my $sub = { my $var = 2; FIRST { $var = 1 } $var }; $sub() 12:17
12:17 evalbot_12155 is now known as evalbot_12167
evalbot_12167 \1 12:17
agentzh ?eval my $sub = { my $var; $var = 2; FIRST { $var = 1 } $var }; $sub()
evalbot_12167 \1
agentzh is it a bug? i think FIRST {} should be called at subroutine entry time, and ASAP. 12:18
audreyt, TimToady: please confirm. :)
jferrero is away: Ocupado... ahora vuelvo... 12:19
froh-doh I'd like to add a script into util, is is better to discuss it here before? 12:24
agentzh froh-doh: what's that script? 12:25
froh-doh agentzh: it's a slightly modified version of www.perlmonks.org/?node_id=567025
lambdabot Title: Color diff for terminal
agentzh froh-doh: is it supposed to used with pugs? 12:26
froh-doh the modification is to make it work with svk natively
agentzh: no, it would help to show differences between revisions
agentzh heh, you will write it in Perl 6?
froh-doh uhm, interesting :) 12:27
I'll try
agentzh if it's in Perl 6, it had better go into examples/
froh-doh: good luck!
wolverian I like vimdiff. :) 12:28
froh-doh thanks. Anyway, I'd like it to be useful (hence 'util' :), but maybe it's useful only for me and it can happily reside in my $PATH
it basically gets the diff output and colorises it, to make it visually clearer where the differences are 12:30
12:30 lollan joined
agentzh froh-doh: heh, i'm using TortoiseSVN, which can give me that functionality on Win32. :=) 12:32
12:32 lumi joined
froh-doh agentzh: that's why it basically doesn't work in Win32 (I guess) ;) 12:33
agentzh hehe
jferrero is back (gone 00:18:53) 12:38
dolmans what dose `don't backtrack' mean? dose that mean that ".*:<alpha>" will match fail against "abc"? 12:52
froh-doh uhm, where is __END__ ? 12:58
agentzh dolmans: to the first approximation, not backtracking means the text to be matched should be ambiguous. 13:00
svnbot6 r12168 | agentz++ | [t/closure_traits]
r12168 | agentz++ | fixed a bug in first.t and also tidied it up.
agentzh sorry, i mean "should not be ambiguous" 13:01
{.*\w} surely fails to match "abc" 13:02
end of day for me & 13:03
13:03 agentzh left
dolmans agentzh: don't really understand. 13:05
aufrank /away 13:16
svnbot6 r12169 | scw++ | Fix Pugs::Emitter::Rule::Parsec with changes to P::R::C 13:25
r12169 | scw++ | to compile Pugs::Grammar::MiniPerl6 without v6.
froh-doh is there some way to do open my $fh, '-|', $forked_command; ? 13:37
gaal Pipe.open 13:42
see Prelude.pm
froh-doh uhmm, Prelude.pm does not esist in my installation, but Prelude.pm.yml :/ 13:47
Jedai ?eval my %h = (1 => 2); "1 : ok" if %h.exists('1'); %h<3> = %h.exists('3') ?? 'oops' !! 4; 13:52
13:52 evalbot_12167 is now known as evalbot_12169
evalbot_12169 \"oops" 13:52
svnbot6 r12170 | fglock++ | v6 - fixed AST stringification in v6::AST::Base
Jedai ?eval my %h = (1 => 2); %h.exists('1')
evalbot_12169 Bool::True
Jedai Is %h<3> = %h.exists('3') ?? 'oops' !! 4; ok ? Is it a bug ? 13:53
svnbot6 r12171 | fglock++ | v6-Compiler - make Sub::Multi errors locally non-fatal
14:01 elmex joined
gaal froh-doh: the .yml file is a compiled version. You can browse the source here: svn.openfoundry.org/pugs/src/perl6/Prelude.pm 14:09
14:20 diakopter joined 14:28 rashakil joined
svnbot6 r12172 | audreyt++ | * Now that gaal++ implemented "vv" to convert oldval to newval, 14:28
r12172 | audreyt++ | we take back the `cmd` and qx{cmd} and q:exec{cmd} notation
r12172 | audreyt++ | and make them to what they used to do in Perl 5 -- namely,
r12172 | audreyt++ | capture an external command's output.
r12172 | audreyt++ | * Also simplify .meth parsing now that ./meth is gone.
14:30 pmurias joined
pmurias hi, 14:30
would should i do to fix the Delta source ended unexpectatly error? 14:31
cmarcelo use svk sy -s 12103 //mirror/pugs... 14:32
it'll skip the problematic revs..
froh-doh how can I translate my $fh = \*STDIN; ? 14:33
audreyt my $fh = $*IN;
froh-doh thanks, and sorry for boring
audreyt no need to :) 14:34
froh-doh ok, so only "sorry for boring" ;)
Jedai ?eval my %h; %h<1> = %h.exists('1') ?? "oops" !! "ok";
14:34 evalbot_12169 is now known as evalbot_12172
evalbot_12172 \"oops" 14:34
audreyt heh
pmurias cmarcelo: thanks, it seems to be doing something... 14:35
Jedai Is this normal ?
audreyt no, this is otterly broken
I mean, utterly
Jedai I add a test in exists.t ?
audreyt hm, wait
actually...
perhaps it's fine. 14:36
it depends on who is the recipient of the assignmen
Jedai Well I wondered, because in Perl5 it worked
audreyt if it's the (autovivifieD) Scalar that's stored in %h<1>
then that behaviour is correct
if {}= is a special method on %h itself
as is the case with perl5
then it should be "ok" 14:37
gaal audreyt: hey :) in the parser, do any of the existing functions help with capture?
they're a little twisty
parseHasParenParamList etc/
wolverian hm, so is there a %h=<foo> form like with methods? (to replace the contents of %h with the contents of %h<foo>) 14:38
audreyt yes, it's
parseHasParenParamList
maybe s/ParamList/Capture/ whilst you are at that
wolverian: %h .= <foo>
wolverian ah. thanks
audreyt but I don't think it's specced 14:39
wolverian it's basically a fold
audreyt *** the right-hand-side of .= must be a function application
wolverian a special-case fold anyway
audreyt is the current pugs error
but I think it should be made to work
wolverian nice :)
Jedai So this is correct ? Ok, I guess we should remember it when translating Perl5 to Perl6. I'll correct the example which used this incorrectly. 14:40
audreyt TimToady: S12 mentions a very curious, unseen in S02, category
method self:sort { ... }
I understand the motivation for this 14:41
but it seems it's closely tied to .=
Jedai: I _think_ the current pugs behaviour is correct, but thi part is less than well-specced 14:42
gaal audreyt: but sould I make a transformer over that to return newExp? or just copy the code? (this functino seems to lose named information too, if I understand what it does correctly)
audreyt I think it parsed nameds to Syn "named"
14:43 xern joined
audreyt so for 0th approx you can transform 14:43
but feel free to copyCode too
gaal where should newexp live? Pugs.AST ?
Jedai ?eval "regex" ~~ /^\w+$/ 14:44
evalbot_12172 Match.new( ok => Bool::True, from => 0, to => 5, str => "regex", sub_pos => (), sub_named => {} )
gaal or should this be a function returning a VV PureCapt in which the leaf Exps are oldExps?
audreyt the latter. 14:45
hm wait
no
PureCapt should have Val as leaf
the Exp-level Capt would have Exp as leaf
two different things
gaal ? we now have: 14:46
data Cap = CaptMeth { c_invocant :: Exp, , c_argstack :: [Arglist] }
audreyt yes but that's wrong
invocant needs to be Val
gaal or a CaptSub variant
audreyt for it to be a Val 14:47
gaal hmmmmm
audreyt \$x
\f()
the latter does not mean defer{}
gaal right
audreyt it cannot rerun f() ecach time it is $()d
so at value level it's firstclass value with value leaves
at exp level it's a exp node with exp leaves
maybe parameterize it? 14:48
data Cap a = ...
where a is Exp or Val?
not sure
(and then
type ExpCap = Cap Exp
)
gaal yeah...
audreyt ?eval `ls` 14:49
evalbot_12172 Error: Unsafe function 'Pugs::Internals::runShellCommand' called under safe mode
audreyt good
gaal whee
btw, this is marked unsafe:
?eval %?CONFIG<sitelib>
evalbot_12172 Error: Can't modify constant item: VUndef
gaal oh, weird error too 14:50
I can't think why it was marked unsafe, but I don't want to blindly change it
leaks information about running evalbot? 14:51
14:52 pmurias left
audreyt yeah but. that's fine 14:58
ununsafe it?
wolverian can I see (:t foo etc) names defined in a let instead of top scope in ghci? 15:01
pasteling "aufrank" at 65.37.87.113 pasted "compilation of Prelude.pm looks for installed libparrot" (7 lines, 547B) at sial.org/pbot/18942 15:02
audreyt Prelude> let x = 1
Prelude> :t x
x :: Integer
wolverian hrm, I mean, in a 'let foo = 2 in ...'
audreyt aufrank: this is trunk parrot?
aufrank does anyone have advice about why building pugs is failing for me? (error is pasted above)
audreyt: yes, trunk parrot
audreyt does it work if you ls -l the blib/lib/libparrot.dylib from parrot tree to /usr/local/lib? 15:03
aufrank I'll try... I didn't want to make install parrot because that has lead to problems in the past and I was told it's generally a bad idea. has that changed recently?
audreyt nope. 15:04
aufrank audreyt: did you mean ln -s, not ls -l ? 15:05
audreyt the only thing changed is that when you "make install"
parrot now tells you to think twice
;)
yeah, ln-s
aufrank does pugs require libparrot to be in /usr/local/lib/ ?
audreyt no 15:06
we do whatever the parrot-config tells us to
TimToady I always install parrot, but I'm prepared to hand-uninstall it if I get weirdness. 15:07
cmarcelo what should I do to solve "impossible happened" instead of "make realclean" (which solves it)? 15:09
aufrank audreyt: is there something I can do to parrot-config to tell it "leave /usr/local/ out of this!"
audreyt: symlink worked, btw
audreyt aufrank: I don't know. :/ trace line 384 in Makefile.PL ish 15:10
cmarcelo: GHC 6.4.1?
cmarcelo 6.5 now
audreyt oh?
hm
rm dist/build/src/Pugs/Parser.*
or whichever one that's reporting the impossible
and make again
failing that
rm dist/build/src/Pugs/AST/Internals.* 15:11
and make again
let me know which worked
cmarcelo killing Pugs/Compile/Pugs.* (where the error shows) didn't solve. rm'ing ...AST/Internals.* passed the critical point, so we can tell that worked.. 15:15
froh-doh I'd like to add an example in the examples directory, and I'm using svk 15:16
is it still ok to use /util/add-svn-props.sh newfile1 newfile2
(which I forgot to do with my first commit, now that I think about it!) 15:17
15:20 foo\ joined
cmarcelo audreyt: actually it didn't worked, at the end it had a link problem concerning one function of Pugs.AST.Internals... I just "realclean" by now. 15:22
audreyt cmarcelo: ok... aw. 15:26
maybe it was a mistake to trust .hs-boot :/
was the imposssible about envPos?
cmarcelo Sometimes happened with envPos, but I think there was another one too.. after I solve things here I'll try again rm'ing and making.. 15:28
i'm kind of lost here because lots of fails are popping up in pugs-judy (r12148) and I fail to see why =P.. I reviewed some things and now will make-smoke it again.. 15:30
svnbot6 r12173 | audreyt++ | * envPos and the "impossible" error -- try a workaround
r12173 | audreyt++ | before giving up on .hs-boot until GHC 6.6.
audreyt cmarcelo: well, some new tests have been added 15:31
so chances are that's not your fault 15:32
diff it with existing smoke.pugscode.org errors
and nopaste the entire diff when you are done... I need to crash now :/
cmarcelo I'm matching with a same rev non-judy version I made here..
audreyt oh? :/ 15:33
nopaste the diffs of failures too
then
cmarcelo diff smoke.html with smoke.html is ok? or you mean a manual diff =P 15:36
s/manual/visual/..
svnbot6 r12174 | polettix++ | Added examples/colordiff.pl and called util/add-svn-props.sh on 15:39
r12174 | polettix++ | docs/other/primes_rambling.pod.
audreyt I'd prefer w3m dump to text and diff the text 15:41
but I'll bbl :) 15:42
audreyt sleeps &
cmarcelo ok
audreyt nice rambling :) 15:45
sub is_prime ($n) { ... } # this would save the .shift as well 15:46
&
stevan audreyt, TimToady: re: the Roles stuff in the backlog 15:55
15:55 foo\ joined
stevan I think Hash, Array, etc should probably not have any attributes 15:55
or rather.. the role versions of them
svnbot6 r12175 | polettix++ | Used formal sub arguments as suggested by audreyt
stevan maybe we call them IHash, IArray and IEtc 15:56
they simply provide the interface,...
then the concrete implementation (Hash, Array, Etc) all use the instance representation types for storage
so class Array does IArray { # no has @!storage } 15:57
it just uses the internal instance structure,.. in this case a perl6array 15:58
this approach has a couple of benefits I think
audreyt sub (@x) {...}
@x will be constrained then to IList then? 15:59
lambdabot Maybe you meant: . v
stevan 1) array like behavior becomes a mixin through the Role
audreyt i.e. it wouldn't care about the concrete class
similarily
stevan audreyt: yes, probably
audreyt sub (%x) { ...} would be constrianed then to IMapping
stevan yes
audreyt sub (%x is rw) {...} would be constrained to IHash
etc 16:00
stevan yes
:)
audreyt it's very much less punny
stevan this approach also discourages inheriting from Array, Hash, etc
audreyt but what does .does(Array) mean?
synonym for .isa(Array) then
right?
stevan which is probably a good thing since they need custom instance structures to be efficient
yes, I suppose that would need to be special cases 16:01
unless
audreyt unless .does(AnyClassHere)
stevan .does(<class>) meant something different from .does(<role>)
audreyt simply means .isa(AnyClassHere)
stevan I am not sure it means the exact same as .isa
audreyt I wonder why the method is .isa and the trait auxillary is "is" 16:02
16:02 markstos_ joined
stevan I think it should be more duck-type-check-ish 16:02
audreyt class Point3d isa Point { ... }
but .does(Role) is nominal
why .does(Class) suddenly becomes structural?
stevan structural on the class yes, hmm
audreyt I think it needs to stay nomincal 16:03
stevan yeah
audreyt and either:
1) class F does C {...} does _not_ copy over any instance slots
and simply mixes in the virtual methods
so .does(C) can succeed and .isa(C) fail
or
2) class F does C {...} is meaningless
and .does(C) simply means .isa(C)
stevan hmm 16:04
I am seeing echos of the implcit/explicit composition stuff nothingmuch and were talking about for handling attributes internally
16:04 vel joined
stevan almost as if we need two views 16:04
audreyt actually timtoady's 3)
stevan Class.asa(Class)
Class.asa(Role) 16:05
audreyt class F does C {...} indeed copy over instance slots
and recursively flattens C's inheritance tree
is viable, but I think a bit too hard to explain
stevan hmm
that does conform more to role-ness
audreyt but then "does Point" is not structural 16:06
all it's saying is flattening inheritance chain from that point on
I don't know. I think it makes sense 16:07
but then it wouldn't work across incompatible layouts
and we're sure that Array and Hash would have different layouts
stevan yeah
markstos_ What does it mean to "flatten an inheritance chain" ?
audreyt as they don't have attribute slots
stevan audreyt: are we sure?
audreyt markstos_: class C is C2 {} class C2 is C3 {} class D does C {...flatten C/C2/C3...} 16:08
stevan markstos_: to flatten the class, to move all methods/attributes/etc to the same level
audreyt stevan: implement Array on p6opaque?
stevan as if there is no indirection
markstos_ Aha.
audreyt stevan: that's very unlikely; I can't even think of a good encoding
markstos_ flattening is not something I've seen before.
audreyt not even javascript can do that :) 16:09
stevan audreyt: yeah,.. but I have to say that diff instance types is hard
markstos_ Are there languages that do use it?
audreyt markstos_: right, it's fresh idea :)
markstos_ "fresh" but also perhaps "hard to explain" as you said either, because it's new.
16:09 hexmode joined
audreyt I share your concerns. 16:09
markstos_ But sometimes new/fresh is good. 16:10
if it's actually better. :)
stevan markstos_: we use this technique in Class::C3 actually
markstos_ Oh.
stevan and if you squint, Perl 5 method caching is exactly this
markstos_ Ah.
stevan because it stashes aliases in the symbol table
audreyt the flattening is weird because for things you do inherit
then you don't mix them in
you only mix in things you don't inherit directly
which is very subtle 16:11
stevan yeh
TimToady actually, when I said "snapshot" I wasn't thinking of inheritance at all.
markstos_ As I work on porting CGI::App to Perl6, I have first impressions of the language. A number of things are simpler-- less syntax-- like getting rid of 'self' in a lot of places. But sometimes there is more syntax to learn, and that's where i get more hesistent. I still need to study the difference between 'package', 'class' and 'module' now.
TimToady just immutability of the current class 16:12
audreyt TimToady: oh. I misunderstood then. sorry
TimToady but it's an interesting idea nonetheless
stevan i think it would need to be inheritence as well,..
because what if the local class didnt have anything in iti
audreyt TimToady: but to mix in inheritance would break roleness
stevan then does Foo would mean nothing
TimToady A12 speculates that roles can mix in inheritance sneakily already. 16:13
markstos_ prepares for juggling performance &
stevan hmm,... that would take care of it 16:14
mixing in the @ISA
TimToady well, we have other containers that are immutable but whose contents aren't.
and we'd certainly like to have sneaky delegation. 16:15
yes, I'm just this role, but I actually delegate to this other object...
audreyt TimToady: in the S12 example
I mean A12 example 16:16
say I have Friend.greet
and Dog does Pet
can Dog.greet "next METHOD" into Friend?
i.e. is it really inheritance?
stevan ouch
we would have to mixin the inheritence or next METHOD would not work 16:17
TimToady well, welcome to duck typing.
stevan unless we re-write the code
audreyt not sure what duck typing has to do with this...
froh-doh
.oO( is "duck typing" vaguely related to "duct taping"? )
16:18
stevan prefers his duck roasted,.. with some rice noodles
TimToady next METHOD is only going to find a method of the same name, but not maybe the same meaning, but that's a red herring, yes.
stevan doesnt like herring
no matter what color it is
maybe mxining in the @ISA chain is not a bad thing
it will make it more predictable 16:19
audreyt well, at least we have C3
so it won't violate things badly
stevan yes
16:20 nothingmuch joined
stevan and as an optimization, maybe we can switch things around 16:20
audreyt so. "does" and "isa" differs only in that "does R" won't put R into your @ISA
they are otherwise equivalent
(with the restriction that instantiating a role is forbidden, but that happens elsewhere) 16:21
and you can "isa" a role or "does" a class freely
stevan I think isa/does need a certain level of interchangability 16:22
16:22 Psyche^ joined
stevan what if... 16:22
class Foo { has $.bar } class Bar is SomethingWithLongISAChain { } ... class Foo does Bar;
or rather,..
class Bar is SomethingWithLongISAChain { } ... class Foo does Bar;
ah wait,.. nevermind
my brain is not working 100% yet 16:23
not enough coffee
TimToady my brain is never working 100% yet...
stevan I was trying to exploit the unorderedness of role composition
audreyt and in both isa/does, you get slots
TimToady even with coffee
stevan well,.. Moose will start exploring these issues soon
audreyt and in both isa/does, you cannot peek at super's slots
(which is markedly different from otherLanguages) 16:24
16:24 HXanadu joined
audreyt and access to super's slots, like everybody else, has to go thru accessor 16:24
stevan has to do some errands
TimToady which is actually important for delegation-emulating-inheritance. 16:25
stevan but I think we are all thinking on the same page here
TimToady across languages, say.
audreyt curiously, that solves delegation-based problem of incompatible layouts.
heh. evidently
TimToady we are in violent agreement.
audreyt Redundant Array of Insane Designers 16:26
stevan in Moose, you can always do this: $foo->meta->get_attribute('bar')->get_value($foo, 'bar');
audreyt cool. the A12 wording "Roles never inherit" is misleading
nothingmuch "always" ?
stevan similar to CLOS and the get-slot-value method
nothingmuch it took me *FOREVER* to get you to put that in you twit
audreyt because it's true upto the fact that "roles can't instansiate" 16:27
and doesn't say extra things
stevan hugs nothingmuch
nothingmuch happy birthday, boss
stevan thanks :P
audreyt but otherwise S12 would much benefit from porting it over :)
stevan tags off to nothingmuch
nothingmuch what does "tags off" mean? 16:28
stevan (tag team lambdam??se)
TimToady wrestling?
stevan yes
16:28 weinig|sleep is now known as weinig, justatheory joined
stevan cause I have to go to Home Depot and buy mulch for my birthday :/ 16:28
TimToady I think you're confusing two different Jesses
audreyt stevan: happy birthday :)
stevan thank you
TimToady hippo happo bithutththdi
obra gets confused
stevan Jesse "The Body" and Jesse "The Brain" 16:29
:)
obra Happy birthday
stevan :)
TimToady you're what, 19 now? :)
16:29 Psyche^ is now known as Patterner
stevan yeah,.. give or take 14 years 16:30
I am one year older than ($Class::MOP::VERSION * 100) ;)
TimToady fortunately, years are not objects.
audreyt 5-year-old mastermoose
16:31 weinig is now known as weinig|coffee
stevan ok,.. gotta run,.. 16:31
stevan hugs #perl6
TimToady thanks
happy mulch
gaal ooh, happy birthday stevan-moose! 16:36
TimToady gaal: did you see my hate-mail about %?CONFIG :) 16:37
gaal TimToady: polluting the global namespace is less noisy than throwing stuff in %?CONFIG? :) </bikeshedding>
heh
TimToady %*CONFIG would be the global namespace... 16:38
gaal as opposed to %?CONFIG, which is the front lobal namespace (of the compiler)
TimToady anyway, things that can pretend to be objects with lots of fiddly bits could use to be top level in ? twigildom. 16:39
Think how often $^O is used in Perl 5. 16:40
needs to be huffmanly short.
thought maybe not that short.
s:2nd/t//
gaal grumble %c ::= $?CONFIG grumble
TimToady %?::('grumble') 16:41
gaal but one thing that really isn't just the bikeshed color: let's not standardize on version convention for the compilers 16:42
TimToady certainly not.
we haven't even really decided whether authorities are really part of the version
use Foo-(1.2-Mike|1.3-Ed)
I really say really to often. really! 16:43
*too
gaal selfraceally 16:44
TimToady I like the :parrot<mumble> notation for that reason.
though presumably one could get away with :pugs(6.2.12) 16:45
assuming orderedness is preserved.
which it presumably is with built-in versions
but problematical with tutti-frutti versioning schemes.
gaal nod 16:46
TimToady could have string versions that are savvy about 1.2.3-anything
before - compares version, after compares string 16:47
gets you alpha and beta in the right order, anyway...
except it puts those after 1.2.3
1.2.3-alpha < 1.2.3 < 1.2.3+foo 16:48
gaal funky.
TimToady but generally, i think string comparisons would have to be forced in some policy spot 16:49
1.2.3.-2 == alpha
1.2.3.-1 == beta
but that screws up using - to delimit authority. 16:50
maybe - delimiter is bad anyway.
1.2.3.-1@JRAND
OM
gaal there's always another code point :/
TimToady heh 16:51
1.2.3.-1׀JRANDOM
wolverian could we use named instead of positional? 16:52
TimToady 1.2.3.-1<JRANDOM KRANDOM>
hard to fit into a filesystem. 16:53
wolverian just use a database :-)
TimToady is there a buzzing in the air?
wolverian no, it's an echo.. 16:55
TimToady wow, I think "use v6<pugs>" passes the P5 test. 16:56
gaal bbiab... &
TimToady and < and > are unlikely to occur in a url. 16:58
and - is likely to occur in a random version number from the wide world.
filenames containing < and > would be a problem though. 16:59
hmm.
17:01 markstos_ left
diakopter use v6^pugs^ 17:01
TimToady on the other hand, we can write funky versions alreayd like
use Foo-('1.2.3.-1')-JRANDOM
maybe
P5 doesn't like ^ 17:02
froh-doh use v6.pugs ? 17:03
TimToady P5 doesn't like .
froh-doh probably because it clashes with v6.2 ? 17:04
TimToady and it only sort of likes <pugs>, since it thinks it's a readline or glob.
[particle] use v6'pugs; 17:08
mauke haha
[particle] ooh, i've got some mail to respond to...
17:09 weinig|coffee is now known as weinig
TimToady looks like use v6-alpha.pugs; could work 17:09
but not v6.pugs, which was the whole point, sigh. 17:13
17:16 Jedai joined
TimToady v6-alpha+pugs and v6+pugs seem to both work to P5. 17:16
assuming no -w 17:17
-w gets in the way of a lot of possibilities, sigh. 17:18
well, we could still make - part of the version in P6, and use bare v6-alpha in P5. 17:21
that's almost cleaner than using alpha as an authority.
use Foo-1.2.3.-42.1<foo.bar> still looks kinda good to me. 17:23
can always mangle the < and > for the filename. 17:24
[particle] and the slashes, and colon
TimToady I like the pillness of the authority. 17:25
well, I have to go do some archeology in my garage... 17:27
later &
17:34 hexmode` joined
svnbot6 r12176 | audreyt++ | * First cut at proper compile-time role mixin support, based on 17:56
r12176 | audreyt++ | discussion on #perl6 about the semantics of "does".
r12176 | audreyt++ | class C {};
r12176 | audreyt++ | class D does C {};
r12176 | audreyt++ | D.isa(C); # False
r12176 | audreyt++ | D.does(C); # True
r12176 | audreyt++ | Composition works, and overriding role methods should work as well,
r12176 | audreyt++ | but concrete class/package names is not yet renamed, and role conflicts
r12176 | audreyt++ | is not yet validated. Still, a step toward the right direction.
17:59 hexmode` joined
TimToady smokin' 17:59
diakopter is there a SVN::Web -like view of the commits? 18:08
wolverian hm, is this supposed to happen on 'perl Makefile.PL': Could not find module `Distribution.Simple' 18:12
diakopter does anyone know if this project has anything like this: svn.webgui.org/svnweb/WebGUI%20SVN...n?rev=2816 18:13
hmmm; if I got svk working on a server, I could host it... 18:16
18:38 audreyt joined
diakopter audreyt: are you there 18:44
18:45 khisanth_ joined 18:46 khisanth_ is now known as Khisanth 18:52 robkinyon joined
TimToady she probably went back to sleep. it's about 4am in Taiwan, give or take an hour 18:56
I don't know of anything like webgui. 18:57
froh-doh does she sleep in such a fractal way?
TimToady it varies depending on residual jetlag, i think. 18:58
froh-doh thinks about "Fight Club" 18:59
diakopter TimToady: I meant the SVN::Web view 19:00
anyway, I'm working on setting it up on a server 19:01
19:01 rashakil joined 19:03 rashakil_ joined 19:15 justatheory joined 19:16 lichtkind joined 19:24 TimToady_ joined 19:37 TimToady1 joined 19:47 tup joined 19:57 Corion joined, Corion left 19:59 cmarcelo left 20:00 asz joined 20:23 chris2 joined 20:55 weinig is now known as weinig|away 21:10 jferrero joined 21:19 amv joined
jferrero is away: Ocupado... ahora vuelvo... 21:20
21:25 FurnaceBoy joined
jferrero is back (gone 00:17:52) 21:38
froh-doh I added an implementation for quotemeta, but I'd like some "go ahead" before committing 21:40
kane-xs seen audreyt 22:01
jabbot kane-xs: audreyt was seen 5 hours 30 minutes 48 seconds ago
22:05 ayrnieu joined 22:26 froh-doh joined 23:27 miyagawa joined 23:44 dazjorz joined, dabreegster joined 23:48 dazjorz is now known as iwantkarma, iwantkarma is now known as dazjorz, mauke_ joined 23:50 khisanth_ joined 23:51 khisanth_ is now known as Khisanth 23:52 weinig|away is now known as weinig