From Procedures, Objects, Actors, Components, Services, to Agents – A Comparative Analysis of the History and Evolution of Programming Abstractions [article]

Jean-Pierre Briot
2022 arXiv   pre-print
The objective of this chapter is to propose some retrospective analysis of the evolution of programming abstractions, from procedures, objects, actors, components, services, up to agents, system), perspective. Some common referential with three axes/dimensions is chosen: action selection at the level of one entity, coupling flexibility between entities, and abstraction level. We indeed may observe some continuous quest for higher flexibility (through notions such as late binding, or reification
more » ... of connections) and higher level of abstraction. Concepts of components, services and agents have some common objectives (notably, software modularity and reconfigurability), with multi-agent systems raising further concepts of autonomy and coordination. notably through the notion of auto-organization and the use of knowledge. We hope that this analysis helps at highlighting some of the basic forces motivating the progress of programming abstractions and therefore that it may provide some seeds for the reflection about future programming abstractions.
arXiv:2112.12508v3 fatcat:jd47bxu46vhdbpdtzdunlyrxk4