I think this was a terminology misunderstanding - I don't see it as "the answer". "The answer" in my book is specific for each particular situation and your guideline is important to take into account for each such situation. I'm splitting hair now, but only to illustrate the source of misunderstanding.
To advance the state of the art it would help if you created a list of cases where "build" produced unexpected advantage and a list of cases where it backfired. At least it would work better for me to calibrate properly.
EDIT: It just occured to me that you answer to my answer is what curried function is to a function result. Throw in lazy evaluation and the line gets blurry. :-)
I think this was a terminology misunderstanding - I don't see it as "the answer". "The answer" in my book is specific for each particular situation and your guideline is important to take into account for each such situation. I'm splitting hair now, but only to illustrate the source of misunderstanding.
To advance the state of the art it would help if you created a list of cases where "build" produced unexpected advantage and a list of cases where it backfired. At least it would work better for me to calibrate properly.
EDIT: It just occured to me that you answer to my answer is what curried function is to a function result. Throw in lazy evaluation and the line gets blurry. :-)