Is this what you want:
module Seq =
let inline enumerate source = Seq.mapi (fun i x -> i,x) source
> ["a"; "b"] |> Seq.enumerate;;
val it : seq<int * string> = seq [(0, "a"); (1, "b")]
Or Hot 'n Spicy with FSharpx:
let enumerate source = Seq.mapi (curry id) source
Well, actually, in FSharpx it is already available as Seq.index.
source
share