Nesl: A language for teaching parallel algorithms
Guy Blelloch and Jonathan Hardwick, Carnegie-Mellon University
Nesl is a high-level parallel language designed for the teaching and
rapid development of parallel algorithms. The language has several
features that make it particularly well-suited for describing parallel
algorithms, including the ability to use nested data-parallelism to
tackle irregular problems, and a formal method of deriving the
complexity of a program in terms of work and steps. Nesl has been used
to teach graduate and undergraduate-level courses in parallel algorithms
for the past three years, and we have developed a library of standard
PRAM algorithms using the language, including algorithms for sorting,
graphs, trees, and computations geometry. In this talk I will give an
overview of Nesl, its features, and implementation, and will demonstrate
some interactive algorithm animations developed in the language.