Godzil (./28) :Je pense qu'une syntaxe de type attribut ferait le boulot. Quelque chose du genre : conditional(DEBUG_MODE) void log_message(string msg)
C'est un equivalent de #ifdef X / #else / #endif et je ne suis pas vraiment sur de comment faire autrement, mais si tu as des idees je prends. Je ne suis pas fan de la compilation conditionelle, mais il y a des cas ou ca reste utile.
Godzil (./28) :Je n'ai pas de soucis avec la syntaxe d'indexation, je parlais de la déclaration. La fait d'etre un tableau est une propriété du type pas de la variable elle même.
int8 tableau[42] ? Ou l'acces a la variable tableau[x] = 0
La plupart des langage qui ont repris la syntaxe du C++ ont quand même corrigé ce point.
- En Java ou C#, on à : byte[] tableau = new byte[42];
- En Rust où on a des tableaux statiques on a : let tableau : [u8; 42];
Godzil (./28) :Je suis pas un expert de l'ASM et encore moins de son intégration avec d'autre langage. Mais si GCC s'est embeté avec un syntaxe si lourde, c'est pas par plaisir. Les compilateur avancés ont besoin d'avoir des informations sur les effets de bord. J'ai suivi de loin l'introduction de la fonctionnalité en Rust et ça a été compliqué. Peut être que ton langage est suffisamment simple pour que ça ne pose pas de soucis, mais i tu veux utiliser LLVM, je pense que tu vas avoir besoin de ce genre d'info.
A quoi penses tu? Si tu pense a la syntax de GCC, c'est GCC qui est tordu. Avoir une visibilite sur les variables et autre fonction est deja pas mal je pense.
Godzil (./28) :A vrai dire c'est plus un moins un erreur sur le commentaire.Tout l’intérêt du break dans le switch et d'éviter le passage d'une case à l'autre. Si ça n'est pas possible, c'est juste trompeur. Si tu tiens a avoir une démarcation claire du début et de la fin d'un case, des crochets me paraissent plus adaptés que ":" et "break" qui sont un héritage du goto.
Break est implicite, mais ca reste une bonne chose que de l’écrire.
Godzil (./28) :Je remontais juste ça, car je sais qu'en Rust il les avaient laissé au début quand ils ont rendu les blocs obligatoires, avant de se rendre compte qu'il ne servaient plus a rien et de les enlever sans regret.
Quand aux (), c'est un des points de python que je n'aime pas, et encore une fois c'est inspiré du C, et c'est la logique de l'utiliser en C, ca ne *me* pose pas de probleme, c'est une question de gout comme souvent j'imagine, mais perso ca permet de marquer explicitement la valeur a tester
Mais si tu préfère comme ça, pas de soucis. Il y a beaucoup d'autre chose que je verrais différemment par préférence personnelle et que je n'ai pas remonté car je sais que c'est juste des problèmes de ressenti.