Я пытаюсь написать функцию для игры в домино, которая получает оценки (5,3s западной) , но я не могу получить правильный синтаксис, но у меня есть идеяДобавление кортежа в список кортежей
код:
type Domino = (Int,Int)
type Line = [Domino]
score :: Line -> Domino
score [] = 0
score line
| (a,b):line = (a+b) + (score line)
проблема меня в том, так как линия представляет собой список кортежей, я не знаю, как изобразить голова и последние из списка и добавить их
Прежде всего, вы имеете в виду 'type Line = [Domino]', если вы хотите, чтобы 'Line' был списком' Domino'. Во-вторых, вам, похоже, нужны стражи, а не шаблонные совпадения в 'score'. Вы также не можете добавлять 'Domino' без определения подходящего '(+)' или, скорее всего, того, что хотите, что делает 'Domino' экземпляром' Num'. Там также странный трейлинг серьезный акцент, который вызовет у вас проблемы. – gspr
да, извините, моя ошибка, которая должна была быть 'type Line = [Domino]' – kazeem
Вы можете (и должны) отредактировать свое сообщение. –