[fp] lazy & currying