Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Re: Project introduction ... Re: Re: RFC: Rebol Framework

From: petr:krenzelok:trz:cz at: 8-Oct-2002 23:00

[al--bri--xtra--co--nz] wrote:
>Petr Krenzelok wrote: > >>That's the first thing someone will have to explain me - why naked-objects or RFM uses blocks and name value pairs? Is there any advantage? >> >> > >Yes! :) > >Because one can alter the block at runtime! For example, adding more fields or removing them. That allows customising each record. >
You can do so with object too. Object = template you load from your repository. If you want to extend, you can extend the class (block of set-word and value pairs), and instantiate the object (load block into context) once again :-)
>>2) As you can see, I need some relations - each building has its rooms, - typical parent child relationship. That relationship can be expressed in RFM, if I understand it correctly, but what if child can have its own child relationships etc.? >> >> > >I'm working on that kind of thing, with bidirectional links expressed as containment. Something like: > >[Teacher "A. Teacher" Room []] ; Last block contains next block: >[Room "K5" Teacher []] ; Last block contains first block. >
Uh, I didn't mean something like that, but well, I don't understand above anyway :-) Seems like some of never ending recursion :-) What I also don't like about RFM so far is - that it stores field names with each record, which I see as redundant, unless it has its own purpose I can be not aware of. (e.g. that each record can have variable set of fields)
>>3) Can objects be extended in the real time by adding another attribute? >> >> >No! And if another object points to the object, you're going to have problems. That's because the other object will hang on to the orignal, when you change it. >
I meant something bit different - not real rebol objects, but e.g. earlier mentined accommodation class. System admin (not necessarily rebol programmer) can say to himself one day - hey, this hotel has cinema inside. Where should I put that? So he goes to "object" repository, selects hotel class, and adds/describes "attribute" (field) of 'cinema-inside? type e.g. That was what I meant by ability to extend object during the system life-time ...Of course there can be consequences to it, like such field not existing in former records - so ti may cause some difficulcy to query engine e.g. -perk-