in reply to Re^2: reference array and pass ref to sub
in thread reference array and pass ref to sub

I think the distinction between a "C" 1D array and a Perl list is getting missed here. In "C" a 1D array is of fixed size. In "C" if we want to take say the 3rd item out of an array, we have to do something about that "missing 3rd place". If this this was 6 elements before, then we have to "shrink it" and that process is expensive. In Perl, we can just take the 3rd thing out and that's it!

The most fundamental dynamic data structure in C, the linked list is not necessary in Perl! Its built into the language!

The Perl terminology is very clear when it comes to multi-dimensional structures. In "C" if I asked for a picture of a 2-D array, you couldn't do it! Because you'd have to ask me more questions, like do you want a traditional 2D array or a more practical 2D matrix (which would be an array of pointer to array).

Basically Perl removes one level of complication from complex structures. Since doubly linked "C" lists and hash table are built into the language, amazing things can happen!

  • Comment on Re^3: reference array and pass ref to sub