Skip to main content

Secondary navigation:

2000 Bachelors Theses

computer science

Author: Mark Beppu
 
download pdf
Title: EagleEyes Wireless Mouse
Advisor: William Ames
Eagle Eyes is a new technology that allows the user to move the cursor on the screen of a Windows or Macintosh computer by moving his or her eyes or head. Basically, the cursor follows the location that the user is looking at on the screen. In this way, the eyes replace the mouse.
 
Author: Brendan Wright
 
Title: Flow-Directed Uncurrying
Advisor: Robert Muller
Summary: In modern mostly-functional programming languages, all functions are functions of exactly one argument. Multiple arguments can be passed to a function as a tuple or by defining the function so that it returns another function that will accept the next argument. Curry style is very general but, unfortunately, it is very expensive to implement when functions are represented as closure data structures. In this work, we show how to transform curry-style functions to the more efficient tuple-style functions.
 
Author: Aaron Moller
 
Title: Flow-Sensitive Program Transformations
Advisor: Robert Muller
Summary: Modern compilers use flow analysis as an aid in carrying-out optimizing program transformations. Intermediate languages such as the CIL typed intermediate language or SSA form both embed the flow information within the intermediate representation (IR). While this is helpful for checking the integrity of the IR, it complicates optimization since the flow information valid for an unoptimized representation is not, in general, valid for the result of applying an optimization. This thesis investigates which optimizations can be applied without invalidating the flow information. It also shows how to update the flow information for an optimization that does invalidate the flow.