The framework used in the book, malt[0], is currently not GPU-accelerated, but it's being worked on.
Maybe interesting, I used it for a toy implementation of the GPT architecture[1] in about 500 lines.
(I studied with one of the authors, Dr. Daniel Friedman; wasn't super involved here but proofread a late draft and TA'd for a course based off the book.)
Finishing up a CS master's this semester, looking for opportunities starting in July/August or the fall. Research focus in programming language theory, but experienced across the full stack. Most interested in R&D-related stuff, especially related to audio or music (my other degree). Potentially looking towards applying for PhD programs this fall as well, so would appreciate to know if anyone is recruiting students!
I have experience independently building/releasing apps/plugins, and contracting for small and mid-size businesses (handling both frontend and backend). Have also conducted and applied research, including technical implementation and communication (papers/presentations/documentation).
Not exactly infinite canvas, but pages can grow outward. Cross-platform and open source! And has some cool features which make working with handwritten text nice.
Anecdotally, I feel like OCaml is growing in popularity, probably due to ecosystem improvements. Stuff like dune and other OCaml Platform tools becoming mature, multicore support, recently first-class Windows support, etc.
I also suspect that people are more open to a language like OCaml. With Rust and javascript being so popular, a lot of constructs in OCaml will not seem so foreign.
OCaml is in many ways a sane Typescript or a functional version of Go.
Ditto, it feels like more people are coming around to the ML style type systems. I'm hoping Gleam will fill the void with a scalable BEAM backend and compiling to JS with Lustre on the frontend (or even just serverside with htmx).
Having known OCaml since Caml Light days, Go's type system has nothing to do with OCaml, it is exactly the kind of languages the Go community rants about.
Yeah I don't think the Go community would like OCaml very much. But I do think there are some similarities, in that they both have great compile times, as a functional language OCaml is quite simple, they are both GC'd systems languages and both have predictable runtimes. So if you appreciate a lot of ideas in Go, but find them too conservative and the error handling too tedious, OCaml might be a good choice.
Overall a good intro on the subject. I feel like at the start it might benefit from being a bit more explicit about pitches being frequencies and ratios being intervals; probably just worth a reminder for people who aren’t as familiar
Might be interesting to talk about how the usual ratios come from the harmonic series. For sounds that don’t produce a harmonic series, other potentially non-integer ratios can actually sound more consonant. The youtube channel New Tonality[0] has a bunch of great videos about this
Also wanted to mention that I’ve been working on a piece of commercial software[1] for working with freestyle/adaptive just intonation, if anyone’s interested
Thanks for posting this. The approach of keeping the traditional 12 notes while changing the tuning on-the-fly is really interesting and maybe the right tradeoff. This is so spot-on because adaptive JI is mentioned as a possible solution at the end of the article. It's the classic HN move where a weird topic is being discussed and someone says "why yes, I've made tools that happen to exactly match the niche topic being discussed!"
In fact, it's probably not my business, but this topic is so profoundly niche (and likely to remain so for a while) that I personally wouldn't make this commercial. My reasoning (and the reason I open-sourced some projects) is that it will limit adoption while changing almost nothing about my income. Obviously I hope I'm wrong, maybe these techniques will pick up in popularity. It's also possible that I think this way simply because I'm bad at marketing.
Cool stuff, nicely fleshed-out. Sort of like a Risset rhythm, which I’ve explored a bit myself [1]. One of my favorite pieces that uses this technique is Black Rain, by Daniele Ghisi [2].
Maybe interesting, I used it for a toy implementation of the GPT architecture[1] in about 500 lines.
(I studied with one of the authors, Dr. Daniel Friedman; wasn't super involved here but proofread a late draft and TA'd for a course based off the book.)
[0]: https://github.com/themetaschemer/malt
[1]: https://github.com/sporkl/malt-transformer
reply