[e-lang] ELib/Java: Implementing PassByConstruction
Kevin Reid
kpreid at mac.com
Tue Jan 2 09:27:45 CST 2007
What would it take to get PassByConstruction working properly in E-on-
Java?
From a look around the source, it seems that the approval of
PassByConstructionAuditor has no effect.
Would the following be sufficient?
- Make PassByConstructionAuditor approve anything.
- Change whatever the appropriate serialization component is
(CapTPReplacer?) to, if an object is approved by
PassByConstructionAuditor, serialize it as a RemoteCall performing
the object's __optUncall.
If the above is sufficient, then another step would be to rename
elib.serial.PassByConstruction to indicate what it actually appears
to be (that is, 'supports PBC using Java serialization'), and use a
test other than Ref.isPBC() to test for that condition.
(Another problem of this sort is that Ref.isPBC(x) && Ref.isSelfless
(x) is used to mean 'is x thread-sharable', but that isn't relevant
to PassByConstruction by itself.)
I'm interested in doing this implementation work, but I need
confirmation that this will work and wouldn't break any of the many
subtle assumptions E-on-Java has spread around its code, and of what
the right place to change CapTP is.
(I think far too little time has been spent recently on improving
ELib's support for all of E-as-designed.)
--
Kevin Reid <http://homepage.mac.com/kpreid/>
More information about the e-lang
mailing list