One more quick comment, and then I think I (at least) am done (to the
extent that the difference in opinion is clearly defined).

Fergus Henderson writes:

   > And, again IMHO, it is the task of the language to *define* the
   > encapsuation (or to allow that encapsulation to be defined), and
   > the job of the operating system or programming environment to
   > enforce it (or to trust to convention, depending).

   There's not much difference between "language implementation" and
   "programming environment", is there?

No; however, there is a world of difference between "language
implementation" and "language definition".  The two are *very*
distinct in my mind.  Note that I said (above) the job of the language
is to define; you morphed that into "language implementation".

   Above you say it is the job of the OS or programming environment to
   enforce encapsulation.  I think it should be the language
   implementation's job, but the OS should be considered a part of the
   language implementation, so letting the OS handle it would be one
   way for the language implementation to do the enforcement.

I am happy to make it part of the language implementation as long as
it does not impinge on the language definition, leaving other
implementations free to do it other ways.  Pragmas may be one way to
do this.  I simply object (and will continue to object) to making one
mechanism of encapsulation enformement part of the definition,
imposing it on all implementors.  To repeat: defining the
encapsulation is the job of the language defintion, but enforcing it
is not (and should not be).  All IMHO, of course.

                                        Dave Barton <*>
                                        [EMAIL PROTECTED] )0(
                                        http://www.averstar.com/~dlb


Reply via email to