¿Es posible hacer coincidir con secuencias descompuestas en F #?

Parece que recuerdo una versión anterior de F # que permite la descomposición estructural al hacer coincidir secuencias como listas. ¿Hay alguna forma de usar la sintaxis de la lista mientras se mantiene la secuencia perezosa? Espero evitar muchas llamadas a Seq.head y Seq.skip 1.

Estoy esperando algo como:

let decomposable (xs:seq<'a>) =
   match xs with
   | h :: t -> true
   | _ -> false
seq{ 1..100 } |> decomposable

Pero esto solo maneja listas y da un error de tipo cuando se usan secuencias. Cuando se usa List.of_seq, parece evaluar todos los elementos en la secuencia, incluso si es infinito.

Respuestas a la pregunta(3)

Su respuesta a la pregunta