Skip to search boxSkip to navigationSkip to main content

Property-Based Testing for Asynchronous Functional Reactive Programming Using Linear Temporal Logic

  • Christian Emil Nielsen
    ,
  • Mathias Faber Kristiansen
    ,
Research Output:
Conference Article in Proceeding or Book/Report chapter
Article in proceedings
Peer-review

Open access

Publication Information

Output type

Research Output:
Conference Article in Proceeding or Book/Report chapter
Article in proceedings
Peer-review

Original language

English

Pages from-to (Number of pages)

Pages 39-56 (18 pages)

Publication milestones

  • Published - 12/01/2026

Publication status

Published - 12/01/2026

Publisher

Springer, United States, Germany

Book series

  • Book series name: Lecture Notes in Computer Science
    Volume: 16401
    ISSN: 0302-9743
978-3-032-15980-9

ISBN (Electronic)

978-3-032-15981-6

Publication IDs

  • Scopus: 105028354392

Host publication title

Practical Aspects of Declarative Languages

Abstract

Functional reactive programming (FRP) is a programming paradigm for implementing software that continuously interacts with its environment and manipulates highly dynamic data. Asynchronous FRP, in particular, is very expressive and can be used to implement graphical user interfaces and other reactive systems interacting with data streams and events that are not synchronized. Testing such asynchronous FRP programs is difficult since a program's behaviour depends not only on the concrete data it receives from its environment but also the relative timing of when each piece of data arrives.

In this paper, we propose PropRatt, a property-based testing framework for asynchronous FRP. The key component of PropRatt is its specification language, which extends basic linear temporal logic with a means to express properties of several concurrent signals. This allows us to express temporal properties that relate data coming from different signals at different points in time. PropRatt is implemented in Haskell and targets a recently introduced asynchronous FRP language embedded in Haskell. We demonstrate the utility of PropRatt through a case study testing a signal combinator library as well as a graphical user interface, in which we suggest how the strategy for generating signals can be modified to better model specific domains.

Related Event

Title

Practical Aspects of Declarative Languages

Event type

Conference

Degree of recognition

International event

Date

12/01/2026 - 13/01/2026

Location

Couvent des JacobinsRennesFrance