Il faut voir les opérateurs du langage comme des fonctions infixes.
Quand a / b a pour signature number / number -> number, a // b aura pour signature int // int -> int, ensuite c'est le type checking de letlang qui va valider les données en input et output ou lever une exception.
La division euclidienne du type Rust f64 garantie que la sortie est un entier (frac(n) = 0). Du coup j'ai juste besoin de valider que a et b sont des int.
[^] # Re: théorie des ensembles pas naives
Posté par David Delassus (site web personnel) . En réponse au journal [Letlang] Et si on rédigeait la spec ?. Évalué à 2. Dernière modification le 09 mai 2022 à 17:03.
Il faut voir les opérateurs du langage comme des fonctions infixes.
Quand
a / ba pour signaturenumber / number -> number,a // baura pour signatureint // int -> int, ensuite c'est le type checking de letlang qui va valider les données en input et output ou lever une exception.La division euclidienne du type Rust f64 garantie que la sortie est un entier (
frac(n) = 0). Du coup j'ai juste besoin de valider que a et b sont des int.https://doc.rust-lang.org/std/primitive.f64.html#method.div_euclid
https://link-society.com - https://kubirds.com - https://github.com/link-society/flowg