Repository logo
 

Undo and Redo Support for Replicated Registers

Published version
Peer-reviewed

Repository DOI


Type

Conference Object

Change log

Abstract

Undo and redo functionality is ubiquitous in collaboration software. In single user settings, undo and redo are well understood. However, when multiple users edit a document, concurrency may arise, leading to a non-linear operation history. This renders undo and redo more complex both in terms of their semantics and implementation.

We survey the undo and redo semantics of current mainstream collaboration software and derive principles for undo and redo behavior in a collaborative setting. We then apply these principles to a simple CRDT, the Multi-Valued Replicated Register, and present a novel undo and redo algorithm that implements the undo and redo semantics that we believe are most consistent with users' expectations.

Description

Keywords

46 Information and Computing Sciences, 4612 Software Engineering

Journal Title

PaPoC '24: Proceedings of the 11th Workshop on Principles and Practice of Consistency for Distributed Data

Conference Name

11th Workshop on Principles and Practice of Consistency for Distributed Data (PaPoC)

Journal ISSN

Volume Title

Publisher

Association for Computing Machinery