New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add polyvariadic curry/uncurry functions #155
Comments
Looks like we're adding a few polyvariadic functions to F#+ which makes me wonder what's the best way to organize them, specially for these ones which currently exists. a. We could rename the existing b. Another way would be to prefix them with
Which would become as a de-facto naming convention. |
Is there any benefit to have both versions? |
I think so, all these kind of polyvariadic functions are type directed, for instance for the There are some scenarios where this is not a problem, but some abstractions where you pass the specific Of course, if we had to keep only one, by adding type annotations to |
Yes, makes sense. |
I think I would vote for the (b) naming convention, but that implies we'll have to rename |
I agree I think b) makes most sense. |
Perhaps time to schedule a 2.0 release with those changes? |
Did the memoization function make it to nuget? |
I think a) makes the most sense but b) is the least breaking change |
For sure this makes sense in isolation. Now if we take into account existing code base, Then more generally speaking, many standard functions take the name without specifying number of arguments for 2 arguments, or better to say the minimum number of arguments (ie: |
The memoization method is not published to nuget as far as I can see. So next potential version is 1.1 😄 |
@gusty makes sense to me, I recast my vote for b) |
Looks like we're converging to b) @cmeeren do you have any thoughts (since you did the memoization PR) ? |
No strong opinions from me. Do what you think is best! 👍 |
Standalone code is here: https://gist.github.com/gusty/47b53b21548304730341fe4799a1f050
The text was updated successfully, but these errors were encountered: