Возможно, есть простой ответ на этот вопрос, но я новичок в Haskell. Я пытаюсь перебрать параметр функции и использовать каждый элемент списка для вызова другой функции. У меня есть функция, которая выполняет ход с учетом игрового поля, хода и номера игрока и возвращает новое игровое поле. Его заголовок функции выглядит следующим образом:
play :: [[Char]] -> Char -> Char -> [[Char]]
play gameBoard moveDirection playerSymbol = ...
Я пытаюсь вызвать его из функции драйвера, которая имеет параметры начальной игровой доски и список ходов, которые необходимо выполнить на игровой доске. Есть ли способ вызвать функцию play
для каждого элемента в списке ходов, чтобы нижеприведенная функция gameExample
возвращала игровое поле после каждого хода?
moveDirections = "udlrudlr"
gameExample :: [[Char]] -> [Char] -> [[Char]]
gameExample gameBoard (moveDirection : moveDirections) =
play gameBoard moveDirection 'p'
Пожалуйста, дайте мне знать если вам нужны какие-либо разъяснения.