i started working on a tree-sitter grammar for #sapf https://codeberg.org/pulu/sapf-ts
it really only does numbers and comments so far. improvements welcome 😄
i started working on a tree-sitter grammar for #sapf https://codeberg.org/pulu/sapf-ts
it really only does numbers and comments so far. improvements welcome 😄
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
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 🥰
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 :)
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 https://github.com/ahihi/sapf
#TIL about a new musical programming language called Sound As Pure Form #sapf and I'm wondering how I can interface it with @neauoire 's #Orca
via @phranck
This is awesome! A new #programming language to create #Music called #sapf. It seems to be a #RPN language like #Forth. https://www.youtube.com/watch?v=FY2WYXOdXoM
"you should get a faster laptop to make music"
no. you should get a slower laptop