On Thu, May 16, 2013 at 5:45 PM, J. Leslie Turriff <jlturr...@centurytel.net
> wrote:
> On 2013-05-16 10:51:18 Mark Miesfeld wrote:
> > Staffan,
> >
> > You are misunderstanding here.
> >
> > Class B is private, it is not seen in any other file than b.cls. If you
> > require the b.cls file, that's fine. But, any other file that requires
> > b.cls will only see the public stuff in b.cls. The other file will not
> see
> > anything private in b.cls
>
...
> It confused me, too. The term "containing Rexx program" does not
> mean the
> same thing to me as "any other file".
Les,
I used the term "any other file" here because Staffan's specific example
was using files. That, to me, kept the discussion more concrete.
But this it what it says about ::requires:
The ::REQUIRES directive specifies that the program requires access to the
classes and objects of
the Rexx program programname.
...
The string or symbol programname can be any string or symbol that is valid
as the target of a CALL instruction
So, b.cls the file, is clearly valid as the target of a CALL instruction.
It contains valid Rexx code that defines a class. However, since that
validly defined class is marked as PRIVATE, it will not be seen in whatever
Rexx executable code "requires" it.
I would not consider a file containing
> only class definitions as a program, but just a collection of code to be
> used
> by a program.
But, it is a valid target of a CALL instruction. And, it contains valid
Rexx code that defines classes. Whether you refuse to call it a program or
not.
> Such a file could not be executed on its own, so is not a
> program.
>
But, it can be executed on its own. It doesn't produce any output. But
neither does it raise any errors when the interpreter executes it.
> Seems to me the rule should be talking about definitions in
> _files_ external
> to the program, since it appears to be file oriented, not scope oriented.
>
Files are not the _only_ things that are valid targets of a CALL
instruction. So, it would be a mistake to restrict it to files.
I talked about files here because Staffan's example was limited to some
specific files.
--
Mark Miesfeld
------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Oorexx-users mailing list
Oorexx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-users