Events - Colloquia & Seminars
CCIS Colloquium Spring 2006
What Lambda Calculus has to Offer Network-Protocol Implementors
Speaker: Olin Shivers
Affiliation: Georgia Institute of Technology
Host: Mitch Wand
Date: Monday, May 1, 2006
Talk: 11:00 am, 366 WVH
Abstract
There is a perception of programming languages based on the lambda calculus (such as Scheme, SML, and Haskell) that their primary utility lies in writing compilers for more languages based on the lambda calculus. And there is a certain amount of truth in this perception.
This is unfortunate, because these languages are terrifically expressive, and *should* be easing the lives of programmers who construct high-performance network-protocol stacks, DSP systems, web services and other systems codes. However, making these languages *practical* tools for systems-programming tasks requires developing sophisticated analyses that can enable efficient, lightweight implementations.
Taming lambda by means of flow analysis is a problem that has kept me, and others, happily occupied for over twenty years. In this talk, I will describe this arc of work: the early results, their limitations, some very recent work addressing these limits, some applications that are enabled by this analytic approach and future possibilities that I think are worth investigation.
As an example application, I'll describe how these representations and analyses can be used to optimize or "fuse" pipelines of on-line transducers, a programming paradigm useful to network-protocol stacks, DSP systems and so-called "stream processing" systems.