Top 14 Monoid Open-Source Projects
-
mo
🦄 Monads and popular FP abstractions, powered by Go 1.18+ Generics (Option, Result, Either...)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
Learn-by-doing functional programming course on Scala
learn-by-doing course/tutorial for functional programming on scala
-
inet-cute
An implementation of interaction nets. -- ASCII art inspired syntax. -- Pure postfix expression. -- Using a stack-based low-layer language to build nets.
-
treap
:leaves: :deciduous_tree: :fallen_leaf: Efficient implementation of the implicit treap data structure
-
multi-instance
Multiple typeclass instances, selected by explicit application of a phantom type parameter
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
You probably noticed that .SetName() returns a Either. You may have come across Unit in libraries like MediatR or Language-Ext. It's a simple construct representing a type with only one possible value. We use it as a placeholder for operations that do not return a value but may return another state. In our example, .SetName() is a Command that does not return a value but may fail. Therefore, the monad Either carries two possible states: Right (without value) or Left (with an Error).
Project mention: Functional Programming Library for Golang by IBM | news.ycombinator.com | 2023-08-17A simple alternative is the combination of:
- https://github.com/samber/lo
- https://github.com/samber/mo
The split is also nice as you can choose to just use the generic convenience functions from lo without the more FP related things from mo.
Learn something that pays the bill first - nowadays it's Golang/Rust react/typescript. Then you can try some pure fp libs like fp-ts and fp-core.rs, and look through existing scala cats docs. If you'll feel bad about it - that's totally fine and expectable, fp takes a paradigm shift and not that many dev able to shift their brains way of thought due to basic psychological rigidity) (inability to change habits and to modify concepts/attitudes once developed). And that's purely a staffing and management issue - folks hired randoms out of the blue, and called 'em a team.
Project mention: Show HN: iNet – a new programming language for interaction nets | news.ycombinator.com | 2023-09-06At that time, feel free to open issue at: https://github.com/cicada-lang/inet/issues
I will not miss an issue there :)
Monoid related posts
Index
What are some of the best open-source Monoid projects? This list will help you:
Project | Stars | |
---|---|---|
1 | language-ext | 6,176 |
2 | mo | 2,274 |
3 | functionaljava | 1,585 |
4 | crocks | 1,582 |
5 | fp-core.rs | 1,296 |
6 | cyclops-react | 1,296 |
7 | λ | 855 |
8 | Learn-by-doing functional programming course on Scala | 604 |
9 | inet-cute | 126 |
10 | treap | 63 |
11 | monoid-subclasses | 31 |
12 | endo | 4 |
13 | multi-instance | 3 |
14 | appendmap | 2 |
Sponsored