Not sure how to do it, but I can't help but think source code generators and default interface implementations combined could be used to enable currying in C#. I've not played enough with gen code or know enough about functional programming to know if possible. Just a thought!