My experience with currying in Javascript is that passing the wrong number of arguments to a function leads to errors that are tricky to debug and ugly stack traces. In ML-family functional languages this isn't as much of a problem because of the static type checking.