Estaba confundido por la falta de estas funciones en la interfaz para el tipo de secuencia, ya que Data.List proporciona estas funciones. ¿Hay un problema de eficiencia aquí o es solo la falta de demanda de estas funciones?¿Por qué Data.Sequence no tiene `insert 'o` insertBy', y cómo los implemento de manera eficiente?
Y como no forman parte de Data.Sequence, ¿cómo puedo implementarlos eficientemente para mis propósitos?
No es tan completo como 'Data.List', pero la interfaz de Secuencia depende en gran medida de las clases de tipos. 'map' from' Functor', 'fold' from' Foldable', etc. También puede usar ListLike, http://hackage.haskell.org/package/ListLike, que tiene una instancia para el tipo de secuencia y le daría una interfaz mucho más completa, que incluye 'insert' y' insertBy'; Creo que la interfaz es la misma que el segundo ejemplo de Mikhail. –