Hi Romano,

<Romano>
Hi Ladislav, looking at your

    sim-make-object!: function [
        {MAKE OBJECT! simulation}
        [throw]
        spec [block!]
    ] [set-words object sw] [
        ; find all set-words in SPEC
        set-words: copy []
        parse spec [
            any [
                copy sw set-word! (append set-words sw) |
                skip
            ]
        ]
        ; create  a blank object
        object: blank-object set-words
        ; set 'self in object to refer to the object
        object/self: object
        ; bind the SPEC to the blank object
        spec: bind spec in object 'self
        do spec
        ; return the value of 'self as the result
        get/any in object 'self
    ]

I think it needs a correction:

    do spec

must become

    make object! spec
</Romano>

No, I think, that my code works. (Test it, please, and let me know if
anything doesn't work as it should).

<Romano>

or, to simulate only its side effects:

 catch [loop 1 [do does spec]]

---
Ciao
Romano
</Romano>

Why do you suggest this form? (I never wrote code looking like that - loop 1
or catch are unusual for me in this case)

Cheers
    L

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.

Reply via email to