Static Interpretation of Higher-order Modules in Futhark:Functional GPU Programming in the Large
In: $2, 2018, S. 97
academicJournal
Zugriff:
We present a higher-order module system for the purely functional data-parallel array language Futhark. The module language has the property that it is completely eliminated at compile time, yet it serves as a powerful tool for organizing libraries and complete programs. The presentation includes a static and a dynamic semantics for the language in terms of, respectively, a static type system and a provably terminating elaboration of terms into terms of an underlying target language. The development is formalised in Coq using a novel encoding of semantic objects based on products, sets, and finite maps. The module language features a unified treatment of module type abstraction and core language polymorphism and is rich enough for expressing practical forms of module composition.
Titel: |
Static Interpretation of Higher-order Modules in Futhark:Functional GPU Programming in the Large
|
---|---|
Autor/in / Beteiligte Person: | Elsman, Martin ; Henriksen, Troels ; Annenkov, Danil ; Oancea, Cosmin E. |
Link: | |
Zeitschrift: | $2, 2018, S. 97 |
Veröffentlichung: | Association for Computing Machinery, 2018 |
Medientyp: | academicJournal |
DOI: | 10.1145/3236792 |
Schlagwort: |
|
Sonstiges: |
|