Functional programming in Javascript