@InProceedings{MayMuller01, title = "{C}opying, {M}oving and {B}orrowing {S}emantics", author= "May, David and Muller, Henk", editor= "Chalmers, Alan G. and Mirmehdi, Majid and Muller, Henk", pages = "15--26", booktitle= "{C}ommunicating {P}rocess {A}rchitectures 2001", isbn= "1 58603 202 X", year= "2001", month= "sep", abstract= "In this paper we discuss primitives for mobilising code and communications. We distinguish three types of semantics for mobility: copying (where an identical copy is created remotely), moving (where the original is destroyed), and borrowing (where the original is moved to the target and back to where it came from at defined moments). We discuss these semantics for mobile code and mobile channels. We have implemented Icarus, a language that uses borrowing semantics for mobile code (the on-statement) and moving semantics for mobile channels (first class channels)." }