On 2003.08.15, Elizabeth Thomas <[EMAIL PROTECTED]> wrote:
> We are currently pursuing a very encouraging approach of adding an
> optional 'lazy proc definition' capability, capitalizing on the
> 'unknown' processing of tcl. (Thanks to Jeff Hobbes for putting us on
> this path). Since most of our threads use a relatively small subset of
> all available procs, we hope to achieve significant performance and
> memory consumption wins by only loading procs in the interpeter that are
> actually needed.
>
> More details to come early next week.

This works for procs, but what about the rest of the interp init code?

Suppose you have this in your interp init script:

    foreach procName [list a b c d] {
        proc foo_$procName args "
            eval some_proc $procName \$args
        "
    }

Pretty simple, you'd only worry about foo_a through foo_d, regardless of
how they came to be defined.

But, what about:

    global x
    set x 0
    foreach x [list 1 2 3 4 5] {
        proc foo_$x args "
            global x
            format {the last proc defined is %u} \$x
        "
    }

I really wish I had /real/ code to quote here, but the point is:  there
CAN be code that doesn't live within a proc definition in your interp
scripts that have side-effects that matter.

-- Dossy

--
Dossy Shiobara                       mail: [EMAIL PROTECTED]
Panoptic Computer Network             web: http://www.panoptic.com/
  "He realized the fastest way to change is to laugh at your own
    folly -- then you can let go and quickly move on." (p. 70)


--
AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of 
your email blank.

Reply via email to