Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p><a href="http://code.google.com/p/joe-e/" rel="nofollow">Joe-E</a></p> <p>From the <a href="http://www.cs.berkeley.edu/~daw/joe-e/spec-20080203.pdf" rel="nofollow">language spec</a></p> <blockquote> <h2>3.4 Immutable Types</h2> <p>A type T is immutable if and only if it implements the marker interface <code>org.joe_e.Immutable</code> according to the overlay type system. The (empty) <code>org.joe_e.Immutable</code> interface must be provided by the Joe-E implementation. The intuition behind an immutable object is that such an object cannot be changed (mutated) in any observable way, nor can any objects reachable by following the elds of the immutable object. The contents of an immutable objects' elds and any objects reachable from an immutable object must not change once the object is constructed. With the exception of library classes explicitly deemed to implement <code>Immutable</code>, an immutable class must satisfy additional linguistic restrictions enforced by the verier (x4.4) to ensure this property. Library classes that cannot be automatically verified and are deemed immutable must be carefully manually veried to expose no possibility for modication of their contents. Note that immutability does not place any restrictions on any local variables dened within the immutable class. It also says nothing about the mutability of the arguments passed to methods. It only applies to the values stored in and objects reachable from the immutable class's elds</p> </blockquote> <p>It also introduces useful notions of powerless, and selfless types.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload