| "Gabriel Dos Reis" a écrit dans le message | news: | > "Alain Naigeon" writes: | > | : dès lors | > | qu'il n'y aura jamais exécution, en quoi la validité est-elle | > | nécessaire ?? | > | > Parce que le fait qu'une instruction soit grammaticallement correcte | > est indépendante de ce qu'elle soit effectivement exécutée. | | Ma question était : pourquoi exiges-tu la correction grammaticale | pour du code dont une instruction valide [ if( false) ] exclut qu'il | soit jamais exécuté ?
Parce que le fait que tu saches que le code ne sera jamais exécuté est un cas *particulier* de la situation générale
if (condition)
où condition est une expression générale qui peut se convertir en valeur booléenne. De manière générale, on ne sait pas à la compilation laquelle des deux branches sera exécutée, donc on vérifie les deux. C'est une règle générale, simple à énoncer. Construire un langage de programmation comme une accumulation de cas particuliers est un très bon moyen pour avoir un langage incohérent, difficile à comprendre et å utiliser -- tu ne devrais pas avoir du mal à trouver des exemples qui illustrent ce point (hint: vector<T>(20, 4) :-)
| Est-ce que la compilation est une esthétique, | ou une pratique ?
Pratique.
| Et cette fois c'est moi qui demande ça ;-)
Si tu ne veux pas une vérification grammaticale, C++ a fournit au moins deux moyens de s'en passer :
(1) utilise une directive préprocesseur d'inclusion conditionnelle ; (2) utilise les commentaires.
-- Gaby
"Alain Naigeon" <anaigeon@free.fr> writes:
| "Gabriel Dos Reis" <gdr@integrable-solutions.net> a écrit dans le message
| news: m3brq58w0j.fsf@uniton.integrable-solutions.net...
| > "Alain Naigeon" <anaigeon@free.fr> writes:
| > | : dès lors
| > | qu'il n'y aura jamais exécution, en quoi la validité est-elle
| > | nécessaire ??
| >
| > Parce que le fait qu'une instruction soit grammaticallement correcte
| > est indépendante de ce qu'elle soit effectivement exécutée.
|
| Ma question était : pourquoi exiges-tu la correction grammaticale
| pour du code dont une instruction valide [ if( false) ] exclut qu'il
| soit jamais exécuté ?
Parce que le fait que tu saches que le code ne sera jamais exécuté est
un cas *particulier* de la situation générale
if (condition)
où condition est une expression générale qui peut se convertir en
valeur booléenne. De manière générale, on ne sait pas à la compilation
laquelle des deux branches sera exécutée, donc on vérifie les deux.
C'est une règle générale, simple à énoncer. Construire un langage de
programmation comme une accumulation de cas particuliers est un très
bon moyen pour avoir un langage incohérent, difficile à comprendre et
å utiliser -- tu ne devrais pas avoir du mal à trouver des exemples
qui illustrent ce point (hint: vector<T>(20, 4) :-)
| Est-ce que la compilation est une esthétique,
| ou une pratique ?
Pratique.
| Et cette fois c'est moi qui demande ça ;-)
Si tu ne veux pas une vérification grammaticale, C++ a fournit au
moins deux moyens de s'en passer :
(1) utilise une directive préprocesseur d'inclusion conditionnelle ;
(2) utilise les commentaires.
| "Gabriel Dos Reis" a écrit dans le message | news: | > "Alain Naigeon" writes: | > | : dès lors | > | qu'il n'y aura jamais exécution, en quoi la validité est-elle | > | nécessaire ?? | > | > Parce que le fait qu'une instruction soit grammaticallement correcte | > est indépendante de ce qu'elle soit effectivement exécutée. | | Ma question était : pourquoi exiges-tu la correction grammaticale | pour du code dont une instruction valide [ if( false) ] exclut qu'il | soit jamais exécuté ?
Parce que le fait que tu saches que le code ne sera jamais exécuté est un cas *particulier* de la situation générale
if (condition)
où condition est une expression générale qui peut se convertir en valeur booléenne. De manière générale, on ne sait pas à la compilation laquelle des deux branches sera exécutée, donc on vérifie les deux. C'est une règle générale, simple à énoncer. Construire un langage de programmation comme une accumulation de cas particuliers est un très bon moyen pour avoir un langage incohérent, difficile à comprendre et å utiliser -- tu ne devrais pas avoir du mal à trouver des exemples qui illustrent ce point (hint: vector<T>(20, 4) :-)
| Est-ce que la compilation est une esthétique, | ou une pratique ?
Pratique.
| Et cette fois c'est moi qui demande ça ;-)
Si tu ne veux pas une vérification grammaticale, C++ a fournit au moins deux moyens de s'en passer :
(1) utilise une directive préprocesseur d'inclusion conditionnelle ; (2) utilise les commentaires.
-- Gaby
Loïc Joly
Alain Naigeon wrote:
Moi, déjà, ce que je comprends pas, c'est "let f x =" [avec ou sans rec] Ca s'écrit comment en C++ ?
T f (U x) { }
Avec T et U des types déduites par le système d'inférence de type.
-- Loïc
Alain Naigeon wrote:
Moi, déjà, ce que je comprends pas, c'est "let f x =" [avec ou sans rec]
Ca s'écrit comment en C++ ?
T f (U x)
{
}
Avec T et U des types déduites par le système d'inférence de type.