Steven W McDougall <[EMAIL PROTECTED]> writes:
>1. All threads execute the same op tree
>
>Consider an op, like
>
> fetch(b)
>
>If you actually compile a Perl program, like
>
> $a = $b
>
>and then look at the op tree, you won't find the symbol "$b", or "b"
>anywhere in it.
But it isn't very far away (at least for lexicals) ;-)
>The fetch() op does not have the name of the variable
>$b; rather, it holds a pointer to the value for $b.
It holds and index into the scratch-pad. Subs have scratch-pads
which are cloned as needed during recursion etc.
>
>If each thread is to have its own value for $b, then the fetch() op
>can't hold a pointer to *the* value.
Each thread's view of the sub has its own scratch-pad - value is at same
index in each.
--
Nick Ing-Simmons