For a short time you can find a rexxpg.pdf rendering in my Dropbox <https://www.dropbox.com/sh/gxvvgskb04gdsqf/AACRo_ZLeFOdoBXUHroPY_-Ca?dl=0> that has complemented the descriptions of the individual classes in chapter 4, "The Basics of Classes".
Also, at the very end of that chapter you can see a class hierarchy that places the classes that employ multiple inheritance underneath all of the inherited classes. Any feedback from everyone in this list appreciated! ---rony On 01.04.2020 18:29, Rony G. Flatscher wrote: > Erich, thank you very much for the links! > > On 01.04.2020 17:35, Erich Steinböck wrote: >> Rony, you find the DocBook reference at >> https://tdg.docbook.org/tdg/4.5/docbook.html >> Each tag lists its allowed parents and children (if any). >> >> You can find ooRexx 4.2 documentation at >> https://sourceforge.net/projects/oorexx/files/oorexx-docs/4.2.0/ > Looking at the Set or Bag classes (in the 4.2 rexxpg.pdf book [1]) it is not > documented that they > are inheriting from the MapCollection mixin class as well (and also it is not > possible to realize > that they are actually specializing the ooRexx Object class directly), same > is true for all classes > that inherit from more than one mixin class, e.g. the InputOutputStream mixin > class being shown as a > specialisation of the Object class, no information that it actually inherits > in addition from the > mixin class InputStream and the mixin class OutputStream itself, etc.! > > This is probably owed to the fact that the author tried to have each class > only once in the class > hierarchy to make it easy comprehendable. Having and employing multiple > inheritance, however, would > probably mandate in these cases that these classes are not only showing > directly underneath the > subclass/mixinclass'd class, but in addition also underneath each mixin class > that gets inherited. > This probably will cause problems for beginners or people coming from > languages that do not employ > multiple-inheritance (why does a class appear more than once in a hierarchy?). > > Hence my attempt to "escape" this problem by depicting the class hierarchy > such that each class is > shown only once, directly under the class it subclasses/mixinclasses, but > giving the additional > information about inheritance, if employed (and which mixin classes in which > sequence get inherited) > via "(inherit x y)" and also which class can be used for multiple inheritance > by supplying the > "(mixin)" information next to those classes. > > If time permits, I can come up with a class tree that lists classes that > employ multiple inheritance > underneath each mixin class they inherit in addition, just to see the > difference and guessing > whether it is clearer for beginners and newcomers by comparison. > > Also, I could come up with additional listings in the sections that describe > each class briefly that > list in the case of mixin classes the classes that inherit directly from it. > This way studying the > brief descriptions of the classes will make the reader aware of this as well. > Also this brief > description of classes could get extended with the brief information like > "This class is a > mixinclass and it can therefore be inherited by other classes." and "This > class inherits in addition > from the following mixin classes: ...". However, I would only add that > information if it is seen as > helpful for beginners and newcomers. > > ---rony > > [1] rexxpg.pdf, ooRexx 4.2: > <https://sourceforge.net/projects/oorexx/files/oorexx-docs/4.2.0/rexxpg.pdf/download> > > _______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel