ParadigmClassificationAttempts

Last edit October 12, 2004
But, logical programming is closely related to functional programming, so something is probably wrong here. Or else, a hierarchy is inappropriate. I am also thinking of a triangle diagram with the following corners: Imperative, Functional, and Data-centric.


You might do better to start with a list of pairs, each being a style and a language that exemplifies the style. For example:

  • Functional/strict - ML
  • Functional/non-strict - Haskell
  • Logic - Prolog
  • ObjectOriented - Smalltalk
  • CSP - Occam
  • Dataflow - Lucid
  • Imperative - BCPL

Then try to find similarities and differences. I suspect that a hierarchy is not appropriate, and that no simple structure will suffice. I suspect that each language needs to be ranked on several scales simultaneously. Then one could do PrincipleComponentAnalysis to see what scales are related, thereby finding the paradigms.
See Also: ProgrammingParadigm