Enhancing expressivity of checked corecursive streams (extended version)

02/14/2022
by   Davide Ancona, et al.
0

We propose a novel approach to stream definition and manipulation. Our solution is based on two key ideas. Regular corecursion, which avoids non termination by detecting cyclic calls, is enhanced, by allowing in equations defining streams other operators besides the stream constructor. In this way, some non-regular streams are definable. Furthermore, execution includes a runtime check to ensure that the stream generated by a function call is well-defined, in the sense that access to an arbitrary index always succeeds. We extend the technique beyond the simple stream operators considered in previous work, notably by adding an interleaving combinator which has a non-trivial recursion scheme.

READ FULL TEXT
research
07/31/2021

Enhanced Regular Corecursion for Data Streams

We propose a simple calculus for processing data streams (infinite flows...
research
12/30/2022

Coinductive Streams in Monoidal Categories

We introduce monoidal streams. Monoidal streams are a generalization of ...
research
08/31/2018

TeSSLa: Temporal Stream-based Specification Language

Runtime verification is concerned with monitoring program traces. In par...
research
01/03/2014

Data Smashing

Investigation of the underlying physics or biology from empirical data r...
research
02/12/2021

Computing Betweenness Centrality in Link Streams

Betweeness centrality is one of the most important concepts in graph ana...
research
02/20/2023

Profiling and Optimizing Java Streams

The Stream API was added in Java 8 to allow the declarative expression o...
research
12/20/2018

Temporal Matching

A link stream is a sequence of pairs of the form (t,{u,v}), where t∈ N r...

Please sign up or login with your details

Forgot password? Click here to reset