Investigate optimized implementations for single-length chains #162
Labels
effort: moderate
The issue will probably take a single contributor one or two days of work to resolve.
meta: blocked
The issue cannot be resolved right now, but it should be in the future.
type: optimization
The issue involves making existing functionality more performant.
In less jargony terms:
Higher is largely optimized for cases like
seq.map(...).filter(...).something(...).array()
, i.e. long chains of manipulation functions. However, this is only a subset of use cases. Many of the most common use cases will look more likeseq.map(...).array()
, i.e. a single-length chain.It may be that detecting these cases and using a separate code path may produce significantly more performant code. However, whether this is actually true requires actual investigation. This task should be TODO after benchmark tools are in place.
If tests reveal that this is in fact a worthwhile optimization, then it should be implemented for the most common sequence types and possibly eventually for all types.
The text was updated successfully, but these errors were encountered: