Live data from Hacker News

Show HN: Handel – A procedural programming language for writing songs in browser

handel-pl.github.io

51–57 of 57 posts

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#51
post #2

I started building Handel some weeks ago, as a simple way of writing music with code. While the livecoding movement focuses on providing solutions for performing music live with code, and making changes on the fly -- I focused on simple song writing (one reason why I wouldn't consider Handel an esoteric language). One notable aspect of Handel is the behavior of its procedures, which are called chunks. Each chunk is c…

Definitely cool! I do like simple text-based music tools, and the fact that it has a live web player is excellent. A couple of things I noted: - I couldn't work out how to run two chunks in sequence - I'm presuming the language doesn't support it yet, since none of the examples do it either? - It would be nice if the "play" keyword accepted the "loop" syntax too (or something similar) - On the web editor, despite the…

Thanks for the feedback!

Running two chunks in sequence is currently not supported, but I've been considering a separate block (or a customization of a run of a chunk) that could allow that behavior.

Adding looping functionality to play would also be a nice addition.

Future plans wise, in the short term I'm looking to address some bugs and proposed features. But generally want to get the interpreter to a stable state

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#52

A try to JoJo: start chunk introriff play G4, B4, E5 for 16b play C5 for 4b play A#4 for 1b play C5 for 1b play A#4 for 1b play G4 for 5b play F#4 for 8b play A#4 for 12b play E3 for 12b play G4, B4, E5 for 12b play C5 for 4b play A#4 for 1b play C5 for 1b play A#4 for 1b play G4 for 5b play F#4 for 8b play B3 for 1b play C4 for 1b play D4 for 2b play F#3 for 1b play G3 for 1b play A3 for 2b play C3 for 20b play E3 f…

Love it!

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#53

I suspect that a lot of HN readers may not be aware that this is just the latest example of DSL's used for "live coding" music. There are others that have been around for a lot longer and have incorporated many (all?) of the features you will start to long for if you use this sort of tool a lot. Live-coding is an insanely geeky way to make music, but there are people out there doing quite interesting things with it.…

He says elsewhere in this thread that this is specifically not live coding. It's more geared towards composition then playback.

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#54
post #2

I started building Handel some weeks ago, as a simple way of writing music with code. While the livecoding movement focuses on providing solutions for performing music live with code, and making changes on the fly -- I focused on simple song writing (one reason why I wouldn't consider Handel an esoteric language). One notable aspect of Handel is the behavior of its procedures, which are called chunks. Each chunk is c…

Do you feel it's made it easier for you to compose? Has it changed the way you think about music?

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#55

I tinkered with it a bit and create this code[0] based on a song[1] that I'm learning. I think this tool is cool and has potential, but still need a lot more improvement. At least it needs a way to reduce duplicate in my code :) [0]: https://pastebin.com/9ziV0HRe [1]: https://www.youtube.com/watch?v=3t9iLEkTeAk

I added the loop customization to play commands in Handel v0.1.12.

So for repeating commands you can use this syntax:

play somenotelist for 1b loop for 5

Here is your code using the new feature: https://pastebin.com/bNwUHNaM

To make this more robust, I'll be looking to add looping constructs to allow more customized looping in the future.

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#56

A try to JoJo: start chunk introriff play G4, B4, E5 for 16b play C5 for 4b play A#4 for 1b play C5 for 1b play A#4 for 1b play G4 for 5b play F#4 for 8b play A#4 for 12b play E3 for 12b play G4, B4, E5 for 12b play C5 for 4b play A#4 for 1b play C5 for 1b play A#4 for 1b play G4 for 5b play F#4 for 8b play B3 for 1b play C4 for 1b play D4 for 2b play F#3 for 1b play G3 for 1b play A3 for 2b play C3 for 20b play E3 f…

So cool!

Re: Show HN: Handel – A procedural programming language for writing songs in browser

#57
post #2

I started building Handel some weeks ago, as a simple way of writing music with code. While the livecoding movement focuses on providing solutions for performing music live with code, and making changes on the fly -- I focused on simple song writing (one reason why I wouldn't consider Handel an esoteric language). One notable aspect of Handel is the behavior of its procedures, which are called chunks. Each chunk is c…

Is there a reason you decided to start from scratch with this DSL rather than implement one of the many other live coding DSLs on top of Tone.js ? Some specific vision of the end point, or just a desire to start from the beginning?

I wanted to deviate from live coding, and make a language that targets songwriting/composition. I think the end goal of live coding is slightly different, and seems to target performance (though live coding DSLs and applications can be used to do the former)
Post reply on HN