On Tue, Jul 30, 2024 at 5:57 AM David Kastrup <d...@gnu.org> wrote:

> Lukas-Fabian Moser <l...@gmx.de> writes:
>
> > You're using append! wrong.
> > So try
> >
> > (set! fl (append fl ...))
>
> (append! '() ...)
>
> cannot modify an empty list in-place because there is only one empty
> list in the whole system and it is an unchangeable constant.
>
oh. Right, thanks for setting me straight :-)

Your suggestion helped me see the real issue with my code:
my understanding of how acknowledgers run was flawed.

Applying your fix I see that the fingering ack'er runs 3 times for a chord
event,
while the ack'er for the associated stem runs once (arguably there are 3
heads and one stem,
so this part makes sense), but more importantly process-music runs only
once after all the above has happened.

As I was typing the email, I got a suspect that the whole scheme
(implemented in scheme, ha.) would fall flat on its face when dealing with
whole-notes.
But instead it doesn't. I can see that both rests and whole notes have
associated Stem grobs.

What kind of sorcery is that?

Thanks again guys
L


-- 
Luca Fascione

Reply via email to