[REBOL] Re: another gotcha
From: lmecir:mbox:vol:cz at: 2-Dec-2001 18:12
to understand what is going on, you can either look at the MAKE OBJECT!
description in http://www.sweb.cz/LMecir/contexts.html) or just realize how
the SPEC argument is used by the MAKE native to create objects:
The SPEC block (but not its subblocks!) is searched through and all
Set-words are collected. That list is used to create a new object from. That
is why if you don't include the ZONE: Set-word to the SPEC block, you will
not have it included to the created object as a local word.
As I perceive it (in my case perceive is more appropriate than understand)
the page's zone needs a holder (the "zone: none") in the object. I have
tried to make an explicit holder instead and it works too :
o-win: make object! [
page: layout [
banner "Gotcha !"
zone: banner "rebol"
do [explicit-holder: get 'zone]
view center-face o-win/page
Has anyone a good explanation for this ?
The success depends on what you want to achieve. I would call this a
disaster, because you didn't make 'zone local at the cost of more