Programming Paradigms
by Devin Allen
1. Data Driven
2. Dynamic/Scripting
3. Literate
4. Array-Oriented
5. Value Level
6. Non-Deterministic
7. Concurrent Computing
7.1. Relativistic Programming
8. Generic
9. Functional Level
9.1. Point-Free Style
9.1.1. Concatenative
10. Language Oriented
10.1. Natural-Language Programming
10.2. Discipline Specific
10.3. Domain Specific
10.4. Grammar Oriented
10.5. Intentional
11. Structured
11.1. Block Structured
11.2. Object-Oriented
11.2.1. Actor based
11.2.2. Class based
11.2.3. Concurrent
11.2.4. Prototype Based
11.2.5. Separation of Concerns
11.2.5.1. Aspect Oriented
11.2.5.2. Role Oriented
11.2.5.3. Subject Oriented
11.3. Recursive
12. Event Driven
13. Agent-Oriented
14. Automata Based
15. Action
16. Stack Based
17. Probabilistic
18. Symbolic
19. Non-Structured
19.1. Array-Oriented
20. Parallel Computing
20.1. Process-Oriented
21. Quantum Programming
22. Imperative
22.1. Procedural
22.2. Object-Oriented
23. Declarative
23.1. Functional
23.1.1. Functional Logic
23.1.2. Pure Functional
23.2. Logic
23.2.1. Abductive Logic
23.2.2. Answer Set
23.2.3. Concurrent Logic
23.2.4. Functional Logic
23.2.5. Inductive Logic
23.3. Constraint
23.3.1. Constraint Logic
23.3.1.1. Concurrent Constraint Logic
23.4. Data Flow
23.4.1. Flow Based
23.4.2. Reactive
24. Metaprogramming
24.1. Automatic
24.1.1. Inductive Programming
24.2. Reflective
24.2.1. Attribute Oriented