for (1..5) { $list[$_][0] = <>; my $node = { value => $list[$_], prev => $prev_ref }; $first = $node unless defined $first; $prev_ref->{next} = $node ; $prev_ref = $node; } my $node = $first; while ($node) { print $node->{value}, "\n"; $node = $node->{next}; }