Experience report: embedded, parallel computer-vision with a functional DSL

  • Authors:
  • Ryan R. Newton;Teresa Ko

  • Affiliations:
  • MIT, Cambridge, MA, USA;UCLA, Los Angeles, CA, USA

  • Venue:
  • Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents our experience using a domain-specific functional language, WaveScript, to build embedded sensing applications used in scientific research. We focus on a recent computervision application for detecting birds in their natural environment. The application was ported from a prototype in C++. In reimplementing the application, we gained a much cleaner factoring of its functionality (through higher-order functions and better interfaces to libraries) and a near-linear parallel speed-up with no additional effort. These benefits are offset by one substantial downside: the lack of familiarity with the language of the original vision researchers, who understandably tried to use the language in the familiar way they use C++ and thus ran into various problems.