Separating Concerns in Programming: Data, Control and Actions

keywords: Programming languages, process functional programming, AspectJ, aspect-oriented programming, PFL, computational reflection, programming environments
A multiparadigm language provides an opportunity to a user for exploiting more programming methodologies. It simplifies the language syntax, and extends the application areas by the extended semantics. That is why multiparadigm languages can align a problem in wider application areas and more flexibly than that based on a single paradigm. In this paper, we present the idea of separating three essential concerns of programming currently being implemented in PFL -- a process functional language. We separate data, control, and actions by the definition of a purely control structure. Then, by the structured application of a structure of actions to a purely control structure, we will express the computation of activated actions in a structured way, considering explicitly defined synchronization in computation.
reference: Vol. 24, 2005, No. 5, pp. 441–462