FSharpx.Extras
FSharpx.Extras copied to clipboard
Redesign to match f# naming conventions
Description
FSharpx provides a lot of functionality, but there is some need to trim it and apply .net and f# naming conventions.
See also: https://github.com/fsprojects/FSharpx.Extras/issues/311 https://github.com/fsprojects/FSharpx.Extras/issues/325 https://github.com/fsprojects/FSharpx.Extras/issues/368
Some of the modules clashes with System types and causes problems for c#.
Repro steps
Note for instance that the following does not compile:
String.Join(" ",Strings.splitBy(c=>c== '?' || c=='!', "Hello?World?fsharpx"));
Expected behavior
Following how it's done in f# core, I would expect the below to compile:
String.Join(" ",Strings.SplitBy(c=>c== '?' || c=='!', "Hello?World?fsharpx"));
It could also be nice to be able to do the following:
Enums.TryParse<LanguageOptions>("English")
Lenses are useful in c# as well. Being able to create and compose f#x lenses would be a nice thing.
Some of the modules could simply be pluralized in order to avoid c# type system issues.
Anything I've missed @smoothdeveloper?
Ping @panesofglass
IMO it would be a good idea to decide on a solution, implement it and release in 3.0.0 if breaking changes will be necessary.