-
deux caractères :
556(22.3 %)
-
quatre caractères :
1274(51.1 %)
-
huit caractères :
179(7.2 %)
-
π caractères :
235(9.4 %)
-
je n'indente toujours pas, c'est pour les mauviettes :
169(6.8 %)
-
Oneliner pow4 ! :
82(3.3 %)
Total : 2495 votes
# Tabstop=2
Posté par SebastienV . Évalué à 2.
[^] # Re: Tabstop=2
Posté par MarbolanGos . Évalué à 1.
Enfin j'ai voté \pi parce que quand même j'indente suivant l'indentation du programme où je me trouve et le codeur original passe de 7 à 1 caractère suivant la routine !
[^] # Re: Tabstop=2
Posté par Prsieux . Évalué à 1.
[^] # Re: Tabstop=2
Posté par zerkman . Évalué à 3.
[^] # Re: Tabstop=2
Posté par Frédéric Perrin (site web personnel) . Évalué à 5.
[^] # Re: Tabstop=2
Posté par calandoa . Évalué à 1.
Et sinon, est ce que la philosophie UNIX de ton monde parallèle utilise des '\' au lieu de '/' comme séparateur de chemin?
Si tu comptes rester plus de temps ici, je peux te proposer de configurer les valeurs softtabstop et expendtab de ton éditeur, afin de ne pas casser ce qui reste de nos standards, tout en respectant tes goûts personnel.
[^] # Re: Tabstop=2
Posté par LupusMic (site web personnel, Mastodon) . Évalué à 3.
Scrogneugneu!
En tout cas merci, je suis toujours passé à côté de ce tweak.
# La suite
Posté par Florent Zara (site web personnel, Mastodon) . Évalué à 6.
* des tabulations : 1095 (48%)
* des espaces : 761 (33.4%)
* les deux : 210 (9.2%)
* je n'indente pas, c'est pour les mauviettes : 160 (7%)
* IOCCC forever ! : 53 (2.3%)
[^] # Re: La suite
Posté par Florian . Évalué à 10.
Captivant...
[^] # Re: La suite
Posté par Anonyme . Évalué à 2.
[^] # Re: La suite
Posté par Anonyme . Évalué à 2.
[^] # Re: La suite
Posté par Sébastien Maccagnoni . Évalué à 3.
# Choix manquant...
Posté par Ghislain PUTOIS (site web personnel) . Évalué à 2.
[^] # Re: Choix manquant...
Posté par claudex . Évalué à 5.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
# quatre est le bon compromis
Posté par fearan . Évalué à 2.
π serait une taille intéressante, mais pas gérée par eclipse ou emacs (une évolution à faire?)
Il ne faut pas décorner les boeufs avant d'avoir semé le vent
[^] # Re: quatre est le bon compromis
Posté par zerkman . Évalué à 4.
c'est une blague ? même à 1 on les reconnaît.
π serait une taille intéressante, mais pas gérée par eclipse ou emacs (une évolution à faire?)
l'optimum, c'est e.
[^] # Re: quatre est le bon compromis
Posté par gUI (Mastodon) . Évalué à 2.
Me demandez pas pourquoi 3...
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: quatre est le bon compromis
Posté par Sytoka Modon (site web personnel) . Évalué à 2.
J'ai codé avec 2 aussi mais je trouve que c'est moins lisible.
# C'est pas la taille qui compte
Posté par Professeur Méphisto . Évalué à 10.
[^] # Re: C'est pas la taille qui compte
Posté par cram51 . Évalué à 10.
# A la tronches des sondages dernièrement sur linuxfr,
Posté par kursus_hc . Évalué à 10.
# Problème de la taille des tabulations avec une limite de 80 colonnes
Posté par Gardel . Évalué à 1.
Vaut-il donc mieux être conventionnel jusqu'au bout et coder sur 80 colonnes max avec des tabulations faisant la taille de 8 caractères ou alors la limite conventionnelle des 80 colonnes est devenue défénitivement obsolète avec nos grands écrans ?
Personnellement, j'essaie de suivre les conventions du langage. J'utilise des tabulations (de taille 8 caractères) en C et 2 espaces en Ruby.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Olivier Jeannet . Évalué à 2.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Ellendhel (site web personnel) . Évalué à 3.
Moins que ça même ; voir le fichier 'CodingStyle' présent dans les sources du noyau, chapitre un à ce propos :
"The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program."
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par arnaudus . Évalué à 4.
C'est pas toujours une bonne idée de dire "jamais", c'est un peu comme les goto. Parfois le remède est pire que le mal; il faut juste être sûr que les gens savent ce qu'ils font quand ils contournent la recommandation:
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par CrEv (site web personnel) . Évalué à 6.
Donc quel est le problème ? Ca n'empêche pas de le limiter, non ?
(pour ma part je suis plutôt avec des indentations de 2 caractères, 4 je supporte, 8 j'ai vraiment du mal, une impression de vide horrible. Un peu comme les hérétiques qui placent les accolades à la ligne)
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Yth (Mastodon) . Évalué à 3.
La première chose que je fais quand j'intègre un code extérieur à un de mes projets, c'est de refaire l'indentation comme il faut, et de virer ces sauts de lignes inutiles, le pire étant l'indescriptible accolade à la ligne...
Yth.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par zerkman . Évalué à 4.
Les algos en O(n^6) existent, je les ai rencontrés. Hé bin ça fait 6 niveaux d'indentation, et même 7 puisque c'est forcément exécuté dans une fonction.
Et même avec 3 niveaux d'indentation, avec des tabs de 8 caractères, ça ne laisse que 56 caractères de large, c'est vraiment pas beaucoup, notamment si on utilise des noms de fonctions et de variables un peu explicites.
Et les 80 caractères, ça permet d'éviter de bouffer tout l'écran avec son code, c'est pas plus mal, surtout quand on a 3 shells ouverts à côté, une page de doc, et autre. Je suis très efficace quand je travaille comme ça.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Jux . Évalué à 1.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par beagf . Évalué à 6.
Exemple tout simple, une opération sur deux tenseurs à 5 dimensions peut s'écrire très simplement avec 5 boucle for imbriquées et juste une opération toute simple au bout sur une ligne. Si les indices de tes boucle sont les mêmes que ceux que tu utilise dans la formule mathématique, tu obtiens la forme la plus lisible possible.
Dans un cas comme celui-la, toutes les dimension sont égales et il n'y a pas de raison d'en mettre certaines dans une sous fonction.
Et je peux te garantir que ce genre de cas est loin d'être rare et que ces bien souvent la meilleure façon de coder l'algo, c'est parfaitement lisible, on comprend tout de suite la relation avec les formules et le compilateur fait très bien sont boulot avec ce genre de code simple et explicite.
Il faut arrêter d'être dogmatique et savoir enlever ses œillère de temps en temps. Ce genre de règles c'est bien de les avoirs en tête comme principe de base, mais c'est encore mieux de savoir les oublier quand c'est nécessaire.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 3.
Ou avec une macro récursive, genre
(define-macro (tensor-prod body . loops)
(if (null? loops)
`,body
`(for ,(car loops)
(tensor-prod ,body ,@(cdr loops)))))
Que tu appelles ensuite
(tensor-prod (foo a (bar b c))
(a from 1 to 2)
(b from 3 to 42)
(c from 5 to 2 step -1))
et qui te donne:
(for (a from 1 to 2)
(for (b from 3 to 42)
(for (c from 5 to 2 step -1)
(foo a (bar b c)))))
Soit une profondeur d'indentation quelconque au prix d'une indentation constante de taille 1 (lors de l'appel, et 3 lors de la définition).
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par beagf . Évalué à 2.
C'est surement une question d'habitude, mais autant je trouve que ton troisième extrait de code (le résultat de l'expansion de la macro) est lisible et que l'on comprend biens ce qui ce passe. Autant le deuxième est beaucoup moins clair pour moi et ce n'est pas la définition de la macro qui m'aide à comprendre.
Ma pratique du lisp remonte à un peu trop d'années pour que je puisse encore m'émerveiller devant ce genre de code et j'ai maintenant tendance à préférer le code parfaitement explicite ou l'on voit bien toutes les boucles sans avoir à réfléchir une heure pour savoir le nombre d'imbrications.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 3.
Nan, mais c'est du one shot bourrin pour dire « l'indentation réelle peut être facilement retirée. »
En vrai, tu fais un truc joli, clair et réutilisable :
(nested-fors
((a from 1 to 2)
(b from 3 to 42)
(c from 5 to 2 step -1))
(foo a (bar b c)))
que je trouve clair, net et concis.
Il m'arrive de coder en Scheme/Lisp pour générer du code C, car c'est super chiant de coder du C à la main dans certains cas !
Je ne vois pas d'inconvénients à coder dans un langage, si ça permet de faciliter l'écriture de programmes (pourquoi pas dans un autre langage, comme C).
Bon, après, les libertés au boulot et les goûts, je sais. Je vais pas te dire de changer de boite ou autre chose du même acabit, hein.
Mais si tu trouves normal et élégant tes 5 boucles FOR imbriquées (ce à quoi je me m'oppose pas), je dis (à d'autres moules qui liraient ce commentaire) qu'on peut faire encore plus élégant et tout aussi naturel, tout en gardant le même code C au final ! \o/
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Jimmy . Évalué à 2.
Je suis d'accord que c'est assez spécifique, mais sur des algo de DSP ou de calcul haute performance (HPC), [et non, on ne fait pas/plus que de l'assembleur et du FORTRAN dans ces cas-là !] on peut manipuler beaucoup de boucles imbriquées autour d'un bout de calcul très simple.
Le coût d'un appel de sous-fonction peut alors ne pas être négligeable : empilage des paramètres, branchement + delay slot, et au retour dépilage des valeurs de retour et second branchement + delay slot => ca fait plus d'une dizaine de cycles.
Autour d'un papillon de FFT qui fait moins de 10 cycles, ca peut doubler le temps de calcul !
Par ailleurs on veut souvent laisser le plus de sémantique possible au compilateur, pour qu'il puisse détecter du parallélisme, réordonner les boucles pour optimiser le remplissage des caches, ou bien rendre la fonction inline ... Les trucs à éviter pour que ca marche c'est la linéarisation des tableaux multi-dimensionnels, et l'arithmétique de pointeurs.
Un exemple d'optimisations de ce genre : la librairie Graphite http://gcc.gnu.org/wiki/Graphite , intégrée dans GCC 4.4 http://linuxfr.org/2009/04/21/24809.html
< radote >
La limitation à 80 colonnes, c'était à cause des cartes perforées.
Il n'y a que ceux qui codent encore en FORTRAN 77 (les pauvres) qui subissent encore cette limitation.
< /radote >
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Troy McClure (site web personnel) . Évalué à 3.
Fortran must die. Signez la pétition: http://www.fortranstatement.com/cgi-bin/petition.pl
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par claudex . Évalué à 2.
Il y a encore des compilateurs cobol qui ont cette limitation.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par CrEv (site web personnel) . Évalué à 5.
~~>[ ]
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Albert_ . Évalué à 1.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Gabin . Évalué à 5.
à la vitesse où ça va, elles vont bientôt nous y renvoyer... à la pre-histoire!
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Trollgouin . Évalué à 1.
Fortran dans les banques, peut être pour la partie analyse financière mais sinon, je vois (hélas) plus de Cobol, non?
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par claudex . Évalué à 2.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par CrEv (site web personnel) . Évalué à -2.
alors que python, c# sont là depuis pas mal de temps quand même !
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Albert_ . Évalué à 3.
Idem pour Cobol dans les banques, de plus si les banques passaient a autre chose cela serait plus java que C#.
De plus ces langages sont utilise pour ce pour quoi ils ont ete fait et ils font tres bien le boulot qui leur a ete assigne, tout en etant bien eprouve.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par CrEv (site web personnel) . Évalué à 2.
déjà qu'on a tellement eu de journaux alacon toute la semaine, même pas un petit truc sympa à se mettre sous la dent, et pas moyen de lancer un vrai débat troll sur des langages dépassés....
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Albert_ . Évalué à 2.
(un peu lourd la relancage de troll desole :) )
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par CrEv (site web personnel) . Évalué à 2.
d'ailleurs tout le monde sait bien que python çapue et que C# çapuesaipavraimenlibreetkenplusçarame
Javascript vaincra !
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par Albert_ . Évalué à 2.
[^] # Re: Problème de la taille des tabulations avec une limite de 80 colonne
Posté par ham . Évalué à 2.
les conventions a un moment t sont compatible avec celle de t-1, et pouf recursion j'usqu'a 80 colonnes.
et puis 80 colonne c'est trés bien sur les grand ecrans : on peut afficher 2 ou 3 code en parallele.
Pour finir la limite de niveau d'indentation est en général a suivre, en particulier pas toujours ( une bonne tripoté de parametre, une bonne tripoté de comportement pas combinaison, pas de solution universel pour rendre ca lisible.)
# 3
Posté par Meku (site web personnel) . Évalué à 2.
# Oneliner !
Posté par Snarky . Évalué à 0.
char*s[]={"ga ","bu ","zo ","meu "};void main(int x, char**n){
int v=x>1?atoi(n[1]):0;char t[32];char*m=t;while(v){*m++=v&3;v>>=2;}
while(m-t){write(1,*(s+*m),3+*--m/3);}write(1,"\n",1);}
Je me soigne, je le jure !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.