¿Hay alguna función en haskell que evalúe (filtro p xs, filtro (no.p) xs) en una lista transversal (aquí hay dos) o hay algún nombre común en la programación funcional para este tipo de función?Nombre estándar para (filtro p xs, filtro (no.p) xs)
10
A
Respuesta
33
Primera mirada en el tipo que usted necesita:
Prelude> :t \p xs -> (filter p xs, filter (not . p) xs)
\p xs -> (filter p xs, filter (not . p) xs)
:: (a -> Bool) -> [a] -> ([a], [a])
Prelude> :hoogle (a -> Bool) -> [a] -> ([a], [a])
Prelude break :: (a -> Bool) -> [a] -> ([a], [a])
Prelude span :: (a -> Bool) -> [a] -> ([a], [a])
Data.List break :: (a -> Bool) -> [a] -> ([a], [a])
Data.List partition :: (a -> Bool) -> [a] -> ([a], [a])
Data.List span :: (a -> Bool) -> [a] -> ([a], [a])
Ahora probar las funciones:
Prelude> break odd [1..10]
([],[1,2,3,4,5,6,7,8,9,10])
Prelude> span odd [1..10]
([1],[2,3,4,5,6,7,8,9,10])
Prelude> import Data.List
Prelude Data.List> partition odd [1..10]
([1,3,5,7,9],[2,4,6,8,10])
3
Haskell lo llama partition
.
0
Creo que quieres Data.List.partition, p.
partition (>2) [1,2,3,4,5]
resultados en ([3,4,5], [1,2])
Cuestiones relacionadas
- 1. Usando xs: extension & xs: ¿restricción junto?
- 2. XS vs tipos xsd
- 3. XML xs: int valor hexadecimal
- 4. ¿es posible usar xs: union para complexTypes?
- 5. Perl XS e Inline :: C
- 6. Filtro discreto para D3 Filtro cruzado Dimensiones
- 7. XSD: restringe atributo a xs: float o ""
- 8. ¿Cómo instalar manualmente los módulos XS?
- 9. jaxb: xs: valores nulos de atributos
- 10. Creación de devoluciones de llamada en XS
- 11. JAXB 2.1 - Personalizar xs: cualquier enlace
- 12. ¿Usar coincidencia de patrón incompleta como filtro?
- 13. Convierta xs: string a java.utiliránID en jaxb
- 14. XS: Fecha quiero fecha en formato AAAAMMDD
- 15. Filtro ListView para Android
- 16. ¿Cómo uso la función de filtro en Haskell?
- 17. XSD: Cómo redefinir el tipo de datos de un tipo simple, por ej. de xs: string a xs: entero
- 18. ¿Es posible colocar el filtro global fuera de p: dataTable?
- 19. Filtro para múltiples valores discretos en filtro cruzado
- 20. Filtro dataTables.net sin entrada de filtro incluida
- 21. ¿Por qué tanto el mapa (^ 2) xs como el mapa (2 ^) xs funcionan como se esperaba en Haskell?
- 22. Filtro de jQuery y retroceso Filtro
- 23. Cómo generar xs: Fecha en WCF Parámetro OperationContract
- 24. Filtro Wiener
- 25. Filtro DirectorySearcher
- 26. Filtro de búsqueda para opencart
- 27. Filtro Fiddler traffic
- 28. Detener los módulos Perl XS cayendo silenciosamente a pure-perl
- 29. ¿está bien "XS" limpiar "repetidamente" los datos en CodeIgniter?
- 30. Filtro WPF DataGrid
+1 para mostrar cómo encontrarlo usted mismo. –
¿Quién va a hacer que el sitio "Déjame hoogle eso para ti"? –
Así es cómo se obtiene el comando ': hoogle' en ghci: http://www.haskell.org/haskellwiki/Hoogle#GHCi_Integration – amindfv