Skip to main navigation Skip to search Skip to main content

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

  • Christian Emil Nielsen
  • , Mathias Faber Kristiansen
  • , Patrick Bahr

Research output: Conference Article in Proceeding or Book/Report chapterArticle in proceedingsResearchpeer-review

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.
Original languageEnglish
Title of host publicationPractical Aspects of Declarative Languages
Number of pages18
PublisherSpringer
Publication date12 Jan 2026
Pages39-56
ISBN (Print)978-3-032-15980-9
ISBN (Electronic)978-3-032-15981-6
DOIs
Publication statusPublished - 12 Jan 2026
EventPractical Aspects of Declarative Languages - Couvent des Jacobins, Rennes, France
Duration: 12 Jan 202613 Jan 2026
Conference number: 28
https://popl26.sigplan.org/home/PADL-2026

Conference

ConferencePractical Aspects of Declarative Languages
Number28
LocationCouvent des Jacobins
Country/TerritoryFrance
CityRennes
Period12/01/202613/01/2026
Internet address
SeriesLecture Notes in Computer Science
Volume16401
ISSN0302-9743

Keywords

  • Property-Based Testing
  • Functional Reactive Programming
  • Linear Temporal Logic

Fingerprint

Dive into the research topics of 'Property-Based Testing for Asynchronous Functional Reactive Programming Using Linear Temporal Logic'. Together they form a unique fingerprint.

Cite this