C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en Anglais :-)
Est-ce suffisant pour parler de « promesse », dans le contexte de C++ ?
Ca devrait... j'espère que ces Messieurs partagent l'idée que le choix d'un mot a un rapport avec ce qu'il signifie ;-)
Un rapport, oui. Mais une « promesse » ?
--drkm
kanze
drkm wrote:
"Alain Naigeon" writes:
"drkm" a écrit dans le message news:
"Alain Naigeon" writes:
C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en Anglais :-)
Est-ce suffisant pour parler de « promesse », dans le contexte de C++ ?
Ca devrait... j'espère que ces Messieurs partagent l'idée que le choix d'un mot a un rapport avec ce qu'il signifie ;-)
Un rapport, oui. Mais une « promesse » ?
Et encore. En partant de la signification, pour choisir un mot clé, volatile en vaut un autre. Mais en partant du mot clé, sans connaître la signification d'avance, le mot volatile ne me dit pas grand chose.
La « promesse », évidemment, c'est dans la norme qu'on pourrait la trouver. En l'occurance. la promesse, c'est que les accès réels correspondraient aux accès de la machine abstraite, pour une définition d'accès donnée par l'implémentation.
Pas grand chose, en fait, mais assez pour que les implémentations de qualité puissent faire quelque chose d'utile sur les plateformes où ça a un sens. (Question intéressante : dans la mésure que les accès tels qu'ils sont définis par Sun CC et g++ sur Sparc ne peuvent pas être vu par un observeur -- à moins d'ouvrir le chip CPU et d'y attacher les sondes -- est-ce que ces compilateurs seraient conforme en ignorant complétement le volatile -- sauf sur un sig_atomic_t ou dans les contextes d'un setjmp, évidemment ?)
-- James Kanze GABI Software http://www.gabi-soft.fr Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
drkm wrote:
"Alain Naigeon" <anaigeon@free.fr> writes:
"drkm" <usenet.fclcxx@fgeorges.org> a écrit dans le message
news: wkbrcfi94b.fsf@fgeorges.org...
"Alain Naigeon" <anaigeon@free.fr> writes:
C'est le sens (figuré ) du mot volatile, aussi bien an
Français qu'en Anglais :-)
Est-ce suffisant pour parler de « promesse », dans le
contexte de C++ ?
Ca devrait... j'espère que ces Messieurs partagent l'idée
que le choix d'un mot a un rapport avec ce qu'il signifie
;-)
Un rapport, oui. Mais une « promesse » ?
Et encore. En partant de la signification, pour choisir un mot
clé, volatile en vaut un autre. Mais en partant du mot clé, sans
connaître la signification d'avance, le mot volatile ne me dit
pas grand chose.
La « promesse », évidemment, c'est dans la norme qu'on pourrait
la trouver. En l'occurance. la promesse, c'est que les accès
réels correspondraient aux accès de la machine abstraite, pour
une définition d'accès donnée par l'implémentation.
Pas grand chose, en fait, mais assez pour que les
implémentations de qualité puissent faire quelque chose d'utile
sur les plateformes où ça a un sens. (Question intéressante :
dans la mésure que les accès tels qu'ils sont définis par Sun CC
et g++ sur Sparc ne peuvent pas être vu par un observeur -- à
moins d'ouvrir le chip CPU et d'y attacher les sondes -- est-ce
que ces compilateurs seraient conforme en ignorant complétement
le volatile -- sauf sur un sig_atomic_t ou dans les contextes
d'un setjmp, évidemment ?)
--
James Kanze GABI Software http://www.gabi-soft.fr
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en Anglais :-)
Est-ce suffisant pour parler de « promesse », dans le contexte de C++ ?
Ca devrait... j'espère que ces Messieurs partagent l'idée que le choix d'un mot a un rapport avec ce qu'il signifie ;-)
Un rapport, oui. Mais une « promesse » ?
Et encore. En partant de la signification, pour choisir un mot clé, volatile en vaut un autre. Mais en partant du mot clé, sans connaître la signification d'avance, le mot volatile ne me dit pas grand chose.
La « promesse », évidemment, c'est dans la norme qu'on pourrait la trouver. En l'occurance. la promesse, c'est que les accès réels correspondraient aux accès de la machine abstraite, pour une définition d'accès donnée par l'implémentation.
Pas grand chose, en fait, mais assez pour que les implémentations de qualité puissent faire quelque chose d'utile sur les plateformes où ça a un sens. (Question intéressante : dans la mésure que les accès tels qu'ils sont définis par Sun CC et g++ sur Sparc ne peuvent pas être vu par un observeur -- à moins d'ouvrir le chip CPU et d'y attacher les sondes -- est-ce que ces compilateurs seraient conforme en ignorant complétement le volatile -- sauf sur un sig_atomic_t ou dans les contextes d'un setjmp, évidemment ?)
-- James Kanze GABI Software http://www.gabi-soft.fr Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Gabriel Dos Reis
writes:
| drkm wrote: | > writes: | | > > drkm wrote: | | > >> >>> Mais ce qui constitue un accès dans cette | > >> >>> contexte est défini par l'implémentation. | | > >> Ce à quoi j'ai répondu : | | > >> >> Même pas, « because the value of the object might be | > >> >> changed by means undetectable by an implementation ». | | > >> Quelque chose qui échappe à une implémentation n'est pas | > >> défini par elle. Si ? | | > > Mais quel rapport. Tous les « accès » ne proviennent pas de | > > l'implémentation, et surtout, on considère ici la | > > possibilité que la valeur peut changer sans un accès. | | > Mais comment une implémentation peut-elle « définir » ce | > qu'est un accès lorsque tout peut arriver par ailleurs ? | | Quel rapport ?
Quel rapport ?
| Les accès, c'est l'implémentation qui les font et | les définit.
Si c'est l'implémentation qui fait l'accès, alors les moyens sont connus.
-- Gaby
kanze@gabi-soft.fr writes:
| drkm wrote:
| > kanze@gabi-soft.fr writes:
|
| > > drkm wrote:
|
| > >> >>> Mais ce qui constitue un accès dans cette
| > >> >>> contexte est défini par l'implémentation.
|
| > >> Ce à quoi j'ai répondu :
|
| > >> >> Même pas, « because the value of the object might be
| > >> >> changed by means undetectable by an implementation ».
|
| > >> Quelque chose qui échappe à une implémentation n'est pas
| > >> défini par elle. Si ?
|
| > > Mais quel rapport. Tous les « accès » ne proviennent pas de
| > > l'implémentation, et surtout, on considère ici la
| > > possibilité que la valeur peut changer sans un accès.
|
| > Mais comment une implémentation peut-elle « définir » ce
| > qu'est un accès lorsque tout peut arriver par ailleurs ?
|
| Quel rapport ?
Quel rapport ?
| Les accès, c'est l'implémentation qui les font et
| les définit.
Si c'est l'implémentation qui fait l'accès, alors les moyens sont
connus.
| drkm wrote: | > writes: | | > > drkm wrote: | | > >> >>> Mais ce qui constitue un accès dans cette | > >> >>> contexte est défini par l'implémentation. | | > >> Ce à quoi j'ai répondu : | | > >> >> Même pas, « because the value of the object might be | > >> >> changed by means undetectable by an implementation ». | | > >> Quelque chose qui échappe à une implémentation n'est pas | > >> défini par elle. Si ? | | > > Mais quel rapport. Tous les « accès » ne proviennent pas de | > > l'implémentation, et surtout, on considère ici la | > > possibilité que la valeur peut changer sans un accès. | | > Mais comment une implémentation peut-elle « définir » ce | > qu'est un accès lorsque tout peut arriver par ailleurs ? | | Quel rapport ?
Quel rapport ?
| Les accès, c'est l'implémentation qui les font et | les définit.
Si c'est l'implémentation qui fait l'accès, alors les moyens sont connus.
-- Gaby
Gabriel Dos Reis
"Alain Naigeon" writes:
| "Gabriel Dos Reis" a écrit dans le message | news: | > "Alain Naigeon" writes: | > | > [...] | > | > | > Et surtout comment | > | > je vérifie que c'est quelque chose que fait le compilateur ? | > | | > | Je croyais tu écrivais des parties de compilateurs. | > | > Mais cela n'explique pas ce que tu as écrit. Et tsurtout cela ne | > m;explique pas comment *tu* envisages qu'on vérifie ce que le | > compilateur pond. | | Le "on" est significatif d'une confusion :
confusion chez toi ?
| moi, utilisateur du langage, je n'ai rien à vérifier ; j'attends | simplement qu'on tienne la promesse donnée par le mot "volatile",
et quelle est exaxtement cette promesse ? Peux-tu la formuler clairement ?
| certainement pas choisi par hasard, c'est à dire : générer quelque | chose d'assez proche de ce que j'ai écrit pour qu'en aucune | circonstance le résultat ne soit différent d'une traduction | totalement fidèle.
Oui mais c'est quoi une « traduction fidèle » ? Tu tournes en rond.
| En l'occurrence, c'est à ceux ayant inventé | volatile de s'assurer qu'il est implémentable. Si tu | penses qu'il ne l'est pas,
Tu as trouvé ça où ?
| il faut envoyer un message fort aux | utilisateurs du langage pour demander officiellement qu'il en soit | retiré. | | > | > | > | | > | > | Maintenant, s'agissant de 4 instructions machine, ce code | > | > | est interruptible, | > | > | > | > Comment et où ? | > | | > | Bah, tu sais, j'ai programmé des routines d'interruption, | > | alors arrête de botter en touche sans apporter un seul | > | élément positif, | > | > Tu fais des affirmations ; on te demande plus d'explications et des | > justifications et tu appelles cela botter en touche. Ahem. | | Oui, c'est ça : | 1 load | 2 store | 3 load | 4 store | | Si tu supprimes le 3, tu peux avoir une interruption | après le 2, qui peut changer la valeur en mémoire, | ce qui rend le 4 obsolete puisque l'interruption a | laissé le registre inchangé. Que veux-tu de plus ?
Que tu me définisses ce que c'est que load/store. Parce que ce ne sont pas toutes les machines qui font load/store. Et si la compilateur ne fait pas load/store, comment peux-tu le savoir, ou pour reprendre ton propre vocabulaire comment fais-tu pour savoir que je le compilateur génère un code «totalement fidèle » ? C'est une question sérieuse. Si tu ne la comprends pas, je doute fort que tu comprennes et vois le problème que pose « volatile » dans sa sémantique et dans sa formulation.
-- Gaby
"Alain Naigeon" <anaigeon@free.fr> writes:
| "Gabriel Dos Reis" <gdr@integrable-solutions.net> a écrit dans le message
| news:
| > "Alain Naigeon" <anaigeon@free.fr> writes:
| >
| > [...]
| >
| > | > Et surtout comment
| > | > je vérifie que c'est quelque chose que fait le compilateur ?
| > |
| > | Je croyais tu écrivais des parties de compilateurs.
| >
| > Mais cela n'explique pas ce que tu as écrit. Et tsurtout cela ne
| > m;explique pas comment *tu* envisages qu'on vérifie ce que le
| > compilateur pond.
|
| Le "on" est significatif d'une confusion :
confusion chez toi ?
| moi, utilisateur du langage, je n'ai rien à vérifier ; j'attends
| simplement qu'on tienne la promesse donnée par le mot "volatile",
et quelle est exaxtement cette promesse ? Peux-tu la formuler
clairement ?
| certainement pas choisi par hasard, c'est à dire : générer quelque
| chose d'assez proche de ce que j'ai écrit pour qu'en aucune
| circonstance le résultat ne soit différent d'une traduction
| totalement fidèle.
Oui mais c'est quoi une « traduction fidèle » ? Tu tournes en rond.
| En l'occurrence, c'est à ceux ayant inventé
| volatile de s'assurer qu'il est implémentable. Si tu
| penses qu'il ne l'est pas,
Tu as trouvé ça où ?
| il faut envoyer un message fort aux
| utilisateurs du langage pour demander officiellement qu'il en soit
| retiré.
|
| >
| > | > |
| > | > | Maintenant, s'agissant de 4 instructions machine, ce code
| > | > | est interruptible,
| > | >
| > | > Comment et où ?
| > |
| > | Bah, tu sais, j'ai programmé des routines d'interruption,
| > | alors arrête de botter en touche sans apporter un seul
| > | élément positif,
| >
| > Tu fais des affirmations ; on te demande plus d'explications et des
| > justifications et tu appelles cela botter en touche. Ahem.
|
| Oui, c'est ça :
| 1 load
| 2 store
| 3 load
| 4 store
|
| Si tu supprimes le 3, tu peux avoir une interruption
| après le 2, qui peut changer la valeur en mémoire,
| ce qui rend le 4 obsolete puisque l'interruption a
| laissé le registre inchangé. Que veux-tu de plus ?
Que tu me définisses ce que c'est que load/store. Parce que ce ne sont
pas toutes les machines qui font load/store. Et si la compilateur ne
fait pas load/store, comment peux-tu le savoir, ou pour reprendre ton
propre vocabulaire comment fais-tu pour savoir que je le compilateur
génère un code «totalement fidèle » ? C'est une question sérieuse. Si
tu ne la comprends pas, je doute fort que tu comprennes et vois le
problème que pose « volatile » dans sa sémantique et dans sa
formulation.
| "Gabriel Dos Reis" a écrit dans le message | news: | > "Alain Naigeon" writes: | > | > [...] | > | > | > Et surtout comment | > | > je vérifie que c'est quelque chose que fait le compilateur ? | > | | > | Je croyais tu écrivais des parties de compilateurs. | > | > Mais cela n'explique pas ce que tu as écrit. Et tsurtout cela ne | > m;explique pas comment *tu* envisages qu'on vérifie ce que le | > compilateur pond. | | Le "on" est significatif d'une confusion :
confusion chez toi ?
| moi, utilisateur du langage, je n'ai rien à vérifier ; j'attends | simplement qu'on tienne la promesse donnée par le mot "volatile",
et quelle est exaxtement cette promesse ? Peux-tu la formuler clairement ?
| certainement pas choisi par hasard, c'est à dire : générer quelque | chose d'assez proche de ce que j'ai écrit pour qu'en aucune | circonstance le résultat ne soit différent d'une traduction | totalement fidèle.
Oui mais c'est quoi une « traduction fidèle » ? Tu tournes en rond.
| En l'occurrence, c'est à ceux ayant inventé | volatile de s'assurer qu'il est implémentable. Si tu | penses qu'il ne l'est pas,
Tu as trouvé ça où ?
| il faut envoyer un message fort aux | utilisateurs du langage pour demander officiellement qu'il en soit | retiré. | | > | > | > | | > | > | Maintenant, s'agissant de 4 instructions machine, ce code | > | > | est interruptible, | > | > | > | > Comment et où ? | > | | > | Bah, tu sais, j'ai programmé des routines d'interruption, | > | alors arrête de botter en touche sans apporter un seul | > | élément positif, | > | > Tu fais des affirmations ; on te demande plus d'explications et des | > justifications et tu appelles cela botter en touche. Ahem. | | Oui, c'est ça : | 1 load | 2 store | 3 load | 4 store | | Si tu supprimes le 3, tu peux avoir une interruption | après le 2, qui peut changer la valeur en mémoire, | ce qui rend le 4 obsolete puisque l'interruption a | laissé le registre inchangé. Que veux-tu de plus ?
Que tu me définisses ce que c'est que load/store. Parce que ce ne sont pas toutes les machines qui font load/store. Et si la compilateur ne fait pas load/store, comment peux-tu le savoir, ou pour reprendre ton propre vocabulaire comment fais-tu pour savoir que je le compilateur génère un code «totalement fidèle » ? C'est une question sérieuse. Si tu ne la comprends pas, je doute fort que tu comprennes et vois le problème que pose « volatile » dans sa sémantique et dans sa formulation.
-- Gaby
Gabriel Dos Reis
"Alain Naigeon" writes:
| "drkm" a écrit dans le message news: | | > "Alain Naigeon" writes: | > | > > la promesse | > > donnée par le mot "volatile" | > | > Mais quelle est-elle ? | | T'as oublié de lire avant de tronquer une citation
Je ne crois pas.
-- Gaby
"Alain Naigeon" <anaigeon@free.fr> writes:
| "drkm" <usenet.fclcxx@fgeorges.org> a écrit dans le message news:
| wkk6r4hl71.fsf@fgeorges.org...
| > "Alain Naigeon" <anaigeon@free.fr> writes:
| >
| > > la promesse
| > > donnée par le mot "volatile"
| >
| > Mais quelle est-elle ?
|
| T'as oublié de lire avant de tronquer une citation
| "drkm" a écrit dans le message news: | | > "Alain Naigeon" writes: | > | > > la promesse | > > donnée par le mot "volatile" | > | > Mais quelle est-elle ? | | T'as oublié de lire avant de tronquer une citation
Je ne crois pas.
-- Gaby
Gabriel Dos Reis
"Alain Naigeon" writes:
| C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en | Anglais :-)
La norme volatile n'est pas écrite au sens figuré en du français ou de l'anglais.
-- Gaby
"Alain Naigeon" <anaigeon@free.fr> writes:
| C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en
| Anglais :-)
La norme volatile n'est pas écrite au sens figuré en du français ou de
l'anglais.
| C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en | Anglais :-)
La norme volatile n'est pas écrite au sens figuré en du français ou de l'anglais.
-- Gaby
Gabriel Dos Reis
drkm writes:
| "Alain Naigeon" writes: | | > C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en | > Anglais :-) | | Est-ce suffisant pour parler de « promesse », dans le contexte de | C++ ?
et surtout quel sera ta réaction quand tu découvriras que le compilateur est buggué et que l'auteur te répond qu'il a généré du code au sens figuré de volatile ?
-- Gaby
drkm <usenet.fclcxx@fgeorges.org> writes:
| "Alain Naigeon" <anaigeon@free.fr> writes:
|
| > C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en
| > Anglais :-)
|
| Est-ce suffisant pour parler de « promesse », dans le contexte de
| C++ ?
et surtout quel sera ta réaction quand tu découvriras que le
compilateur est buggué et que l'auteur te répond qu'il a généré du
code au sens figuré de volatile ?
| "Alain Naigeon" writes: | | > C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en | > Anglais :-) | | Est-ce suffisant pour parler de « promesse », dans le contexte de | C++ ?
et surtout quel sera ta réaction quand tu découvriras que le compilateur est buggué et que l'auteur te répond qu'il a généré du code au sens figuré de volatile ?
-- Gaby
Gabriel Dos Reis
writes:
| d'écriture. D'une côté, c'est une définition sans la moindre | utilité,
et, en pratique, sans aucun sens utilisable. Tu viens de comprendre « volatile ».
-- Gaby
kanze@gabi-soft.fr writes:
| d'écriture. D'une côté, c'est une définition sans la moindre
| utilité,
et, en pratique, sans aucun sens utilisable. Tu viens de comprendre
« volatile ».
| d'écriture. D'une côté, c'est une définition sans la moindre | utilité,
et, en pratique, sans aucun sens utilisable. Tu viens de comprendre « volatile ».
-- Gaby
Gabriel Dos Reis
writes:
[...]
| qu'ils lui donnent. Mais le C et le C++ ne sont pas conçu pour
Il est aussi à préciser que dans le cas de C++, son concepteur n'a pas estimé que « volatile » (du moins dans sa sémantique C) est une fonctionnalité fiable et n'a pas senti le besoin d'élaborer plus dans cette voie. Et le comité C++ non plus. (Quiz : analyser attentivement le traitement de « const » et celui de « volatile » dans la norme.)
-- Gaby
kanze@gabi-soft.fr writes:
[...]
| qu'ils lui donnent. Mais le C et le C++ ne sont pas conçu pour
Il est aussi à préciser que dans le cas de C++, son concepteur n'a pas
estimé que « volatile » (du moins dans sa sémantique C) est une
fonctionnalité fiable et n'a pas senti le besoin d'élaborer plus dans
cette voie. Et le comité C++ non plus. (Quiz : analyser attentivement
le traitement de « const » et celui de « volatile » dans la norme.)
| qu'ils lui donnent. Mais le C et le C++ ne sont pas conçu pour
Il est aussi à préciser que dans le cas de C++, son concepteur n'a pas estimé que « volatile » (du moins dans sa sémantique C) est une fonctionnalité fiable et n'a pas senti le besoin d'élaborer plus dans cette voie. Et le comité C++ non plus. (Quiz : analyser attentivement le traitement de « const » et celui de « volatile » dans la norme.)
-- Gaby
Gabriel Dos Reis
"Alain Naigeon" writes:
| "drkm" a écrit dans le message news: | | > "Alain Naigeon" writes: | > | > > "drkm" a écrit dans le message news: | > > | > | > >> "Alain Naigeon" writes: | > | > >> > C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en | > >> > Anglais :-) | > | > >> Est-ce suffisant pour parler de « promesse », dans le contexte de | > >> C++ ? | > | > > Ca devrait... j'espère que ces Messieurs partagent l'idée que le choix | > > d'un mot a un rapport avec ce qu'il signifie ;-) | > | > Un rapport, oui. Mais une « promesse » ? | | Alors je prends ton "Mais" comme n'ayant qu'un rapport | avec l'idée de contester mon point de vue - à défaut de | promesse.
Bref, tu n'expliqueras jamais ce que tu as voulu dire. Et tu parlais de « constructif » ? Cela doit être un canular.
-- Gaby
"Alain Naigeon" <anaigeon@free.fr> writes:
| "drkm" <usenet.fclcxx@fgeorges.org> a écrit dans le message news:
| wkacrxx6ju.fsf@fgeorges.org...
| > "Alain Naigeon" <anaigeon@free.fr> writes:
| >
| > > "drkm" <usenet.fclcxx@fgeorges.org> a écrit dans le message news:
| > > wkbrcfi94b.fsf@fgeorges.org...
| >
| > >> "Alain Naigeon" <anaigeon@free.fr> writes:
| >
| > >> > C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en
| > >> > Anglais :-)
| >
| > >> Est-ce suffisant pour parler de « promesse », dans le contexte de
| > >> C++ ?
| >
| > > Ca devrait... j'espère que ces Messieurs partagent l'idée que le choix
| > > d'un mot a un rapport avec ce qu'il signifie ;-)
| >
| > Un rapport, oui. Mais une « promesse » ?
|
| Alors je prends ton "Mais" comme n'ayant qu'un rapport
| avec l'idée de contester mon point de vue - à défaut de
| promesse.
Bref, tu n'expliqueras jamais ce que tu as voulu dire.
Et tu parlais de « constructif » ? Cela doit être un canular.
| "drkm" a écrit dans le message news: | | > "Alain Naigeon" writes: | > | > > "drkm" a écrit dans le message news: | > > | > | > >> "Alain Naigeon" writes: | > | > >> > C'est le sens (figuré ) du mot volatile, aussi bien an Français qu'en | > >> > Anglais :-) | > | > >> Est-ce suffisant pour parler de « promesse », dans le contexte de | > >> C++ ? | > | > > Ca devrait... j'espère que ces Messieurs partagent l'idée que le choix | > > d'un mot a un rapport avec ce qu'il signifie ;-) | > | > Un rapport, oui. Mais une « promesse » ? | | Alors je prends ton "Mais" comme n'ayant qu'un rapport | avec l'idée de contester mon point de vue - à défaut de | promesse.
Bref, tu n'expliqueras jamais ce que tu as voulu dire. Et tu parlais de « constructif » ? Cela doit être un canular.