> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
> Romano Paolo Tenca
> Sent: Wednesday, December 19, 2001 5:25 PM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] Re: Objects, references & values

> well, i start to understand, here it it is a solution (?) :

Hi, :-)) as non native english speaker it's not so easy to describe a problem
that detailed, that the others can follow...

> >> ob: context [name: "romano"]
> >> h: append append make hash! [] get in ob 'name in ob 'name
> == make hash! ["romano" name]
> >> change ob/name "dolores"
> == ""
> >> h
> == make hash! ["dolores" name]

Hmm... what happens if we have several names here? Would this result in:

["dolores" name "romano" name ...]

Why the 'name entry? With such a hash! I could search for a name value and get a
'name word that is linked to the address object, right? Would it be possible to
use 'self instead of 'name? I used numbers as object index because these don't
change if reduced twice.

> The only problem is NOT to change name with an instruction like:
>
> >>ob/name: "dolores"

;-)) Bingo! We need private data.

> Another solution is writing a custom find which get the value of a word to
> search a string. Parse perhaps could help.

I thought about this too. The nice thing about hash! is that (at least that's
what I hope) is implemented as a hash datastructure and therefore supports very
fast searches. Implementing a custom made find, I might have to iterate over
each object... this gives searchspeed O(n).

> I do not think that reduce is well suited, because i think you want to use a
> great hash database and reducing it every time is time consuming (reducing
> twice more).

I didn't checked this but this could be true. It was just a quick hack to given
an example for my not-so-well-described problem ;-))

> The database could be written in Rebol...

I'm a fan of simple solutions and thought that there must be a way to do it with
the given parts... anway, after solving the reference problem, I go for this
one. Robert

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

Reply via email to