@inbook{05f6ca0eb39b4a98a4c28ca62477c7dc,
title = "Algorithmics",
abstract = "Algorithmics is the study and practice of taking a high-level description of a program{\textquoteright}s purpose and, from it, producing an executable program of acceptable efficiency. Each step in that process is justified by rigorous, careful reasoning at the moment it is taken; and the repertoire of steps allowed by that rigour, at each stage, guides the development of the algorithm itself. IFIP{\textquoteright}s Working Group 2.1 [i] has always been concerned with Algorithmics: both the design of its notations and the laws that enable its calculations. ALGOL 60 had already shown that orthogonality, simplicity and rigour in a programming language improves the quality of its programs. Our Group{\textquoteright}s title “Algorithmic Languages and Calculi” describes our activities: the discovery of precise but more general rules of calculational reasoning for the many new styles of programming that have developed over the 60 years since IFIP{\textquoteright}s founding. As our contribution to the birthday celebrations, we outline how we have tried to contribute during those decades to the rigorous and reliable design of computer programs of all kinds—to Algorithmics. (Roman-numbered references like [i] in this abstract refer to details given in Sect. 10.)",
keywords = "Algorithmic programming, Calculi, Working groups",
author = "Richard Bird and Jeremy Gibbons and Ralf Hinze and Peter H{\"o}fner and Johan Jeuring and Lambert Meertens and Bernhard M{\"o}ller and Carroll Morgan and Tom Schrijvers and Wouter Swierstra and Nicolas Wu",
note = "Publisher Copyright: {\textcopyright} 2021, IFIP International Federation for Information Processing.",
year = "2021",
doi = "10.1007/978-3-030-81701-5_3",
language = "English",
series = "IFIP Advances in Information and Communication Technology",
publisher = "Springer Science and Business Media Deutschland GmbH",
pages = "59--98",
booktitle = "IFIP Advances in Information and Communication Technology",
address = "Germany",
}