вы бы написали последнюю строку следующим образом:
let urls = Seq.map matchToUrl (Seq.cast matches);;
И это можно написать лучше, используя оператор конвейерной обработки:
let urls = matches|> Seq.cast |> Seq.map matchToUrl;;
F # автоматически определяет, какой тип цели является правильным (потому что он знает, как выглядит matchToUrl
). Это доступно только для Seq, поэтому вы можете использовать List.of_seq
, чтобы снова получить данные в список.