Injection de dépendances et currying

Je travaille en ce moment sur un port d'essence en JavaScript, qui me sert de sandbox pour mieux comprendre la programmation fonctionnelle. Comme pour la librairie originale, je voulais conserver la possibilité de tout configurer par injection de dépendances.

La première idée qui m'est venue est d'utiliser des factory functions, de cette manière :

function fetchUserFactory(fetch) {
  return function fetchUser(id) {
    return fetch('http://example.com/api/users/' + id);
  };
}
Lire la suite