我有一个名为“人”的班级
Person :: String -> String -> Int -> Gender -> Person
目标: 通过将 Gender 分配给 Female 来制作更通用的 Person 版本,即 femalePerson。
什么有效: 绑定前 N 个元素有效:
let personsWithNameAlice = Person "Alice"
let personsWithNameAliceMcGee = Person "Alice" "McGee"
什么不起作用:
let femalePerson = Person {gender = Female}
问题:
- 我该怎么做呢?
- 如何将值绑定到 n != 0 的任何函数的第 n 个元素?
只是我知道我可以用数学写 f(x,y,z) = g(x,y,z,5) 用 C++ 写 std::bind2nd(f, 8) 所以在 Haskell 中不应该?