Le premier peut être supprimé par le préprocesseur/minifieur, pas le second, et ce sans aucune forme d’analyse syntaxique.
Si je te suis bien, tu décides que le caractère tabulation sert à indenter exclusivement, et donc qu’un outil (autre que le compilateur, qui ne distingue pas ce caractère des autres caractères blancs) peut se permettre de les supprimer sans aucune analyse ?
Présentement, je fais ça... à coups d’espace, ce qui apparemment est mal, très mal (ce serait même une des causes de tous les maux de l’informatique moderne, tous ces développeurs qui perdent leur temps à faire de l’ASCII art au lieu d’utiliser les bons caractères pour la bonne tâche).
Heureusement, depuis ce journal, j’ai vu la lumière, je suis passé à un éditeur qui supporte les fins de tabulations élastiques, et désormais chaque fois que je veux aligner quelque chose (que ce soit des commentaires à droite du code ou des déclarations de variable), j’utilise une tabulation et une seule.
C’est formidable, tout va pour le mieux dans le meilleur des mondes.
Jusqu’à ce que mon code passe à la moulinette d’un outil écrit par quelqu’un qui a décidé que le sens du caractère tabulation, c’était d’indenter et non pas de séparer les noms de variable de leur type, et qui conséquemment se permet de supprimer toutes les tabulations sans faire aucune analyse syntaxique pour vérifier qu’il a bel et bien le droit de les supprimer. Et le compilateur derrière de se retrouver avec des unsignedi, size_tlen et charbuffer[4] dont il se demande bien que faire...
La sémantique, c’est bien joli, mais si toi ou un de tes outils donne à des caractères une sémantique distincte de celle spécifiée par le langage et attendue par le compilateur, je pense que tu vas au devant d’ennuis.
Libre à toi de le regretter, mais le fait que dans beaucoup de langages une tabulation a la même signification qu’un espace ou même qu’une fin de ligne, c’est un séparateur de tokens et rien d’autre. Partant, je n’ai aucun scrupule à utiliser l’un ou l’autre (et donc, à utiliser par exemple des espaces pour indenter ou aligner), et je n’ai pas le sentiment de causer la perte de l’informatique. Que ça me fasse passer pour un cro-magnon à tes yeux est le dernier de mes soucis.
Sur ce, j’arrête là, il est évident que la discussion ne mènera nulle part et que ce garage à vélo n’est pas prêt d’être peint.
[^] # Re: aligner tabuler
Posté par gouttegd . En réponse au journal Fins de tabulation élastiques: la bonne manière d'indenter et d'aligner le code. Évalué à 2.
Si je te suis bien, tu décides que le caractère tabulation sert à indenter exclusivement, et donc qu’un outil (autre que le compilateur, qui ne distingue pas ce caractère des autres caractères blancs) peut se permettre de les supprimer sans aucune analyse ?
Je pense que c’est une très mauvaise idée.
Imaginons que j’ai le code suivant :
et que je souhaite (ou que le style de code du projet impose) aligner les variables sur une même colonne :
Présentement, je fais ça... à coups d’espace, ce qui apparemment est mal, très mal (ce serait même une des causes de tous les maux de l’informatique moderne, tous ces développeurs qui perdent leur temps à faire de l’ASCII art au lieu d’utiliser les bons caractères pour la bonne tâche).
Heureusement, depuis ce journal, j’ai vu la lumière, je suis passé à un éditeur qui supporte les fins de tabulations élastiques, et désormais chaque fois que je veux aligner quelque chose (que ce soit des commentaires à droite du code ou des déclarations de variable), j’utilise une tabulation et une seule.
C’est formidable, tout va pour le mieux dans le meilleur des mondes.
Jusqu’à ce que mon code passe à la moulinette d’un outil écrit par quelqu’un qui a décidé que le sens du caractère tabulation, c’était d’indenter et non pas de séparer les noms de variable de leur type, et qui conséquemment se permet de supprimer toutes les tabulations sans faire aucune analyse syntaxique pour vérifier qu’il a bel et bien le droit de les supprimer. Et le compilateur derrière de se retrouver avec des
unsignedi,size_tlenetcharbuffer[4]dont il se demande bien que faire...La sémantique, c’est bien joli, mais si toi ou un de tes outils donne à des caractères une sémantique distincte de celle spécifiée par le langage et attendue par le compilateur, je pense que tu vas au devant d’ennuis.
Libre à toi de le regretter, mais le fait que dans beaucoup de langages une tabulation a la même signification qu’un espace ou même qu’une fin de ligne, c’est un séparateur de tokens et rien d’autre. Partant, je n’ai aucun scrupule à utiliser l’un ou l’autre (et donc, à utiliser par exemple des espaces pour indenter ou aligner), et je n’ai pas le sentiment de causer la perte de l’informatique. Que ça me fasse passer pour un cro-magnon à tes yeux est le dernier de mes soucis.
Sur ce, j’arrête là, il est évident que la discussion ne mènera nulle part et que ce garage à vélo n’est pas prêt d’être peint.