An Introduction to ParaSail: Parallel Specification and Implementation Language

March 31, 2011
2:50 pm - 4:00 pm
Halligan 111


ParaSail is a new programming language being designed to make parallel programming very safe while being no harder than sequential programming. Although ParaSail is a completely new language, it inherits ideas from many other languages, including the Pascal/Modula/Ada/Eiffel family, the ML/OCAML/F# family, the Java/C#/C++ family, Lisp-ish languages like Dylan/CLOS/Scheme/Clojure, etc. ParaSail is designed around four unified constructs -- modules, types, objects, and operations -- and the liberal use of annotations representing preconditions, postconditions, assertions, type constraints, etc. ParaSail leaves out some things, including exceptions and pointers, while performing all checking at compile- time, meaning that problems such as array out of bounds, null pointer dereference, accessing uninitialized memory, race conditions, numeric overflow, etc., do not occur at run-time, but are instead all detected at compile-time. ParaSail adopts a "value semantics" analogous to that of pure functional programming, without requiring the circumlocutions of monads, etc., to deal with basic things like I/O, mutable state, etc. Programs in ParaSail are inherently and pervasively parallel, with computations being performed in parallel by default, with the programmer having to work harder to force sequential execution where required.


S. Tucker Taft is Chairman and Founder of SofCheck, Inc., a company devoted to providing tools and technologies for helping to improve software quality and increase programmer productivity. From 1990 to 1995, Mr. Taft served as the lead designer of the Ada 95 programming language. In 2001, he led the architecture and development effort of the J2EE/XML-based portal for the Commonwealth of Massachusetts. In 2002, Mr. Taft founded SofCheck. From 2001 to the present, Mr. Taft has been a member of the ISO Rapporteur Group that developed Ada 2005, and is currently finalizing Ada 2012.

Mr. Taft has published a number of papers and given numerous presentations on programming language design and software development environments. His publications include "Ada 9X, A Technical Summary," Communications of the ACM, Nov. 1992, Vol 35, Issue 11. "High Quality Programming Languages," 12th Annual Software Technology Conference, Salt Lake City, Utah, April/May 2000.

Mr. Taft received an A.B. Summa Cum Laude degree from Harvard University, where he has since taught compiler construction and programming language design.