Hide metadata

dc.date.accessioned2020-06-29T19:36:31Z
dc.date.available2020-06-29T19:36:31Z
dc.date.created2019-11-25T09:39:29Z
dc.date.issued2019
dc.identifier.citationJohansen, Christian Owe, Olaf . Dynamic Structural Operational Semantics. Journal of Logical and Algebraic Methods in Programming. 2019, 107, 79-107
dc.identifier.urihttp://hdl.handle.net/10852/77330
dc.description.abstractWe introduce Dynamic Structural Operational Semantics (DSOS or Dynamic SOS) as a framework for describing semantics of programming languages that include dynamic software upgrades, i.e., for upgrading software code during run-time. DSOS is built on top of the Modular SOS of P. Mosses, with an underlying category theory formalization. The idea of Dynamic SOS is to bring out the essential differences between dynamic upgrade constructs and program execution constructs. The important feature of Modular SOS (MSOS) that we exploit in DSOS is the sharp separation of the program execution code from the additional (data) structures needed at run-time. In DSOS we aim to achieve the same modularity and decoupling for dynamic software upgrades. This is partly motivated by the long term goal of having machine-checkable proofs for general results like type safety. We exemplify Dynamic SOS on two languages supporting dynamic software upgrades, namely the C-like Proteus, which supports updating of variables, functions, records, or types at specific program points, and Creol, which supports dynamic class upgrades in the setting of concurrent objects. Existing type analyses for software upgrades can be done on top of DSOS too, as we illustrate for Proteus. As a side contribution we define a general encapsulating construction on Modular SOS useful in situations where a form of encapsulation of the execution is needed. We use encapsulation to give modular semantics to the concurrent object-oriented programming language Creol with active objects and asynchronous method invocations.
dc.languageEN
dc.rightsAttribution 4.0 International
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/
dc.titleDynamic Structural Operational Semantics
dc.typeJournal article
dc.creator.authorJohansen, Christian
dc.creator.authorOwe, Olaf
cristin.unitcode185,15,30,0
cristin.unitnameInstitutt for teknologisystemer
cristin.ispublishedtrue
cristin.fulltextpostprint
cristin.qualitycode2
dc.identifier.cristin1751653
dc.identifier.bibliographiccitationinfo:ofi/fmt:kev:mtx:ctx&ctx_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.jtitle=Journal of Logical and Algebraic Methods in Programming&rft.volume=107&rft.spage=79&rft.date=2019
dc.identifier.jtitleJournal of Logical and Algebraic Methods in Programming
dc.identifier.volume107
dc.identifier.startpage79
dc.identifier.endpage107
dc.identifier.doihttps://doi.org/10.1016/j.jlamp.2019.05.006
dc.identifier.urnURN:NBN:no-80451
dc.type.documentTidsskriftartikkel
dc.type.peerreviewedPeer reviewed
dc.source.issn2352-2208
dc.identifier.fulltextFulltext https://www.duo.uio.no/bitstream/handle/10852/77330/4/1-s2.0-S2352220817302067-main.pdf
dc.type.versionPublishedVersion
dc.relation.projectNFR/500324
dc.relation.projectEU/563172


Files in this item

Appears in the following Collection

Hide metadata

Attribution 4.0 International
This item's license is: Attribution 4.0 International