• Find People
  • Campus Map
  • PiratePort
  • A-Z
    • About
    • Submit
    • Browse
    • Login
    View Item 
    •   ScholarShip Home
    • Dissertations and Theses
    • Master's Theses
    • View Item
    •   ScholarShip Home
    • Dissertations and Theses
    • Master's Theses
    • View Item
    JavaScript is disabled for your browser. Some features of this site may not work without it.

    Browse

    All of The ScholarShipCommunities & CollectionsDateAuthorsTitlesSubjectsTypeDate SubmittedThis CollectionDateAuthorsTitlesSubjectsTypeDate Submitted

    My Account

    Login

    Statistics

    View Google Analytics Statistics

    Applying Mutable Object Snapshots to a High-level Object-Oriented Language

    Thumbnail
    View/ Open
    DAVIS-MASTERSTHESIS-2018.pdf (1.254Mb)

    Show full item record
    Author
    Davis, Matthew C
    Abstract
    Software Engineers are familiar with mutable and immutable object state. Mutable objects shared across modules may lead to unexpected results as changes to the object in one module are visible to other modules sharing the object. When provided a mutable object as input in Java, it is common practice to defensively create a new private copy of the object bearing the same state via cloning, serializing/de-serializing, specialized object constructor, or third-party library. No universal approach exists for all scenarios and each common solution has well-known problems. This research explores the applicability of concepts within the Computer Engineering storage field related to snapshots. This exploration results in a simplified method of memory snapshotting implemented within OpenJDK 10. A novel runtime-managed method is proposed for declaring intent for object state to be unshared within the method signature. Preliminary experiments evaluate the attributes of this approach. A path for future research is proposed, including differential snapshots, alternative block sizes, improving performance, and exploring a tree of snapshots as a foundation to reason about changes to object state over time.
    URI
    http://hdl.handle.net/10342/7032
    Subject
     Snapshot; runtime; mutability; HotSpot; clone; serialize; copy constructor 
    Date
    2018-11-30
    Citation:
    APA:
    Davis, Matthew C. (November 2018). Applying Mutable Object Snapshots to a High-level Object-Oriented Language (Master's Thesis, East Carolina University). Retrieved from the Scholarship. (http://hdl.handle.net/10342/7032.)

    Display/Hide MLA, Chicago and APA citation formats.

    MLA:
    Davis, Matthew C. Applying Mutable Object Snapshots to a High-level Object-Oriented Language. Master's Thesis. East Carolina University, November 2018. The Scholarship. http://hdl.handle.net/10342/7032. August 11, 2022.
    Chicago:
    Davis, Matthew C, “Applying Mutable Object Snapshots to a High-level Object-Oriented Language” (Master's Thesis., East Carolina University, November 2018).
    AMA:
    Davis, Matthew C. Applying Mutable Object Snapshots to a High-level Object-Oriented Language [Master's Thesis]. Greenville, NC: East Carolina University; November 2018.
    Collections
    • Computer Science
    • Master's Theses
    Publisher
    East Carolina University

    xmlui.ArtifactBrowser.ItemViewer.elsevier_entitlement

    East Carolina University has created ScholarShip, a digital archive for the scholarly output of the ECU community.

    • About
    • Contact Us
    • Send Feedback