Parallel Prefix Polymorphism Permits Parallelization, Presentation & Proof
arXiv:1410.6449
Abstract
Polymorphism in programming languages enables code reuse. Here, we show that polymorphism has broad applicability far beyond computations for technical computing: parallelism in distributed computing, presentation of visualizations of runtime data flow, and proofs for formal verification of correctness. The ability to reuse a single codebase for all these purposes provides new ways to understand and verify parallel programs.
10 pages, 3 figures. Proceedings of HPTCDL, the 1st Workshop on High Performance Technical Computing in Dynamic Languages, November 17, 2014, New Orleans, Louisiana, USA. Supporting Information available at http://jiahao.github.io/parallel-prefix