This is the source code accompanying my blog post explaining the upside of using pure functions in Java.
The best way to get an idea of what I'm trying to convey is to check out this project and tinker with it on your machine. For example, you could run the tests, edit the code and see what happens. Or maybe delete the code, leave the tests and see what you would come up with.
I'd love to get your feedback, cleaner code, pull requests, et cetera — we can learn a lot from each other!
Use the self-contained Gradle command to run the tests:
./gradlew clean test