Current browse context:
cs.SE
Change to browse by:
References & Citations
Computer Science > Software Engineering
Title: From Procedures, Objects, Actors, Components, Services, to Agents -- A Comparative Analysis of the History and Evolution of Programming Abstractions
(Submitted on 8 Dec 2021 (v1), last revised 18 Jan 2024 (this version, v4))
Abstract: The objective of this chapter is to propose some retrospective analysis of the evolution of programming abstractions, from {\em procedures}, {\em objects}, {\em actors}, {\em components}, {\em services}, up to {\em agents}, %have some compare concepts of software component and of agent (and multi-agent system), %The method chosen is to by replacing them within a general historical perspective. Some common referential with three axes/dimensions is chosen: {\em action selection} at the level of one entity, {\em coupling flexibility} between entities, and {\em abstraction level}. We indeed may observe some continuous quest for higher flexibility (through notions such as {\em late binding}, or {\em reification} of {\em connections}) and higher level of {\em abstraction}. Concepts of components, services and agents have some common objectives (notably, {\em software modularity and reconfigurability}), with multi-agent systems raising further concepts of {\em autonomy} and {\em coordination}. notably through the notion of {\em auto-organization} and the use of {\em 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.
Submission history
From: Jean-Pierre Briot [view email][v1] Wed, 8 Dec 2021 17:29:14 GMT (183kb,D)
[v2] Sun, 26 Dec 2021 19:33:15 GMT (183kb,D)
[v3] Fri, 7 Jan 2022 22:00:20 GMT (183kb,D)
[v4] Thu, 18 Jan 2024 16:53:35 GMT (257kb,D)
Link back to: arXiv, form interface, contact.