Login
Computer Science @ Rochester
Friday, May 11, 2012
9:00 AM
Computer Science Bldg. Room 703
Ph.D. Thesis Proposal
Li Lu
University of Rochester
Designing for the Simple Case in a Parallel Scripting Language
The fast development of parallel computer systems poses a challenge to programming language design and implementation. On one side, simplicity is desirable, while on the other side, it is challenging to design a language that can help programmers fully utilize complex parallel systems. Dynamic languages are becoming popular because of their simplicity, but parallel programming is not prioritized in their designs and implementations.

In this proposal, we propose the design and implementation of a parallel dynamic language. This language is supposed to be deterministic by default, but allows certain kind of structured non-determinism. The proposed language is extended from existing Ruby language, with some built-in constructs that allows programmers express parallelism implicitly. Its implementation provides two execution modes, release mode for scalable performance on parallel systems, and debug mode for comprehensive debugging uses. Most techniques proposed in our research, however, may also be applicable to other parallel programming languages.

We introduce related background research, as well as our preliminary work on related topics, including deterministic parallel programming and parallel programming models/idioms. We discuss technical issues for proposed research directions, and provide timeline for this work.