Introduction to Rank-polymorphic Programming in Remora (Draft)
Olin Shivers, Justin Slepak, Panagiotis Manolios

TL;DR
This paper introduces Remora, a rank-polymorphic array-processing language for parallel hardware, covering its computational model and two variants with dynamic and static type systems, emphasizing its general applicability.
Contribution
It provides an example-driven introduction to Remora and its computational model, highlighting its rank-polymorphic capabilities and type system variants.
Findings
Remora supports higher-order, rank-polymorphic array processing.
Two variants of Remora are introduced: dynamic and static type systems.
The paper discusses the computational model underlying Remora.
Abstract
Remora is a higher-order, rank-polymorphic array-processing programming language, in the same general class of languages as APL and J. It is intended for writing programs to be executed on parallel hardware. We provide an example-driven introduction to the language, and its general computational model, originally developed by Iverson for APL. We begin with Dynamic Remora, a variant of the language with a dynamic type system (as in Scheme or Lisp), to introduce the fundamental computational mechanisms of the language, then shift to Explicitly Typed Remora, a variant of the language with a static, dependent type system that permits the shape of the arrays being computed to be captured at compile time. This article can be considered an introduction to the general topic of the rank-polymorphic array-processing computational model, above and beyond the specific details of the Remora…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Logic, programming, and type systems · Parallel Computing and Optimization Techniques
