Why does this Perl function return a value?

   $hi = do_this('asdf');

   sub do_this
   {
       $blob{'f'} = {
          'k' => 'j'
      };
   }

   print $hi->{'k'};
   # prints j

since do_this doesn't return anything, how does it still print j?

Answers


http://perldoc.perl.org/functions/return.html

In the absence of an explicit return, a subroutine, eval, or do FILE automatically returns the value of the last expression evaluated


All Perl 5 subroutines return the last value of the last statement executed.


Need Your Help

How do you read a file inside a zip file as text, not bytes?

csv python-3.x zipfile

A simple program for reading a CSV file inside a zip file works in Python 2.7, but not in Python 3.2

Track execution time per task in gradle script?

java groovy jenkins gradle

What is the most elegant way to track the execution times on how long a task took in a gradle build script? In an optimal case log the time directly same or next line to the task name