On Thu, Mar 10, 2005 at 11:26:25PM +0000, Nigel Sandever wrote:
> > The backwards compatibility argument is bunk: we can do exactly what was 
> > done
> > for err() and lock().  Use a weak keyword.  Any existing routine called 
> > say()
> > will continue to work as before.
> 
> I'm not sure that is really necessary, but if it's the right thing to do, I 
> certainly have nothing against it.

It is very necessary.  You do not break backwards compatibility.  You cannot
be flip and just say "oh, everyone will make this simple change to all their
code".  What happens instead is nobody wants to upgrade Perl.  You don't
want folks having to scour the Change log looking for possible backwards
incompatible changes and then scouring their code to see if they need to
work around this.

Just trust me on this one.


> > My feeling against is who is going to require Perl 5.10 just to get say()?
> > Well, nobody right away but if you're requiring 5.10 for another reason...
> > why not use it?  And the sooner a new feature is introduced the sooner it
> > becomes an old feature. :)  I've seen our() and "use warnings" pass through
> > these phases.
> 
> Just the acknowledgment that new features are possible is a good thing I 
> think.

That which does not evolve is dead may be true, but that which grows without
bounds is a cancer.


> I wouldn't care if it was called 'println' except that it adds two characters 
> instead of saving two.

Kindly forget keystroke savings.  It is an utter red herring.  You do not
code at 60 WPM.  Most of the time spend coding is (I hope) reading and
thinking.


> > With regard to say() I've always felt that its wasted JUST being print with
> > a newline on the end.  I've always thought it could do something more.  
> > Maybe
> > be a bit smarter and only put a newline on the end if there wasn't one there
> > already.  I wouldn't want to see us unable to take advantage of the better
> > design because of backwards compat.
> 
> If Perl 5 has it in use first, with extra twists over the current Perl 6 
> vision,  
> It will be their choice whether to break with the P5 implementation.

I'm not worried about Perl 6 not doing what Perl 5 does but Perl 5 not
being able to take advantage of whatever improvements the Perl 6 folks
come up with later.

But only slightly.


> > So that said, I'd wait to see if Perl6::Say starts showing up as a
> > dependency in people's modules before I'd put it in the language.
> 
> That's the only place I disagree. I've tried Perl6::Say and, as the author 
> himself points out in the POD and again in  response to this:
> 
>       http://perlmonks.com/?node_id=438029
> 
> through the limitations of Perl 5 syntax, prototypes etc., it isn't 
> possible to make it work properly as an add-on.

Of all the limitations listed in the docs the only one that I'm remotely
concerned about is "say $fh @data".  And my answer to this would be to
improve the prototyping mechanism rather than hard code say() as a keyword.
That would be far more valuable in the long and wide run.


> Many people who would like 'say', won't add Perl6::Say as a dependancy 
> because of it's uncorrectable limitations, so the...
> 
> > Give it the ol CPAN test to see if its really going to be useful.
> 
> isn't going to reflect the desire for the facility.

The limitations aren't terribly limiting but either way I don't think that's 
the actual problem.  The module has been broken in a very obvious way for 
an entire year and nobody's even reported it until now.  This to me shows a
distinct lack of interest.
http://rt.cpan.org/NoAuth/Bug.html?id=11838

Reply via email to