Il y a bien quelques cas de CEIL et FLOOR dans le protocole :
maxGenTime = CEIL(avgGenTime * 1.189)
minGenTime = FLOOR(avgGenTime / 1.189)
maxAcceleration = CEIL(maxGenTime * medianTimeBlocks)
Ces trois-là sont des constantes finalement, car avgGenTime
tout comme medianTimeBlocks
sont des constantes entières pour Ğ1. D’ailleurs ici le nombre 1.189 est justement un flottant que j’ai arrondi, car la valeur exacte est 16^(1/16) et n’a pas de fin.
Reste quelques autres appels avec variables dynamiques, donc plus gênants. Les appels sont tous faits en JavaScript, par l’interpréteur Node.js (V8). SQLite ne fait que stocker en récupérer des entiers.
Oui aujourd’hui, c’est le cas. Si tu penses que c’est problématique, alors je veux bien que tu exposes le sujet plus en détail et voir s’il y a un risque réel ou pas pour Duniter.
Pas innocent
Mais on ne gère pas de virgule en réalité dans Duniter, c’est juste une convention dans les clients que d’afficher des centimes. Toute la monnaie est gérée et représentée par des entiers. Ce qui nous enlève déjà une sacrée épine du pied.
Par ailleurs comme les unités quantitative croissent exponentiellement, on a une quantité qui décuple tous les 23 ans environ. Du coup on exprime tous les montants avec une base 10 mentionnée dans chaque bloc. Cette base s’incrémente tous les 23 ans.
Tu as aussi un sujet technique consacré au nombre de chiffres requis pour le DU.
Ah mais c’est toute notre intention ! Ou a minima la mienne. Car la monnaie libre est trop importante à mes yeux pour que je soit le seul à développer le cœur.
C’est vrai que jusqu’au lancement j’étais plutôt “tête dans le guidon” car l’important était de démarrer, mais désormais on peut se calmer, se poser et partager les connaissances ainsi qu’élaguer, clarifier. Le gros du boulot est fait, maintenant on va surtout s’attarder sur la qualité, tout vérifier, tout verrouiller.
Si tu veux être de ces personnes qui vont participer à cela, moi ça me va très bien
Il y a déjà @Moul a 42, il a déjà dû en parler je pense. Mais oui, tu peux tout à fait le faire. Aucun soucis, bien au contraire ! Duniter est un projet informatique avant tout, il ne tiendra pas sans informaticiens.
En tout cas, j’apprécie tes interventions. Je suis content que tu sois paranoïaque, ça manquait par ici !