Posted by ofalkaed 2 days ago
The spec even mentions [0] that you're allowed to use <div>s to group dt/dd pairs for styling purposes.
[0]: https://html.spec.whatwg.org/multipage/grouping-content.html...
```
Limitations
I haven't, yet, found a good way to implement filters (low-pass, high-pass, band-pass, etc.). It does not have Fourier transform, and we cannot operate on the frequency domain. However, the moving average can suffice as a simple filter.
```
I wonder if there's a way to implement the FFT using subqueries and OVER/partitioning? That would create a lot of room for some interesting stuff to happen, specifically making it easy/possible to implement filters, compression, reverberation, and other kinds of effects.
Two other primitives that would be valuable to figure out: 1. How to implement FM/phase distortion. You can basically implement a whole universe of physical modeling if you get basic 6 op sine wave primitives right with FM + envelopes. 2. Sampling/resampling - given clickhouse should do quite well with storing raw sample data, being able to sample/resample opens up a whole world of wavetable synthesis algorithms, as well as vocal editing, etc.
Honestly, although the repo's approach is basic, I think the overall approach is wonderful and have wanted to be able to use SQL to write music for a while. I've spent a lot of time writing music in trackers, and being able to use SQL feels like it would be one of the few things that could spiritually be a successor to it. I've looked at other live coding languages, many of which are well built and have been used by talented people to make good music (such as Tidal, Strudel, etc). But all of it seems like a step down in language from SQL. I'd rather have their capabilities accessible from SQL than have to use another language and its limitations just to get those capabilities.
Food for thought -- thanks for the interesting and thoughtful work!
The handbook for the language is sadly only in Danish so it might not be super interesting: https://datamuseum.dk/bits/30002486
Here is the code for movement 1 and 2 of Eine Kleine Nachtmusik: https://datamuseum.dk/aa/gier/30000644.html
Not a big commitment from a user, and nothing lost if it doesn´t work as hoped.
I'm just positively surprised how quickly you can create a prototype for these sorts of ideas with Claude Code. This is literally just a few hours of vibe-coding.
https://news.ycombinator.com/item?id=10180423
In the comments, I saw reference to MML ( Music Macro Language ... not exactly what I think the MML is on the list. ) Here's the one referenced in the HN post.
https://en.wikipedia.org/wiki/Music_Macro_Language
At the time, I built a small interpreter that included MML as an embedded language, but I don't think I have the (Windows) binaries handy.
One interesting feature is it has built-in vibe coding, to produce an LLM-generated loop program to start one's creative journey.