Most people start with the basic data types but IMO the killer feature in Arrow is Ad-Hoc Polymorphism, if you depend on type classes and perform only Effects in the monadic context of
F
you can create entire pure programs that entirely independent of the runtime data types that backs their declaration.
g
gregd
03/01/2018, 7:40 PM
I suppose this is the closest we can get to a non-typed FP (e.g. Clojure) in Kotlin, right? But, on the other hand, from a pragmatic programmer’s POV, the syntax you showed (
DefaultTagService
) looks, well, complicated 😉
r
raulraja
03/02/2018, 10:10 AM
I think it may be unfamiliar as with anything new that is different from the ways we are used to see things.
raulraja
03/02/2018, 10:11 AM
Using data types only is fine too but you loose the flexibility of running to multiple return types which may be important to some libraries and user applications
raulraja
03/02/2018, 10:11 AM
Not for all use cases for sure
g
gregd
03/02/2018, 11:24 AM
I will definitely look into this 🙂 Thanks again, and keep up the good work! 😄