[Isolate-interest] JSR-121 aggregates and links (Strawman 9)
Pete Soper
psoper@pjs.East.Sun.COM
Wed, 29 Sep 2004 11:15:14 -0400
Godmar Back <godmar@gmail.com> said:
> Pete (and others interested in this discussion),
>
> May I ask where the copy semantics is discussed? I downloaded
> j2se_isolate-1_0-prd-spec.zip and look at the JSR-121 webpage, but I
> might have overlooked it. The documentation of the Link and Isolate
> and IsolateMessage classes discuss at length how message objects are
> copied, but not the semantics of copying, or was it felt that this was
> outside the scope of JSR-121?
Hopefully Norbert Kuck or somebody else can respond to this but here's a first
attempt. For Link send/receive it's accurate to say that the receiver gets an
object that is an exact copy of what is in the sender's isolate, as far as the
user can perceive. So equals() would be true but not "==" (and this can be
tried, by the way: the sender and receiver can be the same isolate).
> In general, is there some prose beyond the API specification that
> summarizes the discussions in the EG and provides some rationale for
> the designed API?
Unfortunately there is no summary, just a lot of private communication.
> Another question regarding the process (I'm confessing total ignorance
> here:) why is the bleeding edge of JSR-121 still a moving target? I
> thought that the API is by now finalized and ready for inclusion in a
> future JDK?
The JCP (Java Community Process) defines a series of steps and 121 hasn't
gotten past a first "public review draft" step. So, although the specification
is public, it is still a draft. As the Rolling Stones sang, you can't always
get what you want.
> Finally, if you have time/energy, I'd like to hear the complete
> rationale for avoiding checked exceptions in this last draft. In what
> way do they strengthen the contract to the user?
Think about somehow putting a checked exception onto "new", then run that
thinking backwards.
There is no support for enums in J2ME.
StatusMessage.getExitStatus() returns the integer corresponding to an isolate
exiting.
The EG is split between various forms of isolate death causing or not causing
death of other isolates or complete destruction of the aggregate, so we
decided not to dictate this.
-Pete