Results 1 
2 of
2
Data Categories
 Computing: The Australasian Theory Symposium Proceedings
, 1996
"... Data categories and functors, and the strong natural transformations between them provide a universe in which to model parametric polymorphism. Data functors are distinguished by being decomposable into shape and data, i.e. they represent types that store data. Every strong transformation between tw ..."
Abstract

Cited by 7 (5 self)
 Add to MetaCart
Data categories and functors, and the strong natural transformations between them provide a universe in which to model parametric polymorphism. Data functors are distinguished by being decomposable into shape and data, i.e. they represent types that store data. Every strong transformation between two such is given by a uniform algorithm, and so may represent a polymorphic term. The data functors are closed under composition, finite products and sums, exponentiation by an object, final coalgebras and initial algebras. For any two such, the collection of strong natural transformations between them is representable by an object. The covariant type system supports parametric polymorphism on data types, and can be modelled in a data category. Since the category of sets is a data category, it follows that parametric polymorphism can have a settheoretic model. Keywords data categories covariance parametric polymorphism. 1 Introduction This paper introduces data functors, the data categor...
Shape Analysis for Parallel Computing
 In Parallel Computing Workshop '95 at Fujitsu Parallel Computing
, 1995
"... Shapes are also known as (data) structures, containers, or indexing systems. They are used extensively in parallel computing to determine communication strategies, loadbalancing, evaluation strategies, etc. Although widely used, most applications of shape are ad hoc, and may occur either during ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
Shapes are also known as (data) structures, containers, or indexing systems. They are used extensively in parallel computing to determine communication strategies, loadbalancing, evaluation strategies, etc. Although widely used, most applications of shape are ad hoc, and may occur either during compilation, optimisation or at runtime. A primary goal of shape theory is to organise these techniques under a single umbrella, supported by a simple semantics. This paper focuses on potential applications in parallel computing. Then I will present a schematic view of how we intend to exploit shape in a dataparallel language. 1 Introduction When programming in parallel, it is often useful to compute the shapes, structures, containers, in which the data will be stored and distributed, before acting on the data itself. Shape theory provides formal support for this approach. The theory of shape did not arise in response to the needs of parallel programming, but from a fundamental st...