Behold the Power of Laziness With Functional Programming
To finish the exploration of functional programming with the Checkoid internals, let's combine a synchronous Validator with asynchronous one with a lazy Promise... that is also a Monad.
![Thiery Michel](/images/avatars/thiery.jpeg)
Latest posts by Thiery Michel
Comment contrôler le temps dans un container Docker
Pour stabiliser des tests dépendant de la date, on peut changer la date d'un container. Mais est-ce que ce pouvoir n'est pas trop dangereux ?
![Thiery Michel](/images/avatars/thiery.jpeg)
Validator assemble! Functors in Action
In this new functional programming tutorial, I'll explain how Functors can help us assemble validator functions to validate complex data structures like objects.
![Thiery Michel](/images/avatars/thiery.jpeg)
The True Power Of Monoids: How To Combine Validators
Come and see monoids in real-life, in this tutorial explaining how to combine validator functions like lego pieces.
![Thiery Michel](/images/avatars/thiery.jpeg)
Introducing Checkoid, An Input Validation Library Built With Composition In Mind
We've built a simple and powerful validation library that allows to combine validator like lego pieces.
![Thiery Michel](/images/avatars/thiery.jpeg)
Into The Labyrinth With x3dom
What if you could create a 3D Labyrinth game with only HTML tags? That's the promise of x3dom, which I explore in practice in this tutorial
![Thiery Michel](/images/avatars/thiery.jpeg)
Getting The Ball Rolling With DeviceMotion
There are two relatively new APIs in the browser: DeviceMotion and DeviceOrientation. Let's see how to use them to detect the device motion and orientation.
![Thiery Michel](/images/avatars/thiery.jpeg)
Créer son propre loader Webpack
Webpack permet d'ajouter des étapes supplémentaires au processus de compilation des projets JS. C'est plus difficile quand le projet utilise `create-react-app`. Voici la solution.
![Thiery Michel](/images/avatars/thiery.jpeg)
Functional Programming in JavaScript, Part 4: The Art of Chaining Different Monads
It is a bad practice to chain one monad with a monad of another type. Read on to understand why, and how to chain monads the right way.
![Thiery Michel](/images/avatars/thiery.jpeg)
Functional Programming in JavaScript, Part 3: Introduction to Functors and Monads
`Functors` and `Monads` may sound frightening, they are powerful concepts that can help developers on a day-to-day basis.
![Thiery Michel](/images/avatars/thiery.jpeg)
Functional Programming in JavaScript, Part 2: The Monoid
What do number addition, string concatenation, array concatenation, and function composition have in common? They are all monoids, and they have very interesting properties.
![Thiery Michel](/images/avatars/thiery.jpeg)