Hybrid Intensional Computing in Gipsy : Jlucid, Objective Lucid and Gicf

Bok av Serguei Mokhov
Pure Lucid programs are concurrent with very fine granularity. Sequential threads (ST) are procedures introduced to enlarge the grain size; they are passed from a server to workers by communication procedures (CP) in the General Intensional Programming System (GIPSY). A JLucid program combines Java code for the STs with Lucid code for parallel control and also introduces array support. Furthermore, we go through some additional transformations to the Lucid family of languages to enable the use of Java objects and their members: first, in the form of JLucid allowing the use of pseudo-objects, and then through the specifically-designed the Objective Lucid language. The syntax and semantic definitions of Objective Lucid and the meaning of Java objects within an intensional program are provided with discussions and examples. Finally, there are many useful scientific and utility routines written in many imperative programming languages. Therefore, we provide a framework to facilitate inclusion of these languages into GIPSY and their use by Lucid programs. A General Imperative Compiler Framework (GICF) and its concrete implementation is proposed to address this issue.