Skip to content

Releases: mikesol/purescript-ocarina

Unruly units

02 May 17:44
fe05ec1
Compare
Choose a tag to compare

Exposes the Web Audio API functionality where a-rate parameters can be controlled by Audio Units.

Fabulous fifteen

30 Apr 17:53
Compare
Choose a tag to compare

Upgrades to purescript 0.15.0 🚀

Svelter subgraphs

25 Apr 08:49
Compare
Choose a tag to compare

Gets rid of the klunky Subgraph type, opting to use events instead of incremental functions.

Wonderful wags

20 Apr 12:12
Compare
Choose a tag to compare

Streaming web audio graphs have never been so streamy! Wags 1.0.0 is a complete rewrite of wags designed and optimized for interactive audio and gaming. As the project has evolved, it's clear that it is being used mostly for interactive media. This rewrite leans into that use-case, making it as ergonomic as possible to get started writing interactive works with wags and its companion library deku.

As the project consolidates around this specific use case, certain corners of wags, like the wags.learn project, the wagsi project, the tidal backend and the cofree-comonad-full wags-lib have gone the way of the dodo. In the early days of the project it was important to test a bunch of stuff out, but now that the use cases for wags are more clear, it's important to consolidate and double down on what we do best: very fast, event-based, functional audio in the browser.

Shifting subgraphs

29 Mar 10:29
Compare
Choose a tag to compare

Adds dynamic subgraphing! This is the biggest thing to hit wags since, well, ever. It allows for subgraphs to be dynamic, which drastically reduces the type-level overhead in most circumstances and has a nominal performance penalty. Changes to subgraphs take O(nlogn) instead of O(n), but as subgraph changes and creation tend to be small (on the order of 2-10 at a time) this difference is nominal.

In future versions, the internal representation may change to be even faster, ie instead of a map something with faster hashing. For now, though, the map seems fine.

Formidable FFI

18 Mar 09:44
Compare
Choose a tag to compare

Eliminates a spurious conversion in the FFI, which should theoretically improve performance.

Enumerated environments

16 Mar 10:07
Compare
Choose a tag to compare

Stashes environments in a vector during subgraph creation. This simplifies the creation step, eliminating an argument.

Simpler subgraphs

15 Mar 22:03
Compare
Choose a tag to compare

Uses preexisting syntactic construct Subgraph to create patched subgraphs.

Surgical subgraphs

15 Mar 16:53
5d54433
Compare
Choose a tag to compare

Dissects subgraphs with surgical precision for faster updating.

Effective envelopes

27 Feb 17:42
Compare
Choose a tag to compare

Bumps the minor version!
Breaking change alert: AudioParameter is no longer a functor/applicative/monad. There are various reasons for this, but the tl;dr is that this allowed for envelopes to be implemented via setValuesCurveAt. Instead of pure 1.0, from now on, write paramize 1.0 and onOffIze _on. These have been part of the API for a while now, but are now the only way to hoist a number or an on/off into a parameter.
Enjoy your envelopes via setValuesCurveAt! They're in the no-loop unit test now 💪 .