Werner LEMBERG <[email protected]> writes:
>>> part[3].violin[1]
>>
>> That's the logic of the musician rather than the programmer speaking.
>> If you wanted it to be _that_, you'd have to call it \part3violin1, I am
>> afraid.
>
> Oh, yes, of course, I forgot to mention it.
>
>> I actually don't see all that many uses for it (possibly because I
>> did not write large projects in Lilypond yet) until one starts doing
>> iterators and similar fun (not part of this proposal). One obvious
>> use case would be to use a vector as the recipient for
>> \parallelMusic.
>
> There's a misunderstanding: I'm not talking about using those
> `vectors' within Scheme programming, but simply to give structure to
> the whole bunch of necessary parts of a large-scale score with many
> movements.
TeX programmers have no qualms doing (code cleaned up for clarity):
\count255=0
\loop
\advance \count255 by 1 %
\ifnum \count255<#2\relax
{\csname part\number\count255 violin#1\endcsname}%
\repeat
namely using the command names for indexing purposes. Of course, one
can already do that with Scheme. Whatever value you can recall with
\xxx from a Scheme variable named xxx, you can equally well access using
$(some-scheme-construct) from more complex Scheme structures. But
some-scheme-construct can't go looking for arguments in Lilypond syntax.
--
David Kastrup
_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond