• [^] # Re: Une chose que j'ai oublié d'ajouter

    Posté par . En réponse à la dépêche Le langage Rust en version 1.0 alpha, on arrête de tout casser !. Évalué à 2.

    Il y a 2 sujets.

    Le premier (le défaut).
    Quand j'ai écrit « par défaut », ce n'était pas dans le sens où un entier sans type explicite va prendre ce type là, mais dans le sens où c'est le type qu'on utilise quand on n'a pas de besoin spécial. Je n'aurais probablement pas dû utiliser ce mot là, mais il me semble que ceux qui le précédaient et le suivaient précisaient le sens.
    Donc il n'y a pas de type de base (passe-partout) adapté à la plateforme et le type automatique est 32 bits ? J'avais cru comprendre que ce langage voulait (entre autres) cibler le bas-niveau. Ça ne me paraît pas génial pour des μC 8 / 16 bits (ou des μC et SoC 32 bits mais avec un bus de 16 bits) ; il faudrait si c'est comme ça faire à coup d'#ifdef pour chaque plateforme pour se définir son type de base adapté. Ou bien ce genre de plateformes n'est de toutes façons pas visé ?

    Le second (le choix du nom du type).
    En C, utiliser (s)size_t pour autre chose que des tailles (sizeof, *alloc, write, read etc.) me donne déjà des boutons (pour un indice de tableau, brrr...). Et là c'est exactement pareil. Pourquoi donner un type nommé « taille » à un index (ou à un offset ou à un intervalle ou à n'importe quoi qu'on va ajouter à une base, qui est un entier, mais qui représente tout sauf une taille). Mais bon, puisqu'à vous, ça vous semble naturel, ce n'est pas trop la peine d'épiloguer sur le sujet une fois nos avis exprimés, on ne sera pas d'accord.