Corpus ID: 195767132

The Semantics of Rank Polymorphism

  title={The Semantics of Rank Polymorphism},
  author={Justin Slepak and Olin Shivers and P. Manolios},
  • Justin Slepak, Olin Shivers, P. Manolios
  • Published 2019
  • Computer Science
  • ArXiv
  • Iverson's APL and its descendants (such as J, K and FISh) are examples of the family of "rank-polymorphic" programming languages. The principal control mechanism of such languages is the general lifting of functions that operate on arrays of rank (or dimension) $r$ to operate on arrays of any higher rank $r' > r$. We present a core, functional language, Remora, that captures this mechanism, and develop both a formal, dynamic semantics for the language, and an accompanying static, rank… CONTINUE READING
    1 Citations
    Introduction to Rank-polymorphic Programming in Remora (Draft)
    • PDF


    APLicative programming with Naperian functors (extended abstract)
    • J. Gibbons
    • Computer Science, Mathematics
    • TyDe@ICFP
    • 2016
    • 2
    Compiling a Subset of APL Into a Typed Intermediate Language
    • 17
    • PDF
    Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs
    • 2,307
    • PDF
    Dependently typed array programs don't go wrong
    • 25
    • PDF
    A Type System for Implicit Scaling
    • S. Thatte
    • Computer Science
    • Sci. Comput. Program.
    • 1991
    • 8
    Dependent types in practical programming
    • 605
    • PDF
    A T2 graph-reduction approach to fusion
    • 19
    • PDF
    NESL: A Nested Data-Parallel Language
    • 305
    ZPL: An Array Sublanguage
    • 74