ParaSail: A Pointer-Free Path to Object-Oriented Parallel Programming

Pointers are ubiquitous in modern object-oriented programming languages, and many data structures such as trees, lists, graphs, hash tables, etc. depend on them heavily. Unfortunately, pointers can add significant complexity to programming. Pointers can make storage management more complex, pointers can make assignment and equality semantics more complex, pointers can increase the ways two different names (access paths) can designate the same object, pointers can make program analysis and proof more complex, and pointers can make it harder to “divide and conquer” a data structure for parallel processing.

Is there an alternative to using pointers? ParaSail, a new parallel object-oriented programming language, adopts a different paradigm for defining data structures. Rather than using pointers, ParaSail supports flexible data structuring using “expandable” (and shrinkable) objects, along with generalized indexing. By eliminating pointers, ParaSail significantly reduces the complexity for the programmer, while also allowing ParaSail to provide pervasive, safe, object-oriented parallel programming.

Speaker Details

S. Tucker Taft is Director of Language Research at AdaCore, a company focused on providing open-source tools for the design, development, testing, and certification of high-integrity software. Tucker joined AdaCore as part of a recent merger with his prior company, SofCheck, which he founded in 2002. SofCheck developed advanced static analysis technology based on generalizations of optimizing compiler technology; AdaCore licensed the technology in 2008 and incorporated it in the CodePeer static analysis product line. Tucker was the lead designer of Ada 95, the first internationally-standardized object-oriented programming language, and was deeply involved in the 2005 and 2012 revisions of the Ada standard. From 1980 to 2002, Tucker was a principal engineer and chief scientist at Intermetrics, a leading compiler technology company located in Massachusetts. Tucker has been developing the ParaSail language since September 2009, and has documented its design through a public blog at http://parasail-programming-language.blogspot.com

Date:
Speakers:
Tucker Taft
Affiliation:
AdaCore

Series: Microsoft Research Talks