LINUX.ORG.RU

История изменений

Исправление proud_anon, (текущая версия) :

Предположим, ты хочешь создать игру.
(...)
Отлично, хотел бы ты теперь перемещать персонажа?
moveX (Mario (Point xpos ypos)) val = Mario (Point (xpos + val) ypos)

Взамен, lenses (линзы) позволяют написать что-то такое:
location.x `over` (+10) $ player1

Или вот так:
over (location . x) (+10) player1

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

Исправление proud_anon, :

Предположим, ты хочешь создать игру.
(...)
Отлично, хотел бы ты теперь перемещать персонажа?
moveX (Mario (Point xpos ypos)) val = Mario (Point (xpos + val) ypos)
Взамен, lenses (линзы) позволяют написать что-то такое:
location.x `over` (+10) $ player1
Или вот так:
over (location . x) (+10) player1

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

Исходная версия proud_anon, :

Предположим, ты хочешь создать игру.
(...)
Отлично, хотел бы ты теперь перемещать персонажа?
moveX (Mario (Point xpos ypos)) val = Mario (Point (xpos + val) ypos)

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