É possível combinar com sequências decompostas em F #?
Eu me lembro de uma versão mais antiga do F # que permite a decomposição estrutural ao combinar sequências como listas. Existe uma maneira de usar a sintaxe da lista, mantendo a seqüência preguiçosa? Eu estou esperando para evitar um monte de chamadas para Seq.head e Seq.skip 1.
Eu estou esperando por algo como:
let decomposable (xs:seq<'a>) =
match xs with
| h :: t -> true
| _ -> false
seq{ 1..100 } |> decomposable
Mas isso só lida com listas e dá um erro de tipo ao usar seqüências. Ao usar List.of_seq, parece avaliar todos os elementos na seqüência, mesmo que seja infinito.