English
Related papers

Related papers: Contextual Metaprogramming for Session Types

200 papers

In the slot-filling paradigm, where a user can refer back to slots in the context during a conversation, the goal of the contextual understanding system is to resolve the referring expressions to the appropriate slots in the context. In…

Computation and Language · Computer Science 2018-11-28 Chetan Naik , Arpit Gupta , Hancheng Ge , Lambert Mathias , Ruhi Sarikaya

We present a monitoring approach for verifying systems at runtime. Our approach targets systems whose components communicate with the monitors over unreliable channels, where messages can be delayed or lost. In contrast to prior works,…

Logic in Computer Science · Computer Science 2017-07-19 David Basin , Felix Klaedtke , Eugen Zălinescu

We present PolySing#, a calculus that models process interaction based on copyless message passing, in the style of Singularity OS. We equip the calculus with a type system that accommodates polymorphic endpoint types, which are a variant…

Programming Languages · Computer Science 2011-08-03 Viviana Bono , Luca Padovani

Context-oriented programming (COP) is a new technique for programming that allows changing the context in which commands execute as a program executes. Compared to object-oriented programming (aspect-oriented programming), COP is more…

Programming Languages · Computer Science 2014-02-25 Mohamed A. El-Zawawy , Eisa A. Aleisa

Mobile applications today often fail to be context aware when they also need to be customizable and efficient at run-time. Context-oriented programming allows programmers to develop applications that are more context aware. Its central…

Programming Languages · Computer Science 2016-10-17 Markus Raab

Session types provide a typing discipline for message-passing systems. However, their theory often assumes an ideal world: one in which everything is reliable and without failures. Yet this is in stark contrast with distributed systems in…

Logic in Computer Science · Computer Science 2025-04-23 Adam D. Barwell , Ping Hou , Nobuko Yoshida , Fangyi Zhou

We envisage future context-aware applications will dynamically adapt their behaviors to various context data from sources in wide-area networks, such as the Internet. Facing the changing context and the sheer number of context sources, a…

Databases · Computer Science 2020-03-10 Wenwei Xue , Hungkeng Pung , Wenlong Ng , Tao Gu

We address the design of distributed systems with synchronous dataflow programming languages. As modular design entails handling both architectural and functional modularity, our first contribution is to extend an existing synchronous…

Programming Languages · Computer Science 2012-11-13 Gwenaël Delaval , Alain Girault , Marc Pouzet

We show that recent approaches of static analysis based on quantitative typing systems can be extended to programming languages with global state. More precisely, we define a call-by-value language equipped with operations to access a…

Programming Languages · Computer Science 2023-06-19 Sandra Alves , Delia Kesner , Miguel Ramos

This paper introduces NEST (Network-Enforced Session Types), a runtime verification framework that moves application-level protocol monitoring into the network fabric. Unlike prior work that instruments or wraps application code, we…

Programming Languages · Computer Science 2026-04-24 Jens Kanstrup Larsen , Alceste Scalas , Guy Amir , Jules Jacobs , Jana Wagemaker , Nate Foster

We present a unifying framework for type systems for process calculi. The core of the system provides an accurate correspondence between essentially functional processes and linear logic proofs; fragments of this system correspond to…

Logic in Computer Science · Computer Science 2015-05-29 Emmanuel Beffara

In this work, we incorporate reversibility into structured communication-based programming, to allow parties of a session to automatically undo, in a rollback fashion, the effect of previously executed interactions. This permits taking…

Programming Languages · Computer Science 2014-06-16 Francesco Tiezzi , Nobuko Yoshida

Message-passing software systems exhibit non-trivial forms of concurrency and distribution; they are expected to follow intended protocols among communicating services, but also to never "get stuck". This intuitive requirement has been…

Logic in Computer Science · Computer Science 2021-09-07 Ornela Dardha , Jorge A. Pérez

Large language models (LLMs) have reshaped the landscape of program synthesis. However, contemporary LLM-based code completion systems often hallucinate broken code because they lack appropriate context, particularly when working with…

Programming Languages · Computer Science 2024-10-14 Andrew Blinn , Xiang Li , June Hyung Kim , Cyrus Omar

To react to unforeseen circumstances or amend abnormal situations in communication-centric systems, programmers are in charge of "undoing" the interactions which led to an undesired state. To assist this task, session-based languages can be…

Programming Languages · Computer Science 2025-01-15 Claudio Antares Mezzina , Francesco Tiezzi , Nobuko Yoshida

Metaprogramming and effect handlers interact in unexpected, and sometimes undesirable, ways. One example is scope extrusion: the generation of ill-scoped code. Scope extrusion can either be preemptively prevented, via static type systems,…

Programming Languages · Computer Science 2026-01-27 Michael Lee , Ningning Xie , Oleg Kiselyov , Jeremy Yallop

Semantic subtyping enables simple, set-theoretical reasoning about types by interpreting a type as the set of its values. Previously, semantic subtyping has been studied primarily in the context of statically typed languages with structural…

Programming Languages · Computer Science 2019-12-19 Julia Belyakova

Erlang's dynamic typing discipline can lead to runtime errors that persist even after process restarts. Some of these runtime errors could be prevented through static type checking. While Erlang provides a type specification language, the…

Programming Languages · Computer Science 2026-03-24 Albert Schimpf , Stefan Wehr , Annette Bieniusa

Semantic segmentation is still a challenging task for parsing diverse contexts in different scenes, thus the fixed classifier might not be able to well address varying feature distributions during testing. Different from the mainstream…

Computer Vision and Pattern Recognition · Computer Science 2023-03-22 Zhuotao Tian , Jiequan Cui , Li Jiang , Xiaojuan Qi , Xin Lai , Yixin Chen , Shu Liu , Jiaya Jia

We describe a novel approach for adapting an existing software model checker to perform precise runtime verification. The software under test is allowed to communicate with the wider environment (including the file system and network). The…

Software Engineering · Computer Science 2018-06-01 Katarína Kejstová , Petr Ročkai , Jiří Barnat