วิธีสร้าง sub สำหรับการส่งผ่านค่าตัวแปร มี 2 วิธีหลักๆ คือ
1. Passed by value
2. Passed by reference

การใช้ $a = shift; จะ assign เฉพาะ ค่าตัวแปร (Passed by Value)
การใช้ $_[0]; จะอ้างถึง MemAddr ของ ตัวแปร (Passed by Reference)

ตัวอย่างครับ

[code]#!/usr/bin/perl
use strict;

my $a = 1;

inc($a);
print "$a\n"; # $a = 1

inc2($a);
print "$a\n"; # $a = 2

inc3($a);
print "$a\n"; # $a = 3

############################
sub inc {