(Disclosure: one of the authors of Ramda here, so I may well be biased toward a very different approach.)
This is an interesting approach, but I get caught right at the beginning, where you say "What you'd really want to do is this:
items
.filter(isOk)
.map(toOtherType)
.flatten()
But what I really want to do is build a reusable function:
var process = seq(filter(isOk), map(toOtherType), flatten);
So I can at my leisure call
process(items);
Or later put `process` in another sequence, or do something like:
map(process, groupsOfItems)
And I don't see that Trine helps with that. Am I missing the way to use Trine to build functions, or do I simply have to wrap up a Trine construct in a function that takes a parameter, does its Trine magic, and returns that result?
This is an interesting approach, but I get caught right at the beginning, where you say "What you'd really want to do is this:
But what I really want to do is build a reusable function: So I can at my leisure call Or later put `process` in another sequence, or do something like: And I don't see that Trine helps with that. Am I missing the way to use Trine to build functions, or do I simply have to wrap up a Trine construct in a function that takes a parameter, does its Trine magic, and returns that result?