make some of FSharp.Core consumable idiomatically to dotnet code #11441
Replies: 2 comments 1 reply
-
Is it possible to compile non-curried functions as Many current The names (e.g. |
Beta Was this translation helpful? Give feedback.
-
I think this suggestion makes sense. We have some bridge code in https://github.com/fsprojects/FSharpx.Extras/blob/master/src/FSharpx.Extras/CSharpCompat.fs that helps you consume F# in C#. It would be nice to have some of these native in F# Core and hidden from regular F#. |
Beta Was this translation helpful? Give feedback.
-
Will efforts be spent to make consuming some of the stuff from FSharp.Core more palatable in vanilla C# codebase?
I’m referring mostly to
FSharpOption
andFSharpFunc
.Bringing it because in mixed codebases, I end up using a mix of FSharpx.Extras, some custom extensions, stuff from FSharp.Core, it ends up being messy; especially with how poorly C# handles symbol conflicts.
The guidelines (don’t expose those types to .net consumer, and add facades/wrappers) ultimately feels more like the work on making those types integrate fluently in .net codebases has not been done, and not all code from mixed codebases can adhere to the ideals of the guidelines.
This type of impedance mismatch is also, I believe, responsible for a part of resent some of the “C# == .net” crowd may have with F#, overall hindering F# and .net.
Ideally, FSharp.Core should come fully equipped to make the most basic scenarios not look too ugly.
It is not something that is easily solvable, but worth addressing, and worth getting insight from BCL & C# teams as to how to better address.
Beta Was this translation helpful? Give feedback.
All reactions