Java's modules rock? (was Re: election details *PLEASE READ*)

Philippe Marschall philippe.marschall at gmail.com
Mon Mar 5 09:25:45 UTC 2007


2007/3/5, Roel Wuyts <Roel.Wuyts at ulb.ac.be>:
>
> On 01 Mar 2007, at 1 March/10:22, Andreas Raab wrote:
>
> > stephane ducasse wrote:
> >>> In short: What impresses me about the Java solution is not that
> >>> it's flawless - what impresses me is that it works, that people
> >>> actually use it to deploy code and this code actually works in
> >>> the way intended.
> >> But do you think that VW, VA code does not work once deployed? I
> >> would like to understand why Jar are better than parcels for example.
> >
> > Here are some "simple" issues: How do Parcels deal with conflicting
> > modifications to base classes? Say, one that says "Object>>isCommon
> > ^true" and one that says "Object>>isCommon ^false"? (Java simply
> > doesn't allow modifications to base classes which, really, isn't
> > such a bad thing from the point of view of modularity)
>
> Last one wins.
>
> Not that the fact that the Java does not allow modifications to
> baseclasses (nor even subclassing in most cases), causes us all kinds
> of problems.
>
> >
> > Another one: Which assurances do parcels give in terms of security?
> > As far as I know there is no bytecode verifier, parcel have full
> > access to the entire Smalltalk namespace (covered by ClassLoaders
> > in Java), there are no limitations in terms of what operations a
> > parcel can perform (nil become: true; Java had a good set of fixes
> > in this area to get it right and not to leak ambient authority) and
> > I don't think VW even knows what a sandbox is.
>
> Security is the one and only advantage of JARs, I fully agree.
>
> >
> > A third one: Which namespace are parcels loaded into? Can two
> > different versions of parcels be loaded side-by-side? How (if at
> > all) do they affect each other? Etc.
>
> A temporary one because the load is atomic and can be reverted. Once
> the load succeeds the code is put in the image. Parcels work pretty
> well for code deployment. See the paper Eliot and I wrote for ESUG a
> couple of years ago (it is on my webpage).

At ESUG 2006 James Robertson said he doesn't use Parcels for code
deployment because they are just not reliable (of course he doesn't
use store either). He uses change sets (or .st files, I don't remember
exactly) instead.

Philippe

> >
> >> May be I should post to VW to see what are the problem with
> >> deployed code in VW.
> >> A parcel in VW has dev and depl prerequisites and it seems to work
> >> too.
> >
> > Well, sure. Sorta. Kinda. :-) We can do the same in Squeak with
> > projects and change sets and it seems to work, too. Sorta. Kinda. :-)
>
> rofl :-)
>
> >
> > Cheers,
> >   - Andreas
> >
> >
>
>
>



More information about the Squeak-dev mailing list