20. A non-transitory, computer-readable storage medium storing program instructions computer-executable to implement: a definition of a shared object in an object-oriented language that is able to be instantiated in memory to create one or more instances of the shared object, wherein each shared object instance comprises a header word, and wherein each shared object instance is configured to be accessible by a plurality of concurrently executing atomic transactions; a definition of a source-level programming language construct that is able to be instantiated in memory to create one or more instances of one or more methods for transaction based access of an instance of the shared object by the plurality of concurrently executing atomic transactions, wherein the definition of the source-level programming language construct is included in an application programming interface, wherein each of the instances of the one or more methods is dependent on information stored in the header word of the shared object instance indicating whether one or more of the plurality of concurrently executing atomic transactions is attempting to access the shared object instance; and wherein, in response to an attempt to access an instance of the shared object by one of the plurality of concurrently executing atomic transactions via the application programming interface, an instance of one of the one or more methods is configured to: determine, based on the header word of the instance of the shared object, if the instance of the shared object is being accessed; and in response to determining that the instance of the shared object is not being accessed: modify a working copy of the instance of the shared object; and access one or more other objects.
20. A non-transitory, computer-readable storage medium storing program instructions computer-executable to implement: a definition of a shared object in an object-oriented language that is able to be instantiated in memory to create one or more instances of the shared object, wherein each shared object instance comprises a header word, and wherein each shared object instance is configured to be accessible by a plurality of concurrently executing atomic transactions; a definition of a source-level programming language construct that is able to be instantiated in memory to create one or more instances of one or more methods for transaction based access of an instance of the shared object by the plurality of concurrently executing atomic transactions, wherein the definition of the source-level programming language construct is included in an application programming interface, wherein each of the instances of the one or more methods is dependent on information stored in the header word of the shared object instance indicating whether one or more of the plurality of concurrently executing atomic transactions is attempting to access the shared object instance; and wherein, in response to an attempt to access an instance of the shared object by one of the plurality of concurrently executing atomic transactions via the application programming interface, an instance of one of the one or more methods is configured to: determine, based on the header word of the instance of the shared object, if the instance of the shared object is being accessed; and in response to determining that the instance of the shared object is not being accessed: modify a working copy of the instance of the shared object; and access one or more other objects. 23. The computer-readable storage medium of claim 20 , wherein the program instructions comprise a functional sequence that defines one or more operations for writing transaction information into the header word of an instance of the shared object and generating one or more transaction records.