Re: prédicats de sous-type - activatio n
Thomas De Contes via Ada-france <[email protected]> Mon, 13 Dec 2021 01:05:08 +0100
| Newsgroups | gmane.comp.lang.ada.france |
|---|---|
| Message-ID | <[email protected]> |
Le 10 déc. 2021 à 22:07, Thomas De Contes via Ada-france a écrit : > > Le 22 sept. 2021 à 17:50, Thomas De Contes via Ada-france a écrit : > >> >> Le 20 avr. 2021 à 10:26, Jean-Pierre Rosen via Ada-france a écrit : >> > >>> NB: on laisse le contrôles (de sous-type par ex.) en version de prod, >>> car on estime que le surcoût des vérifs est faible devant le gain de >>> sécurité. Ca ne s'applique plus aux contrats, qui sont souvent très >>> coûteux. Encore une histoire de compromis bénéfice/risque... >> Par contre, il y a aussi beaucoup de contrats minuscules. >> Personnellement, il me semblerait judicieux que ce type de contrat soit activé tout le temps. > > > Dans la plupart des cas, > la solution est évidente : les prédicats de sous-type, bien sur ! >> Est ce que ça donne un mécanisme de vérification suffisamment robuste pour qu'on puisse, en toute tranquillité, à la fois : >> - dans le corps du sous-programme, considérer que les pré-conditions sont forcément respectées, donc pas besoin de les tester à nouveau, >> - au moment d'utiliser le sous-programme, prévoir un traitement d'exceptions pour traiter le cas où les pré-conditions ne sont pas respectées, sans avoir besoin de les tester avant l'appel du sous-programme ? Avant de continuer mes questions, j'aimerais vérifier que j'ai bien compris que les prédicats de sous-type sont activés tout le temps. J'avais cru comprendre ça en te lisant ci-dessus, ainsi que 11.4.2 l 10 rapidement, et je crois bien autre chose ailleurs aussi. Mais en lisant 3.2.4 l 8-11, puis 11.4.2 l 10 puis l 9 plus soigneusement, j'ai un doute. (Ça m'étonne que tout ça soit écrit pour rien, si les prédicats de sous-type sont activés tout le temps.) Alors, que dit 11.4.2 l 10 ? Est-ce que les prédicats de sous-type sont activés tout le temps ? Ou est-ce que ce sont seulement les tests d'appartenance avec le mot-clé "in" et l'attribut "'Valid", qui sont activés tout le temps, mais la vérification au moment des conversions de sous-type (3.2.4 l 31) est activée en fonction de "pragma Assertion_Policy" pour les "assertion_aspect_mark" "Static_Predicate" ou "Dynamic_Predicate" ? -- RAPID maintainer http://savannah.nongnu.org/projects/rapid/ _______________________________________________ Ada-france mailing list [email protected] https://mail.ada-france.org/cgi-bin/mailman/listinfo/ada-france