2009 33rd Annual IEEE International Computer Software and Applications Conference (2009)
Seattle, Washington, USA
July 20, 2009 to July 24, 2009
The TransLucid programming language is a low-level intensional language, designed to be sufficiently rich for it to be the target language for translating the common programming paradigms into it, while still being fully declarative. The objects manipulated by TransLucid, called hyperdatons, are arbitrary-dimensional infinite arrays, indexed by multidimensional tuples of arbitrary types.We present the syntax, denotational and operational semantics for a simple TransLucid system, consisting of 1) a header detailing how expressions should be parsed, 2) a set of libraries of types, and operations thereon, defined in a host language, 3) a set of TransLucid equations, and 4) a TransLucid demand to be evaluated.The evaluation of a demand for an (identifier,context) pair is undertaken using eduction, where previously computed pairs are stored in a cache called a warehouse. The execution ensures that only those dimensions actually encountered during the execution of an expression are taken into account when caching intermediate results.
Cartesian programming, Lucid language, declarative programming, multidimensional programming, context-aware programming, semantics
B. Mancilla and J. Plaice, "Cartesian Programming: The TransLucid Programming Language," 2009 33rd Annual IEEE International Computer Software and Applications Conference(COMPSAC), Seattle, Washington, USA, 2009, pp. 231-236.