At 7:19 PM -0800 11/25/02, Michael G Schwern wrote:
>I was looking for the origins of fixpath() in MakeMaker and was very
>surprised to find it in File::Spec::VMS along with eliminate_macros().  Why
>are they there?  They're about make macros, not filepath operations.  Also,
>they're the only object method in File::Spec and pretty much intended to be
>called with a MakeMaker object.
>
>Unless I hear protests otherwise, I'm going to copy them into
>ExtUtils::MM_VMS and deprecate the versions in File::Spec::VMS.  I don't
>think they're used outside of MakeMaker, I'm currently scanning CPAN to
>check.

My memory, not necessarily complete or correct, is that nearly all of
what is now File::Spec -- not just fixpath() and eliminate_macros()
-- used to be part of MakeMaker.  As various bits of MM got broken
off and put into File::Spec, fixpath() and eliminate_macros() moved
with them because there were so many references to things like
$self->fixpath() and the object inheritance got too complicated if
you had MM invoking File::Spec invoking MM.  One of the unfortunate
side effects of this history is that we eliminate macros in contexts
where there is no such thing as a macro.  What would be ideal is if
the methods in File::Spec would only invoke these MM-only methods if they
had been called from MM.  If this hasn't completely confused you, you
are probably uniquely qualified to fix this mess ;-).
-- 
________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]

"... getting out of a sonnet is much more
 difficult than getting in."
                 Brad Leithauser

Reply via email to