AbstractsComputer Science

TransLucid: From theory to implementation

by Jarryd Beck




Institution: University of New South Wales
Department: Computer Science & Engineering
Year: 2015
Keywords: Static Analysis; TransLucid; Cartesian Programming; Parallel Computation
Record ID: 1032897
Full text PDF: http://handle.unsw.edu.au/1959.4/54286


Abstract

This thesis presents the programming language TransLucid, from its denotational semantics to its concrete implementation. In TransLucid, a variable denotes an intension, which is an array of arbitrary rank and infinite extent, indexed by a multidimensional context. TransLucid is descended from Lucid, whose development since 1974 left several open problems, all of which are solved in this thesis. These open problems are: 1) the semantics and implementation of higher-order functions over intensions; 2) the semantics and implementation of dimensions as first-class values, atomic values as dimensions, and contexts as first-class values; and 3) the implementation of a cache-based evaluator. In addition, this thesis presents a type inference algorithm for TransLucid, and the concrete TransLucid system, which is a synchronous reactive programming environment.