2009/07/15 by Serguei A. Mokhov, Mokhov, Serguei A. · 1 citation
Computer Science · #Advanced Software Engineering Methodologies #D.3.2 #D.3.3 #D.3.4 #Distributed and Parallel Computing Systems #FOS: Computer and information sciences #Programming Languages (cs.PL) #Real-Time Systems Scheduling #Software Engineering (cs.SE)
paper · pdf · doi:10.48550/arxiv.0907.2640
openalex publication_date 2009/07/15 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
Pure Lucid programs are concurrent with very fine granularity. Sequential Threads (STs) are functions introduced to enlarge the grain size; they are passed from server to workers by Communication Procedures (CPs) in the General Intensional Programming System (GIPSY). A JLucid program combines Java code for the STs with Lucid code for parallel control. Thus first, in this thesis, we describe the way in which the new JLucid compiler generates STs and CPs. JLucid also introduces array support. Further exploration goes through the additional transformations that the Lucid family of languages has undergone to enable the use of Java objects and their members, in the Generic Intensional Programming Language (GIPL), and Indexical Lucid: 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 other than Java, for example in C, C++, Fortran, Perl, etc. Therefore, it is wise to provide a framework to facilitate inclusion of these languages into the GIPSY and their use by Lucid programs. A General Imperative Compiler Framework and its concrete implementation is proposed to address this issue.