This repository houses a few extensions projects (currently FSharpExtensions and FSharpExtensions.Applications), these each have certain things contained within them to make working with F# a little easier (in some situations).
Because I'm not a glory hog, I'm MIT licensing this. Anyone can do anything you like with it, and if anyone from the F# team would like to include any of these in the main F# Core, feel free. (Just let me know so I can remove the appropriate portions from this and let everyone know where else to find them.)
FSharpExtensions (F# Extensions)
This project is a collection of extensions to F# modules that are entirely generic, that is, you can use them in many situations that are not specific to any use-cases. Extensions do not require an
- There is a
Collectionsfolder, which contains extensions to the
- There is a
Primitivesfolder, which contains extensions to other non-collection primitives (
Date, as of this writing).
- There is a
Patternsfolder, which contains extensions to be used in
BelowExc, as of this writing).
This project is .NET Standard 1.6 compatible, thus it may be used in .NET Core 1.0+, or .NET Framework 4.6.1+.
FSharpExtensions.Applications (F# Extensions Applications)
This project is a collection of extensions to F# modules that are less generic, that is, you'll likely be working in a specific situation to need any of them.
Excelmodule which provides some common interactions with Excel (converting column names to numbers, for example).
Assemblymodule includes operations to work with assemblies (such as getting the assembly version of a type).
Directorymodule includes some replacements and additions to
System.IO.Directory. (Largely to make them more F#-like.)
FSharpExtensions.UnitTests (F# Extension Unit Tests)
This project is just some unit tests for the other projects.
Some basic notes for anyone reading this:
- If you are using these in anything notable, it'd be pretty cool to see what. You can contact me through the venues listed below if you'd like note taken.
- If anyone wishes to contribute, I'll be accepting pull-requests pretty liberally, but do take note that if you contribute anything here it will become part of the MIT license. (So, please do not contribute anything you have no rights to.)
- If anyone wishes to donate to support me, I'm sorry but that's not going to be accepted. (Seriously, I enjoy working with this stuff for fun, I don't need any other incentive.)