What if I told you that a concept we use every day in computing might not mean what we think it does? The idea of ‘programming paradigms’ is something most programmers have encountered, often linked back to the philosophy of Thomas Kuhn. But recent research suggests there might be a major disconnect between what Kuhn originally meant and how this concept is used in the world of computing today.
In this intriguing paper, researchers have delved into the philosophical roots of the term ‘paradigm,’ as popularized by Thomas Kuhn in the context of scientific revolutions. They found that when Robert Floyd brought this term into the programming world during his famous Turing Award lecture, it morphed into something quite different. Floyd’s adoption of the term ‘programming paradigms’ shifted away from Kuhn’s original idea, which could lead to misunderstandings about how innovation and scientific concepts are applied in programming.
Imagine a world where the very language we use in computing could be more aligned with its philosophical roots. This research suggests that by re-evaluating our understanding of ‘programming paradigms,’ we can better communicate and foster innovation across fields. By making these connections clearer, future programmers could be more adept at bridging the gap between different scientific and technical disciplines, ultimately leading to more robust and innovative technological advancements.
Did you know? The concept of ‘paradigms’ originally came from a book about how scientific revolutions happen!
FAQs
What is the philosophical origin of the term ‘paradigm’?
Philosopher Thomas Kuhn first introduced the idea of ‘paradigms’ in science to describe major shifts in scientific thought and practice, like moving from Newtonian physics to Einstein’s theories.
How did the concept of ‘paradigms’ enter the field of computing?
Robert Floyd introduced the term ‘programming paradigms’ in his 1978 Turing Award lecture, adapting it to describe broad styles or approaches in programming, like functional or object-oriented paradigms.
Why does this research matter to computer programmers today?
This study highlights that the adapted use of ‘programming paradigms’ might differ from its philosophical roots, impacting how we understand and innovate in programming today.
How could aligning programming paradigms with their philosophical origins benefit technology?
Aligning these concepts more closely can foster better communication and cross-disciplinary innovation, leading to more groundbreaking technological advancements.
What changes might this study provoke in the computing community?
It calls for a critical reassessment of how terminologies are adapted from other fields, potentially leading to more precise communication and understanding within technical disciplines.
Background
The term ‘paradigm’ originates from Thomas Kuhn’s influential book, ‘The Structure of Scientific Revolutions,’ where he described paradigms as frameworks that guide scientific practice. In computing, however, the concept takes the form of ‘programming paradigms,’ introduced by Robert Floyd, which refers to different styles of programming like procedural, object-oriented, or functional. This adaptation involved a shift from abstract philosophical theory to practical computing terminology.
History
Thomas Kuhn’s work revolutionized our understanding of scientific progress by introducing the concept of paradigms, which describe the set of practices that define a scientific discipline at any particular period in time. In 1978, Robert Floyd translated this concept to computing, applying it to describe distinct strategies for programming. Over time, ‘programming paradigms’ became a staple in computer science education. But as it’s used today, it diverges significantly from Kuhn’s original philosophical intent.
Based on “Are Programming Paradigms Paradigms? A Critical Examination of Floyd’s Appropriation of Kuhn’s Philosophy” by Peyman M. Kiasari, available on arXiv (arxiv.org/abs/2505.01901), used under CC BY 4.0 (creativecommons.org/licenses/by/4.0/).





































































