Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-09-12

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:00 markstos TimToady: so far I've found very few gaps.
00:01 TreyHarris markstos: that's just because there are so few things unchanged ;-)
00:01 markstos Ha. I agree.
00:05 TreyHarris @tell Limbic_Region there have been a number of tests added in the past couple months with big loops, which have caused smokes to take longer.  all_parse.t, for example, i wonder who's to blame for that one? ;-)
00:05 lambdabot Consider it noted.
00:05 svnbot6 r13203 | markstos++ | not.t and true.t now have links. TimToady++ pointed to their
00:05 svnbot6 r13203 | markstos++ | passing reference in the precendence table able in S03.
00:06 TimToady and Inf and NaN are really defined by IEEE, not by us...
00:07 markstos Can we at least include a stub with a pointer to that definition, then ?
00:08 TimToady well, you could certainly point to the paragraph in S02 that says
00:08 TimToady Perl 6 should by default make standard IEEE floating point concepts
00:08 TimToady visible, such as C<Inf> (infinity) and C<NaN> (not a number).
00:08 markstos Ok. I'll look at that.
00:10 TreyHarris TimToady: did you see my earlier eval:
00:10 TreyHarris ?eval my @a = <a b>; my @b = <1 2>;  @a >>~<< (([@b],) xx @a.elems)
00:10 evalbot_r13197 is now known as evalbot_r13202
00:10 evalbot_r13202 (("a1", "a2"), ("b1", "b2"))
00:11 TreyHarris Is there a simpler way?  And how can I flatten the result?  [,] doesn't work
00:12 rodi joined perl6
00:12 markstos TreyHarris: you mean [,] doesn't work in Perl 6 for this, or it is unimplemented in pugs? I got the sense it wasn't finished yet.
00:12 svnbot6 r13204 | markstos++ | infinity.t now has a smartlink. TimToady++ for pointing out the right place.
00:14 TreyHarris markstos: oh, that's certainly plausible.  for some reason i got the idea that [,] was working
00:15 TreyHarris i think i'll write a private CSS for smoke.html that makes failing todo's look like fails rather than passes, that will make it easier for me to keep track of what's implemented and what's not
00:15 putter TreyHarris++
00:16 markstos TreyHarris: I found the tests with [,] in them and ran them, and lots of things failed.
00:17 putter A color scheme which is user-oriented, "what WORKS", rather than "what surprises the developers", has been a todo item for a long time.
00:18 putter I think one "recent" suggestion was to have todo's be purple (ie, redish, but not quite).
00:19 TreyHarris yeah, list nesting and unnesting i think (maybe i should say, i hope) is missing pieces. for instance:
00:19 TreyHarris ?eval my @a = <a b>; my @b = <1 2>;  @a >>~<< (([@b],) xx @a.elems)
00:19 evalbot_r13202 is now known as evalbot_r13204
00:19 evalbot_r13204 (("a1", "a2"), ("b1", "b2"))
00:19 TreyHarris but:
00:19 TreyHarris ?eval (("a1", "a2"), ("b1", "b2"))
00:19 evalbot_r13204 ("a1", "a2", "b1", "b2")
00:19 * TreyHarris grins
00:23 TimToady bugs aside, I wonder if there's a missing metaoperator to do "outer" operations.
00:25 TreyHarris outer?  does outer = tensor?
00:25 TreyHarris i.e., circle-cross product?
00:26 TimToady except "product" being generalized to any op applied pairwise to all possible pairings.
00:26 TimToady or is that what circle-cross means?
00:27 nekokak joined perl6
00:27 TreyHarris well, i think circle- is a visual metaoperator for that... circle-plus is outer sum, circle-cross is outer product, etc?
00:28 TreyHarris it's been a looooong time since i took those classes though
00:29 TimToady unfortunately we've already used (+) etc for set ops, so we couldn't also use it for a metaoperator.
00:30 hikozaemon joined perl6
00:30 TimToady {+} maybe
00:30 TimToady though }+{ is more like hyperops
00:31 TimToady which would give you @a }~{ @b for what you were trying to do.
00:31 TimToady wouldn't that drive syntax hilighters nuts...
00:31 TreyHarris *nod* braces won't throw the parser for a loop, but it would...
00:31 TreyHarris yes. :-)
00:35 TreyHarris i haven't thought it through yet, but should it still be theoretically possible to run a compiler without executing the source code in order to extract a syntax tree for a syntax highlighter to work perfectly without having to reverse-engineer the parser?  i guess, code outside of macros, i suppose you can't avoid that unless you're willing to skip any syntax provided by macros...
00:35 prism joined perl6
00:35 TreyHarris renormalist++ and i were talking a few days ago about how monstrously complicated even the smallest change to cperl-mode has become
00:36 audreyt the synhiliter can run with pure (i.e. memory access forbidden) or atomic (I/O forbidden) modes
00:36 TimToady Perl 6 is not a single language.  I really don't expect any single syntax highlighting strategy to work.
00:36 markstos Good morning audreyt.
00:37 audreyt and depending on how the macro is written, it may still be processed fine under a restricted runloop
00:37 TimToady and I think it's really kinda silly to try to combine P5 and P6 modes
00:37 Juerd TimToady: Very few syntax highlighters are actually singular :)
00:37 audreyt hi markstos :)
00:37 Juerd They all use nested grammars :)
00:37 Juerd What we need to do is make our grammar easy to export :)
00:37 TreyHarris TimToady: yeah, that's another thing renormalist and I were talking about.  all attepmts at multi-mode-modes in emacs at least have been rather problematic to say the least
00:38 TimToady eval "...
00:38 TimToady eval "...", :lang<elisp>
00:38 TimToady only inside out
00:38 * TreyHarris shudders
00:38 Juerd TimToady: To a syntax highlighter, "" should just be quoting :)
00:39 TimToady $?GRAMMAR.elisp, I guess
00:39 Juerd It shouldn't try to be too smart.
00:39 * audreyt goes get ready for $job
00:39 obra woo!
00:40 putter Unicode unfortunately does seem (very brief search) to have bare half circles.  Just + and x half circles. :(
00:40 TimToady another approach to "outer" hypers is to commandeer junctions in list context:  all(@a) ~ all(@b)
00:41 putter Circle unary prefix operator?
00:41 putter :/
00:41 TimToady ()*
00:41 TimToady ()~
00:41 TimToady hmm
00:43 Juerd What are outer hypers?
00:44 TimToady what TreyHarris has been trying to express with his @a = <1,2> thingies
00:44 TimToady <a b> rather
00:45 TimToady sequence in Haskell, only maybe more general
00:45 TreyHarris @tell Limbic_Region duration 8464 (or 2h21m).  much better than my last 4h6m.  ghc-6.5++
00:45 lambdabot Consider it noted.
00:46 TimToady so <a b> mumble~ <1 2> produces a1 a2 b1 b2
00:46 frederico joined perl6
00:46 TreyHarris Juerd: given <a b>, <1 2>, get <a1 a2 b1 b2>, or ... durnit, TimToady does it again :-)
00:46 * TreyHarris thinks TimToady has ESP
00:46 Juerd Hmm
00:47 audreyt @tell Limbic_Region please rm blib6/lib/Test.pm.yml and try again...
00:47 lambdabot Consider it noted.
00:47 Juerd Can't we just hyper the hyper? :)
00:47 svnbot6 r13205 | markstos++ | [t/operators]
00:47 svnbot6 r13205 | markstos++ | all smart links working here now. added or fixed them in 6 files.
00:47 bsb what about a zip-permute instead of another hyper op
00:47 Juerd <a b> »»~«« <1 2> :)
00:47 TimToady did think about \>>~<<
00:47 lollan joined perl6
00:47 TimToady briefly
00:47 TimToady very briefly...
00:48 audreyt @tell lumi please remmeber to update CompUnitVersion the next time Pugs.AST.Internals.Instances broke backcompat :)
00:48 lambdabot Consider it noted.
00:48 penk joined perl6
00:48 TimToady >>\~<< also possible
00:48 TimToady Even \~ is possible
00:48 rodi "given <a b>, <1 2>, get <a1 a2 b1 b2>" looks suspiciously like Tensor product or Kronecker product...
00:48 TimToady but not terribly mnemonic
00:48 Juerd TimToady: I'm a fan of symmetric operators, so how about »\~/«? :)
00:49 Aankh|Clone joined perl6
00:49 rodi except not flat, I guess.
00:49 * markstos still hasn't figured out how to type unicode characters yet.
00:49 TimToady I'd just as soon keep »« meaning parallel
00:49 Juerd »«~»«. Beautiful and still easier to type than any other permutation loop set. :)
00:50 TimToady Could go with «~» for that matter
00:50 TimToady but the visual metaphor is a bit off
00:50 * rodi suggests ᚸ, the runic letter GAR (u+16b8)
00:50 TimToady and risks confusion with ordinary hypers
00:50 Juerd TimToady: Must this be an operator?
00:50 TimToady Maybe set ops don't get (+)
00:51 Juerd <a b> ==> <1 2> ==> permute &infix:<~>;
00:51 TimToady almost nothing *must* be an operator.  See Lisp.
00:51 TreyHarris <<~>> means ('~'), does it not?
00:51 Juerd TimToady: Will it be a good idea to have this as an operator?
00:51 Juerd TreyHarris: In current Perl 6, yes.
00:52 TimToady that I don't know yet.
00:52 bsb Juerd: I agree, make it something that produces the permutations, then maps an op
00:53 TimToady TreyHarris: <<~>> means qw// only where a term is expected.
00:53 TimToady (or a subscript)
00:53 TreyHarris i've been rather prolific in my use of <<>> wrt what is inside...  i don't know that i want to stop to think about "does this look like an op"?  that brings the problem of Perl 5 { } hash indexer
00:53 TreyHarris TimToady: ohhhh.  good point...
00:53 * TreyHarris lets it sink in
00:55 TreyHarris |+|?  for either outer or set?
00:55 TreyHarris and let (+) be the other one?
00:55 svnbot6 r13206 | rodi++ | Added a few more tests for A::C objects where there was an obscure class
00:55 svnbot6 r13206 | rodi++ | instantiation issue.
00:55 Juerd TreyHarris: Very confusing because of +|, ~| and ?|
00:56 rodi ?eval class a { has $.b; }; my $b; my a $c .= new(:$b); # works
00:56 evalbot_r13204 is now known as evalbot_r13205
00:56 evalbot_r13205 \a.new(("b" => undef),)
00:56 rodi ?eval class a { has $.b; }; my $b; my a $c .= new(:$b ); # doesn't work
00:56 evalbot_r13205 Error:  unexpected " " expecting "::", ":", identifier, "\\(", term or ")"
00:56 rodi anyone have a suggestion where to put that test?
00:56 * TreyHarris has used bitwise-or perhaps ten times in his career, so he doesn't care about confusion :-)
00:57 Juerd I think I'll use bitwise ops a bit [no pun intended] more often than hyperhypers.
00:57 Juerd You see, I already have glob "{a,b}{1,2}" in my toolbox :)
00:58 Juerd 3am. Sleepy time.
00:59 Juerd Good night
00:59 putter http://www.python.org/dev/peps/pep-0225/
00:59 lambdabot Title: PEP 225 -- Elementwise/Objectwise Operators
00:59 TreyHarris Juerd: interesting.  what sort of programming do you do that frequently requires bitwise ops?  (not challenging you, just curious.)  or is it a "have a hammer" thing?  Since bitwise ops aren't a frequently-used hammer in my toolbox, almost nothing looks like the right nail.
00:59 TimToady but that only works for ~
00:59 TreyHarris durnit.
00:59 Juerd TreyHarris: High traffic IP stuff.
00:59 TreyHarris *laugh*  yeah, that'd do it :-)
01:00 Juerd TreyHarris: Too much traffic to do it with anything that sounds like a subcall. Too much work to do it with anything that's not perl.
01:00 Juerd Anyway, afk  # z
01:00 TreyHarris TimToady: exactly, I actually tried to use it for * originally, and I turned it into ~ for the channel only because it was easier to see the parts going into the whole
01:03 TimToady I'm really thinking that (*) and (~) are the right general notation, and set ops can just go hang... :)
01:04 Dr_Pi joined perl6
01:04 TimToady The ascii workaround for ∩ can just be "intersect" or some such
01:04 Dr_Pi left perl6
01:05 putter Ooo.  Apl  o.OP :)
01:05 TimToady I like the pillness of (OP) better
01:06 putter I don't disagree.  Just brainstorming...
01:08 TreyHarris rodi: that would explain a bug i was seeing the other day, I thought :$x was unimpl and switched it to :x($x) and it worked, but I bet I removed the space in so doing.  I don't see an obvious test... stick it into t/block/ or t/oo/ somewhere i guess, or maybe make a new test
01:08 TimToady these would all be the precedence known as "list infix", so you can just say 'a', 'b' (~) 1, 2
01:08 TreyHarris rodi: it's very much like one i was seeing the other day that audreyt fixed.  ?(@($foo)) didn't work, but ?(@($foo) ) did....
01:08 TreyHarris or <a b> (~) <1 2>
01:08 TimToady same thing
01:09 TreyHarris ?eval my $foo = 1..3; ?(@($foo) )
01:09 evalbot_r13205 is now known as evalbot_r13206
01:09 evalbot_r13206 Bool::True
01:09 TimToady <a b> is not the same as ['a', 'b'], but ('a', 'b')
01:09 TimToady and parens just disappear in list context.
01:10 TimToady ?eval my $foo = 1..3; ?$foo[]
01:10 TreyHarris which means that that '
01:10 evalbot_r13206 Bool::True
01:10 TreyHarris (("a1", "a2"), ("b1", "b2"))' business was just nonsensical
01:11 Limbic_Region joined perl6
01:11 TimToady well, depends on whether those nested tuples get bound to something scalar or listy
01:11 TreyHarris ?eval [?(@(undef,)), ?(list(undef,))].say
01:11 evalbot_r13206 OUTPUT[1  ] Bool::True
01:11 TimToady my ($a, $b) := (("a1", "a2"), ("b1", "b2"));
01:11 TreyHarris urgh
01:11 TreyHarris ?eval ?(@(undef,))
01:11 evalbot_r13206 Bool::True
01:11 TreyHarris ?eval ?(list(undef,))
01:11 evalbot_r13206 Bool::False
01:12 TreyHarris TimToady: is that sane?  it mirrors Perl 5, but I'm not sure that's a good thing
01:12 TreyHarris because it continues this idea markstos and others have gotten that "references are still there, we're just pretending they're not"
01:13 TimToady undef in list context is supposed to be 0 width but still cause error if accessed, so I'd say both of those should be false.
01:14 markstos [] is still there. What's it for, if not related to referencing ?
01:14 * TreyHarris makes a note of the timestamp so he can smartlink TimToady's comment in the test he'll be writing ;-)
01:14 markstos and { name => 'value' }
01:14 TimToady it makes an array object out of a list.
01:15 TimToady or a hash object out of a list
01:15 markstos Different than @() and %() ?
01:15 * TreyHarris will be back in 10 &
01:16 NamelessOne joined perl6
01:16 TimToady yes, @() and %() merely require that an array or list be returned without mandating the construction of a new one.
01:16 TimToady s/list/hash/
01:16 markstos So {} and [] are constructors, while @() and %() ask for a particular return context
01:17 bsb what about 3-way permutations: <a b> (~) <1 2> (~) <x y>   <a1x a1y a2x ...>?
01:17 TimToady yes.  Similarly, new Dog requires a new Dog, whereas Dog() does not.
01:17 TimToady int() is a no-op on an int...
01:18 markstos Thanks for the clarification.
01:18 TimToady bsb: good question.
01:18 TimToady they could just be list associative.
01:18 Dr_Pi joined perl6
01:18 TimToady like Y
01:19 markstos hmm, I thought 'method BUILD' would be inherited, but it appears it is not.
01:19 TimToady method BUILD is non-sensical, in general.
01:19 TimToady BUILD should almost always be a submethod
01:20 markstos I'm trying to port "new()" for Perl 5, and BUILD seems like it should be part of the solution, but all my code expects new() to be inherited.
01:20 TimToady it's fine to inherit new
01:20 TimToady just not BUILD
01:21 markstos should "method BUILD" be a parsefail ? It doesn't seem to inherit now with pugs.
01:21 TimToady the purpose of new nowadays is mostly just to translate positional to named form for BUILD
01:22 TimToady probably, but maybe the .META should decide.
01:24 markstos I would be nice to have a simple example of new() is S12. Is it just  new (Str $class) { ... } ?
01:24 markstos s/I would/It would/
01:24 TimToady classes aren't strings
01:24 TimToady and they aren't even Classes anymore.
01:25 markstos new ($class) { ... } ?
01:25 markstos new (Moose $class) { ... } ?
01:25 rodi TreyHarris: sounds good, tx. (baby was crying, had to run upstairs)
01:25 svnbot6 r13207 | rodi++ | Output to terminal uses character(s) of choice, Rule.pm and Automata.pm
01:25 svnbot6 r13207 | rodi++ | use same interface for printchars, and example script updated
01:25 TimToady Moose is the undefined prototype object that knows it's a Moose without knowing which Moose it is.
01:26 * markstos groans
01:26 markstos In otherwords, it's anonymoose at that point ?
01:27 TimToady all you really need is method new ($a,$b) { self.bless(:$a, :$b) }
01:27 TimToady the constructor doesn't care whether you use a real object or not to name the class.
01:28 TimToady so if you say Moose.does(X) you never have to worry about whether you're getting confused by the metaclass.
01:29 markstos Doesn't the universe explode of I use "self." before  there is an object that has been blessed ?
01:29 markstos I mean, I could check myself, but I don't wan to explode.
01:29 TimToady Moose.does(X) and $moose.does(X) are entirely equivalent, except the latter is presumably a defined moose.
01:30 TimToady Moose is a surrogate self that works as long as you don't try to access its attributes
01:30 TimToady but you can reason with the platonic Moose just as if it were a real Moose, up to that point.
01:30 TreyHarris submethod BUILD does not preclude a subclass from running self.SUPER::build, does it?
01:30 markstos I see. Neat trick.
01:31 TimToady a submethod basically is constrained to say "next METHOD" if its self isn't an exact match.
01:32 TimToady markstos: thanks.  and the metaobject is always Moose.META or $moose.META
01:32 TimToady (or .HOW if we do my proposed renaming)
01:32 TreyHarris ok.  that's where I've been hung up: it seems a shame to copy-and-paste one's superclass's BUILD code just because it's a submethod
01:33 TimToady BUILD code should generally be just setting private attributes for that class.
01:33 markstos I just tested with 'method new', and it doesn't seem to be inherited either. That could be  garden variety pugsbug?
01:33 TimToady yep
01:33 markstos I'll review the oo tests and see what's expected to be passing now.
01:34 TreyHarris TimToady: right, but if you're implementing Pugs is Dog, you may want Dog to handle the :tail_wagging_velocity correctly, since you never need to refer to it in your Pugs code other than to set it
01:35 rodi my $b; Someclass a .= new(:$b) ## is there a name for this kind of implicitly-named argument to a method?
01:36 TimToady hmm.
01:36 TimToady "self pair" doesn't quite work.
01:36 rodi it's close, though.
01:36 TimToady autopair maybe
01:36 TimToady good question though
01:37 rodi I like autopair.  I'll add autopair.t to t/oo/class for this test.
01:38 TimToady need to decommute now, or risk starvation.  :)
01:39 rodi have a good dinner :)
01:39 TimToady bbl &
01:39 TreyHarris TimToady: in DBC it's often important to differentiate (in parameter types or return types) between "my class, exactly" and "my virtual class" (to borrow a term).  So class Dog { method sire returns Dog { } } guarantees $dog.sire.isa(Dog), but class Dog { method littermate returns ::?CLASS { } } guarantees that $dog.littermate.isa($dog.HOW), even if $dog is Pugs or Dalmatian or whatever.
01:39 TreyHarris commute, I'll ask again later :-)
01:45 markstos It looks like about 9/10 tests in t/oo/inheritence fail, which could explain why I can't get bless to work, or new to inherit...
01:46 TreyHarris markstos: audreyt says she has a mess of backlogged changes in the object model, but is waiting until after this release to commit them
01:47 markstos when might "this release" be?
01:47 markstos Christmas? :)
01:48 TreyHarris next weekend i think she was shooting for
01:48 svnbot6 r13208 | audreyt++ | * more trivial test triaging...
01:49 TreyHarris as you can see, she's triaging tests to get ready ;-)
01:49 markstos Inheritence plays a fairly key role in CGI::Application. I suppose I'll have to set aside getting the remaining tests to pass until then
01:50 weinig|afk is now known as weinig|zZz
01:52 TreyHarris speaking of committing, anyone know if there's a policy on branching in pugs?  i'd like to branch smoke to implement that CSS switcher thing (because I'm not sure how/if changing the format of smoke.html will affect the smoke server and want to get iblech etc. to look at the changes before I commit them)
01:54 TreyHarris i notice pugs is not rooted in a trunk/, but i just need a few files, so i could svn copy them within util/
01:55 markstos TreyHarris: There's a precendent in: ./misc/pX/Common/P5_to_P6_Translation
01:56 markstos the developer just added his username to some files to indicate they are his "personal" copies.
01:56 markstos His intent was to provide stable and development versions of those files.
02:04 svnbot6 r13209 | rodi++ | Instantiation of class using adverbial autopair (e.g. .= new(:$a)) seems
02:04 svnbot6 r13209 | rodi++ | to currently not be working with a space after the autopair.  Works fine
02:04 svnbot6 r13209 | rodi++ | without space around it, added test for both ways.
02:25 putter Could folks take a minute to run  perl -MExtUtils::Embed -e ldopts  and tell me whether -L/usr/local/lib (or some other localish library path) is present, and if so, is it before or after -L...versionmumble/CORE?
02:26 putter I have two perls which have the wrong thing (local first), and I'm trying to determine if they are merely broken, or indicative of a wider problem that Makefile.PL needs to dealwith.
02:26 markstos before.
02:26 putter Oh, I should have asked for version too.
02:26 putter markstos: thanks :)
02:27 markstos 5.8.8, that's on feather.
02:27 putter my thanks
02:27 markstos Linux, debian or ubuntu, I htink.
02:27 markstos left perl6
02:30 wolverian debian sid
02:32 putter tnx
02:37 rodi putter: before, perl 5.8.7, Ubuntu
02:49 svnbot6 r13210 | rodi++ | added some additional documentation (README and pod)
02:51 TimToady TreyHarris: on the DBC thing, Dog $a is asserting that $a.does(Dog), and where Dog is a class, that degenerates to .isa(Dog).
02:52 TimToady to get exact match you say $a where { .WHAT === Dog } or some such.
02:52 TimToady submethods give you an exact match on self automatically though.
02:55 TimToady That'd be where { .WHAT === $?CLASS }, since it's the lexical class.
03:03 rodi perldoc is written, baby is in bed, puppy is walked, lady is asleep... time for a cold one.  Can I get anybody else one?
03:10 radians joined perl6
03:14 cj TreyHarris: do you do audio stuff?
03:15 cj TimToady: I didn't know you IRC'd :)
03:17 putter Ok, I'm going to declare my build problems simply a broken site.  Unless others run into the same problem.
03:19 putter Namely, the ccopts and ldopts provided by (the Config of) the perl which runs Makefile.pl, must result in headers (eg, perl.h) and a libperl which are compatible with each other and with that Config.
03:27 \nrg joined perl6
03:27 putter One way for this to fail is if ccopts or ldopts -I or -L a "general" directory, like /usr/local/{include,lib}, and there are headers or libraries there from a different version of perl.
03:30 putter I can't think of a plausibly easy way to guard against this.  The pugs build failing at link time may have to be sufficient, though hypothetically at least, the failure mode might be more subtle.
03:37 svnbot6 r13211 | lanny++ | L<S29/List/"=item sort"> in perl6.  Eventually move to prelude.
04:26 TreyHarris cj: yes you did, we've talked here before: http://colabti.de/irclogger/irclogger​_log/perl6?date=2006-08-21,Mon#l1335 ;-)
04:26 lambdabot Title: #perl6 2006-08-21,Mon, http://tinyurl.com/z76pf
04:27 TreyHarris audio stuff?  i speak.  sometimes, i listen.
04:27 hcchien joined perl6
04:29 TreyHarris TimToady: "submethods give you an exact match on self automatically though."  That sounds like submethods like BUILD are *not* subject to calling via SUPER or NEXT
04:29 svnbot6 r13212 | putter++ | Created a new file, PROBLEMS.
04:29 svnbot6 r13212 | putter++ | It is not uncommon for us to do a release, and find some particular system configuration somewhere is having difficulties.  This file is intended as a place to accumulate information on symptoms and work arounds for the current release.  It is mainly intended for developers, rather than users.
04:29 svnbot6 r13212 | putter++ | I included a description of make pugs failing to link because of a mismatched libperl.
04:30 \nrg left perl6
04:42 TimToady TreyHarris: it really depends on which dispatcher you're talking about.  The submethod itself doesn't necessarily do the exact match check.
04:43 TimToady use of SUPER is rather frowned on in Perl 6 because it tends to shut out siblings, unless you're careful to define it as C3 order, kind of emulating SI.
04:43 TimToady there is no NEXT.
04:44 TimToady "next METHOD" is just assuming that the dispatcher loop has a list that it's iterating over,
04:44 TimToady and that the loop label is NEXT:
04:44 TimToady *METHOD, that is
04:44 TimToady but infrastructural dispatchers may in fact lie to the methods their calling
04:45 TimToady the BUILDALL in particular must tell the BUILD to do it's magic as if it's the current object, ignoring the "real" type of the object.
04:46 TimToady it really just ends up calling all the BUILD routines as if they're subs, not methods at all.
04:47 TimToady likewise all the WALK[...] iterators define an order to call the methods as subs.
04:49 TimToady but with ordinary method calls the call into a particular class is allowed to inherit methods from parent classes, whereas submethods in parent classes are invisible.
04:49 svnbot6 r13213 | trey++ | [t/builtins/undef.t]
04:49 svnbot6 r13213 | trey++ | Added tests for ?(@(undef,)) and
04:49 svnbot6 r13213 | trey++ | ?(list(undef,)).  One fails.  Fixed a
04:49 svnbot6 r13213 | trey++ | broken smartlink.
04:49 TreyHarris i think i see
04:50 TimToady the discussion in A12 is still pretty accurate when it comes to SMD.
04:51 TimToady MMD has evolved rather more in the meanwhile.
04:51 TreyHarris ok.  But I'm not sure your earlier answer got the gist of what I was asking.  Let me give a quick example:
04:52 TreyHarris class Dog { method sire returns MUMBLE1 { ... }; method littermate returns MUMBLE2 { ... } }; class Dalmatian is Dog { # no reimplementation of either .sire or .littermate }
04:54 TreyHarris in DBC, I would like to use one MUMBLE1 to indicate that sire will return anything that does Dog.  MUMBLE2 indicates that littermate will return only things that do $self's type.  I was thinking that 'Dog' is MUMBLE1, and '::?CLASS' is MUMBLE2.  sane?
04:55 TimToady No, ::?CLASS is equivalent to Dog
04:55 TimToady both of those would be a "does".
04:56 TimToady you want "returns Dog where { .WHAT === Dog }" or some such.
04:56 TimToady we don't encourage exact type matches...
04:56 TreyHarris ok, that's what I wondered.  So ::?CLASS is static, not virtual.
04:57 TimToady it's no more virtual than Dog, though class names *can* be virtual.
04:57 TreyHarris 'returns Dog where { .WHAT === Dog}' is specifically what I *don't* want, I think.  I'm not claiming that .sire will be exactly a Dog.  I'm just claiming that .sire.does(Dog).  (.isa is gone, or just discouraged?).  so 'returns Dog' should be sufficient there.
04:58 TreyHarris because a Mutt might have a Dalmatian sire, or a Mutt sire, or a Chihuahua sire...
04:58 TimToady all such assertions are "does"
04:58 TimToady it's just that if the typename happens to be a class, it devolves to isa
05:00 TimToady if the typename happens to be both a class and a role, then .does is true if either this class does the role or isa subtype of the class
05:00 TreyHarris but if self is Mutt, self.littermate will do Mutt.  not Dalmatian or Chihuahua, Mutt (though maybe Runt, where Runt is Mutt).  and i'd like to make this assertion declaratively, in Dog.  In Eiffel, one uses "like self" to describe this.
05:01 TreyHarris "like self" is a pretend type that just means "does self"
05:02 TreyHarris but you use "like self" just as you would use Num or Str or Mutt
05:03 TreyHarris do you get the distinction i'm making?
05:04 TimToady within the Dog class, "Dog" virtualizes to "Mutt", according to the current spec.  Not sure if this is what you're looking for...
05:05 TimToady more precisely, within the virtual methods Dog is virtualized.
05:05 TimToady outside of them, Dog just means Dog.
05:06 TimToady so basically, inside methods, Dog means "like self", I think.
05:06 TimToady and the signature would count as "inside"
05:07 mdiep joined perl6
05:07 TimToady this is also discussed in A12--don't know how much made it into S12...
05:08 TreyHarris ah.  ok.  so that's where you invoked the where clause.  if you really were expressing the idea "this method returns something that may not be compatible with self's type", you'd have to say "returns Dog where { .HOW.does(Dog) }"
05:09 TreyHarris and so there the two cases of 'Dog' are treated differently.  the first is effectively rewritten to whatever class you're in now; the second is really truly ::Dog
05:09 TimToady no, .HOW is a MetaClass object, or a Class object maybe.  It's emphatically *not* a Dog object...
05:09 TimToady and doesn't do Dog.
05:09 TreyHarris hmmmm
05:10 TimToady but yes, if the methods are virtual, the referenced class names virtualize along with the current object's class.
05:10 TimToady I believe the example in A12 was deriving a Japanese::Forest from Forest and having the frogs say "ribbet" in Japanese automatically...
05:12 TimToady however, I'm not familiar enough with the Eiffel usage to know whether this maps everything well enough.
05:13 TimToady hmm, I guess { .WHAT eq 'Dog' } would certainly devirtualize
05:14 TimToady whereas { .WHAT === Dog } might still be virtual, but require an exact match to the current self, whatever it is.
05:14 TreyHarris it sounds like, then, that class Routine { method outer returns Routine { ... } } and class Method is Routine { method invocant { ... } } couldn't work, because you might do $method.outer.invocant.  and unless $method.outer is a Method, that will fail.  but according to DBC, that must work.
05:15 TreyHarris unless you explicitly reimplement Method::outer to return Routine
05:18 TimToady it's possible that there's some hanky panky going on there of a covariant/contravariant nature that devirtualizes other instances of Routine, such as in a returns, I suppose.
05:19 TimToady I'm still sufficiently jetlagged that it seems like the middle of the night...
05:19 TreyHarris ok.  i'll think about this some more.  thanks :-)
05:20 TimToady so I'm in a bit of a muddle at the moment.  'course, could just be senility too...
05:21 TreyHarris i'll try to come up with a very simple use case and post to p6-l so you can think about it at your leisure
05:21 TimToady k.
05:21 TimToady well, I should really sleep now.
05:21 TimToady zzz &
05:22 TreyHarris g'night :-)
05:37 TreyHarris ?eval class Foo { ... }; Foo ~~ Foo
05:37 evalbot_r13206 is now known as evalbot_r13213
05:37 evalbot_r13213 *** ... - not yet implemented     at <eval> line 1, column 13-17
05:38 TreyHarris ?eval class Foo {  }; Foo ~~ Foo
05:38 evalbot_r13213 Bool::True
05:47 nothingmuch joined perl6
05:51 corpse joined perl6
06:00 marmic joined perl6
06:38 ludan joined perl6
06:48 kane-xs joined perl6
06:48 iblechbot joined perl6
06:51 Kattana joined perl6
06:55 xerox joined perl6
07:15 mugwump joined perl6
07:43 KingDiamond joined perl6
07:44 premshree_ joined perl6
08:01 gaal moose
08:09 traecer joined perl6
08:09 ruoso joined perl6
08:21 lisppaste3 joined perl6
08:24 notThis joined perl6
08:40 drrho joined perl6
08:50 hugues23 joined perl6
08:52 hugues23 joined perl6
09:04 prefiks joined perl6
09:39 chris2 joined perl6
09:40 cognominal joined perl6
09:49 penk joined perl6
09:59 elmex joined perl6
10:02 iblechbot joined perl6
10:05 KingDiamond joined perl6
10:11 traecer joined perl6
10:33 markstos joined perl6
10:37 rodi joined perl6
10:43 rodi Openfoundry's subversion a little sad this any(<morning afternoon night>)?
10:44 svnbot6 r13214 | markstos++ | Add smart links to numify.t
10:44 svnbot6 r13215 | markstos++ | Move tests for "+" from builtins to operators to reflect how it appears in the Spec.
10:44 markstos working OK from here. ($here eq 'Richmond, Indiana', probably via Sprint)
10:45 rodi if I'm lucky, maybe they've taken away my commit bit :-D
10:45 gaal rodi: very slow for me
10:45 gaal waiting on a commit maybe 5 minutes now
10:47 svnbot6 r13216 | gaal++ | * Pretty printing of Signature objects.
10:47 svnbot6 r13216 | gaal++ |   - Should work ok (see t/syntax/signature.t): invocant, positional,
10:47 svnbot6 r13216 | gaal++ |     named, optional/required, parameter traits.
10:47 svnbot6 r13216 | gaal++ |   - Partially supported: :(MyType $x), :($x = "default")
10:47 svnbot6 r13216 | gaal++ |     (lossy/messy output)
10:47 svnbot6 r13216 | gaal++ |   - Still not perfect. Please add more tests!
10:47 rodi well, thar she blows, gaal :)
10:48 gaal good. This seriously eases writing test for introspection :)
10:48 rodi w00t!
10:56 svnbot6 r13217 | markstos++ | [t/builtins/system/create_files.pl]
10:56 svnbot6 r13217 | markstos++ | [t/builtins/system/dump_args-p5.pl]
10:56 svnbot6 r13217 | markstos++ | [t/builtins/system/dump_args.pl]
10:56 svnbot6 r13217 | markstos++ | [t/builtins/system/system_tests]
10:56 svnbot6 r13217 | markstos++ | Added a request for comment to all of these files. They don't
10:56 svnbot6 r13217 | markstos++ | appear to be directly part of the test suite and it's not clear
10:56 svnbot6 r13217 | markstos++ | what their reason to exist is.
10:58 avarab joined perl6
10:59 xerox How do you see the ++ overall score? :D
10:59 avarab joined perl6
11:03 avarab joined perl6
11:08 markstos @tell Limbric_Region take a look at t/builtins/system/01-strings-with-spaces.t and if it can be enabled on Win32 now. Thanks!
11:08 lambdabot Consider it noted.
11:08 svnbot6 r13218 | markstos++ | [t/builtins/system/01-strings-with-spaces.t]
11:08 svnbot6 r13218 | markstos++ | very minor cleanups.
11:10 lumi markstos: Limbic I think
11:10 lambdabot lumi: You have 1 new message. '/msg lambdabot @messages' to read it.
11:11 markstos @tell Limbic_Region take a look at t/builtins/system/01-strings-with-spaces.t and if it can be enabled on Win32 now. Thanks!
11:11 lambdabot Consider it noted.
11:11 bcorn_ joined perl6
11:12 avarab is now known as avar
11:20 svnbot6 r13219 | markstos++ | [t/builtins/system/chmod.t]
11:20 svnbot6 r13219 | markstos++ | Add placeholder link to S16. It fails now because S16 isn't written yet.
11:23 svnbot6 r13220 | markstos++ | mv evalfile.t to builtins/control_flow, to match how it appears in the spec.
11:24 buetow joined perl6
11:33 svnbot6 r13221 | markstos++ | [t/builtins/io]
11:33 svnbot6 r13221 | markstos++ | Three smart links here, including some more to the yet-to-appear S16.
11:36 svnbot6 r13222 | markstos++ | Add smart link to exit.t
11:39 svnbot6 r13223 | markstos++ | move exit tests to builtins/control_flow to be consistent with the spec.
11:45 svnbot6 r13224 | audreyt++ | * GHC probing on Win32 now no longer fails when \ghc\unrelated-directory exists.
11:45 svnbot6 r13224 | audreyt++ | * Also allow installation of GHC directly inside \ghc\ to be probed.
11:48 svnbot6 r13225 | markstos++ | Add smart link, typo fix and clean up to io_edge_error_cases.t
11:51 svnbot6 r13226 | markstos++ | rename io_edge_error_cases.t to open.t, since that's all
11:51 svnbot6 r13226 | markstos++ | it tested and there are no other open() tests.
11:51 svnbot6 r13226 | markstos++ | Also, a smart link for getc.t.
11:53 markstos @tell agentzh: I've made several links to L<S16>, which is described in S29, but doesn't exist. Perhaps these shouldn't be considered errors now since we know the document will eventually exist.
11:53 lambdabot Consider it noted.
12:06 svnbot6 r13227 | markstos++ | [t/builtins/io]
12:06 svnbot6 r13227 | markstos++ | several more smart links.
12:06 Limbic_Region joined perl6
12:08 iblechbot joined perl6
12:12 svnbot6 r13228 | markstos++ | move sleep.t to control_flow/ for spec consistency.
12:18 markstos so system() has been renamed to run() ? It appears so, but it's confusing because at the end of the run docs in S29, there's a note from Larry that "maybe system() should be renamed to run()". If this has already happened, that note should be converted to the past tense or removed.
12:18 markstos @tell TimToady so system() has been renamed to run() ? It appears so, but it's confusing because at the end of the run docs in S29, there's a note from Larry that "maybe system() should be renamed to run()". If this has already happened, that note should be converted to the past tense or removed.
12:18 lambdabot Consider it noted.
12:19 audreyt it havn't already happened
12:19 * audreyt is in awe of markstos's massive t/ work
12:19 markstos but it will ?
12:19 audreyt I don't know, run() seems like an awfully good userspace name
12:19 Limbic_Region audreyt - s/havn't/hasn't/
12:19 lambdabot Limbic_Region: You have 4 new messages. '/msg lambdabot @messages' to read them.
12:19 markstos Should system() tests be converted to run() :todo tets ?
12:19 audreyt Limbic_Region: thanks
12:20 markstos run() is a method named used by ever CGI::App based application...
12:20 audreyt Limbic_Region: I finally got my adapter -- can resume win32 hacking
12:20 audreyt the main concern is system() returning true instead of 0 is confusing
12:20 markstos Ok, I'll leave the system() tests alone for now, just adding a smart link
12:20 audreyt yup
12:20 Limbic_Region audreyt - ok, not sure I remember everything I wanted you to look at
12:20 Limbic_Region for one though - the libwww tests in ext are causing *my* Win32 to fail
12:21 Limbic_Region for another - the oddity that requires $debug to be on for File::Find
12:21 audreyt Limbic_Region: add them to TASKS or hiveminder.com or somewhere?
12:21 markstos audreyt: It's easier to create a ton of test clean up commits than a bunch of code commits. :) I would actually make /less/ commits, but svk/svn seems to have a limitation about moving modified files.
12:21 Limbic_Region but more importantly, all_parse.t doesn't apparently work at all under the harness on Win32
12:21 audreyt right, it's two-stage
12:21 audreyt I just made precompile.t pass. will commit in a bit
12:21 * Limbic_Region has never used hiveminder but he will look into it
12:21 audreyt still settling down after $job
12:22 Limbic_Region markstos - you still need me to validate a test on Win32 for you?
12:22 audreyt it's really nice that the bandwidth on the taxi back home is better than the ADSL at home.
12:22 agentzh joined perl6
12:22 Limbic_Region t/builtins/system/01-strings-with-spaces.t ?
12:22 markstos Limbric_Region: The referenced test has over 300 tests that are disabled.
12:22 markstos It would be cool if they could be enabled, but they only apply to Win32, apparently.
12:23 markstos But I didn't want to enable them, since I can't test the Win32 breakage that might happen.
12:23 Limbic_Region ok - let me try and remember all the things that are currently quirky on Win32 and then I will look into that
12:23 markstos :)
12:24 integral_ joined perl6
12:26 integral_ is now known as integral
12:26 agentzh at least the following modules can't build on strawberry perl: libwin32, IRC::Run, and GraphViz.
12:26 agentzh *IPC
12:28 svnbot6 r13229 | markstos++ | Add smart link to io/system.t
12:28 svnbot6 r13230 | markstos++ | mkdir t/builtins/os and move system.t there, to be consistent with spec layout.
12:28 agentzh but on the other hand, a lot of other modules failing on AS perl builds happily on strawberry. :)
12:28 markstos left perl6
12:29 weinig joined perl6
12:30 agentzh my PerlMaple also fails on strawberry perl. i don't have a fix since i'll have to link windows' .lib files using mingw, which seems to be impossible.
12:30 Limbic_Region audreyt - I assume you wanted me to hiveminder stuff so that you could see it too?  I am not sure how to do that
12:31 agentzh Limbic_Region: are you using strawberry perl or activeperl?
12:31 Limbic_Region agentzh - ActivePerl
12:32 Limbic_Region though I have a couple of Win32 perl's at my disposal (cygwin, source from mingw)
12:32 audreyt Limbic_Region: create task and assign to [email@hidden.address]
12:32 Limbic_Region ahhh
12:33 agentzh LR: i have a cygwin perl too.
12:33 agentzh i'll try installing Jifty to strawberry perl.
12:35 agentzh audreyt: do you think it possible to link .lib files to strawberry perl?
12:35 audreyt agentzh: irc.perl.org #win32 is the place for such questions
12:36 agentzh audreyt: thanks. :)
12:36 audreyt np :)
12:38 Limbic_Region grrr - how can I tell which tasks I have assigned to you audreyt - tasks disappear after creation so I can't be sure I entered them correctly
12:39 agentzh joined perl6
12:40 audreyt Limbic_Region: it's done correctly
12:41 Limbic_Region audreyt - there is not way for you to know either unless you know how many tasks I have entered :P
12:41 Limbic_Region I have several duplicates already showing up so it can't all be going well
12:44 Limbic_Region ok, should have been 3 tasks which is all I can think of at the moment
12:45 audreyt Limbic_Region: you can also view them under the "pugs" group
12:47 Limbic_Region neat
12:48 weinig is now known as weinig|voting
12:49 svnbot6 r13231 | audreyt++ | * t/unspecced/precompile.t: Some filesystems only have
12:49 svnbot6 r13231 | audreyt++ |   two-second-level time granularity, so we "sleep 2" for
12:49 svnbot6 r13231 | audreyt++ |   testing .yml/.pm staleness.
12:49 svnbot6 r13231 | audreyt++ | * Implement staleness checking for .yml/.pm loader.
12:54 nothingmuch @tell TreyHarris The TTH changes sound good, ping me when you wake up
12:54 lambdabot Consider it noted.
12:56 kolibrie lambdabot is so friendly
12:56 nothingmuch lambdabot++
12:59 Limbic_Region OT - anyone know a decent way of parsing ethereal/wireshark dumps?
12:59 agentzh perlbot: karma lambdabot
12:59 jabbot agentzh: lambdabot has karma of 1
12:59 perlbot Karma for lambdabot: 1
13:00 agentzh perlbot: karma agentzh
13:00 jabbot agentzh: agentzh has karma of 16
13:00 perlbot Karma for agentzh: 46
13:12 fglock joined perl6
13:13 integral joined perl6
13:23 weinig|voting is now known as weinig
13:24 gaal Limbic_Region: what do you need to do with them? fwiw tethereal provides a command line tool you can use to filter, etc.
13:27 Limbic_Region gaal - actually, I was able to get by with just exporting the column headers to csv
13:27 Limbic_Region I need to parse them without ethereal/wireshark - I know about the built-in filters and utilities
13:29 gaal what protocol?
13:29 Limbic_Region mostly udp
13:29 audreyt $job++ # prompted me to cleanup and re-release PDF::FromHTML
13:29 gaal yo audreyt
13:29 audreyt $job-- # out of tuits and I have to sleep now :/
13:29 audreyt gaal: hi :)
13:30 gaal bye audreyt :)
13:30 hexmode joined perl6
13:30 * Limbic_Region is running a smoke but notices the time has jumped by nearly 100% (25 mins to 50 mins) since around the 7th
13:30 Limbic_Region sleep well audreyt
13:30 obra audreyt: any other fun job stuff?
13:32 audreyt obra: nothiing much... a rico widget that remembers its checkbox state
13:32 audreyt much better than paging for 500+ rows of data
13:32 obra heh
13:32 audreyt but I donn't (yet) have that many todos on hm :)
13:32 obra I'm currently attempting to sort out a useful login plugin. but I don't think that's useful for you
13:33 audreyt no, not really. $coworkers are busy writing documentation for RPS
13:33 audreyt both hacking and using, but I don't expect many reusable-in-jiftyland things
13:33 obra nodnodno
13:33 obra sleep well
13:34 audreyt the other fun stuff will become commits back to the GHC tree :)
13:34 audreyt *wave* &
13:34 obra heh
13:37 agentzh obra: when will be the next release of jifty?
13:41 ofer0 joined perl6
13:50 cjeris joined perl6
13:50 * agentzh is going to disable his perl 5 embedding just like putter.
13:58 fglock joined perl6
13:59 iblechbot joined perl6
14:07 vel joined perl6
14:23 amnesiac joined perl6
14:37 onsen joined perl6
14:37 agentzh yay! cron says that we have 400 smartlinks in the test suite now. :)
14:38 svnbot6 r13232 | audreyt++ | * 15:50  * agentzh is going to disable his perl 5 embedding just like putter.
14:38 svnbot6 r13232 | audreyt++ |   To save agentzh++'s sanity, relax the ActivePerl requirement to 5.8.7 build 815,
14:38 svnbot6 r13232 | audreyt++ |   which is the first build that offers MinGW compatibility.
14:38 agentzh audreyt: yay!
14:39 agentzh oh, my AS build is 813.
14:39 agentzh sigh.
14:42 agentzh but pugs doesn't check my AS build number, it seems. :)
14:42 svnbot6 r13233 | audreyt++ | * Perl6::Spec updater: Change the initial timeout to 10sec
14:42 svnbot6 r13233 | audreyt++ |   for people running Pugs's Makefile.PL without a working
14:42 svnbot6 r13233 | audreyt++ |   internet conection.
14:44 agentzh and the build fails. so i need to upgrade at least to build 815.
14:46 elmex joined perl6
14:53 Limbic_Region @tell TreyHarris WRT t/builtins/system/01-strings-with-spaces.t on Win32 - only 1 test passed and that was the establishment of the test files (I am disabling again locally)
14:53 lambdabot Consider it noted.
14:56 pasteling "agentzh" at 210.22.200.67 pasted "Pugs build failure on ActivePerl 5.8.7 build 815" (72 lines, 3.2K) at http://sial.org/pbot/19634
14:56 agentzh even build 815 fails. alas.
14:58 Limbic_Region agentzh - is there a reason not to just upgrade all the way and replace ppm4 with ppm3 (assuming that is why you are avoiding the upgrade)
14:58 agentzh Limbic_Region: because i have installed all those tricky modules on AS 5.8.7, which are invaluable.
14:59 Limbic_Region um, so set PERL5LIB env variable?
14:59 Limbic_Region AFAIK, they are binary compatible
15:00 agentzh PERL5LIB env sounds like a good idea.
15:00 agentzh will try it out
15:00 agentzh :)
15:00 Limbic_Region please ensure to test as I may be wrong about the bin compatibility
15:01 frankg joined perl6
15:02 agentzh i'm not believe in the 5.8.8 to 5.8.7 binary compatibility at all
15:02 agentzh (to be honest)
15:02 rgs why ?
15:03 agentzh because i'm having a lot of problems after installing 5.8.8 directly over 5.8.7's installation directory.
15:03 rgs such as linking problems ?
15:04 agentzh rgs: nope
15:04 agentzh weird errors like...
15:04 agentzh a sec...
15:06 agentzh http://colabti.de/irclogger/irclogge​r_log/perl6?date=2006-09-11,Mon#l495
15:06 lambdabot Title: #perl6 2006-09-11,Mon, http://tinyurl.com/k5qmu
15:06 Limbic_Region directly over?  woah - wouldn't have suggested that
15:06 agentzh and also...
15:07 dakkar joined perl6
15:07 rgs hmm. on windows ?
15:07 obra agentzh: as soon as I get a cacne to changelog
15:07 agentzh yeah
15:08 agentzh obra: what is the status of jifty on win32?
15:08 agentzh rgs: ActivePerl
15:09 agentzh obra: audreyt suggested using the "notest install" trick to install Jifty on Windows.
15:09 rgs might be a mismatch or a misinstallation of re.pm. did you reboot after having upgraded perl ?
15:10 obra agentzh: actually, kenichi ishigaki has built a PPM repository for it
15:10 agentzh obra: really? where's it?
15:10 agentzh rgs: no.
15:11 rgs might be it
15:11 rgs (cargo culting problems seen on P5P)
15:11 agentzh ah
15:13 obra agentzh: hm. pop on to #jifty and ask charsbar to mail to the list? I thought he had
15:13 agentzh #jifty is on freenode?
15:13 agentzh rgs: upgrading to 5.8.8 has caused a *lot* more problems than 5.8.7.
15:14 agentzh rgs: i've been fighting since the day 5.8.8 was released.
15:15 agentzh mostly it's actvestate's fault, i think.
15:15 rgs strange, because we (P5P) haven't received broken compat bug reports
15:15 rgs and Nicholas is quite paranoid about that
15:15 agentzh LOL
15:16 agentzh almost all the problems are specific to ActivePerl, iirc.
15:16 obra #jifty on freenode
15:16 agentzh obra: thanks :)
15:16 obra activestate changed a bunch of stuff for their 5.8.8 release
15:16 agentzh indeed...
15:17 frankg joined perl6
15:19 nine joined perl6
15:21 kanru joined perl6
15:33 svnbot6 r13234 | audreyt++ | * Another attempt at fixing ActivePerl build once and for all,
15:33 svnbot6 r13234 | audreyt++ |   including older 5.8 builds.
15:35 obra impressive for a sleeping ms tang
15:35 svnbot6 r13235 | audreyt++ | * extend the backward-compat fix to 5.8.x on other Win32 distributions as well.
15:41 * agentzh chortles.
15:41 agentzh 23:40 for audreyt...err, not extremely late. :)
15:42 kisu joined perl6
15:42 traecer joined perl6
15:42 agentzh oh, i shouldn't have mentioned her name...
15:59 marin joined perl6
16:01 marin http://freelance-job.blogspot.com/2006/09​/gaf-freelance-job-popularity-report.html
16:01 lambdabot Title: FREELANCE JOB, http://tinyurl.com/freye
16:02 amnesiac joined perl6
16:04 Psyche^ joined perl6
16:07 Alchemy joined perl6
16:11 Psyche^ is now known as Patterner
16:14 Khisanth joined perl6
16:28 weinig is now known as weinig|bbl
16:31 justatheory joined perl6
16:53 [particle] joined perl6
16:54 araujo joined perl6
16:55 cj TreyHarris: 20:15 < cj> TimToady: I didn't know you IRC'd :)
16:55 cj TreyHarris: you're not TimToady
16:56 Limbic_Region cj - perhaps TreyHarris pasted it for TimToady's benefit as he was AFK at the time?
16:58 cj Limbic_Region: but TreyHarris said: 21:26 < TreyHarris> cj: yes you did, we've talked here before:
16:58 cj http://colabti.de/irclogger/irclogger​_log/perl6?date=2006-08-21,Mon#l1335 ;-)
16:58 lambdabot Title: #perl6 2006-08-21,Mon, http://tinyurl.com/z76pf
16:59 cj which makes me think that he thought I was saying that I didn't know that he IRC'd.
16:59 cj anyway, good morning folks :)
17:00 Limbic_Region oh, *shrug*
17:00 Limbic_Region well, both TreyHarris and TimToady IRC and have for some time now
17:00 Limbic_Region good localtime to you
17:01 TreyHarris cj: earlier i screwed up the highlighting of comments with my name, and didn't look closely at your comment :-)
17:01 lambdabot TreyHarris: You have 2 new messages. '/msg lambdabot @messages' to read them.
17:02 TreyHarris Limbic_Region: why were you telling me about 01-string-with-spaces.t?
17:02 Limbic_Region one of those comments is from me
17:02 Limbic_Region misfire
17:03 TreyHarris ah.  "confusing people for other people, it's the hit new game that everyone is playing!"
17:03 Limbic_Region @tell markstos WRT t/builtins/system/01-strings-with-spaces.t on Win32 - only 1 test passed and that was the establishment of the test files (I am disabling again locally)
17:03 lambdabot Consider it noted.
17:04 Limbic_Region heh
17:04 Limbic_Region I had 4 msgs from @lamdabot myself and yours was adjacent to the one from markstos
17:04 Psyche^ joined perl6
17:07 mdiep joined perl6
17:07 TreyHarris hm.  could someone look at audreyt's diff -r13230:13231 t/unspecced/precompile.t, and tell me  why the BEGIN block that was added is needed?
17:08 [particle] (or if you're using svn 1.4, that's diff -c 13231) # svn++
17:08 rodi [particle]: wasn't that just released an hour ago? ;)
17:08 [particle] yes, and it works great :)
17:10 ludan joined perl6
17:10 Limbic_Region TreyHarris - you mean, why the code needed to be added as a BEGIN block or why a distinction in OS was necessary?
17:12 TreyHarris eh?
17:12 * TreyHarris looks at the diff again
17:12 Limbic_Region fwiw, I think I know why the skiprest was added for Win32ish platforms but not why it was in a BEGIN block
17:12 TreyHarris the OS distinction wasn't added, it was already there.  the BEGIN block is what was added....
17:13 TreyHarris I'm asking about the BEGIN block
17:13 TreyHarris errr.... surrounding that preexisting code in a BEGIN block.  I guess it's not quite correct to say the BEGIN block was "added".
17:13 Limbic_Region that's what I am talking about - which is testing what platform it is being run on and then skipping rest if Win32
17:14 TreyHarris Limbic_Region: lol... I have such trouble making myself clear.  I mean the *lines*  "BEGIN {" and "}" were added.  Why?  I don't care about what's inside those lines except as it relates to why those two lines were added :-)
17:15 Limbic_Region TreyHarris, that's what I asked you. - Why in a begin block or why at all
17:15 * [particle] waits painfully while his pugs working copy is upgraded to svn 1.4
17:15 Limbic_Region I have no idea why it is in a begin block
17:15 Limbic_Region doesn't make much sense to me
17:16 TreyHarris I guess I'll ask audreyt when she returns
17:16 Limbic_Region and I was parsing the diff wrong anyway - I thought the Win32 skip lines (diff context) were being added as well
17:17 TreyHarris Limbic_Region: ah, ok.  I reread my question and couldn't figure out why it was misinterpreted that way.  :-)
17:17 Psyche^ is now known as Patterner
17:18 Limbic_Region TreyHarris - BEGIN block lead me to believe there was a chunk of code so that's what my eyes showed me
17:18 TreyHarris But last night I spent an hour talking to TimToady about notions of self's type, and I still don't think I got the point of my question across.  As they say in French, "I'm unlucky in thought" ;-)
17:18 Limbic_Region if you had said - can anyone tell me why that block of code was put in BEGIN braces, I would have not been so fast to confuse myself
17:19 [particle] TreyHarris: possible so the exit occurs before other modules are loaded?
17:19 * TreyHarris applauds [particle]
17:19 TreyHarris yep, that's exactly it.
17:19 TreyHarris thanks
17:19 [particle] anytime :)
17:22 TreyHarris oohrm.  is unless try({ eval("1", :lang<perl5>) }) legal?   I copied-and-pasted it from elsewhere... but doesn't that a) call try() as a sub, which i may not be, and b) need to be written unless do try { ... }, to treat the block as an expression?
17:27 [particle] what does C<[=] $x;> do?
17:28 TreyHarris nullop, I would assume, given the discussion of identity relationships and reduce operators
17:29 TreyHarris the identity value for = would be undef, I suppose, so [=] $x would be equiv to undef = $x
17:29 TreyHarris I think [X] $x; is supposed to always be a nullop, regardless of X
17:30 [particle] perfect, thanks.
17:30 TreyHarris (except maybe it will throw an error if $x can't be the RHS of X?)
17:31 PerlJam TreyHarris: What's the value of  [+] 5    ?
17:32 [particle] pj: i assume you mean $x = [+] 5 or something
17:32 [particle] ?eval [+] 5
17:32 evalbot_r13213 is now known as evalbot_r13235
17:32 evalbot_r13235 5
17:33 PerlJam I'm trying to ascertain what TreyHarris means by "nullop" exactly.
17:33 [particle] ?eval [+=] 5
17:33 evalbot_r13235 Error:  unexpected "[" or "=" expecting program
17:33 [particle] ah, that an ENOIMPL
17:34 PerlJam [particle]: did someone add tests for those?
17:34 TreyHarris PerlJam: ([X] $x) is equivalent to ($x).  putting the reduce op there is an operation that does nothing.  a null operation, or a nullop.
17:34 [particle] yeah, i think the add/sub/etc ops should act differently from assign ops in reduce
17:34 PerlJam TreyHarris: okay, just checking.
17:34 [particle] ?eval [=] 5
17:34 evalbot_r13235 5
17:35 * TreyHarris heads out for meetings &
17:36 * agentzh heads out for sleep &
17:36 agentzh left perl6
17:36 traecer joined perl6
17:45 svnbot6 r13236 | fglock++ | v6, Pugs-Compiler-Rule: fixed Grammar::Rule compilation
17:48 Limbic_Region is Num -> Num a valid signature for a function?
17:48 Limbic_Region err, haskell question
17:48 * Limbic_Region wanders on over to #haskell
17:49 PerlJam Limbic_Region: why wouldn't it be?
17:49 Limbic_Region PerlJam - type class versus type
17:49 fglock is there a way to declare a variable local to a rule? "rule{{local $x}}" is only local to the closure
17:50 Limbic_Region PerlJam - and no, it is not
17:50 Limbic_Region since Num is not a type
17:50 PerlJam Limbic_Region: yeah, I'm conflating perl6 and haskell in my head.
17:50 PerlJam ETOOMANYPROGRAMMINGLANGUAGES
17:51 Limbic_Region PerlJam - no worries, haskell has a way around it Num a => a -> a
17:51 PerlJam fglock: why would you want to do that?
17:51 PerlJam fglock: (I can't think of a way that doesn't involve a surrounding block  { my $foo; rule { ... } }
17:51 PerlJam )
17:53 Limbic_Region fglock - obviously if you are asking it is because it means doing something useful - so ask on the list
17:53 fglock PerlJam: I need a place to collect variable names that are declared in submatches
17:53 fglock my other choice is to post-process the syntax tree
17:54 PerlJam fglock: the match object is a good place to collect things.
17:55 fglock PerlJam: but the match object is too local - I need to add things to the parent object - maybe I could pass the parent object as a parameter to the submatch
17:57 PerlJam I'm with L~R on this one.  Ask p6l.  Maybe you'll get some good answers, maybe you're incite a language change  :)
17:57 fglock ok!
17:59 gattocarlo joined perl6
18:01 gattocarlo joined perl6
18:19 svnbot6 r13237 | fglock++ | Pugs-Compiler-Rule - cleanup aliased captures grammar
18:25 wrbl joined perl6
18:29 frederico joined perl6
18:30 renormalist joined perl6
18:33 mauke joined perl6
18:35 spinclad joined perl6
18:42 integral_ joined perl6
18:46 gaal Limbic_Region: indeed. You can use http://haskell.org/hoogle/ or here:
18:46 lambdabot Title: Hoogle
18:46 gaal @hoogle (+)
18:46 lambdabot Did you mean: (+)
18:46 lambdabot Prelude.undefined :: a
18:46 lambdabot Control.Monad.Reader.ask :: MonadReader r m => m r
18:46 svnbot6 r13238 | fglock++ | Pugs-Compiler-Rule - cleanup aliased captures grammar (more)
18:46 gaal wha--??
18:46 gaal @hoogle +
18:46 lambdabot Prelude.(+) :: Num a => a -> a -> a
18:46 lambdabot Prelude.(++) :: [a] -> [a] -> [a]
18:46 lambdabot Control.Arrow.(+++) :: ArrowChoice a => a b c -> a b' c' -> a (Either b b') (Either c c')
18:47 gaal the first one of these is what I wanted to show. always pick something familiar and go from there. Or if you know the type, from there to functions...
18:47 prefiks left perl6
18:54 integral_ is now known as integral
18:55 Odin- joined perl6
18:58 svnbot6 r13239 | putter++ | docs/notes/characterize_perl6 - Created.
18:58 svnbot6 r13239 | putter++ | This file is an attempt to create a one to three paragraph answer to the question "What is perl6?", asked from the perspective of language design.  The work is in its infancy.
18:58 svnbot6 r13239 | putter++ | "What is a characterization of the design of the perl6 language?  Perl6 is a flexible hybrid language." ;)
18:58 svnbot6 r13239 | putter++ | This is a strawman/placeholder/template for something I think would be useful, but haven't had time to work on.  Please feel free to bash at it.
19:00 putter joined perl6
19:00 mdiep joined perl6
19:01 putter Re "disable p5 just like putter"-isms, sigh, I knew I should have posted a line of context here.
19:05 putter I've p5 embedding working just fine.  It took only a few seconds to _work around_, using a load path.  *But*, with embedding becoming the default, it becomes important that it "just work".  Thus the extra couple of hours exploring perl installation behavior, pondering was to add a headers+library+perl match check, etc.
19:05 putter And shaving the yak of getting non-embedding to actually work right.
19:06 putter Perl5 embedding, and non-embedding, currently seems to work fine.  With only one counter case (my odd libraries lying around), and perhaps now a second?
19:06 weinig|bbl is now known as weinig
19:08 putter Though it looks like audreyt fixed agentzh's ActiveState problem.  So the only known exception to embedded p5 just working is putter's "really needs a spring cleaning" machine.
19:09 putter To summarize - p5 embedding just works.
19:09 Limbic_Region putter - s/([Pp]erl)(5|6)/$1 $2/g
19:09 putter Please report any exceptions to that one-liner.
19:10 putter Limbic_Region: Add a space between "perl" and "5"?
19:10 * putter looks puzzled
19:10 corpse joined perl6
19:11 Limbic_Region I am fairly certain that is the preference of the ficticious cabal
19:12 * TimToady .oO(nobody here)
19:12 lambdabot TimToady: You have 1 new message. '/msg lambdabot @messages' to read it.
19:12 Limbic_Region at least chromatic is pretty emphatic about it
19:12 Limbic_Region and I can't find an example on http://dev.perl.org/perl6/ that has the space omitted
19:13 putter (It's like watching neighbors pick up their mail...;)
19:13 lambdabot Title: Perl 6 - perl6
19:13 TimToady Dear lambdabot: I already backlog, so I don't need a messaging system.
19:13 Limbic_Region I take that back, the FAQ link
19:13 putter Hmm.   p5, p6...
19:15 Limbic_Region those don't match the pattern
19:15 putter Is there a concept/tag for perl 6, the language which is incompatible with perl 5, as opposed to perl 6, the code recognizing "language" which is backwards compatible with p5, and likely python, ruby, CL, and apl?
19:16 Limbic_Region TimToady - do me a favor and type something into the channel - experimenting
19:17 PerlJam TimToady: perhaps you could answer a question for me and help Limbic_Region at the same time:  Should character class shorcuts be allowed inside of character classes (as in perl5)?
19:17 * Limbic_Region suspects it is possible to give notes to lambdabot without announcing it in the channel by using /msg lambdabot @tell <person> <msg>
19:18 putter I buy "perl 5"/"perl 6" as versions of "perl".  But how does one refer to that portion of "perl 6" which is excludes "perl 5".   We've been calling that perl 6 too.  And there, the case for the space seems weaker.
19:18 PerlJam <[\w\s]> seems less good now that we have the long forms (which are clearer IMHO)
19:20 gaal @tell gaal stop being silly
19:20 lambdabot You can tell yourself!
19:20 putter lol
19:21 Limbic_Region doesn't work if it is yourself
19:21 * Limbic_Region tried that to test as well
19:21 kolibrie I always thought perl 6 with a space is the language, and perl6 without the space are the computer programs that implement the language
19:21 gaal yeah, would I listen?
19:21 larsen joined perl6
19:21 Limbic_Region ok, since others are more active, I will pick on gaal
19:21 Limbic_Region gaal type something please
19:22 Limbic_Region what - no one wants to be my guinea pig
19:22 gaal poets have been mysteriously silent on the subject of cheese
19:22 lambdabot gaal: You have 1 new message. '/msg lambdabot @messages' to read it.
19:22 Limbic_Region yeah, it worked
19:22 Limbic_Region s/yeah/yay/
19:22 gaal lambdabot: I'm not talking to you
19:23 Limbic_Region I was merely testing the ability to leave a /msg for someone without letting the whole channel know what it was
19:23 kolibrie sneaky sneaky
19:24 * Limbic_Region also tested if a phone a is forwarded to phone b which was forwarded to phone c which was forwarded to phone a if an endless ring loop would be established
19:24 Limbic_Region it was
19:24 bernhard joined perl6
19:25 putter perl -MPoly foo.p5 bar.p6 hee.py qux.rb   What is the version of the (6.001) executable called?  The contents of file bar.p6?  The "language" (executable+CPAN) which permits that mind-blowing command line?  The set of all implementations/distributions which could provide that executable?  What else?
19:26 * putter wonders if with delay and forward, one could set up oscillations
19:26 putter logic on office phone nets!
19:27 gaal putter: on #haskell there are two \bot instances. mayhem did not ensue. yet.
19:31 putter gaal: question is whether you can create a nand gate...
19:31 svnbot6 r13240 | lanny++ | modified mergesort to use Pair spans rather than array slices.
19:32 gaal oh, you're not talking about bots responding to each other, are you
19:34 putter late night reception phones are an oscillator clock, accounting phones are latches, sales phones are the logic, the line of trading desk phones is the input, and resulting ringing the output...
19:34 putter silliness
19:36 lanny joined perl6
19:36 svnbot6 r13241 | fglock++ | v6 - added file Grammar::P6Rule2 - This is the bootstrapped version of
19:36 svnbot6 r13241 | fglock++ | Grammar::Rule (it calls back the p6 compiler to parse closures)
19:38 rafl_ joined perl6
19:39 putter So without being too creative, what do we have to play with to reduce our shortage of names?  Capitalization and upcasing (perl Perl PERL), abbreviation (p5 p6), prefixing (hsPerl, parrotPerl), creative names (pugs), spacing (perl6, perl 6), wordified numbers (Perl Six).  What else?
19:39 putter Maybe we need to be creative.
19:39 lanny Um.. Unicode?
19:39 [particle] unicode
19:39 fglock putter: lrep, v6
19:39 mauke Perl VI
19:40 PerlJam I like vi  ;)
19:40 PerlJam vi and perl go together well  :)
19:41 lanny Just pick up a bit of Cherokee and you've already got the unicode alphabet.  It's aglutanating I think so you could really go to town.
19:42 gaal "babble"
19:43 TimToady babel xvii
19:43 lambdabot TimToady: You have 1 new message. '/msg lambdabot @messages' to read it.
19:43 lanny I think you've hit it, putter.  Be creative and pre/suffixing
19:43 mauke final fantasy emacs
19:44 TimToady Practically Every Rotten Language
19:44 gaal Genesis XI
19:46 putter "It's really quite simple, confused newbie user.  You can run your Perl 5 code unchanged on Perl 6.  Yes, Perl 6 is backwards incompatible with Perl 5.  Oh, perl!  Yes, perl-6 can run Perl 6 and Perl 5.  perl-5 can also run Perl 6 using v6.  Oh yes, you can use parrot with perl, it's in CPAN.  No, that's ponnie."
19:47 putter Someone really needs to write a comedy skit.
19:47 lanny You just did.
19:47 putter Barely scratched the oxide layer of the surface.
19:48 vel joined perl6
19:48 leo There's no ponnie, and ponie is dead, but there's punie, which is partially Perl 1
19:49 putter Ah, so that's a dead horse.  What's Perl 6 running on parrot called?  Any distinct name for p5 on parrot?
19:49 PerlJam putter: "perl"
19:49 PerlJam :-)
19:49 TimToady peony
19:50 leo putter: languages/perl6 which is using a p6 grammar and PGE/TGE
19:50 gaal punny
19:51 [particle] puny
19:51 leo p5 on parrot was Punie
19:51 [particle] pony
19:51 leo err s/u/o/
19:51 PerlJam so I take it ponie isn't getting a second chance at life any  time soon.
19:52 * [particle] writes a perl puntime engine
19:52 TimToady undead things tend to take the long view...
19:53 PerlJam TimToady: I'm all for the longnow, but not if means I'm dead when a useable perl6 compiler is finally released.
19:54 leo PerlJam: http://use.perl.org/articl​e.pl?sid=06/08/24/1657225
19:55 lambdabot Title: use Perl | Ponie has been put out to pasture, http://tinyurl.com/eodvl
19:56 svnbot6 r13242 | fglock++ | v6 - Pugs::Grammar::P6Rule TODO
19:56 PerlJam leo: yes, I read that.  But I take it to mean that the current ponie effort is door-nail dead and not to preclude any resurrection and transmogrification into some new ponie incarnation.
19:59 putter Dramaticus Personae: Perl, perl, Perl 6, Perl 5, perl-6, perl-5, parrot, pugs.  perl-6... is parrot, or pugs as perl-6 while not being pugs, which is different, or perl-5 becoming perl-6.
19:59 fglock a mini perl5 could be implemented as a perl6 grammar - but does it makes sense
20:00 leo PerlJam: exactly - anyone could pickup the work and continue I presume, given enough perl5-gut tuits
20:00 PerlJam fglock: foregoing bug-for-bug compatibility makes things easier I think :)
20:01 putter pugs embeds perl-5 and parrot.  also perl-6, when that exists, unless pugs is perl-6, in which case there would be no point, though you could do it anyway.  perl-5 can embed parrot and pugs(?).  parrot, acting as Perl 5 or as Perl 6, can embed perl-5, pugs, perl-6, and inself.  Recursively.
20:01 lisppaste3 joined perl6
20:02 putter Oh, allll is recursively.
20:05 PerlJam putter: it's camels all the way down
20:05 [particle] it thought it was mooses
20:05 [particle] meese?
20:06 leo no parrots
20:06 [particle] that's all the way up :)
20:06 PerlJam maybe its a cross breed of some sort
20:06 leo ah - yes, indeed
20:06 PerlJam moomal
20:06 PerlJam camoose
20:07 putter CPAN holds Perl 5 code, but now Perl 6 code too.  It includes CPAN6, which runs on perl-5, and which can itself also hold Perl 5 and 6.  It also holds perl-5, and eventually perl-6, and v6 which is Perl 6 on Perl 5 and thus on perl-5 and eventually perl-6.
20:13 putter Perl 6 implemented in Javascript is jsPerl6.  Python implemented in Perl 6 is plPython.  Python 3.0 implemented in Perl 6.1 running on jsperl-6.2 is ... jsplPython for short.
20:21 putter Ah, a week with perl, ruby, and python user group meetings, and no conflicts.  yay.
20:24 svnbot6 r13243 | fglock++ | v6 - fixed return-object in 'closure' rule
20:24 svnbot6 r13244 | fglock++ | Pugs-Compiler-Rule - replace '$&' with '$1'
20:28 justatheory joined perl6
20:29 hexmode joined perl6
20:34 penk joined perl6
20:44 SubStack joined perl6
20:47 Schmooster joined perl6
21:03 lisppaste3 joined perl6
21:06 svnbot6 r13245 | fglock++ | v6, Pugs-Compiler-Rule - the Rule grammar in v6 is a subclass of Grammar::Rule
21:09 mugwump putter: do you have details of the perl6 on cpan?
21:13 [mago] joined perl6
21:14 weinig is now known as weinig|zabars
21:22 markstos joined perl6
21:22 markstos ?
21:22 lambdabot markstos: You have 1 new message. '/msg lambdabot @messages' to read it.
21:26 Limbic_Region joined perl6
21:28 FurnaceBoy joined perl6
21:31 svnbot6 r13246 | lanny++ | Added google search of synopses
21:34 markstos If anyone wants to help, I'm looking for the part of the spec covers this syntax: my $ref   = @array;
21:37 svnbot6 r13247 | markstos++ | [t/builtins/]
21:37 svnbot6 r13247 | markstos++ | Every .t file in t/builtins has at least one smart link now
21:39 markstos this works well enough: # L<S02/"Literals"/"In scalar context, though, the implied parentheses are not removed">
21:40 Limbic_Region markstos - get the @tell I left for you?
21:40 markstos LR: Yep. thanks!
21:40 markstos lambdabot++
21:43 svnbot6 r13248 | fglock++ | v6 - reuse 'pod' grammar from PCR.
21:43 svnbot6 r13248 | fglock++ | v6 and PCR no longer rely on Text::Balanced or :P5
21:43 svnbot6 r13248 | fglock++ | v6 - bug - Deep recursion warning while compiling Test.pm (no errors)
21:44 xerox_ joined perl6
21:44 markstos flgock: could I do a quick IRC interview you for a pugs.blogs.com post ? This would be about your v6 work
21:44 fglock markstos: sure
21:45 markstos Ok. Give me a couple minutes to prepare good questions. :)
21:45 fglock markstos: would you mail me? I'm going home :)
21:45 markstos Sure.
21:46 fglock me at gmail
21:46 markstos got it.
21:46 fglock thanks!
21:48 fglock left perl6
21:50 dakkar joined perl6
21:52 weinig|zabars is now known as weinig
21:57 polettix joined perl6
21:58 markstos I found in a test that this works: my $a1 = my $b1 = 42;
21:58 markstos I can't find it in the spec to add a smart link though. Any pointers?
21:59 markstos I searched for 'chain' and '= my' and didn't get any hits.
22:00 Eimi joined perl6
22:01 markstos mostly aimed at agentzh and TimToady: It would be useful if "S16" started to exist in some form, because there are various smart links pointing there now
22:01 markstos also, it might be useful to have a document that is a target for to use for tests we can't find spec entries for. That way, someone could review them easily all on one page.
22:03 markstos These items might be a little different than "unspecced" features. I'm thinking more like the case above, where there is a suspicion that the feature is spec'ed, but it's just difficult to find, like "true" , "not" and "Inf" were yesterday.
22:03 Limbic_Region I understood true and Inf but why does not need to be spec'd
22:03 Limbic_Region does it behave differently than in p5?
22:04 Limbic_Region it must else there wouldn't be a test for it
22:04 Limbic_Region but I guess I must have missed how
22:04 markstos Limbic_Region: because pugs is implemented from scratch, it's useful to test /all/ features, even ones that weren't supposed to change.
22:05 markstos It's also useful to have a complete, self-contained spec.
22:05 markstos So far, I've found very little truly missing in my smart linking work.
22:05 markstos left perl6
22:06 Limbic_Region no - you misunderstand
22:06 Limbic_Region but you just left so now I am talking about myself
22:08 Limbic_Region but come to think of it - saying that if it isn't explicitly spec'd in one of the synopses that it is the same as p5 isn't really a spec
22:08 Limbic_Region and I would agree that the entirety of the language should be spec'd if our goal is to have an independent reference from which multiple implementations can be derived fro
22:08 Limbic_Region using an existing (and still changing) implementation is a bad idea - even for the most basic things IMO
22:09 Limbic_Region TimToady - your thoughts on the above?
22:18 cjeris left perl6
22:38 lanny Using an existing and changing implementation for other than research purposes you mean?  Or using a still changing spec?
22:40 Limbic_Region lanny - I am referring to the synopses only reflecting the changes between perl 6 and perl 5
22:40 lanny Yep.  Was with you all the way up to the last sentence where you switch to speaking of implementations
22:40 Limbic_Region it has been said, and I believe the current philosophy to be, that if you don't see something in the synopses it is exactly as it is in perl 5
22:41 Limbic_Region well, the perl 5 spec *IS* the implemetation
22:41 Limbic_Region and it isn't even a static one
22:41 lanny Ah.  So you meant using the perl5 implementation as the fallback spec.
22:41 Limbic_Region yes, that that was a bad idea
22:42 Limbic_Region though I haven't ever designed a language so my comment is from a completely lay perspective
22:42 lanny I'd say rather that it's a convenient idea.
22:42 lanny Because the folks working on Perl 6 are pretty conversant with Perl 5.
22:43 Limbic_Region lanny - as a design goal though, that's pretty flimsy
22:43 lanny But yes, eventually the whole language needs to be spec-ed or you'll never be able to build a conformant implementation
22:43 Limbic_Region how many places in the perl 5 documentation do you see "... behavior is undefined"
22:43 lanny Not really.  You have to start somewhere and I think it's an expedient rather than a goal
22:43 * Limbic_Region has to go check on his daughter
22:44 lanny For the language extended by CPAN pretty often.  For the core I don't see it so much.
22:48 Limbic_Region you don't see it much in the core - but its there
22:48 Limbic_Region sort in scalar context for instance
22:49 Limbic_Region in any case, I think it is fine for pioneers (such as pugs) to just work off assumptions
22:49 Limbic_Region heck - we do that all the time anyway for the stuff we expect to change that hasn't been spec'd yet
22:49 Limbic_Region such as corouties
22:49 Limbic_Region coroutines that is
22:50 Limbic_Region but for the final spec - it should stand on its own IMO
22:50 Limbic_Region my question to TimToady was more exploratory for his vision rather than let's solve a problem today
22:51 * Limbic_Region wanders back off
22:58 svnbot6 r13249 | lanny++ | move search box to top of syn_index
23:02 zgh joined perl6
23:18 BooK_ joined perl6
23:19 TimToady Limbic_Region: I expect that specs to get filled out with P5ish carryovers as the entire P5 test suite (core parts, at least) are ported over to P6, and people notice there's no place to L<> to, and do some cagecleaning on the specs.
23:20 hexmode joined perl6
23:52 drbean left perl6

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

Perl 6 | Reference Documentation | Rakudo