in reply to Threads, forks and stuff?

1) see above, but the short answer is: fork is much more efficient in general at least on any UNIXy system, but threads make it slightly easier to share data. update: note that much of this is because of the way Perl handles threads: in some other languages, threads are much more efficient, and usually make sharing easy to the point of making correct behaviour hard to code.

2) Just using threads has no impact on your ability to create multi-dimensional data structures. Sharing those structures between threads may be a little complex. See threads::shared. Using strict may impact your ability to create multi-dimensional datastructures, but usually, that means you're doing it wrongtm:

use strict; use threads; my $structure = [ 'a', 'b', 'c', { some => 'hash' }, [ 'some', 'array' + ]];