Skip to main content

Shape-based programming: sharpening the tools

Funding: 2000: $56,000
2001: $58,000
2002: $60,000

Funding or Partner Organisation: Australian Research Council (ARC Large Grant)

Start year: 2000

Summary: Our existing specialist languages, FML and FISh1, use shape-based tools to improve programming expressivity and execution speed, respectively. These traditionally antagonistic benefits will be combined in the general-purpose language FISh2, setting a new standard in language design. Also, this combination is the key to the adoption of parallel computing by non-specialists. Maintaining efficiency across many architectures requires automatic program optimisation, which must be guided by a model of execution costs. GoldFISh will extend FISh2 with a shape-based cost model to set a new standard in portable, efficient, data parallel programming, and be useable by general scientists and engineers.


Jay, B, Lu, H & Nguyen, Q 2004, 'The Polymorphic Imperative: a Generic Approach to In-place Update', Electronic Notes in Theoretical Computer Science - Proceedings of Computing: The Australasian Theory Symposium (CATS) 2004, vol. 91, pp. 195-211.

Jay, CB 2003, 'The pattern calculus'.

Jay, CB 2001, 'Distinguishing Data Structures and Functions: the Constructor Calculus and Functorial Types', Typed Lambda Calculi and Applications: 5th International Conference TLCA 2001, Kraków, Poland, May 2001 Proceedings, vol. 2044, pp. 217-239.

FOR Codes: Application packages, Programming Languages