5 releases
0.2.0 | Jan 21, 2024 |
---|---|
0.1.3 | Feb 11, 2023 |
0.1.2 | Feb 4, 2023 |
0.1.1 | Jan 29, 2023 |
0.1.0 | Jan 29, 2023 |
#937 in Audio
73KB
2K
SLoC
cycles
A cyclic pattern abstraction, heavily inspired by TidalCycles.
Started as an attempt at porting the Pattern
abstraction and related items
from the TidalCycles' Haskell implementation, though some liberties have been
taken in order to achieve a more Rust-esque API.
The goal of this crate is to aim for a similar level of ergonomics to TidalCycles (it's hard to compete with Haskell!), while taking advantage of Rust's ability to provide low-to-zero-cost abstractions.
The Pattern
trait
The essence of this crate is the Pattern
trait. Pattern
s are types
that can be queried with a Span
to produce a sequence of Event
s. All
other items are related to constructing, applying, modifying or mapping types
implementing Pattern
.
Dependencies
~590KB
~13K SLoC