Live data from Hacker News

Compositional Music Composition

underscore.io

11–15 of 15 posts

Re: Compositional Music Composition

#11

Earlier quoted context omitted.

That's because traditional music notation isn't a DSL - it's a form of shorthand that gives you the bare minimum of information needed to create an interpretation. And if it's something like figured bass or a jazz lead sheet, it's not even close to what's actually performed. So if you take it literarily and think it's some kind of definitive description, you miss about 90% of what's going on. > my point basically is…

Note that Compose is designed to be a teaching aid and a fun toy, not to produce studio quality results.

yeah, I understand that. and I think it's a cool library. the + and | thing is neat. but, fwiw, I do want to produce studio-quality results. :-)

Re: Compositional Music Composition

#12

Earlier quoted context omitted.

Note that Compose is designed to be a teaching aid and a fun toy, not to produce studio quality results.

yeah, I understand that. and I think it's a cool library. the + and | thing is neat. but, fwiw, I do want to produce studio-quality results. :-)

Thanks for the comments -- agreed with everything you say. I'm also a musician and the intersection between music and code is really interesting to me. Compose is just a toy, but I'm interested in learning about musical systems that are not.

Re: Compositional Music Composition

#13

A couple things about this post: first, the NoteOn/NoteOff dichotomy comes from MIDI. it's pretty reasonable to argue that any other attempt to model music would involve sounds both beginning and ending, of course. but when you're designing sounds on a synthesizer, the terminology is Attack (for the start) and Release (for the end). second, the author talks about skipping dynamics, to keep the code simple. so the cod…

Great points. I agree that music notation is a mess. I'd rather not have dotted notes and so forth in Compose. They aren't meaningful unless you already know music notation, and it's no more work to specify, say, a three-beat long note via other means. They do, however, serve as a nice illustration of the combinator library pattern that Compose is teaching. As for jitter, I think one advantage of music DSLs is they m…

I started composing music on Scream Tracker for MS-DOS (http://en.wikipedia.org/wiki/Scream_Tracker). The layout there maintains a pretty good balance between being readable and machine executable. I'd like to try writing a tracker-style DSL for Compose to make the music easier to read. I've seen some really awesome interactive fader controls in Emacs (can't remember the name)---there could be some fun to be had doing similar things there too.

Re: Compositional Music Composition

#15
post #4

This seems to be similar to Euterpea, a domain-specific language embedded in Haskell for computer music composition: http://haskell.cs.yale.edu/euterpea/ . I'm curious what the differences are, either in capabilities or in overall goals, if anyone has looked at both.

I believe Compose is loosely based on Euterpea, but is much less full featured at this point in time. Euterpea probably can't parse guitar tab, though (a very fun feature that was recently added to Compose).

I dug into the Haskell Art of Expression (http://www.cs.yale.edu/homes/hudak/SOE/) a little to produce Compose. Not knowing much Haskell (yet), the influence was superficial, but I've no doubt that the similarities here are no coincidence.
Post reply on HN