#!/usr/bin/perl use warnings; use strict; my @data = ( [1 .. 3], [4 .. 6], [7 .. 9] ); norm(\@data); print join(", ", @{$_}), "\n" for @data; sub norm{ my $ar = shift; for(@$ar){ # iterates down @data my $norm=(($$_[0])**2+($$_[1])**2)**(1/2); #calculates the norm $$_[3] = $norm; } }