This book explains and illustrates key concepts of programming by taking a breadth approach to programming languages. It uses C]+ as the primary language throughout, demonstrating imperative, functional and object-oriented language concepts.[...]
The increasing complexity of systems and the growing uncertainty in their operational environments have created a critical need to develop systems able to improve their operation, adapt to change, and recover from failures autonomously. This situation has led to recent advances in self-adaptive syst[...]