A method for processing computer program code, the method comprising: identifying at least one first part of the computer program code which is to be executed by a particular one of a plurality of communicating processing elements; identifying at least one further part of the computer program code, said at least one first part of the computer program code comprising a first reference to the at least one further part of the computer program code; and causing said first part of the computer program code and said further part of the computer program code to be executed by the particular one of said processing elements; wherein: said plurality of processing elements access data stored in a plurality of storage areas; said computer program code also comprising a second reference to the at least one further part of the computer program code, each of the first and second references comprising a respective memory access operation for accessing a respective data item stored in one of the plurality of storage areas; and the method further comprises creating a first modified version of said further part of said computer program code based upon a first memory access operation in the first reference and creating a second modified version of said further part of said computer program code based upon a second memory access operation in the second reference; wherein creating each of the first and second modified versions comprises adding a marker to a copy of said further part of said computer program code, the marker indicating the respective storage area in which the data item accessed by the respective one of the first and second memory access operations is stored. identifying at least one first part of the computer program code which is to be executed by a particular one of a plurality of communicating processing elements; identifying at least one further part of the computer program code, said at least one first part of the computer program code comprising a first reference to the at least one further part of the computer program code; and causing said first part of the computer program code and said further part of the computer program code to be executed by the particular one of said processing elements; said plurality of processing elements access data stored in a plurality of storage areas; said computer program code also comprising a second reference to the at least one further part of the computer program code, each of the first and second references comprising a respective memory access operation for accessing a respective data item stored in one of the plurality of storage areas; and the method further comprises creating a first modified version of said further part of said computer program code based upon a first memory access operation in the first reference and creating a second modified version of said further part of said computer program code based upon a second memory access operation in the second reference; wherein creating each of the first and second modified versions comprises adding a marker to a copy of said further part of said computer program code, the marker indicating the respective storage area in which the data item accessed by the respective one of the first and second memory access operations is stored.