Skip to content

Gozala/signalize

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

signalize

Build Status

Browser support

Functional Reactive Programming (FRP) is a programming paradigm for working with time-varying values, better capturing the temporal aspect of mutable state. Signal is a data structure representing a time-varying value. For example, consider the position of the mouse. The signal mousePosition represents current mouse position. When the mouse moves, the value changes automatically.

Signals can also be transformed and combined without typical hazards of the stateful programs.

Example

Signal is very low level construct that can be used to create signals from scratch:

var signal = require("signalize/core").signal
var time = signal(function(next) {
  setInterval(function() {
    next(Date.now())
  }, 1000)
})

Signals can be spawned in order to consume it's changes:

var spawn = require("signalize/core").spawn

spawn(time, function(value) {
  console.log(value)
})

// => 1352077824718
// => 1352077825719
// => 1352077826720
// => 1352077827721
// => 1352077828722
// => 1352077829723

Install

npm install signalize

About

Signals in a functional reactive style

Resources

License

Stars

Watchers

Forks

Packages

No packages published