SO a plusieurs questions en utilisant le mot «véracité» pour désigner la valeur de vérité d'une expression, lorsqu'elle est évaluée comme un booléen, quel que soit son type d'origine. C'est très utile dans les langages dynamiques.
Donc ma question est, est-ce un vrai terme, et si oui, l'utilisions-nous avant que Stephen Colbert ne le rende populaire? Ou l'avons-nous adopté par la suite? Dans ce cas, quel est le terme correct avec la définition que j'ai donnée ci-dessus?
terminology
Tesserex
la source
la source
Réponses:
Il y a beaucoup de débat sur la véracité .
Merriam-Webster le définit comme:
1: «la vérité qui vient de l'intestin, pas des livres» (Stephen Colbert, «The Colbert Report» de Comedy Central, octobre 2005)
2: «la qualité de préférer des concepts ou des faits que l'on souhaite être vrais, plutôt que concepts ou faits connus pour être vrais "(American Dialect Society, janvier 2006)
Oxford Dictionaries Online le définit comme:
Il a été utilisé un peu sur Usenet avant Stephen Colbert, mais généralement expliqué dès qu'il est utilisé, comme "la qualité de l'énoncé de concepts ou de faits que l'on souhaite ou croit être vrais, plutôt que des concepts ou des faits connus pour être vrais".
Retour à la programmation. Quelle que soit l'origine, ce sens moderne de la «vérité de l'intestin, même si elle n'est pas vraie» est clairement incorrect la plupart du temps lorsque l'on discute de la logique booléenne et des tables de vérité: cette
if
affirmation est définitivement vraie, et cettewhile
affirmation est fausse jusqu'à(i > k)
. Mon intuition n'y entre pas.Si vous utilisez la véracité dans la programmation, vous utilisez probablement le sens rare de la véracité du 19e siècle , et il serait à la fois plus clair (et sans doute plus correct) d'utiliser la véracité ou simplement la vérité .
Ngram :
Bien sûr, l'anglais change au fur et à mesure que l'utilisation change, et certaines personnes ont commencé à utiliser la vérité pour dire la vérité dans la programmation. Cependant, je déconseille la véracité pour éviter toute ambiguïté de sens («vraie vérité absolue» contre «mon instinct de vérité, quels que soient les faits»).
la source
C'est un terme qui est connu et acceptable dans certains cercles (par exemple les comparaisons booléennes JavaScript). En tant que tel, il s'agit d'un «vrai» terme. En raison de son utilisation, il devient légitime.
Tous ces termes viennent de quelque part - ils n'apparaissent pas dans le monde complètement formés et avec une signification établie (par exemple - les bogues logiciels n'avaient pas le sens qu'ils ont maintenant quand les ordinateurs électroniques commencent à peine à exister).
Que ce soit académiquement accepté - c'est une autre affaire. Pour autant que je sache, il n'y a pas de terme formel pour cette signification floue des valeurs booléennes.
la source
It has been just so in all of my inventions. The first step is an intuition, and comes with a burst, then difficulties arise—this thing gives out and [it is] then that 'Bugs' — as such little faults and difficulties are called—show themselves and months of intense watching, study and labor are requisite before commercial success or failure is certainly reached.
Cela me semble très similaire aux bogues des logiciels modernes.Je considère la vérité comme un terme légitime utilisé par rapport à l'évaluation JavaScript. Le livre de Douglas Crockford sur JavaScript - «JavaScript the Good Parts» définit les termes que JavaScript «si» évalue comme vrais pour être «véridiques». De même, il définit les termes que JavaScript évalue à faux comme «fausses». Il utilise également le terme pour mettre en évidence le fonctionnement de l'évaluation '==' en JavaScript (qui est différent de la façon dont de nombreux utilisateurs de JavaScript semblent croire que cela fonctionne).
Extrait des éléments du style JavaScript de Crockford
Dans ce contexte, le terme est à la fois légitime et utile.
Comme illustration supplémentaire du vrai et du faux dans ce contexte, ces cas sont illustratifs.
la source
[]
est évalué à faux lorsqu'il est utilisé comme un booléen, etc.0
,None
,[]
et ainsi de suite.La véracité a été un mot bien avant que Stephen Colbert ne l'utilise. Je pourrais jurer que je l'ai vu dans des articles sur la logique / l'IA, et dans certains articles sur la physique aussi, mais je n'arrive pas à trouver une référence à celle qui est antérieure à l'émission de Stephen Colbert.
la source
La véracité est un terme légitime et bien défini dans Clojure, où il fait référence à la propriété d'une valeur considérée comme vraie dans une déclaration conditionnelle.
Ainsi, la fonction conditionnelle ci-dessous ne sera appelée que si elle
value
est "véridique"Les seules valeurs non véridiques sont
false
etnil
, tout le reste est considéré comme véridique.Je crois que la justification philosophique de cela est que l'
nil
on peut considérer que "n'existe pas", de sorte que l'énoncé conditionnel est en mesure de tester l'existence d'une valeur.De nombreuses autres langues ont également un concept similaire de valeurs qui seront considérées comme vraies dans un contexte conditionnel, donc en conclusion, je dirais que oui, la véracité devrait être considérée comme un terme de programmation légitime lorsqu'elle est utilisée de cette manière.
la source
La «vérité» est quelque chose que je m'assure de comprendre lorsque je prends une nouvelle langue, car ils la traitent tous différemment. Dans ma langue maternelle de Perl, la chaîne "0" est fausse. Dans de nombreuses langues, c'est une chaîne qui a du contenu et est donc vraie. Dans certaines langues, la chaîne vide "" est fausse, et dans certains, c'est vrai.
Comprendre les choix que les concepteurs de langage ont faits sur la véracité vous en dit long sur leur réflexion et commence à vous plonger dans l'univers conceptuel de la langue.
Que nous l'ayons épelé «véracité» ou que nous ayons utilisé un autre terme (je pense que l'en-tête de ce chapitre du livre sur les chameaux est «Qu'est-ce que la vérité?»), Les programmeurs avaient une emprise sur différentes valeurs de l'absolu appelé «vrai et faux» bien avant que Colbert ne vienne et ne fasse remarquer le recourbement du «vrai» dans le discours public.
la source
Permettez-moi de vous demander en retour: qu'est-ce qu'un "vrai terme"?
Tout mot que les humains utilisent est «réel» lorsqu'il est utilisé par plusieurs personnes, ce qui signifie (plus ou moins) la même chose. Toutes les langues évoluent constamment, tout comme le langage du programmeur.
Par exemple, dans Ruby, le framework de test rspec préfère de nos jours
xyz.should be_truthy
au lieu dexyz.should be_true
. Ouxyz.should be_falsey
au lieu dexyz.should be_false
. Bien sûr, au lieu de ce dernier, ils auraient pu choisirxyz.should be_wrong
. Mais ils ne l'ont pas fait, nous pouvons donc également demander si «fausse» est un terme.C'est maintenant. Aimez. Au moins dans les communautés qui utilisent ces termes. Ne demandez pas à votre avocat ou à votre médecin. :)
Si vous êtes censé demander "le grand public sait-il intuitivement ce qu'est la Vérité", alors la réponse est probablement "non".
la source
J'ai écrit un système qui déterminerait la probabilité (mathématique) qu'une déclaration booléenne soit vraie, étant donné des données partielles. C'est-à-dire que nous pourrions déterminer qu'il y avait 73% de chances d'
X
être vrai, si nous n'avions pas encore suffisamment de données pour établir fermement que X était vrai. La «vérité» serait un moyen parfaitement valable pour décrire un tel pourcentage de croyance en X.la source