In Picat, `map(F, List) = [F(X) : X in List]` defines a higher-order map. Why must `F` be a function reference rather than a predicate reference here?
-
A
Predicates cannot be passed as arguments
-
B
The list comprehension builds its output from return values, requiring `F` to return a value
-
C
Picat prohibits higher-order predicates entirely
-
D
List elements must be integers