A little language for circuit bending.
Switch branches/tags
Nothing to show
Clone or download
Latest commit 3c9e13e Sep 15, 2018

README.md

Denshi is a little language for circuit bending.

Denshi is available under the GNU Affero General Public License version 3; see the LICENSE file for details.

What does "circuit bending" mean?

Circuit bending is the creative, chance-based customization of the circuits within electronic devices such as low-voltage, battery-powered guitar effects, children's toys and digital synthesizers to create new musical or visual instruments and sound generators.

In this context, "circuit bending" is about sampling the space of all possible circuits, with an emphasis on live programming, audiovisual output and weak, dynamic typing.

What's a circuit?

A circuit with N blocks and K components per block is defined by:

  1. A vector, of size N x N, assigning to each pair of blocks a number between 0 and 1: the connectivity between the two blocks.

  2. A vector, of size K x N, assigning to each block K numbers between 0 and 1: the block's components, as in entity-component system. Typical components include the gate associated with each block, and any configuration gates might need.