un bon petit a écrit : samedi 25 février 2023, 09:16
Ça ne serait pas plutôt :
Code : Tout sélectionner
\cs_new:Nn \itoine_test:n {
\fp_compare:nTF { 7 < #1 < 12 }
\bonne
\mauvaise
{ #1 }
}
Affaire de goût, ou presque...
De plus, la proposition que j'avais faite indiquait bien que je considérais des entiers faute d'infos suffisantes.
Spécifications floues $\Longrightarrow$ Différentes réponses automatiquement
Enfin, il ne faut pas oublier le
\fp_use
pour récupérer la valeur, sauf à vouloir afficher le calcul donné à la macro
\my_test
.
un bon petit a écrit : samedi 25 février 2023, 09:16
Ceci dit effectuer un test aussi simple que tester si un décimal est dans un intervalle, par rapport aux primitives de TeX (que décidément vous ne voulez pas voir)
Choix de style de programmation, donc je ne me lance plus là-dedans, car je ne vais coder qu'en LaTeX3 dorénavant.
un bon petit a écrit : samedi 25 février 2023, 09:16
limitée, car TeX admet le point
ou la virgule comme séparateur décimal.
Facile à gérer. On a une primitive LaTeX3 de remplacement d'un token par à un autre... D'un autre côté, TeX manque ici de rigueur, je trouve. Un seul séparateur devrait être accepté.
un bon petit a écrit : samedi 25 février 2023, 09:16
compliquée, car il faut comprendre cette fumeuse (heu pardon, c'est « fameuse ») syntaxe.
Ah bon ! Quelle mauvaise foi. La diversité, cela a du bon. On te propose du Lua, tu râles, on te propose du LaTex3, tu râles, on te propose un code TeX, tu râles en nous faisant sentir à quel point on est mauvais. Mais bon, cela me passe bien au-dessus de la tête maintenant.
un bon petit a écrit : samedi 25 février 2023, 09:16
impossible à retenir, vu le nombre totalement ahurissant de macros mises à disposition pour les seules expressions en virgule flottante.
Vrai de prime abord, mais tout est organisé en espace de noms comme le sont des langages tels que Python et Java via leur système de modules et de bibliothèques. J'imagine que c'est aussi le cas pour Rust... Tout est dans le document interface3 qui est efficace à l'usage, bien qu'inadapté pour apprendre LaTeX3.
un bon petit a écrit : samedi 25 février 2023, 09:16
Alors que les primitives de TeX sont très peu nombreuses, je dirais environ 50 pour celles que l'on utilise couramment...
C'est bien le problème. J'ai besoin de faire de l'analyse de texte, et bien avec LaTeX3, j'ai droit à des primitives pour utiliser des expressions rationnelles, les fameuses regexs.
De plus, avec les flottants de LaTeX3, on dispose directement de fonctions mathématiques standards.
un bon petit a écrit : samedi 25 février 2023, 09:16
très lente
Peut-être, mais je verrais à l'usage. Je ne sais plus qui disait :
"Premature optimization is the root of all evil".
un bon petit a écrit : samedi 25 février 2023, 09:16
LaTeX3 est environ 60 fois plus lent que TeX
Et alors... Le projet reste jeune, et rien n'empêche qu'à l'avenir ceci soit amélioré. La lenteur a été reprochée à Python, et les choses évoluent bien de ce point de vue. De plus, je préfère les benchmarks réalistes, donc de nouveau l'usage me dira si....
Sur ce, je suis impatient de retrouver mon VTT...
PS: LaTeX3 a permis au passage la naissance de l3build qui fait du bon boulot pour le test de package, même s'il va devoir être amélioré.