Hi Julien,

nice work! Could you please tell how your approach is related to
transducers from the user perspective and technically?
(https://github.com/Pharophile/Transducers)

Your example suggests that the API is quite similar to the data flow API
of transducers. Let me show your example using transducers.

result := (#+ init: 0) <~ [:x | x * 2] map <~ #(1 2 3).
OrderedCollection with: result.

Or the more classical way:

result := #(1, 2, 3)
    transduce: [:x | x * 2] map
    reduce: #+
    init: 0.
OrderedCollection with: result.


Best regards,
Steffen

Reply via email to