lilypond-user-fr
[Top][All Lists]
Advanced

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

Re: nom des variables utilisant des chiffres ?


From: Valentin Villenave
Subject: Re: nom des variables utilisant des chiffres ?
Date: Wed, 13 Nov 2019 13:07:49 +0100

On 11/13/19, address@hidden <address@hidden> wrote:
> J'ai une petite incompréhension avec la fonction enlever nuances et tags .
> J'ai enlevé le "not"  dans la définition garderNuances que j'ai complétée

C’est normal : vous n’avez enlevé que le "not" qui cherche le tag, pas
celui qui vérifie si la direction est indéfinie ("null?").

Tout dépend de ce que vous cherchez à obtenir. Le principe que
j’utilise pour enleverNuances est d’enlever toutes les nuances SAUF
celles qui ont une direction explicite OU un certain tag.

Du coup, dans enleverNuances, le "and" est en trois critères :
    (not ; objets à enlever :
        (and ; si toutes les conditions suivantes sont réunies
              (dynamic? x) ; c’est bien une nuance
              (not (memq 'ici tags)) ; elle n’a pas le tag
              (null? dir))) ; sa direction n’est pas définie

Alors certes, on pourrait faire le contraire exact dans garderNuances,
comme vous avez commencé à faire :
    (not ; objets à enlever :
        (and ; si toutes les conditions suivantes sont réunies
              (dynamic? x) ; c’est bien une nuance
              (memq 'ici tags) ; elle possède bien le tag
              (not (null? dir))))  ; sa direction n’est PAS indéfinie

Toutefois cela voudrait dire que pour qu’une nuance soit enlevée il
faudrait À LA FOIS qu’elle soit taggée et qu’elle ait une direction
explicite. Ce qui n’est pas très pratique.

Donc inversement, garderNuances va enlever les nuances seulement SI
elles ont SOIT une direction explicite SOIT un certain tag. En fait,
nous allons avoir besoin d’un "or" quelque part:
    (not ; objets à enlever :
        (and ; si toutes les conditions sont réunies
              (dynamic? x) ; c’est bien une nuance ET
              (or ; l’une ou l’autre des conditions suivantes :
                  (memq 'ici tags) ; soit elle a le tag
                  (not (null? dir))))) ; ou sa direction est définie

C’est un principe de logique booléenne, ou même tout simplement de
langage : si quelqu’un vous demande
-- "veux-tu des pommes et des poires?"
 et que vous lui répondez
-- "non merci",
votre réponse reste ambigüe ; il faudra lui indiquer plus spécifiquement
-- "je ne veux pas À LA FOIS des pommes ET des poires, l’un des deux me suffit",
ou
-- "je ne veux NI des pommes NI des poires".

Cordialement,
V. V.



reply via email to

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