Augustana University College

COMPUTING SCIENCE 370 -- Programming Languages


Programming Language Paradigms



Scientific Paradigms

paradigm
"universally recognized scientific achievements that for a time provide model problems and solutions to a community of practitioners" [Thomas Kuhn, 1962]
Components of a Paradigm

A discipline organized around a paradigm has several components [Kuhn, 1970]:

In support of the second and third points, see Kent Pitman's article More Than Just Words: Lambda, the Ultimate Political Party in which he argues that " Lisp is better defined as its community than as its various specifications."

Programming Language Paradigms

paradigms
"patterns of thought for problem solving" [Peter Wegner, 1988]
Imperative Paradigms
  1. Block-structured, procedural languages
  2. Object-oriented languages
Declarative Paradigms

"Higher-level" programming

  1. Applicative (functional) programming
  2. Logic programming
Distributed Paradigms

Distributed programming may constitute a separate paradigm.

Exemplars:

Copyright © 2000 Jonathan Mohr