YS
Size: a a a
YS
E
E
E
E
robot (name, attack, hp) = \message -> message (name, attack, hp)
E
robot :: (String, Int, Int) -> ((String, Int, Int) -> a) -> a
E
((String, Int, Int) -> a) -> a
оформить в виде синонимаYS
IK
Robot a
IK
YS
YS
E
YS
robot :: forall a . (String, Int, Int) -> ((String, Int, Int) -> a) -> a
вот так оно выглядит, если явно forall
сделатьJS
E
setName aRobot newName = aRobot (\(_, a, h) -> robot (newName, a, h))
E
JS
YS
(String, Int, Int)
YS