We propose a language for conceptual programming: ACL. ACL offers conceptual primitives for high-level loop abstractions. These primitives conceptualize the fundamental activities performed in loops, like, for example, the traversal of collections, the accumulation of values, or the distribution of actions.
In ACL, stereotypical ways of problem solving are expressed through concise and meaningful definitions. In order to be general enough, the ACL primitives are variably parametrizable: less stereotypical problems are defined by more parametrized primitives. For complex computations, ACL provide constructs to merge conceptual primitives: the resulting programs keep an explicite trace of the combination. Adjoining or suppressing any primitives remains straighforward.
In this paper, based on four non-trivial programs, we present the characteristics of conceptual programming in ACL, the conceptual primitives with their alterations and the modes for merging them.
Pour obtenir ce papier, envoyer un mail à email@example.com .