- 01Setting up (what you'll need)
- 02Your first output (print)
- 03Variables (scalar variables, $)
- 04Branching (the if statement)
- 05Repeating (the for loop)
- 06Writing a subroutine (a function)
- 07Repeating (the while loop)
- 08Working with arrays (@)
- 09Working with hashes (%)
- 10Regular expression matching
- 11Substitution with regular expressions (s///)
- 12Working with strings
- 13References
- 14Anonymous subroutines
- 15File input and output, the basics
- 16Modules and use strict / warnings
- 17The ternary operator
- 18Sorting (sort)
- 19Packages and the basics of object orientation
- 20[Project] Build a small inventory system
References
This lesson covers the basics of the reference, which acts rather like a pointer to a variable.
You create a reference with \variable and reach the contents with forms such as $$ref or @$ref. References are the usual way to pass arrays and hashes to a function efficiently.
The sample code creates an array reference — my $ref = \@fruits; for my @fruits = ("apple", "orange"); — and reaches the original array's contents with @$ref.
A common early stumble is keeping the sigils of the reference and the thing it refers to straight. Picturing it as "the mechanism for handling an array or hash without copying it wholesale" helps.
In professional work, references are used constantly to pass large data structures into a function without paying the cost of copying.
๐งช This site can't compile or run Perl directly, so it checks on the spot whether what you typed matches the reference code (scoring happens entirely in your browser โ nothing is sent anywhere).
