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

[REBOL] Re: Private Object Function

From: coussement:c:itc:mil:be at: 17-Jan-2001 10:40

> 1. I think the DBMS I developed in my REBOL book (REBOL The Official > Guide) may be a starting point (chapters 15-18). It's not the "last > word" in developing a dbms under REBOL, but it does provide some > thoughts and examples that may be useful for you. I think the Object > Navigator might come in handy.
[I already read it. Great book. it taught me REBOL...]
> You appear to follow the Object Pascal (Delphi) conventions.
[IMHO those are just general conventions within OO analysis and development. For sure I didn't find them out !]
> > - private access : the method can be called only from scripts in > the > > object for which the function was declared (including the sub-objects); > the > > method cannot be called from descendant of the object. > > Hidden objects or contexts are not protected from descendants.
[Do you mean by this it shouldn't be possible to implement it in REBOL ?]
>  > See what I wrote above. If you enforce c) then you cannot use REBOL's > default functions for saving an object from outside of the object. The > serialization functions included IN objects can - of course - make use > of write and save.
[It's the way I already followed. I will couple this approach with subobject or 'use for enforcing privacy.]
> Note that - as demonstrated - it is possible to get at the hidden > stuff, if you go out of your way to do so.
[the meaning of all this is to protect code from accidental use, not to enforce paranoia ! So I think your approach is all OK ...]
> The solution IMHO is to implement your own objects and supporting > function in which you enforce private/protected/public rules. As long as > your code does not use REBOL's built-in functions to violate these > rules, you're fine, provided you don't mind the extra overhead.
[Thanks a lot for your good advises ! BTW is there anybody interested by the results I will get ? I do not want to spam the list with uninteresting stuff... Best Regards, chr== ]