Multi-Paradigm Programming and Beyond
summary
Argues that C++ is a mixed-paradigm language, not a single-style tool, and demonstrates concrete techniques: using STL algorithms like accumulate/transform and lambdas for in-place data transforms, writing templates and templates/meta-programming to get compile-time checks, and using polymorphism to implement a polymorphic state machine for plugin-style behavior. Shows embedded patterns (superloop and PWM demo), a working FPGA SATA data path that moves megabytes reliably, and GUI message-pump examples (Windows/MFC, Qt signals) to prove each paradigm is practical, interoperable, and battle-tested.
AI-written summary · about
chapters (24)
- 0:00Introduction to paradigms
- 1:48C++ as multi-paradigm language
- 6:42Imperative vs procedural programming
- 9:40Functional programming in C++
- 11:51Declarative programming approach
- 14:04Object-oriented programming basics
- 18:46Generic programming with templates
- 21:35Template meta-programming
- 24:25Paradigms beyond the basics
- 27:02Process input output paradigm
- 27:42Embedded loop programming
- 29:06State machine paradigms
- 31:52Polymorphic state machines
- 34:02Event driven Windows programming
- 36:32MFC and MVC paradigms
- 38:18Model view controller overview
- 40:04Data modeling paradigms
- 44:00AI and data model paradigms
- 45:28Concurrent programming models
- 46:10Constraints and logic programming
- 47:18FPGA and hardware logic
- 47:59Pipeline programming style
- 49:01Paradigms across languages
- 51:35C++ as mixed paradigm language
related talks
01h 08mC++ Metaprogramming: A Paradigm Shift
58mOO Considered Harmful
46mPhilosophical sources of progr. paradigms in a nutshell
41mChoosing Your Next Programming Language
46mPractical Functional Programming in C++
49m“Applying functional programming in code design"
01h 06m“C++ Metaprogramming: Journey from simple to insanity and back"
01h 11mC++ in the World of Embedded Systems
