Play Framework Form "fold" method naming rationale
Posted
by
oym
on Stack Overflow
See other posts from Stack Overflow
or by oym
Published on 2014-06-10T03:20:53Z
Indexed on
2014/06/10
3:24 UTC
Read the original article
Hit count: 110
scala
|playframework-2.0
Play Framework's (2.x) Form class has a method called fold
who's usage is indicated as:
anyForm.bindFromRequest().fold(
f => redisplayForm(f),
t => handleValidFormSubmission(t)
)
Essentially, the first function parameter is what gets executed on binding failure, and the 2nd on binding success. To me it seems similar to the 'success' and 'error' callbacks of jquery's ajax function.
My question is why did the Play developers call the method "fold"? As a disclaimer I am new to Scala, but I am failing to see the connection between this and the functional Scala fold
operation. The only similarity is that it is a higher order function; but I don't see any combining that is taking place, nor does it delegate internally in its implementation to any of the Scala fold functions.
© Stack Overflow or respective owner