sub traverse { # do yer stuff _print($_); traverse(..); } sub _print { my ($node) = @_; print ' ' x $node->{dept}, $node->{c_id}, ': ', $_->{comm}, "\n"; }