Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??

I've seen that practice also. I think it can make sense if some_function is the only place SomeModule is used. That way if the sub changes so that it doesn't use that module anymore, you can get rid of the use line right there.

That said, I've never done it myself. The top of any module tends to look like this:

package MyApp::Foo; use strict; use warnings; use Core::Module qw( import these ); use CPAN::Module; use MyApp::Module; use MyApp::Other::Module;

I put the pragmas at the very top. Local modules are grouped together, and external modules are grouped together.

I'd rather have everything at the top like that. The practice you show is liable to get cluttered, using the same module in multiple places. That doesn't cost anything in terms of resources, but I think it's a small speedbump to comprehension.


In reply to Re: Code style advice: where to put "use" statements? by kyle
in thread Code style advice: where to put "use" statements? by eyepopslikeamosquito

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?
    Username:
    Password:

    What's my password?
    Create A New User
    Chatterbox?
    [choroba]: Hm, unrelated question.
    [ambrus]: I added a timer implementation to ambrus's scratchpad as well, again the whole thing is completely untested and probably has more bugs than lines
    [choroba]: Anyone using anything to validate json contents of a REST service?
    [moritz]: choroba in python I use jsonschema
    [moritz]: I'm sure there's a Perl implementation of it too
    [choroba]: it seems Kelp and similar help you a lot with dispatching, but how to do something similar with contents?
    [moritz]: like JSON::Schema
    [Corion]: ambrus++ # more bugs than lines
    [Corion]: That's like "works on my machine" ;-)
    [choroba]: I mean, I'd like to say "this path should run this sub, but first it should check the user is authenticated, has the following permissions, and the contents is valid against a given schema

    How do I use this? | Other CB clients
    Other Users?
    Others examining the Monastery: (13)
    As of 2016-12-08 12:46 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?
      On a regular basis, I'm most likely to spy upon:













      Results (141 votes). Check out past polls.