Shape-Constrained Array Programming with Size-Dependent Types

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

We present a dependent type system for enforcing array-size consistency in an ML-style functional array language. Our goal is to enforce shape-consistency at compile time and allow nontrivial transformations on array shapes, without the complexity such features tend to introduce in dependently typed languages. Sizes can be arbitrary expressions and size equality is purely syntactical, which fits naturally within a scheme that interprets size-polymorphic functions as having implicit arguments. When non-syntactical equalities are needed, we provide dynamic checking. In contrast to other dependently typed languages, we automate the book-keeping involved in tracking existential sizes, such as when filtering arrays. We formalise a large subset of the presented type system and prove it sound. We also discuss how to adapt the type system for a real implementation, including type inference, within the Futhark programming language.

OriginalsprogEngelsk
TitelFHPNC 2023 - Proceedings of the 11th ACM SIGPLAN International Workshop on Functional High-Performance and Numerical Computing, Co-located with ICFP 2023
RedaktørerGabriele Keller, Sam Westrick
ForlagAssociation for Computing Machinery, Inc.
Publikationsdato2023
Sider29-41
ISBN (Elektronisk)9798400702969
DOI
StatusUdgivet - 2023
Begivenhed11th ACM SIGPLAN International Workshop on Functional High-Performance and Numerical Computing, FHPNC 2023, co-located with ICFP - Seattle, USA
Varighed: 4 sep. 2023 → …

Konference

Konference11th ACM SIGPLAN International Workshop on Functional High-Performance and Numerical Computing, FHPNC 2023, co-located with ICFP
LandUSA
BySeattle
Periode04/09/2023 → …
SponsorACM SIGPLAN

Bibliografisk note

Publisher Copyright:
© 2023 ACM.

ID: 375210823