Skip to content

sghaida/fpv2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Functional Library

ci GitHub Clones codecov Codacy Badge

TL;DR

This is an Opinionated functional library that implements some aspects of Functional paradigms, which suppose to increase productivity and add to GoLang the missing beauty of functional programming which I have always longed for.

Lib Primitives

The Library is still WIP while the entirety of the features is not yet finalized, below is the list of basic Primitives that is currently supported or would be supported in the future, for Detailed Support list please go through the code :D

The Library will Include Mutable and Immutable counterpart collections such as Array | Slice | Map | Set

  • Options Some | None along with all the Monadic Operations

  • Either Left | Right along with all Monadic Operations

  • iter

    • EmptyIter Next | HasNext | Count | Size

    • RangeIter Next | HasNext | Count | Size | FromSlice | ToSlice | Fold | FoldLeft | Map | Reduce | Filter | Foreach | Slice | Take | Drop | Contains |Clone

    • SliceIter Next | HasNext | Count | Size | FromSlice | ToSlice | Fold | FoldLeft | Map | Reduce | Filter | Foreach | Slice | Take | Drop | Contains |Clone

    • MapIter Next | HasNext | Count | Size | FromMap | ToMap | Fold | FoldLeft | Map | Reduce | FilterByKey | FilterByValue | Foreach | ContainsKey | ContainsValue | GroupByValue | Clone

  • Collections

    • Slice Ops Size | Take | Map | Reduce | FoldLeft | Append | Prepend | Foreach | Flatten | Flatmap | Filter

    • Map Ops Size | Map | FoldLeft | Add | remove | Foreach | Contains | Keys | Values | KeysValues

  • List Size | Head | Tail | Append | Prepend | Split | reverse | At | AppendList | PrependList | Concat | String | Find | Map | Filter | Reduce | FoldLeft | ToSlice | FromSlice | Find

  • Mutable | Immutable Set Iter | Foreach | Union | Intersect | Add | Remove | Diff | Clone | ToSlice | Map | FlatMap | Flatten | Fold | Reduce | Zip | Filter | Add | Remove

  • Mutable | Immutable Array applies to Slices | Arrays with the following Operations Iter | Foreach | Map | FlatMap | Flatten | Fold | Reduce | Zip | ZipWithIndex | Filter | GroupBy | Head | Tail | AddAtIndex | Append | Prepend | ToMap | Clone

  • Mutable | Immutable Map applies to Maps with the following Operations Iter | Foreach | Map | FlatMap | Flatten | Fold | Reduce | ToSlice | Clone