Adrian Colyer published this review on a chapter by Peter Van Roy mapping out the space of programming language designs. This chapter gives an introduction to all the main programming paradigms, their underlying concepts, and the relationships between them… We give a taxonomy of about 30 useful programming paradigms and how they are related. Link to 49 pages long resource included.
Programming paradigms are approaches based on a mathematical theory or particular set of principles, each paradigm supporting a set of concepts.
A language should ideally support many concepts in a well-factored way, so that the programmer can choose the right concepts whenever they are needed without being encumbered by the others.
Van Roy is a believer in multi-paradigm languages: solving a programming problem requires choosing the right concepts, and many problems require different sets of concepts for different parts.
Plenty of charts and diagrams helping to explore various paradigms. Really good read!
[Read More]