# Functional Programming made easy in Java & C\#

Workshop created with [Alexandre Grison](https://twitter.com/algrison)

## Objectives

* Demystify together what is Functional Programming (FP)
* Deep dive into FP paradigms like monads, pure functions, high order functions, and much more.
* Understand why and how apply those principles in Object Oriented languages like java (with vavr) & C# (with language-ext).

In this workshop we will demonstrate how to write Functional code that is:

* More robust
* Easier to read
* Easier to maintain

## Support

{% hint style="success" %}
The coding part consists of ***fixing failing tests***. Exercises are explained in the comment of the tests. Our solution in both languages are in the "solution" branches.
{% endhint %}

* For Java : <https://github.com/ythirion/vavr-kata>
* For C# : <https://github.com/ythirion/language-ext-kata>
  * There is a third branch called "solution-async" that demonstrates the us of language-ext in an async

{% embed url="<https://speakerdeck.com/thirion/functional-programming-made-easy-in-java-and-c-number>" %}
