24.10.2013 Views

Using Kilim's isolation types for multicore efficiency

Using Kilim's isolation types for multicore efficiency

Using Kilim's isolation types for multicore efficiency

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Kilim qualifiers<br />

UNIVERSITYOF<br />

CAMBRIDGE<br />

Kilim en<strong>for</strong>ces Messages to be tree-like. Qualifiers further restrict<br />

this:<br />

@free <strong>for</strong>bids an object to have heap-pointers to it (a tree root).<br />

[Not if-and-only-if <strong>for</strong> static analysis reasons.]<br />

@cuttable a value which is @free if its parent’s pointer is nullified<br />

@safe <strong>for</strong>bids structural modification of the Message recursively<br />

@readonly <strong>for</strong>bids any modification of the Message recursively.<br />

Note these are deep qualifiers, unlike const in C.<br />

• Only @free Message <strong>types</strong> can be transferred between actors.<br />

(And, more subtly, as method return <strong>types</strong>!)<br />

<strong>Using</strong> Kilim’s <strong>isolation</strong> <strong>types</strong> <strong>for</strong> <strong>multicore</strong> <strong>efficiency</strong> 35 FoVeOOS’2011

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!