Skip to content

athanclark/purescript-zeta

Repository files navigation

PureScript-Zeta

Build Status Pursuit

Signals from outer space

This library is a competing Signaling implementation, modeled after Bodil's purescript-signal library.

It's differences?

  • Zeta Signals are traversable, but not functors, because mapping over a signal creates a new one (signals are references)
  • There's an included Foreign.Object.Object-based signaling system for dynamic handler sets

Generally, I just wanted a pure implementation of Bodil's Signal library - this one is probably much slower, and will break api compliance, so fair warning!

Philosophically, this library complements purescript-queue in the following ways:

  • Queues pass messages to handlers, while Signals maintain a single state acknowledged by handlers
  • Both Queues and Signals can have multiple handlers
  • Signal handlers are informed of a whole value when reassigned, while Queues are informed of intentional message submissions