Here are my notes from University of Illinois Web Con 2014. These are from the talk “Learn Every Programming Language” by Patrick Delancy

4 programming paradigms

  1. Procedural
  2. Logical
  3. Functional
  4. Object Oriented

Procedural

  • Loops
  • Procedures/Functions/Subroutines
  • Global/Static Variables
  • GoTo
  • Lexical Scoping

Object Oriented

  • Class/Entity</li>
  • Abstraction (interfaces)</li>
  • Encapsulation</li>
  • Inheritance</li>
  • Polymorphism</li>

Functional

  • Focuses on the process and not the entity models
  • Functions as values
  • Pattern Matching
  • Composition
  • Partial Application
  • Monad/Computation Expression
  • Closures (JavaScript and C#)
  • Deconstruction/Decomposition
  • Currying (JavaScript)
  • Recursion/Tail Recursion
  • Option/Maybe
  • cons/car/cdr

Logical

  • Facts
  • Relationships
  • Very declarative