Hello Lukas, I suppose the reason why Harm makes the detour over the music-cause is because the articulations-property might be deleted. Thus to make sure we get the original full articulations-property he uses the original music instead.
Using (memq x l) sounds very reasonable. Afterall memq can be rewritten as (any (lambda y) (eq? x y)) l). The append-map Harms uses basically just changes to order so that first we extract all classes and then we check once, which does not really bring any advantage in performance (since we have to walk through all of them anyway). If anything this append-map solutions should be less efficient, as each type needs to be visited up to twice. Cheers, Valentin
signature.asc
Description: This is a digitally signed message part.