[go: up one dir, main page]

Use seqes as basis for lwtreslib seq

This MR changes the implementation of Seq* in Lwtreslib to use Seqes instead of handrolling it all.

The Seqes library uses functors to replicate the Stdlib Seq module with added monads. Compare to the pre-MR Lwtreslib Seq support it has:

  • more thourough tests (including mutation testing)
  • complete support for the whole of the Stdlib range of functions

Thus, the present MR:

  • removes most of the Seq-related tests
  • increases the Seq interface

Incidentally, the monadic traversors are named differently. This is because Seqes being based on functors offers module-based naming. As a result, Seq.iter_e becomes Seq.E.iter (and similarly for other traversors (map, fold_left, etc.) and other suffixes (_s, _es)).

opam-repository!401 (merged)

Edited by Raphaël Proust

Merge request reports

Loading