FSharpPlus
Extensions for F# (by fsprojects)
aether
Optics for F# (by xyncro)
Our great sponsors
FSharpPlus | aether | |
---|---|---|
6 | 4 | |
821 | 171 | |
1.7% | 1.8% | |
8.8 | 0.0 | |
2 months ago | over 2 years ago | |
F# | F# | |
Apache License 2.0 | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
FSharpPlus
Posts with mentions or reviews of FSharpPlus.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-09-09.
- Is it possible to add a NuGet package dependency to a project that points to a GitHub repository?
-
What is the difference between an Applicative and a Monad?
This should all be prefaced by saying that F# tends to avoid such category theory generalizations (unless you're using a library such as F#+ ). So, while I would encourage your continued understanding of the theory (it can be fun!), it's not as practical for writing good F# code as it would be in, say, Haskell. There are no type classes in Haskell, nor are there plans to add them.
-
Don Syme explains the downsides of type classes and the technical and philosophical reasons for not implementing them in F#
There maybe be a way to make it not have overhead. But there is precedent that this is not the case with Statically Resolved Type Parameters, and existing mechanism in F# that already lets you encode Haskell-style typeclasses and is the backbone of FSharpPlus, a typelevel (and more) library for F#. Solving constraints like this at compile-time (as opposed to having a runtime natively understand them) absolutely, positively leads to explosive compile times if you're not careful. I worked on the F# compiler for 5 years and I can attest to numerous reports related to accidental compile-time explosions just because SRTPs or inline was used a particular way.
-
Practically speaking, what does F#'s lack of higher-typed kinds mean?
F# devs tend to use SRTP (Statically resolved type parameters) see F#+ https://github.com/fsprojects/FSharpPlus .
-
F#+ 1.2 Released 🔷🚀
F#+ (FSharpPlus) 1.2 released with the following changes:
aether
Posts with mentions or reviews of aether.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-06-07.
- Optics for F#
-
F#+ 1.2 Released 🔷🚀
Did you have some problem with it? Also exists this alternative https://xyncro.tech/aether/
-
Help Designing a Functional Data Structure Model
If the boilerplate of writing twelve different variations of setThing thing x = { x with Thing2 = { x.Thing2 with Thing3 = { x.Thing2.Thing3 with (etc...) gets to you, you might look at what is called an optics library in functional programming. Aether is one such library, and it has a good introduction to lenses and prisms. Note that this is a fairly advanced topic and few F# programmers actually use optics in day-to-day coding, because you need to be working a lot with deeply-nested records for them to be worth the trouble!
-
how do you create your record with shared types?
But I'd just compose and use Aether if needed.
What are some alternatives?
When comparing FSharpPlus and aether you can also consider the following projects:
language-ext - C# functional language extensions - a base class library for functional programming
fslang-suggestions - The place to make suggestions, discuss and vote on F# language and core library features
hacn - A "monad" or DSL for creating React components using Fable and F# computation expressions
Mondocks - An alternative way to interact with MongoDB databases from F# that allows you to use mongo-idiomatic constructs
FStar - A Proof-oriented Programming Language