John Keiser wrote:
>
> >From: "Jochen Hoenicke" <[EMAIL PROTECTED]>
> >
> >As I currently think of writing my own JVM I have thought a bit about
> >bootstrap isssues. Before I can call a java method like
> >String.intern(), I have to link and initialize that class and probably
> >many others like java.util.Hashtable, some io classes (look in
> >String.<clinit>), etc. When linking a class I have to resolve the
> >constant pool. And while resolving the constant pool I have to create
> >interned Strings. This is the chicken and egg problem.
> >
> >I would rather make String.intern() native for this reason.
> >
>
> OK, I can see your guys's reasoning there, it makes sense. How about if we
> move it to the VM interface (so that it would be VMString.intern())?
>
> Brian, what are your thoughts? I have a couple of hours free Saturday, so I
> can take care of this.
I was under the impression that this problem went away automatically if
the VM follows the full specification... how is Japhar able to handle
this issue with no problems? I remember it coming up but I don't
remember there being any problems once the relevant sections of the VM
spec were implemented...
If this is true, I don't see a reason to make it part of the VM
interface - having it the way it is provides an incentive for VM writers
to fully follow the spec, even in its more complex areas.
Stuart.