[REBOL] objects without overhead Re:(2)
From: al:bri:xtra at: 18-Oct-2000 1:02
You could try something like this:
Outer: make object! [
Inner: make object! [
Data1: string!
Data2: integer!
]
Data1: func [Inner [object!]] [
Inner/Data1
]
Data2: func [Inner [object!]] [
Inner/Data2
]
Make-Inner: func [Block [block!]] [
clone Inner Block
]
set 'Dialect func [Block [block!]] [
make object! bind Block 'self
]
]
Dialect [
Zot: Make-Inner [
Data1: "one"
Data2: 2
]
Zot2: Make-Inner [
Data1: "111111"
Data2: 22
]
print Data1 Zot
print Data2 Zot
print Data1 Zot2
print Data2 Zot2
]
Which, after pasting into the console, gives:
one
2
111111
22
Andrew Martin
In, out and between Rebolutionary...
ICQ: 26227169
http://members.nbci.com/AndrewMartin/