Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)

This paper describes our experience implementing CES, a distributed Collaborative Editing System written in Argus, a language that includes facilities for managing long-lived distributed data. Argus provides atomic actions, which simplify the handling of concurrency and failures, and t the mechanism...

Full description

Bibliographic Details
Main Authors: Greif, Irene, Selinger, Robert, Weihl, William
Published: 2023
Online Access:https://hdl.handle.net/1721.1/149104
_version_ 1826205118851186688
author Greif, Irene
Selinger, Robert
Weihl, William
author_facet Greif, Irene
Selinger, Robert
Weihl, William
author_sort Greif, Irene
collection MIT
description This paper describes our experience implementing CES, a distributed Collaborative Editing System written in Argus, a language that includes facilities for managing long-lived distributed data. Argus provides atomic actions, which simplify the handling of concurrency and failures, and t the mechanisms for implementing atomic data types, which ensure serializability and recoverability of actions that use them. This paper focuses on the support for atomicity in Argus, especially the support for building new atomic types. Overall the mechanisms in Argus made it relatively easy to build CES; however, we encountered interesting problems in several areas. For example, much of the processing of an atomic action in Argus is handled automatically by the run-time system; several examples are presented that illustrate areas where more explicit control in the implementations of atomic types would be useful.
first_indexed 2024-09-23T13:07:01Z
id mit-1721.1/149104
institution Massachusetts Institute of Technology
last_indexed 2024-09-23T13:07:01Z
publishDate 2023
record_format dspace
spelling mit-1721.1/1491042023-03-30T03:41:07Z Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract) Greif, Irene Selinger, Robert Weihl, William This paper describes our experience implementing CES, a distributed Collaborative Editing System written in Argus, a language that includes facilities for managing long-lived distributed data. Argus provides atomic actions, which simplify the handling of concurrency and failures, and t the mechanisms for implementing atomic data types, which ensure serializability and recoverability of actions that use them. This paper focuses on the support for atomicity in Argus, especially the support for building new atomic types. Overall the mechanisms in Argus made it relatively easy to build CES; however, we encountered interesting problems in several areas. For example, much of the processing of an atomic action in Argus is handled automatically by the run-time system; several examples are presented that illustrate areas where more explicit control in the implementations of atomic types would be useful. 2023-03-29T14:27:32Z 2023-03-29T14:27:32Z 1985-11 https://hdl.handle.net/1721.1/149104 MIT-LCS-TM-295 application/pdf
spellingShingle Greif, Irene
Selinger, Robert
Weihl, William
Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)
title Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)
title_full Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)
title_fullStr Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)
title_full_unstemmed Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)
title_short Atomic Data Abstractions in a Distributed Collaborative Editing System (Extended Abstract)
title_sort atomic data abstractions in a distributed collaborative editing system extended abstract
url https://hdl.handle.net/1721.1/149104
work_keys_str_mv AT greifirene atomicdataabstractionsinadistributedcollaborativeeditingsystemextendedabstract
AT selingerrobert atomicdataabstractionsinadistributedcollaborativeeditingsystemextendedabstract
AT weihlwilliam atomicdataabstractionsinadistributedcollaborativeeditingsystemextendedabstract