Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: Re: Re: Re: DWIM: autoloading classes

by jryan (Vicar)
on Sep 17, 2003 at 07:41 UTC ( [id://292078]=note: print w/replies, xml ) Need Help??


in reply to Re: Re: Re: DWIM: autoloading classes
in thread DWIM: autoloading classes

But maybe that syntax is just too Javan :)

Is that a problem? I would love to use WhenNeeded if I could, although it might be a bit tough to implement.

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: DWIM: autoloading classes
by BrowserUk (Patriarch) on Sep 17, 2003 at 08:59 UTC

    When I wrote that it was only half a joke. In Ovid's pseudo-perl examples above, he was just using

    use WhenNeeded 'Foo';

    but showed the Java syntax import foo.*; as an example of his inspiration.

    It struck me that as part of his pseudo-code involved using Find::File, that there might be some merit in using perl's globing behaviour to extend the Javan syntax and select subsets of a namespace. I then tried to look for a good example where using it would allow the selection of a realistic subset of an existing namespace, but couldn't find anything where more than foo::* (or I guess on non-dosish systems that would more properly be Foo::.*) would likely be used.

    At that point I realised that if the only common usage would be to select everything below a given point in the hierachy, then the * or .* becomes redundant and Ovid's original syntax would probably make more sense.

    I guess if the module was available, it might encourage authors to break up some of their bigger modules into smaller chunks spread across a deeper hierachy than is the norm? Which might lighten the load of some of them.

    I could perhaps see use CGI; being broken up so that you could do

    use WhenNeeded 'CGI::HTML3::Table*', 'CGI::Netscape::*' ;

    And maybe

    use WhenNeeded 'Date::Manip::EN::*';

    So, no. I don't think that any resemblance to Javan syntax is really a problem, I just can't see a need for it currently, but that may mean I am limiting my imagination.


    Examine what is said, not who speaks.
    "Efficiency is intelligent laziness." -David Dunham
    "When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller
    If I understand your problem, I can solve it! Of course, the same can be said for you.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://292078]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (5)
As of 2024-03-28 15:58 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found