Bachurski, Jakub, Mycroft, Alan, Orchard, Dominic A. (2025) Structuring Arrays with Algebraic Shapes. In: Scholz, Sven-Bodo and Sinkarovs, Artjoms, eds. ARRAY '25: Proceedings of the 11th ACM SIGPLAN International Workshop on Libraries, Languages and Compilers for Array Programming. ACM ISBN 979-8-4007-1927-1. (doi:10.1145/3736112.3736141) (KAR id:113873)
|
PDF
Publisher pdf
Language: English
This work is licensed under a Creative Commons Attribution 4.0 International License.
|
|
|
Download this file (PDF/801kB) |
Preview |
| Request a format suitable for use with assistive technology e.g. a screenreader | |
| Official URL: https://dl.acm.org/doi/10.1145/3736112.3736141 |
|
Abstract
Static type systems help prevent errors, improve abstractions, and enable optimisations. There is a whole spectrum of type systems for general-purpose languages, covering a wide range of safety guarantees and expressivity. Despite this, type systems for array programming languages are usually at one of two extremes. In the majority of cases they are nearly untyped, only distinguishing array types by element type or number of dimensions. Otherwise, they tend to reach for powerful dependent types. However, it is difficult to extend existing solutions with a dependent type system, and some problems become undecidable when we do so. Practical array programming – in data science, machine learning and the like – sticks to the bliss of dynamic typing. We propose a novel calculus for array programming: Star. Array indices and shapes in Star make use of structural record and variant types equipped with subtyping. We prevent indexing errors not by resolving arithmetic problems, but by enabling richer types for arrays, allowing programmers to capture their structure explicitly. While we present Star with only subtype polymorphism, we sketch how algebraic subtyping promises efficient ML-style polymorphic type inference.
| Item Type: | Conference proceeding |
|---|---|
| DOI/Identification number: | 10.1145/3736112.3736141 |
| Subjects: | Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.76 Computer software |
| Institutional Unit: | Schools > School of Computing |
| Former Institutional Unit: |
There are no former institutional units.
|
| Funders: | University of Kent (https://ror.org/00xkeyj56) |
| Depositing User: | Dominic Orchard |
| Date Deposited: | 14 Apr 2026 16:39 UTC |
| Last Modified: | 15 Apr 2026 14:57 UTC |
| Resource URI: | https://kar.kent.ac.uk/id/eprint/113873 (The current URI for this page, for reference purposes) |
- Link to SensusAccess
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):

https://orcid.org/0000-0002-7058-7842
Altmetric
Altmetric