Zur Hauptnavigation wechseln Zur Suche wechseln Zum Hauptinhalt wechseln

Abstract

Besides element type and values, a multidimensional array is characterized by the number of axes (rank) and their respective lengths (shape vector). Both properties are essential for bounds checking and to compute linear offsets into heap memory at run time. In order to have an array's rank and shape available at any time during program execution, both are typically kept in an array descriptor that is maintained at run time in addition to the array itself. In this paper, we propose a different approach: we treat array rank and shape as first-class citizens themselves. Firstly, we use dependent types to reflect structural properties of arrays in the type system. Secondly, we annotate a program with the explicit array properties wherever necessary. This choice not only renders implicit run time array descriptors obsolete, but exposing all rank and shape computations explicitly in intermediate code also allows us to perform extensive compile time optimisation on them. We have implemented the proposed approach in our experimental array language Qube; preliminary experimental results indicate the suitability of the proposed approach.

OriginalspracheEnglisch
TitelImplementation and Application of Functional Languages
Redakteure/-innenSven-Bodo Scholz, Olaf Chitil
Seitenumfang18
Band5836 LNCS
ErscheinungsortBerlin
Herausgeber (Verlag)Springer Verlag
Erscheinungsdatum17.10.2011
Seiten100-117
ISBN (Print)978-3-642-24451-3
ISBN (elektronisch)978-3-642-24452-0
DOIs
PublikationsstatusVeröffentlicht - 17.10.2011
Veranstaltung20th International Symposium on Implementation and Application of Functional Languages - Hatfield, Großbritannien / Vereinigtes Königreich
Dauer: 10.09.200812.09.2008
Konferenznummer: 86892

UN SDGs

Dieser Output leistet einen Beitrag zu folgendem(n) Ziel(en) für nachhaltige Entwicklung

  1. SDG 3 – Gesundheit und Wohlergehen
    SDG 3 – Gesundheit und Wohlergehen
  2. SDG 9 – Industrie, Innovation und Infrastruktur
    SDG 9 – Industrie, Innovation und Infrastruktur

Fingerprint

Untersuchen Sie die Forschungsthemen von „Descriptor-free Representation of Arrays with Dependent Types.“. Zusammen bilden sie einen einzigartigen Fingerprint.

Zitieren