pakoito
10/17/2018, 10:20 AMjacob
10/17/2018, 12:24 PMtomasruizlopez
10/19/2018, 1:41 PMraulraja
10/19/2018, 1:45 PMraulraja
10/19/2018, 2:42 PMraulraja
10/19/2018, 2:42 PMraulraja
10/19/2018, 2:43 PMraulraja
10/19/2018, 2:43 PMimport arrow.instances.list.traverse.*
listOf(Some(1), Some(2)).sequence(Option.applicative())
// Some(listOf(1, 2))
raulraja
10/19/2018, 2:44 PMextensions { ... }
which has been deprecated and you no longer need tu use .run {...}
to activate type class syntax unless you are in a polymorphic context already.raulraja
10/19/2018, 2:45 PM@extension
annotation processor exports the syntax as extension functions in the package appropriately downcasting from the kinded version to the concrete onesimon.vergauwen
10/19/2018, 2:47 PMraulraja
10/19/2018, 2:59 PMListK
which now they are exported in list
too to improve the syntax generation for Index
at
etc.raulraja
10/19/2018, 2:59 PMListK.index
for examplesimon.vergauwen
10/19/2018, 4:38 PMraulraja
10/19/2018, 4:43 PMarrow-shadow
which produces an uber jar to work with Kotlin. Once you import one of the arrow-shadow
snapshots in ank or arrow-meta which is the same problem we have no access to extension functions or generated code. Just basic data types. Once arrow-shadow works we can provide the optics DSL for arrow-meta and have Ank depend on shadowed version so the arrow version used with the snippets it’s not the same as the one the ank runtime uses.simon.vergauwen
10/19/2018, 4:46 PMraulraja
10/20/2018, 2:55 PMraulraja
10/20/2018, 9:01 PMraulraja
10/20/2018, 10:57 PMselect<Int, Int> { it * 40 } from 1.just() where { it > 20 }
It works polymorphically for any Kind<F, A>
in the FunctorFilter hierarchy of MTL
as you go up the hirarchy you can add capabilities
most of the query combinators can be done with Functor, FunctorFilter, Applicative and MonadCombine.raulraja
10/20/2018, 11:00 PMraulraja
10/20/2018, 11:01 PMselect
: Functor.map
from
: Applicative.just or Applicative.product for join
`where`: FunctorFilter.filterraulraja
10/20/2018, 11:02 PMraulraja
10/20/2018, 11:06 PMLeandro Borges Ferreira
10/22/2018, 11:49 PMLeandro Borges Ferreira
10/22/2018, 11:56 PMpakoito
10/23/2018, 10:07 PMpakoito
10/23/2018, 10:07 PMraulraja
10/24/2018, 10:48 AMpakoito
10/24/2018, 10:54 PMpakoito
10/24/2018, 10:54 PM