lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: rall. autocalculation function in Scheme


From: Adam M. Griggs
Subject: Re: rall. autocalculation function in Scheme
Date: Mon, 6 Feb 2023 15:50:02 +0900

I've given it some more work. The \repeat construct is gone, and the displayed messages indicate that my recursion is working correctly.

Metronome marks are not yet printed, however. What am I missing? Also, I'm getting a wrong type argument error message when I try to (let* (current-tempo (car tempo-list))). I feel like I'm almost there though.

Code attached, and thanks again.

On Mon, 6 Feb 2023 at 14:19, Adam M. Griggs <adammgriggs@gmail.com> wrote:
Hello list,

I'm trying to create a Scheme function that will automatically calculate and enact a rall. as a sequence of \tempo assignments. I am aware of the basic rall., rit., and accel. functions in "articulate.ly" but I wanted something I have a little more control over.

I need help, and I don't know if it's just in the implementation details or my overall approach to the problem.

For now, it's just a rall. The algorithm describing the rate of slowdown is extremely basic but that can be adjusted later.

My approach so far has been to create a list of values starting at 100 (let's assume percentages of the initial tempo and work that in later) and then have them trickle down. Using #(display ...), I see this is working just fine.

Clearly my \repeat call isn't appropriate here and I should replace it with a recursive function call containing just its body (the {\tempo 4 = ... \skip ...} part). And I'm sure I'm not really going to get anywhere with #@tempi-list but I hope it communicates what I'm aiming for. I've been playing with this for a few hours but I haven't been able to get the parts to mesh together. I could keep stabbing at it, or ask for help here.

Code attached, and thank you!

Attachment: myRall.ily
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]