[Prev][Next][Index][Thread]

# Re: Caller & Player

- Date: Wed, 17 Jul 1996 05:21:13 PDT
- From:
- Content-Type: text/plain; charset="us-ascii"
- In-Reply-to: <Pine.SUN.3.93.960717132516.8981C-100000@xs2.xs4all.nl>
- References: <Pine.SUN.3.91.960717114115.14192B-100000@barney.soi.city.ac.uk>

    >On Wed, 17 Jul 1996, Thomas LEVY wrote:
    <...>
    >'caller' is the /object/ which called this verb (or rather, the object on
    >which the verb sits, that called this verb)

    Um, no. The first statement is correct: caller is the object that called
    the current verb. The caveat between parentheses is wrong.

    Example: Object #A defines a verb :foo, which at some point calls
    #X:whatever().
    Object #B is a child of #A. When #B:foo() is called, it eventually calls
    #X:whatever(). When #X:whatever() starts running, 'caller' equals #B, not
    #A.

    MOO doesn't assign a special variable to #A in this case. Other related
    server types, like Cold, do.

    About the original question - what's the difference between 'caller' and
    'player' ? Take this LambdaCore example:

    A user (#U) is sitting in a certain room (#R) types: "Hi all!
    Another user (#A) is in the same room, and is told that #U said "Hi all!".
    What happened in between is: #R:say was executed. It called #R:announce,
    which called #A:tell.
    The moment #A:tell started running, 'player' was #U, and 'caller' was #R.

    -------------------------------------------------------------
    Gustavo Glusman               Founder/administrator of BioMOO
    -- Gustavo@bioinformatics.weizmann.ac.il
    -- http://bioinformatics.weizmann.ac.il/Gustavo
    -- BioMOO: telnet bioinformatics.weizmann.ac.il 8888
               WWW:   http://bioinfo.weizmann.ac.il/BioMOO

References:

- Re: Caller & Player

- From: Thomas LEVY <tlevy@soi.city.ac.uk>

- Re: Caller & Player

- From: thomas@xs4all.nl

- Prev: Re: Caller & Player
- Next: Re: Caller & Player
- Index: MOO-cows
- Thread: MOO-cows

Home | Subject Index | Thread Index