home.social

#sapf — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #sapf, aggregated by home.social.

  1. ive fixed the zctl function in cross-platform #sapf, which is supposed to turn a ZRef into a control signal but was completely broken.

    it is useful in OSC workflows, e.g.:

    ; store "/knob1" OSC data in the "cutoffknob" ZRef
    0 ZR = cutoffknob
    "127.0.0.1" 9901 "/knob1" \args [args head cutoffknob set] oscmap

    ; use it to control filter frequency
    55 0 saw
    (cutoffknob zctl 0 1 20 20000 linexp) 0.2 rlpf
    0.2 *
    play

    #livecoding

  2. ive moved the sapf.el repo to codeberg and also added some handy little functions to get help, clear the stack and clear the sapf process buffer 🥰

    codeberg.org/pulu/sapf.el

    #sapf #livecoding #emacs

  3. ive moved the sapf.el repo to codeberg and also added some handy little functions to get help, clear the stack and clear the sapf process buffer 🥰

    codeberg.org/pulu/sapf.el

    #sapf #livecoding #emacs

  4. ive moved the sapf.el repo to codeberg and also added some handy little functions to get help, clear the stack and clear the sapf process buffer 🥰

    codeberg.org/pulu/sapf.el

    #sapf #livecoding #emacs

  5. ive moved the sapf.el repo to codeberg and also added some handy little functions to get help, clear the stack and clear the sapf process buffer 🥰

    codeberg.org/pulu/sapf.el

    #sapf #livecoding #emacs

  6. ive moved the sapf.el repo to codeberg and also added some handy little functions to get help, clear the stack and clear the sapf process buffer 🥰

    codeberg.org/pulu/sapf.el

    #sapf #livecoding #emacs

  7. last year i added to cross-platform #sapf "oscmap", a preliminary Ref-based implementation of OSC input. this was simple to implement, but not very flexible.

    ive now rewritten oscmap to use callback functions, similar to how SuperCollider OSCFuncs work. this is a lot more powerful and should allow far more diverse OSC handling logics :)

    github.com/ahihi/sapf

  8. cross-platform #sapf is now a little more international as i fixed an issue that prevented non-ascii characters from being entered in the REPL.

    it may not be "unicode-aware" exactly but the very simple parsing rules permit using unicode in identifiers. so now you can name your stuff with ääkköset, CJK, emoji and whatnot. go wild github.com/ahihi/sapf

  9. "you should get a faster laptop to make music"

    no. you should get a slower laptop

    #sapf #LiveCoding #Emacs #EeePC

  10. gonna try building #sapf on the eeepc :3

  11. ive added vterm support to my sapf.el - this enables much faster evaluation of multi-line code blocks than the previous comint implementation :)

    not sure if the slowness was even an issue outside macOS and/or 12 year old hardware, but either way this fixes it! github.com/ahihi/sapf.el #Emacs #sapf

  12. hacking on OSC support for cross-platform #sapf

  13. fixed some memory bugs in cross-platform #sapf :)

    - aab, aabb and bab no longer produce wrong results when they trigger a resize of the stack vector
    - ^D now exits cleanly instead of segfaulting

  14. #sapf on Linux: FFTs now implemented with fftw -> wavetable oscillators like "saw" work 🥳 #LiveCoding

  15. ive published my cross-platform #sapf fork at github.com/ahihi/sapf !

    highly WIP, but it does currently start and play audio on Linux. see the issues tab for some things that need doing, in case you know some C++ and would like to help :)

    #LiveCoding

  16. got rudimentary audio output going with RtAudio 👀 #sapf #LiveCoding