2012-03-23 32 views
5

¿Existe una forma generalmente aceptada de convertir una secuencia de datos (Seq a) en una lista [a]?Convertir datos.Secuencia a una lista?

veo que hay una fromlist, pero sin toList

+6

Voy a enseñarte a pescar: si vas a [Hoogle] (http: //www.haskell.org/hoogle/) y busque ['Seq a -> [a]'] (http://www.haskell.org/hoogle/?hoogle=Seq+a+-%3E+%5Ba% 5D) (el tipo de firma de la función que desea), el primer hit es la función 'toList' que menciona dbaupp. Hoogle no siempre puede encontrar lo que quiere, pero siempre vale la pena verificarlo. – dave4420

Respuesta

14

que hay una instancia de FoldableSeq a, y esto proporciona un método toList. p.ej. esto imprimirá [1,2,3,4,5,6,7,8,9,10]

import Data.Foldable (toList) 
import Data.Sequence (fromList) 

main = print . toList . fromList $ [1..10] 
+2

La parte más importante de esta respuesta es: ¡No ignore las listas de instancias! A menudo son realmente importantes para la API completa para un tipo. – Carl

Cuestiones relacionadas