Our great sponsors
-
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.
yeah, but for example if you use akka in scala you're not only using a "pattern", you add some meaningful functionality (concurrency) and as a by-product you need to use the akka way of doing things. what op proposes on the other hand is some kind of functional syntactic sugar. I accept things like lombok in java because they cut a lot of boilerplate, but in this case my worry is that you end up using more boilerplate or writing some kind of kotlin dialect. plus headaches and probably bugs which come with forcing a non-native library everywhere. I was using this https://github.com/mariofusco/lambdaj in java, which makes it look much cooler and concise, but it ended up having unexpected behavior. also lombok is not problem free. I might understand using such kind of libraries in java, because the language is a dinosaur. but kotlin is modern enough that you don't want to add stuff you don't necessarily need.
I've used Vavr in couple of projects, but I like https://github.com/aol/cyclops better, although I did not manage to use it in any real project seriously. Mostly just played with Cyclops for fine personal stuff.
I made an attempt at souping up the VAVR-Kotlin wrappers using the then-experimental inline Kotlin classes (https://github.com/danwallach/vavr-kotlin) and otherwise trying to make VAVR feel more "Kotlin-native". I ultimately stalled out because you really want to generate all of this code alongside the Scala code, inside VAVR, that generates much of VAVR's other Java classes, and there wasn't much point in doing that until VAVR 1.0 was done.
Related posts
- What's everyones favorite Stream utility library (or ies)? I see jOOL and StreamEx mentioned occasionally, are there others?
- Spring Reactor
- Reactor bad, Loom good - but how will the landscape shape out?
- .NET Dev here: What is the general practice for asynchronous programming in Java?
- Reactor-Core - Non-Blocking Reactive Foundation for the JVM