[Pl-seminar] Semantics Seminar Schedule

Mitchell Wand wand at ccs.neu.edu
Mon Nov 26 00:05:02 EST 2007

NU Programming Languages Seminar
Wednesday, November 28, 2007
Room 366 WVH (http://www.ccs.neu.edu/home/wand/directions.html)

WaveScript: Language Support for Distributed Stream Processing

Ryan Newton,

Applications that combine live data streams with embedded, parallel,
and distributed processing are becoming more commonplace.  WaveScript
is a domain-specific language that brings high-level, type-safe,
garbage-collected programming to these domains.  This is made possible
by three primary implementation techniques.  First, we employ a novel
evaluation strategy that uses a combination of interpretation and
reification to partially evaluate programs into stream dataflow
graphs.  Second, we use profile-driven compilation to enable many
optimizations that are normally only available in the synchronous
(rather than asynchronous) dataflow domain.  Finally, we incorporate
an extensible system for rewrite rules to capture algebraic properties
in specific domains (such as signal processing).

We have used our language to build and deploy a sensor-network for the
acoustic localization of wild animals, in particular, the
Yellow-Bellied marmot.  In this application, WaveScript yields good
performance on both embedded and desktop-class machines, including
distributed execution and substantial parallel speedups.  In fact, the
WaveScript implementation outperformed a previous C implementation of
the same algorithms by different authors.  CPU time was improved by
35% using fewer than half the lines of code.  I will discuss the
contribution of our compiler optimizations to this success.

Upcoming Events:

# 12/05 Riccardo Pucella: The Manticore project
# 01/16 et seq are open. Volunteer!
# 02/13 Norman Ramsay: Dataflow 'Optimization' for the Semantically Inclined


More information about the pl-seminar mailing list