Декартово произведение 2 списков в Haskell

Оператор as может использоваться только для ссылочных типов, он не может быть перегружен и вернет null в случае сбоя операции. Это никогда не вызовет исключения.

Приведение может использоваться для любых совместимых типов, оно может быть перегружено, и оно выдаст исключение в случае сбоя операции.

Выбор того, что использовать, зависит от обстоятельств. Прежде всего, это вопрос того, хотите ли вы выдать исключение при неудачном преобразовании.

65
задан Rodrigo de Azevedo 16 October 2016 в 12:07
поделиться

1 ответ

Рекурсивное сопоставление с образцом с пониманием Списка

crossProduct [] b=[]
crossProduct (x : xs) b= [(x,b)] ++ crossProduct xs b

cartProd _ []=[]
cartProd x (u:uv) = crossProduct x u ++ cartProd x uv
0
ответ дан 24 November 2019 в 15:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: