- The [USP](https://en.wikipedia.org/wiki/Unique_selling_proposition) for this talk is, unlike majority FP talks in Java space, which are introductory, this has something for all levels of the audience.
- This talk starts with basic FP concepts like _Imperative vs. Declarative_ style using Java **Streams**.
- Then the audience is gradually ramped-up towards intermediate FP concepts such as _Monads_, _First-Class Functions_, _Higher-Order Functions_.
- Towards the end, we touch-upon concepts for an advanced audience like _Function-Lifting_, _Dozen FP Operations for daily Programming like `foldLeft`_ in the context of the problem, with pictures and simple examples. They are also provided with appropriate pointers wherever needed, to go back and refer.
- The audience experiences a mind-shift from the traditional mutation-heavy _Imperative style_ to _Functional style_ -- with Immutable Objects (Using Java 14 preview feature `Records`) and Pure-Functions (replacing Mutation with Transformation).
- With Hands-on demos, this talk adds a robust paradigm tool-set and vocabulary to a programmer's arsenal and how to apply them to simplify the modelling and designing of complex _real-world_ problems.
- The audience learns how to objectively perceive complexity in any codebase through metrics (measured using popular static analysis tools), and how to reduce cognitive complexity methodically.