Programming languages used for music

(timthompson.com)

122 points | by ofalkaed 1 day ago

22 comments

  • sandebert 3 hours ago
    Switch Angel live-code using Strudel. Really impressive and interesting stuff.

    https://youtu.be/aPsq5nqvhxg

    • NeutralForest 52 minutes ago
      I've watched a couple of her stuff, it's really inspiring and feels very cosy, like a slice of Internet that lives on its own and creates without being too bothered about the Algorithm™.
  • fnordlord 30 minutes ago
    I really hope that Max becomes fully accessible in a text based format one day. It's so cool and I've spent a few months randomly through the years building neat plugins for Ableton but, for me, it would be so much stickier if it was code. Especially now with AI assistance, Claude can still be helpful but it hallucinates a lot harder when trying to describe visual code.
  • Blackthorn 31 minutes ago
    In order, the most popular ones of these are probably

    * Max. It's built into a popular DAW, and is shockingly capable as an actual programming language too. The entire editor for the Haken line of products is written in Max.

    * Pure Data or Supercollider.

    * Csound.

    Not ordering things like Scala or LilyPond that are much more domain-specific.

  • zX41ZdbW 3 hours ago
  • benrutter 5 hours ago
    Looks interesting, but I think it's a little dated- sadly most of the links I tried on this page don't seem to be active anymore?

    Here's a currently active list on github in case somebody's left needing a fix of music programming: https://github.com/zoejane/awesome-music-programming

    • ofalkaed 5 hours ago
      Most of the languages on the list have not been maintained in decades with many being for functionally extinct if not completely extinct systems. It is not really a list meant to guide you to a language to use, it is more about historical/academic interest.
  • azath92 4 hours ago
    Almost an esolang, but orca is an amazing example of spatial programming for music production (GH https://github.com/hundredrabbits/Orca and video https://www.youtube.com/watch?v=gSFrBFBd7vY to see it in action)
    • lovich 2 hours ago
      Is this the one from the hippie(non perjorative) group living off a boat?

      If it’s the same, it’s one that if I win the lottery I’d spend my time learning along with this tool from Imogen https://mimugloves.com/

      I don’t think I’d ever produce something worth listening to, but if I won the lottery, why would I care beyond my own enjoyment?

  • chaosprint 3 hours ago
    Relevant to this discussion - my project Glicol (https://glicol.org) addresses this space. Currently working on a no_std rewrite, demo coming next year :)
  • bebb 3 hours ago
    There was one on HN a few weeks ago, tailored towards loops: https://news.ycombinator.com/item?id=46072280

    One interesting feature is it has built-in vibe coding, to produce an LLM-generated loop program to start one's creative journey.

  • ako 4 hours ago
    Yesterday i used Claude Code to define and implement a YAML based DSL for playing backing tracks. I can ask an LLM to generate this DSL for any well known song, and it will include chord progression, lyrics, bass, drums, strumming pattern, etc. It's a go command line tool that plays the DSL via midi, and displays the chords, strumming patterns, and lyrics. Also does export to Strudel.
    • isodev 2 hours ago
      Depending on the source music, there are many aspects of this that normally require a license with a records company or some proxy. Especially the lyrics part. Be careful not to get into very expensive trouble. Just because the LLM can do it, doesn’t mean it’s ok to do it.
      • ako 2 hours ago
        Yes, I noticed that Claude Code silently refused to generate lyrics for some songs i requested. Benefit of this approach is that anybody can quickly generate a YAML file for a backing track, no need to share it anywhere.
        • isodev 1 hour ago
          I think the problem is that the artist doesn't get anything with this approach. If you really want to use someone else's music/artworks/lyrics, just buy it.
          • ako 1 hour ago
            It's not like this is very unique, YouTube has tons of training and backing track videos, which is what i typically use. And artist don't sell it in a way that can be consumed for guitar practice easily.
          • rerdavies 1 hour ago
            Most artists don't sell backing tracks though.
    • shevy-java 3 hours ago
      The problem I see is: people are not going to use a project that is AI generated for long really, unless they do it just for a one-off task. I'd like to constantly generate new music. I also have ideas based on existing music so I want to adjust this, but do so programmatically, and that seems ... hard.
  • erk__ 3 hours ago
    There was a music language made for the Danish GIER machine, made in 1971 (at least the 2nd edition of the handbook is from there)

    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

  • philprx 6 hours ago
    Strudel.cc ?
  • shevy-java 3 hours ago
    I kind of want to create music programmatically but so far it has been way too difficult. I also can barely find anything useful via oldschool google search anymore. I am almost stuck like with MIDI here ...
    • nablaone 15 minutes ago
      Claude code is good at coding and music theory. IMHO, there is not need for a dedicated language.

      BTW. I've played with LLM in sound design tasks recently. Vibe coded MCP server for Waldorf Blofeld gave me good results. Sorry, no demo.

    • virgil_disgr4ce 1 hour ago
      ever tried Pd or max?
      • rerdavies 1 hour ago
        SuperCollider also has some traction, and is in the same genre as max and pd.
  • gdelfino01 2 hours ago
    There is some sound and music functionality in the Wolfram Language:

    http://reference.wolfram.com/language/guide/SoundAndSonifica...

  • opminion 5 hours ago
    No Sonic Pi, which is a Ruby dialect?
    • 1313ed01 49 minutes ago
      Sonic Pi is SuperCollider, but using Ruby instead of the default sclang language. Overtone is similar (and possibly originally by the same developer, iirc?) but using Clojure, and is also missing from the list.
  • jackkinsella 6 hours ago
    Musicabc has some really nice JS and Obsidian plugins that essentially allow you to create little scrapbooks of musical ideas in markdown that are also playable as sound and viewable as sheet music.

    https://abc.hieuthi.com/

  • rausr 5 hours ago
    I recently tripped over Dogalog (live-coding with prolog-like code), which could be an addition: https://danja.github.io/dogalog/
  • 3ds 3 hours ago
    It's missing "Strudel" and "tidal cycles"
  • yakshaving_jgt 30 minutes ago
    Haskell is also a popular choice for music production and live music performance.

    https://youtu.be/XYe8AKYPUYc?si=ZYP4QM5FLn00-5u6

  • lynx97 5 hours ago
    Csound (I think v3) was the first music language I played with, back in the early 90s, under DOS even. Back then, running in real-time wasn't a thing. Generate a WAV file and play it after the program finished. Later, at the end of the 90s, I remember playing with CLM/CM, in common lisp.

    But the most productive experience was definitely SuperCollider. I can only recommend giving it a try. Its real-time sound synthesis architecture is great. Basically works sending timestamped OSC messages AOT (usually 0.2s). It also has a very interesting way of building up so-called SynthDefs from code into a DAG. I always wondered if a modern rewrite of the same architecture using JIT/AOT technology would be useful. But I digress... SC3 is a great platform to play with sound synthesis... Give it a try if you find the time.

    • whilenot-dev 3 hours ago
      I can vouch for the tutorial series from Eli Fieldsteel[0] for getting into SuperCollider and audio synthesis in general. If you were ever curious on how to bridge the gap between signal processing and music theory through mathematical operations, I think this is one of the best series out there.

      [0]: https://www.youtube.com/watch?v=yRzsOOiJ_p4&list=PLPYzvS8A_r...

  • hellobluelings 5 hours ago
    There is also literate programming for music, right? Just like Donald Knuth describes it in his literate programming approach? See for example the videos by Fauci etc. They say things like eh eh, pause then play music using items such as a pen, there is even a conductor. Very entertaining. Is that true? Or just my imagination?
  • jarmitage 4 hours ago
  • oliverpaddock 1 hour ago
    [dead]