develooper Front page | perl.perl6.language.strict | Postings from February 2001

Re: Warnings, strict, and CPAN (oops)

Edward Peschko
February 17, 2001 14:04
Re: Warnings, strict, and CPAN (oops)
Message ID:
oops --  posted to perl6-language by mistake...



Oops. Forgot a few points. I said that you should give me the courtesy of 
responding to all of my points, and 

> I think we're rapidly approaching "agree to disagree" territory here.

No we are not. If you come up with some good counter arguments, maybe. I am the
first person to admit when someone else has a good point. In fact I *did* admit
it when you brought up the point about 'splitting the language in two'.

But in this case, I just have not seen it. It just looks like you are being 
political, bowing to what others have said. Sorry, but that's the truth...

> On Fri, Feb 16, 2001 at 09:03:54PM -0800, Edward Peschko wrote:
> > Right now, I do a search on the standard distribution, and I see 
> > 'use warnings::register' in 13 out of 270 modules. Make 'use warnings' the 
> > default, and you'd bet that there would be a big push to make the standard
> > distribution clean.
> No, there will probably be a big push to shut it off, based on
> historical reactions to this sort of thing.

well, ok then, you've got two ways to go then. 1) make it so '-w' is useful
enough that beginners can use it successfully, or 2) rest your head on its 
laurels, and not improve things.

I thought the point of perl6 was to fix lots of the problems of perl5. If perl6
is going to be a lukewarm perl5 wannabe, then I have no interest in working on
it, and ruby/python et al will eat it alive. And the only reason it will survive
will be because of inertia.

> If you don't think so, I urge you to submit a patch to p5p which turns
> on C<use warnings> in every core module.  Consider it a trial run.

yeah, but that's the point, isn't it? Perl6 is supposed to be *better* than
perl5, right?

> I'm not disagreeing that the core libraries need shaping up (just look
> at my patching record).  But this is not the way to do it.

And why?

> > forgetting to type 'use strict' in your script and 'use warnings' is
> > a syntax error to me.
> YMMV wildly.  Again, I do not disagree with your opinion and hold
> nearly the same myself, but you'll find fairly strong reactions
> otherwise.

right, and your point is? Shouldn't Larry have all the options in front of him
when he makes his mind up?

Surprisingly, the only strong reaction I've heard from is *you*. I want to 
further test those waters by making an RFC that suggests the opposite of RFC 16.
And see where it goes, whether I could fare better than you did. After all, 
there's a lot more ammo here now than before.

> >   4. to make '-w' usable again
> All right, where is this mysterious mass of low-quality code you're
> working with?  I stick -w on all programs by habit and I use *alot* of
> CPAN code.  I'm not overwhelmed with warnings.

See my other post. For me, 'warnings clean' means the ability to handle 
undef input, integers and strings, and tell the error from the point of view
of the caller, not the callee. 

Not only do I want to make warnings on by default, I want to make it *usable* 
for warnings to be on by default.

> No no no.  FreeBSD's distribution might be able to audit its code and
> add in C<use perl5>, but its user base cannot be expected to do so.  A
> distribution which includes perl will be very, very hesitant to
> upgrade if that upgrade will break their user's existing code.


There are a lot of things that can mitigate this problem:

1) intelligent code-sensors that can see if your syntax is perl5 or perl6, and
   parse accordingly. I personally would like to see a couple of huge 
   incompatibilities for simply that reason. Call print 'output' for example.

2) maybe for a couple of generations you'll have to put 'use perl6' up at top
   of your program, not 'use perl5'

3) all modules in '5.6.0' will have an implicit 'use perl5' up top, and all 
   modules in '6' will have a 'use perl6'.

etc. etc. etc. And anyways this is pointless. If perl6 is a lukewarm perl5,
then why upgrade at all?  I like 1) a lot simply because it means I don't need 
to do a thing. But 2 and 3 are good ideas too.

> > You said that a large percentage of perl programmers want 'use
> > strict' and 'use warnings' on by default; their voices should be
> > heard by Larry. The RFC that you started should be finished, only if
> > to give him the rationale on both sides of the argument.
> Larry reads the mailing lists, too.  He's unfortunately already
> probably read these same arguements a few times already.

Great. Then lets put it in stone, OK. In an RFC? Like I said, I haven't heard 
these particular arguments before. That's why I'm making them.

> Anyhow, you don't want it to work in universal scope.  I think we're
> in agreement there.

Yes I do..

Anyways, I believe this is where I started in the other post... go to it for
replies to the rest of your arguments.

Ed Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About