À l'aide de Ramda et du style sans points, comment puis-je copier le premier élément d'un tableau à la fin de celui-ci?

Je veux prendre un tableau [1, 2, 3] et retourner [1, 2, 3, 1] .

J'utilise Ramda, et je peux obtenir le résultat souhaité comme ceci:

 const fn = arr => R.append(R.prop(0, arr), arr); 

Mais j'aimerais le faire sans points. Voici le plus proche que j'ai obtenu:

 const fn = R.compose(R.append, R.prop(0)); fn(arr)(arr) 

Mais cela semble stupide. Qu'est-ce qui me manque? Merci!

converge peut être très utile pour des choses comme celle-ci.

 const rotate = R.converge(R.append, [R.head, R.identity]) rotate([1, 2, 3]); //=> [1, 2, 3, 1] 

Le combinateur S est utile ici:

 SS(SC(R.append), R.head, [1, 2, 3]); // => [1, 2, 3, 1]