English
Related papers

Related papers: Fluent Session Programming in C#

200 papers

Modern applications often operate on data in multiple administrative domains. In this federated setting, participants may not fully trust each other. These distributed applications use transactions as a core mechanism for ensuring…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-08-23 Isaac Sheff , Tom Magrino , Jed Liu , Andrew C. Myers , Robbert van Renesse

Session types are types for specifying the protocols that communicating processes must follow in a concurrent system. When composing two or more well-typed processes, a session typing system must check whether such processes are multiparty…

Logic in Computer Science · Computer Science 2023-05-26 Marco Carbone , Sonia Marin , Carsten Schürmann

There are numerous types of programming languages developed in the last decades, and most of them provide interface to call C++ or C for high efficiency implementation. The motivation of Svar is to design an efficient, light-weighted and…

Programming Languages · Computer Science 2021-08-20 Yong Zhao , Pengcheng Zhao , Shibiao Xu , Lin Chen , Pengcheng Han , Shuhui Bu , Hongkai Jiang

Session types, types for structuring communication between endpoints in distributed systems, are recently being integrated into mainstream programming languages. In practice, a very important notion for dealing with such types is that of…

Programming Languages · Computer Science 2023-06-22 Mario Bravetti , Marco Carbone , Julien Lange , Nobuko Yoshida , Gianluigi Zavattaro

This paper introduces Ciw, an open source library for conducting discrete event simulations that has been developed in Python. The strengths of the library are illustrated in terms of best practice and reproducibility for computational…

Performance · Computer Science 2017-10-11 Geraint I. Palmer , Vincent A. Knight , Paul R. Harper , Asyl L. Hawa

Graphic Processing Units (GPUs) have become ubiquitous in scientific computing. However, writing efficient GPU kernels can be challenging due to the need for careful code tuning. To automatically explore the kernel optimization space,…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-03-23 Stijn Heldens , Ben van Werkhoven

We show how systems of session types can enforce interactions to be bounded for all typable processes. The type system we propose is based on Lafont's soft linear logic and is strongly inspired by recent works about session types as…

Logic in Computer Science · Computer Science 2011-08-24 Ugo Dal Lago , Paolo Di Giamberardino

Shared memory multiprocessors come back to popularity thanks to rapid spreading of commodity multi-core architectures. As ever, shared memory programs are fairly easy to write and quite hard to optimise; providing multi-core programmers…

Distributed, Parallel, and Cluster Computing · Computer Science 2009-09-10 Marco Aldinucci , Massimo Torquati , Massimiliano Meneghin

Massively parallel Fourier transforms are widely used in computational sciences, and specifically in computational fluid dynamics which involves unbounded Poisson problems. In practice the latter is usually the most time-consuming operation…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-03-22 Pierre Balty , Philippe Chatelain , Thomas Gillis

Due to ongoing accrual over long durations, a defining characteristic of real-world data streams is the requirement for rolling, often real-time, mechanisms to coarsen or summarize stream history. One common data structure for this purpose…

Data Structures and Algorithms · Computer Science 2025-06-17 Connor Yang , Joey Wagner , Emily Dolson , Luis Zaman , Matthew Andres Moreno

Blockchains are being positioned as the "technology of trust" that can be used to mediate transactions between non-trusting parties without the need for a central authority. They support transaction types that are native to the blockchain…

Cryptography and Security · Computer Science 2024-11-06 Nodirbek Korchiev , Akash Pateria , Vodelina Samatova , Sogolsadat Mansouri , Kemafor Anyanwu

In this paper, the author presents a simple and fast C++ thread pool implementation capable of running task graphs. The implementation is publicly available on GitHub, see https://github.com/dpuyda/scheduling.

Distributed, Parallel, and Cluster Computing · Computer Science 2024-07-24 Dmytro Puyda

Constant-time programming is a widely deployed approach to harden cryptographic programs against side channel attacks. However, modern processors often violate the underlying assumptions of standard constant-time policies by transiently…

Cryptography and Security · Computer Science 2025-05-21 Ali Hajiabadi , Trevor E. Carlson

This demo abstract introduces a new light-weight programming language koa which is suitable for blockchain system design and implementation. In this abstract, the basic features of koa are introduced including working system (with…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-13 Junhui Kim , Joongheon Kim

The inability to predict lasting languages and architectures led us to develop OCCA, a C++ library focused on host-device interaction. Using run-time compilation and macro expansions, the result is a novel single kernel language that…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-03-06 David S Medina , Amik St-Cyr , T. Warburton

The disastrous vulnerabilities in smart contracts sharply remind us of our ignorance: we do not know how to write code that is secure in composition with malicious code. Information flow control has long been proposed as a way to achieve…

Cryptography and Security · Computer Science 2023-07-21 Ethan Cecchetti , Siqiu Yao , Haobin Ni , Andrew C. Myers

On the way to Exascale, programmers face the increasing challenge of having to support multiple hardware architectures from the same code base. At the same time, portability of code and performance are increasingly difficult to achieve as…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-06-14 Thomas Heller , Hartmut Kaiser , Patrick Diehl , Dietmar Fey , Marc Alexander Schweitzer

This paper presents Haskell#, a coordination language targeted at the efficient implementation of parallel scientific applications on loosely coupled parallel architectures, using the functional language Haskell. Examples of applications,…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-08-21 Francisco Heron de Carvalho Junior , Rafael Dueire Lins

The recent advancements in multicore machines highlight the need to simplify concurrent programming in order to leverage their computational power. One way to achieve this is by designing efficient concurrent data structures (e.g. stacks,…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-03-31 Nikolaos D. Kallimanis

A Unitychain is a novel blockchain-like structure that drastically improves transaction scalability and security while maintaining ongoing network performance, even if participating nodes are required to perform a new Distributed Key…

Cryptography and Security · Computer Science 2021-01-22 Joshua D. Tobkin