Using Kilim's isolation types for multicore efficiency
Using Kilim's isolation types for multicore efficiency
Using Kilim's isolation types for multicore efficiency
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