Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Comment on

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

This would be fairly trivial to test yourself. But just some tips: There is some overhead per subroutine call; each call pushes a lexical scope onto the call stack, to be popped off later. That's not free, but unless you're working inside of tight loops it's usually not something you need to care about. Also, Perl does support recursive subroutines, and only starts spitting out warnings when your recursion reaches 100 levels deep. Recursion isn't special in Perl (ie, there's no tail-call optimization), so each recursive call is another push onto the call stack. That should give you some reassurance that even 100 levels deep is possible.

Remember, the deep recursion warning is just a warning, intended to clue developers in to the fact that they might have some runaway recursion. Even that warning can be silenced or ignored if you're ok with being 100 levels deep in sub calls. Perl doesn't arbitrarily limit you. You're free to use all available memory on the subroutine call stack if you wish. You're unlikely to come up with a reasonable design that takes you anywhere close to that though.


Dave


In reply to Re: useful depth of sub routines by davido
in thread useful depth of sub routines by JockoHelios

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!
  • 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
  • Outside of code tags, you may need to use entities for some characters:
            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?
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others chanting in the Monastery: (8)
    As of 2014-11-29 00:16 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      My preferred Perl binaries come from:














      Results (200 votes), past polls