mo
FuncFrog
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.
mo
-
Functional Programming Library for Golang by IBM
A 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.
-
Handling nil values: Pointers vs Abstractions
Is it a popular approach to use abstractions in general for handling nil values with libraries like null or mo? Should I just stick with pointers? What are your experiences on this topic?
-
samber/lo utility package based on generics
I really like it. Have been using it for a while, just don't overuse it. Also, I recommend github.com/samber/mo
-
Switching from C++ to Rust
Go generics allow all kinds of things https://github.com/samber/mo
-
I know there is no OPTIONALS in go , i hope they implement it , what is the best approach to deal with optionals in go? sometimes i think the default values added by golang isnโt suitable, like adding zero to int ! .. zero is a value not nil or undefined.
Have you taken a look at mo? https://github.com/samber/mo
-
What the state of functional programming ecosystem ?
If you are curious, try looking at github.com/samber/lo and github.com/samber/mo packages if you get a chance.
-
Reduce Boilerplate in Go Http Handlers with Go Generics
I have seen https://github.com/samber/mo but it's a niche. Monads aren't popular in Golang community.
- Monads for Go, Using Generics (Option, Result, Either)
-
Expected vs Unexpected errors in Go
I've also looked at the mo library, in particular to use Option[User] but that's really just a slightly safer way to represent User* here. (Safer because you're forced to check if there's a value and so don't have the same accidental panic risk.)
- Monads and popular FP abstractions, powered by Go 1.18 Generics
FuncFrog
-
I wrote a for loop so you don't have to. Parallel Map, Filter, Reduce library
func GetIDs(...) ([]string, ...) { <...> users := GetUsers(...) return ff.Map(users, domain.UserGetID).Do(), ... } ``` Now it's that easy! Furthermore you may like to write gogenerate function to generate such methods for each domain struct. Also there are more cool features, minimal-lock parallelism, error handling etc. in the libtaty https://github.com/koss-null/FuncFrog Cheers!
-
Functional Programming Library for Golang by IBM
if it have to be in FP style, this one is better
https://github.com/koss-null/FuncFrog
still prefer non-FP part tho
-
FuncFrog: fast, parallel and lazy stream-api. Please help me with the code review and project development ideas
Hi there! I have finally released a stable version of my stream-like library. It supports some basic features such as Map, Reduce, Filter, Sort, Any, First on any slice or generating function, easy out-of-the-box parallelism with minimum locks and overhead on a regular for cycle. Here it is: https://github.com/koss-null/FuncFrog First of all I will appreciate any code review. Any feedback are welcome. At second, I want to ask the community, what features do you expect to be in such kind of a library and how do you expect them to be implemented? It looks like I need to add some Collect function to be able to produce not only slices, and also add some sources such as BufferedReader or channel.
-
FuncFrog - fast stream-API like library got it first stable release!
Hi gophers! In last months I've been working on a FuncFrog - java stream-api - like library, which is fast, parallel, lazy-evaluated and generic-based! You can check it out here: https://github.com/koss-null/FuncFrog
-
Fast Golang Stream API (lazy, inline-friendly, parallel) as an alternative for RxGo
Check this out. I will be glad to any comments and notes https://github.com/koss-null/lambda/tree/0.3.0
-
What necessary packages or functions that Go doesn't have?
I am rly strugging with it developing this:https://github.com/koss-null/lambda
-
Another update on my Nifty inline filtering, map and reduce library.
Hi! Some te ago I've released the first beta of my stream-api like library. It have become much more useful and stable since then. Here is is: https://github.com/koss-null/lambda
- Looking for libraries ideas to develop
- Have you moved from Java to Go (or another popular language).
-
Parallel, lazy evaluated Java Stream API-like library for Go is closer to the release than ever
Check the code out here: https://github.com/koss-null/lambda
What are some alternatives?
lo - ๐ฅ A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)
lrpc - Simple, lightweight, multi-codec RPC library for Go.
fp-go - fp-go is a collection of Functional Programming helpers powered by Golang 1.18+ generics.
Wails - Create beautiful applications using Go
valor - Go option and result types that optionally contain a value
go - The Go programming language
underscore - ๐ Useful functional programming helpers for Go
unlocker - โ ๏ธ Replaced by ItalyPaleAle/Revaulter! -- Wrap and unwrap keys using a key vault with admin consent
gofp - A super simple Lodash like utility library with essential functions that empowers the development in Go
filter - Simple apply/filter/reduce package.
fuego - Functional Experiment in Golang
fp-go - functional programming library for golang