alda-lang / alda

A music programming language for musicians. :notes:
https://alda.io
Eclipse Public License 2.0
5.59k stars 286 forks source link

Added Mr Tambourine Man as if played on guitar example #393

Closed t0mk closed 3 years ago

t0mk commented 3 years ago

Hey, I've just dicovered alda a couple of hours ago and tried to put together Mr. Tambourine Man as I'd play it on guitar.

I think the code is a bit clumsy because I didn't really figure how make variable of a chord, and then use the var with different lengths.

Thanks for the work on alda, it took me really short time to start. You don't have to merge this in if you don't want, but you can give me feedback how to maybe work with chords more efficiently in alda.

daveyarwood commented 3 years ago

Nice work! :100:

I will pass on including this in the examples, only in the interest of keeping the set of examples small and focused on specific Alda features. But I did play around with this a little and came up with a way to use a variable avoid repeating the notes in each chord:

gmaj = o2 g>/d/g/b>/d/g~
gc = (set-note-length 8) gmaj
gc2 = (set-note-length 4) gmaj
gc3 = (set-note-length "4.") gmaj

I wish there were a nice, concise way to take a chord (or perhaps a variable?) and repeat it with a different duration, but that's a problem I've never been able to solve with the design of Alda. If anyone reading this has thoughts, it might be a good thing to brainstorm about!

t0mk commented 3 years ago

@daveyarwood thanks for the tips!