Roll your own test bed for embedded real-time protocols: a haskell experience

  • Authors:
  • Lee Pike;Geoffrey Brown;Alwyn Goodloe

  • Affiliations:
  • Galois, Inc., Portland, OR, USA;Indiana University, Bloomington, Bloomington, IN, USA;National Institute of Aerospace, Hampton, VA, USA

  • Venue:
  • Proceedings of the 2nd ACM SIGPLAN symposium on Haskell
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present by example a new application domain for functional languages: emulators for embedded real-time protocols. As a case-study, we implement a simple emulator for the Biphase Mark Protocol, a physical-layer network protocol in Haskell. The surprising result is that a pure functional language with no built-in notion of time is extremely well-suited for constructing such emulators. Furthermore, we use Haskell's property-checker QuickCheck to automatically generate real-time parameters for simulation. We also describe a novel use of QuickCheck as a "probability calculator" for reliability analysis.