Programming Paradigms, Turing Completeness and Computational Thinking

Research output: Contribution to journalArticlepeer-review

4 Citations (Scopus)
132 Downloads (Pure)


The notion of programming paradigms, with associated programming languages and methodologies, is a well established tenet of Computer Science pedagogy, enshrined in international curricula. However, this notion sits ill with Kuhn’s classic conceptualisation of a scientific paradigm as a dominant world view, composed of a theory and complementary practice, which supersedes its predecessors through superior explanatory power.
Furthermore, it is not at all clear how programming paradigms are to be characterised and differentiated. Indeed, on closer inspection, apparently disparate programming paradigms are very strongly connected. Rather, they should be viewed as different traditions of a unitary Computer Science paradigm composed of programming languages which are all Turing Complete, complemented by methodologies which may all be subsumed by Computational Thinking.
Original languageEnglish
Article number4
JournalThe Art, Science, and Engineering of Programming
Issue number3
Publication statusPublished - 17 Feb 2020


  • programming, programming language, paradigm, computational thinking, Turing Complete


Dive into the research topics of 'Programming Paradigms, Turing Completeness and Computational Thinking'. Together they form a unique fingerprint.

Cite this