>>>>> "LW" == Larry Wall <[EMAIL PROTECTED]> writes:
LW> No, they're only stored once per statement, as far as I recall. This
LW> is a great way to handle all sorts of lexically scoped things, provided
LW> they don't require finer specificity than a statement. Each new
LW> statement just rams a new cop pointer into curcop and you're done with
LW> it. Think of it as a funny kind of vtbl pointer. You potentially
LW> change a whole bunch of semantics by one pointer assignment. Any
LW> opcode within the statement can look up anything it likes in the
LW> current lexical context merely by following the curcop pointer back.
What about those lexical pragmas that are manipulated at runtime.
I don't think you want to have the values stored in the optree (or its
replacement) Otherwise we get into major issues in handling the optree
between threads (and reducing sharing.)
A "parallel" structure to store those items that cover a range of
statements (or parts of an optree) should do it.
<chaim>
--
Chaim Frenkel Nonlinear Knowledge, Inc.
[EMAIL PROTECTED] +1-718-236-0183