develooper Front page | perl.perl5.porters | Postings from March 2000

Re: [p5p] non-empty blank-lines in PODs (was Re: perl-5.5.670)

Thread Previous
From:
Brad Appleton
Date:
March 4, 2000 21:33
Subject:
Re: [p5p] non-empty blank-lines in PODs (was Re: perl-5.5.670)
Message ID:
200003050533.XAA02212@agogic.cig.mot.com
On Sun, Mar 05, 2000 at 04:07:15AM +0000, Simon Cozens wrote:
> Brad Appleton (lists.p5p):
> >I'd rather just use the commented out version for now. Adding '-pedantic'
> >as a parse-option doesn't really make '-pedantic' readily available to
> >folks using podchecker or Pod::Checker.
> 
> You mean they don't pass on flags they don't understand? That's less
> than terribly expansion friendly.

Umm - I don't think you understand.  Rest assured Pod::Parser is probably
more expansion-friendly than anyone wants it to be. The patch was
certainly appreciated, but it made some incorrect assumptions about the
relationship between Pod::Parser and its subclass Pod::Checker.

You seem to be assuming that Pod::Parser takes some kind of options-list
which somehow corresponds to something that is seen somewhere on a
command-line. It does no such thing, particularly since Pod::Parser is
never invoked via a command-line. It is invoked via a function call,
and communicates to the client via callbacks and overridden methods.

So called parse-options are set/retrieved via a different function
call. And those options have to do with parsing PODs, not checking
them. Pod::Checker is a module that uses Pod::Parser to do its parsing,
and then checks the pods for syntax. podchecker is a script that invokes
Pod::Checker.

The notion of some kind of command-line flag that Pod::Parser would pass
to Pod::Checker is a non-sequitur. The command-line options passed to
Pod::Checker don't have anything to do with what Pod::Parser defines as
it's parse-options. Pod::Parser isn't supposed to know that Pod::Checker
exists because the latter is a subclass of the former and having an
abstract superclass know the details of one of its concrete subclasses
is not usually desirable.

> Ho hum. I did say it was a stopgap - it stops the warnings for the
> time being (which was the whole point!)

That it is - but not the one I want to see in the core. I prefer the
patch already submitted that simply comments out the warning, since
the -pedantic option isn't something that will likely ever see its way
into Pod::Parser (maybe in Pod::Checker, but not Pod::Parser). I will
take care of implementing the mechanism to do the right thing some time
in the future; for now, just use the commented-out version instead of
the non-existent -pedantic "parseopt".

If you have any other questions/comments about this implementation detail
of Pod::Parser, please email me privately.

Thanks!
-- 
Brad Appleton <bradapp@enteract.com> http://www.enteract.com/~bradapp/
  "And miles to go before I sleep." -- Robert Frost

Thread Previous


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About