September 2017
Beginner
402 pages
9h 52m
English
The above listed four directives for loading modules and how importing names can be scoped, for example, inside functions in the main code. In this case, their action is limited to the given scope.
For example, if the add function is only required inside some function, there is no need to load a module globally, as shown in the following example:
say do_calc();sub do_calc { use Add; return add(10, 20);}
It is important to realize that although the scope of the exported name is restricted to the do_calc function only, the module is still loaded at compile time. Let us modify both the program and the module so that we see what happens when.
Add a simple say instruction to the program:
say 'Starting a program';say do_calc();sub do_calc ...