English
Related papers

Related papers: A Formalization for Specifying and Implementing Co…

200 papers

When we consider the application layer of networked infrastructures, data and control flow are important concerns in distributed systems integration. Modularity is a fundamental principle in software design, in particular for distributed…

Software Engineering · Computer Science 2021-08-19 Wilhelm Hasselbring , Maik Wojcieszak , Schahram Dustdar

Modeling processes are the activities of capturing and representing processes and control of their dynamic behavior. Desired features of the model include capture of relevant aspects of a real phenomenon, understandability, and completeness…

Software Engineering · Computer Science 2017-07-28 Sabah Al-Fedaghi , Haya Alahmad

To design peer-to-peer (P2P) software systems is a challenging task, because of their highly decentralized nature, which may cause unexpected emergent global behaviors. The last fifteen years have seen many P2P applications to come out and…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-07-14 Michele Amoretti , Francesco Zanichelli

Pipeline is a fundamental parallel programming pattern. Mainstream pipeline programming frameworks count on data abstractions to perform pipeline scheduling. This design is convenient for data-centric pipeline applications but inefficient…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-02-03 Cheng-Hsiang Chiu , Tsung-Wei Huang , Zizheng Guo , Yibo Lin

Event-driven programming frameworks, such as Android, are based on components with asynchronous interfaces. The protocols for interacting with these components can often be described by finite-state machines we dub *callback typestates*.…

Formal specifications have numerous benefits for both designers and users of network protocols. They provide clear, unambiguous representations, which are useful as documentation and for testing. They can help reveal disagreements about…

Networking and Internet Architecture · Computer Science 2025-09-17 David Basin , Nate Foster , Kenneth L. McMillan , Kedar S. Namjoshi , Cristina Nita-Rotaru , Jonathan M. Smith , Pamela Zave , Lenore D. Zuck

Purposely modular, this protocol enables customization of several protocol properties, including the consensus properties implemented, blockchain type, the roots used, and virtual machine opcodes, among others. These modules enable…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-12-20 Jovonni L. Pharr

There are many familiar situations in which a manager seeks to design a system in which users share a resource, but outcomes depend on the information held and actions taken by users. If communication is possible, the manager can ask users…

Computer Science and Game Theory · Computer Science 2012-07-18 Luca Canzian , Yuanzhang Xiao , William Zame , Michele Zorzi , Mihaela van der Schaar

In concurrent and distributed systems, software components are expected to communicate according to predetermined protocols and APIs - and if a component does not observe them, the system's reliability is compromised. Furthermore, isolating…

Programming Languages · Computer Science 2021-05-25 Christian Batrolo Burlò , Adrian Francalanza , Alceste Scalas

The proliferation of sensors over the last years has generated large amounts of raw data, forming data streams that need to be processed. In many cases, cloud resources are used for such processing, exploiting their flexibility, but these…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-02-01 Rafael Tolosana-Calasanz , José Ángel Bañares , José-Manuel Colom

Asynchronous programming has appeared as a programming style that overcomes undesired properties of concurrent programming. Typically in asynchronous models of programming, methods are posted into a post list for latter execution. The order…

Programming Languages · Computer Science 2015-01-06 Mohamed A. El-Zawawy

Achieving high code reuse in physical design flows is challenging but increasingly necessary to build complex systems. Unfortunately, existing approaches based on parameterized Tcl generators support very limited reuse and struggle to…

Hardware Architecture · Computer Science 2021-11-30 Alex Carsello , James Thomas , Ankita Nayak , Po-Han Chen , Mark Horowitz , Priyanka Raina , Christopher Torng

Languages like F#, C#, and recently also Scala, provide "Async" programming models which aim to make asynchronous programming easier by avoiding an inversion of control that is inherent in callback-based programming models. This paper…

Programming Languages · Computer Science 2015-11-03 Philipp Haller , Heather Miller

We describe some progress towards a new common framework for model driven engineering, based on behavioral programming. The tool we have developed unifies almost all of the work done in behavioral programming so far, under a common set of…

Software Engineering · Computer Science 2018-06-05 Michael Bar-Sinai , Gera Weiss , Reut Shmuel

Consistency requirements for state-of-the-art stream processing systems are defined in terms of delivery guarantees. Exactly-once is the strongest one and the most desirable for end-user. However, there are several issues regarding this…

Databases · Computer Science 2019-07-16 Artem Trofimov , Igor E. Kuralenok , Nikita Marshalkin , Boris Novikov

Sequential programming and work-flow programming are two useful, but radically different, ways of describing computational processing. Of the two, it is sequential programming that we teach all programmers and support by programming…

Programming Languages · Computer Science 2011-08-24 William Harrison

Pull-tabbing is an evaluation technique for functional logic programs which computes all non-deterministic results in a single graph structure. Pull-tab steps are local graph transformations to move non-deterministic choices towards the…

Programming Languages · Computer Science 2020-08-28 Michael Hanus , Finn Teegen

Streaming analysis is widely used in cloud as well as edge infrastructures. In these contexts, fine-grained application performance can be based on accurate modeling of streaming operators. This is especially beneficial for computationally…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-11-30 Hannaneh Najdataei , Vincenzo Gulisano , Alessandro V. Papadopoulos , Ivan Walulya , Marina Papatriantafilou , Philippas Tsigas

The notion of complex systems is common to many domains, from Biology to Economy, Computer Science, Physics, etc. Often, these systems are made of sets of entities moving in an evolving environment. One of their major characteristics is the…

Mathematical Software · Computer Science 2008-12-18 Yoann Pigné , Antoine Dutot , Frédéric Guinand , Damien Olivier

Session contracts is a formalism enabling to investigate client/server interaction protocols and to interpret session types. We extend session contracts in order to represent outputs whose actual sending in an interaction depends on a third…

Logic in Computer Science · Computer Science 2023-06-22 Franco Barbanera , Ugo de'Liguoro