in reply to spliting a table into individual columns

I assume the read_table/read_TABLE mismatch isn't in your actual code.

You've got it basically right. Your read_table returns a list of array references, where each array reference is to the data for a line from the file. Where you try to extract the fields, you need to say $line->[0], $line->[1], etc. to look up the 0/1/etc'th element using the arrayref $line.