Clojure: reducir con tres parámetros.

A menudo me encuentro en necesidad de una especie de expandidoreduce siempre que deba procesar un elemento en el momento (como reducir), acumular algún tipo de resultado (como reducir) pero hacer el proceso basado en el elemento anterior de la secuencia (a diferencia de reducir).

Por ejemplo (uno tonto), agregue 1 al acumulador si tanto el elemento actual como el anterior son pares y restan uno de ellos son impares. Este es solo un caso estúpido, pero me he encontrado con este tipo de problemas a menudo. Generalmente hago un vector como acumulador, de modo que el primer elemento es la agregación real y el segundo el elemento anterior. Esto no es muy elegante y sin duda detallado.

¿Hay una función central para ayudar en esos casos? ¿Cuál es la forma más idiomática de tratar este problema? Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta