Я пытаюсь создать список кортежей из двух разных списков, где каждая голова из двух списков станет кортежем (например, headList1 и headList2 станет кортежем), и это продолжается для каждого элемента), и я получать ошибки типа в F #, и я не уверен, что я делаю неправильно. Я пытался убрать скобки, вставив фигурные скобки и т.д., но все еще безрезультатно.
let rec pairToTuple letter count = // assume that each list is the same, will return a list with (letter, count) in itself
match letter with
| [] -> [()]
| e1::rest1, e2::rest2 -> let tup = (e1, e2)
tup::(pairToTuple rest1 rest2 )
например: (a, b, c) и (10, 20, 30) станут [(a, 10); (b, 20); (c, 30)]
/home/codio/workspace/program/Program.fs(180,5): error FS0001: This expression was expected to have type ''a list' but here has type ''b * 'c'
[/home/codio/workspace/program/program.fsproj]