Faux Pas
StreamEx
Faux Pas | StreamEx | |
---|---|---|
- | 2 | |
128 | 2,149 | |
0.8% | - | |
1.6 | 6.4 | |
11 months ago | 23 days ago | |
Java | Java | |
MIT License | Apache License 2.0 |
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.
Faux Pas
We haven't tracked posts mentioning Faux Pas yet.
Tracking mentions began in Dec 2020.
StreamEx
-
Favorite hidden gem library?
I really like StreamEx. I do not know why people do not use it often, the syntax is just wonderful.
-
Jodd – The Unbearable Lightness of Java
It gets more perverse if you need to flatMap, or transmute components of map types, etc. If you want even more power, take a look at https://github.com/amaembo/streamex. This sort of container manipulation bread and butter for business processing. I use it every day, sometimes with a dozen operations. This (with liberal use of `final` values) makes for some pretty functional-looking code.
I'll grant you the Kotlin or Scala version is slightly more compact. But not fundamentally different, like the Go version.
I (and the pretty much every language designer in the post-Java era) disagree with you about checked exceptions, but that's a whole different thread...
What are some alternatives?
Functional Java - Backport of Java 8's lambda expressions to Java 7, 6 and 5
jOOλ - jOOλ - The Missing Parts in Java 8 jOOλ improves the JDK libraries in areas where the Expert Group's focus was elsewhere. It adds tuple support, function support, and a lot of additional functionality around sequential Streams. The JDK 8's main efforts (default methods, lambdas, and the Stream API) were focused around maintaining backwards compatibility and implementing a functional API for parallelism.
Javaslang - vʌvr (formerly called Javaslang) is a non-commercial, non-profit object-functional library that runs with Java 8+. It aims to reduce the lines of code and increase code quality.
underscore-java - java port of Underscore.js
derive4j - Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, folds, optics and typeclasses.
protonpack - Stream utilities for Java 8
Fugue
λ - Functional patterns for Java