dev.tauri.choam.core

Members list

Type members

Classlikes

sealed trait Exchanger[A, B]

Attributes

Supertypes
class Object
trait Matchable
class Any
trait Reactive[F[_]] extends FunctionK[Axn, F]

Attributes

Companion
object
Supertypes
trait FunctionK[Axn, F]
trait Serializable
class Object
trait Matchable
class Any
Known subtypes
trait AsyncReactive[F]
Self type
object Reactive

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
Reactive.type
sealed abstract class Rxn[-A, +B]

An effectful function from A to B; when executed, it may update any number of Refs atomically. (It may also create new Refs.)

An effectful function from A to B; when executed, it may update any number of Refs atomically. (It may also create new Refs.)

These functions are composable (see below), and composition preserves their atomicity. That is, all affected Refs will be updated atomically.

A Rxn forms an Arrow (more specifically, an ArrowChoice). It also forms a Monad in B; however, consider using the arrow combinators (when possible) instead of flatMap (since a static combination of Rxns may be more performant).

The relation between Rxn and Axn is approximately Rxn[A, B] ≡ (A => Axn[B]); or, alternatively Axn[A] ≡ Rxn[Any, A].

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
object Rxn

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Rxn.type