http://qs321.pair.com?node_id=175467

ChunkyMonk has asked for the wisdom of the Perl Monks concerning the following question:

I am but a mere chunk of monk, and have a question. I have a subroutine that will be passing back a very large chunk of data (25K or larger). Instead of returning the entire chunk, I would like to pass back a reference to that chunk; however, that chunk is created within the subroutine.

For example:

my $ref_to_big_chunk = &get_big_chunk(8675309); print "And the big data is: "; print $$ref_to_big_chunk; sub get_big_chunk { my $jenny_tel = $_[0]; my $big_jenny = [ all work done here to make this huge ] return \$big_jenny; } ----[eof]----
Now, should I just declare a variable before I execute the sub, and then pass that reference of the variable to the sub and just mess with it from within the sub? Is the above code just dangerous in terms of $big_jenny being trashed on subroutine exit (on a very busy server)? Or lastly, am I just not seeing an easier solution to all of this?