Call partially applied functions from C #

I have a generic function that takes a lot of parameters

f : a -> b -> c -> d -> e -> f

I want to provide specialized functions that take only the last two parameters, but provide some fixed values ​​for the first three.

g : d -> e -> f
h : d -> e -> f

Their implementation looks something like this:

g = f someA someB someC
h = f someA' someB' someC'

This is all fine, of course, but when it comes to calling these functions from C #, this is a problem because their types don't get "prettified". Instead, I get a bunch of nested FSharpFuncs. I can avoid this problem by defining my functions like

g d e = f someA someB someC d e
h d e = f someA' someB' someC' d e 

But this seems like a very simple mechanical transformation, so I wonder if there is an automated way to get the same result. Perhaps some attribute I can attach to them?

+4
1

, g h . f , g.

f 5 , someA, someB someC g.

, , .

: . g h.

+1
source

Source: https://habr.com/ru/post/1589190/


All Articles