eclipse-archived/ceylon

reconsider curried functions in language module

Closed this issue · 6 comments

After #7251, functions like Iterable.fold()(), corresponding()(), compareCorresponding()(), loop()() and eachPair()() don't need to be curried anymore. Which is ironic, because in #7224 I just changed a bunch of them to curried form.

I suppose it would be best to change all these functions to non-curried form. Thoughts?

Agreed: IMO the only valid use-case for multiple parameter lists is if you want to fix an argument and call the result multiple times with different n+1 arguments. Using it as a workaround for a type system limitation that is now removed is not a good reason ;)

OK, I've uncurried all these functions. In the case of fold(), that's a pretty significant breakage to user code!

This is done.

Watch out that the docs still mention the curried forms, at least for Iterable.fold if not others.

Fixed.

Thanks :)