1. A method comprising: identifying, from a plurality of properties of a particular data object that are referenced by program code of a procedure, one or more candidate sets of properties that are eligible for merging; searching, by a compiler executing on a computing device, within the program code for one or more expressions, wherein each expression of the one or more expressions reads different properties of the particular data object that belong to a same candidate set of properties of the one or more candidate sets of properties; for particular different properties of a particular candidate set of properties of the one or more candidate sets of properties, determining based on the searching, whether to merge the particular different properties; after determining to merge the particular different properties, generating, within memory of the computing device, a particular data structure for storing the particular different properties consecutively in memory; determining whether a particular property of the particular different properties is an output for said program code of said procedure; and in response to determining that the particular property of the particular different properties is the output for said program code of said procedure, generating, by the compiler executing on the computing device, additional program code for copying a value from the particular data structure to the particular property.