Et puis après, on est passés à Windows, que de progrès ! http://cjoint.com/14ma/DCmnD1I7ehj_p4014119.jpg
tu gardes ce genre de photo ??
C'est pour briller sur les forums Linux.
Pierre Maurette
Stephane Legras-Decussy :
[...]
le point "étrange" du langage c'est que les blocs d'instructions sont délimités par les tabulation et pas par un symbole {}.
Vous vouliez sans doute écrire /indentation/ plutôt que /tabulation/. Le mélange des espaces et des tabulations est sévèrement déconseillé, c'est à dire interdit, comme dans tous les langages que je pratique. Dans ce cadre, les espaces sont clairement préférés aux tabulations, d'ailleurs IDLE sauve avec des espaces. Et l'analyseur commence par remplacer les tabulations par des espaces(*), puis poursuit son travail pour générer les pseudo-tokens INDENT et DEDENT. L'algo de génération tient en trois lignes dans la doc(**), mais il n'est pas trivial. A moins d'avoir une bonne raison, il *faut* s'en tenir à du simple, indentation constante de deux, quatre, ou huit espaces, donc régler son éditeur en conséquence et normer tout ce qui est importé dans le projet.
(*) pour info, ce remplacement se fait sur la base de taquets espacés de huit caractères, valeur immuable à ma connaissance. (**) pour info, une pile de valeurs positives commençant par 0, jamais dépilé. Pour chaque ligne "utile", donc en éliminant les lignes vides, commentaires, lignes continuées, on empile le nombre d'espaces précédent le premier caractère utile de la ligne s'il est strictement supérieur au précédent, c'est donc une pile de valeurs strictement croissantes. Biuen sûr, à chaque /push/, on génère un et un seul INDENT. Si le nombre d'espace est inférieur au précédent, on *doit* sinon erreur trouver ce nombre quelque part dans la pile, on dépile jusqu'à ce point en générant autant de DEDENT que nécessaire.
-- Pierre Maurette
Stephane Legras-Decussy :
[...]
le point "étrange" du langage c'est que les blocs d'instructions
sont délimités par les tabulation et pas par un symbole {}.
Vous vouliez sans doute écrire /indentation/ plutôt que /tabulation/.
Le mélange des espaces et des tabulations est sévèrement déconseillé,
c'est à dire interdit, comme dans tous les langages que je pratique.
Dans ce cadre, les espaces sont clairement préférés aux tabulations,
d'ailleurs IDLE sauve avec des espaces. Et l'analyseur commence par
remplacer les tabulations par des espaces(*), puis poursuit son travail
pour générer les pseudo-tokens INDENT et DEDENT. L'algo de génération
tient en trois lignes dans la doc(**), mais il n'est pas trivial. A
moins d'avoir une bonne raison, il *faut* s'en tenir à du simple,
indentation constante de deux, quatre, ou huit espaces, donc régler son
éditeur en conséquence et normer tout ce qui est importé dans le
projet.
(*) pour info, ce remplacement se fait sur la base de taquets espacés
de huit caractères, valeur immuable à ma connaissance.
(**) pour info, une pile de valeurs positives commençant par 0, jamais
dépilé. Pour chaque ligne "utile", donc en éliminant les lignes vides,
commentaires, lignes continuées, on empile le nombre d'espaces
précédent le premier caractère utile de la ligne s'il est strictement
supérieur au précédent, c'est donc une pile de valeurs strictement
croissantes. Biuen sûr, à chaque /push/, on génère un et un seul
INDENT. Si le nombre d'espace est inférieur au précédent, on *doit*
sinon erreur trouver ce nombre quelque part dans la pile, on dépile
jusqu'à ce point en générant autant de DEDENT que nécessaire.
le point "étrange" du langage c'est que les blocs d'instructions sont délimités par les tabulation et pas par un symbole {}.
Vous vouliez sans doute écrire /indentation/ plutôt que /tabulation/. Le mélange des espaces et des tabulations est sévèrement déconseillé, c'est à dire interdit, comme dans tous les langages que je pratique. Dans ce cadre, les espaces sont clairement préférés aux tabulations, d'ailleurs IDLE sauve avec des espaces. Et l'analyseur commence par remplacer les tabulations par des espaces(*), puis poursuit son travail pour générer les pseudo-tokens INDENT et DEDENT. L'algo de génération tient en trois lignes dans la doc(**), mais il n'est pas trivial. A moins d'avoir une bonne raison, il *faut* s'en tenir à du simple, indentation constante de deux, quatre, ou huit espaces, donc régler son éditeur en conséquence et normer tout ce qui est importé dans le projet.
(*) pour info, ce remplacement se fait sur la base de taquets espacés de huit caractères, valeur immuable à ma connaissance. (**) pour info, une pile de valeurs positives commençant par 0, jamais dépilé. Pour chaque ligne "utile", donc en éliminant les lignes vides, commentaires, lignes continuées, on empile le nombre d'espaces précédent le premier caractère utile de la ligne s'il est strictement supérieur au précédent, c'est donc une pile de valeurs strictement croissantes. Biuen sûr, à chaque /push/, on génère un et un seul INDENT. Si le nombre d'espace est inférieur au précédent, on *doit* sinon erreur trouver ce nombre quelque part dans la pile, on dépile jusqu'à ce point en générant autant de DEDENT que nécessaire.
-- Pierre Maurette
jdd
Le 12/03/2014 22:50, Pierre Maurette a écrit :
mais il n'est pas trivial. A moins d'avoir une bonne raison, il *faut* s'en tenir à du simple, indentation constante de deux, quatre, ou huit espaces, donc régler son éditeur en conséquence et normer tout ce qui est importé dans le projet.
ca m'a beaucoup géné, car j'ai l'habitude de laisser sur la marge de droit les rares lignes que j'ajoute ou que je modifie pour les reconnaitre, et il n'y a pas deux langages qui ont les mêmes caractères d'échappement pour les remarques
mais j'y ai survécu quand j'ai compris :-)
jdd
-- http://www.dodin.org
Le 12/03/2014 22:50, Pierre Maurette a écrit :
mais il n'est pas trivial. A moins d'avoir une bonne raison, il *faut* s'en
tenir à du simple, indentation constante de deux, quatre, ou huit espaces,
donc régler son éditeur en conséquence et normer tout ce qui est importé dans
le projet.
ca m'a beaucoup géné, car j'ai l'habitude de laisser sur la marge de droit les
rares lignes que j'ajoute ou que je modifie pour les reconnaitre, et il n'y a
pas deux langages qui ont les mêmes caractères d'échappement pour les remarques
mais il n'est pas trivial. A moins d'avoir une bonne raison, il *faut* s'en tenir à du simple, indentation constante de deux, quatre, ou huit espaces, donc régler son éditeur en conséquence et normer tout ce qui est importé dans le projet.
ca m'a beaucoup géné, car j'ai l'habitude de laisser sur la marge de droit les rares lignes que j'ajoute ou que je modifie pour les reconnaitre, et il n'y a pas deux langages qui ont les mêmes caractères d'échappement pour les remarques
mais j'y ai survécu quand j'ai compris :-)
jdd
-- http://www.dodin.org
Stephane Legras-Decussy
On 03/12/2014 10:50 PM, Pierre Maurette wrote:
Vous vouliez sans doute écrire /indentation/ plutôt que /tabulation/.
oui
Le mélange des espaces et des tabulations est sévèrement déconseillé, c'est à dire interdit, comme dans tous les langages que je pratique.
perso j'indente "degueu" depuis toujours en C, je trouve ça plus joli, ça me parle.
et au pire un coup de beautifier dans code:blocks pour ceux que ça gène ...
On 03/12/2014 10:50 PM, Pierre Maurette wrote:
Vous vouliez sans doute écrire /indentation/ plutôt que /tabulation/.
oui
Le mélange des espaces et des tabulations est sévèrement déconseillé,
c'est à dire interdit, comme dans tous les langages que je pratique.
perso j'indente "degueu" depuis toujours en C, je trouve ça plus joli,
ça me parle.
et au pire un coup de beautifier dans code:blocks pour
ceux que ça gène ...
Le 12/03/2014 23:32, Stephane Legras-Decussy a écrit :
perso j'indente "degueu" depuis toujours en C, je trouve ça plus joli, ça me parle.
en python tu n'irais pas loin :-(
jdd
-- http://www.dodin.org
Pierre Maurette
Alf92 :
Stephane Legras-Decussy a formulé :
Python
c'est compliqué à apprendre ?
Impossible de répondre. Ça dépend sans doute de son vécu. J'ai remarqué que les gens qui écrivent que la connaissance de C n'est pas nécessaire, bien au contraire, à la compétence C++ sont tous des cadors en C, même chose pour C portable et /architecture et assembleur/. Alors... En revanche, je peux vous garantir que concernant l'activité qui nous occupe, l'apprentissage de Python est un excellent investissement. Pour l'instant je suis à la bourre, je posterai ce soir un embryon d'étude de cas vécu ce matin même.
seul ?
What else ? Whith who ? Georges C. ?
-- Pierre Maurette
Alf92 :
Stephane Legras-Decussy <admin@barilla.com> a formulé :
Python
c'est compliqué à apprendre ?
Impossible de répondre. Ça dépend sans doute de son vécu. J'ai remarqué
que les gens qui écrivent que la connaissance de C n'est pas
nécessaire, bien au contraire, à la compétence C++ sont tous des cadors
en C, même chose pour C portable et /architecture et assembleur/.
Alors...
En revanche, je peux vous garantir que concernant l'activité qui nous
occupe, l'apprentissage de Python est un excellent investissement. Pour
l'instant je suis à la bourre, je posterai ce soir un embryon d'étude
de cas vécu ce matin même.
Impossible de répondre. Ça dépend sans doute de son vécu. J'ai remarqué que les gens qui écrivent que la connaissance de C n'est pas nécessaire, bien au contraire, à la compétence C++ sont tous des cadors en C, même chose pour C portable et /architecture et assembleur/. Alors... En revanche, je peux vous garantir que concernant l'activité qui nous occupe, l'apprentissage de Python est un excellent investissement. Pour l'instant je suis à la bourre, je posterai ce soir un embryon d'étude de cas vécu ce matin même.
seul ?
What else ? Whith who ? Georges C. ?
-- Pierre Maurette
Pierre Maurette
jdd :
Le 12/03/2014 23:32, Stephane Legras-Decussy a écrit :
perso j'indente "degueu" depuis toujours en C, je trouve ça plus joli, ça me parle.
en python tu n'irais pas loin :-(
En Python, l'indentation est fonctionnelle, c'est un élément du langage. Qui plus est c'est une des erreurs des concepteurs du langage, avec l'absence de l'opérateur ternaire. L'interprêteur est bien trop laxiste sur l'indentation, c'est typique d'une souplesse qui complique.
-- Pierre Maurette
jdd :
Le 12/03/2014 23:32, Stephane Legras-Decussy a écrit :
perso j'indente "degueu" depuis toujours en C, je trouve ça plus joli, ça
me
parle.
en python tu n'irais pas loin :-(
En Python, l'indentation est fonctionnelle, c'est un élément du
langage. Qui plus est c'est une des erreurs des concepteurs du langage,
avec l'absence de l'opérateur ternaire. L'interprêteur est bien trop
laxiste sur l'indentation, c'est typique d'une souplesse qui complique.
Le 12/03/2014 23:32, Stephane Legras-Decussy a écrit :
perso j'indente "degueu" depuis toujours en C, je trouve ça plus joli, ça me parle.
en python tu n'irais pas loin :-(
En Python, l'indentation est fonctionnelle, c'est un élément du langage. Qui plus est c'est une des erreurs des concepteurs du langage, avec l'absence de l'opérateur ternaire. L'interprêteur est bien trop laxiste sur l'indentation, c'est typique d'une souplesse qui complique.
-- Pierre Maurette
Stephane Legras-Decussy
Le 13/03/2014 08:47, jdd a écrit :
en python tu n'irais pas loin :-(
oui contraint et forcé... c'est le truc qui me dérange.
mais bon, pas grave mon truc c'est le C et ça le restera... je l'aime.
Le 13/03/2014 08:47, jdd a écrit :
en python tu n'irais pas loin :-(
oui contraint et forcé... c'est le truc qui me dérange.
mais bon, pas grave mon truc c'est le C et ça le restera... je l'aime.
Le 08/03/2014 23:11, Stephane Legras-Decussy a écrit :
Le 06/03/2014 08:13, Jean-Pierre Roche a écrit :
On n'achète pas un logiciel par plaisir de dépenser mais pour avoir des fonctions, des performances, une cohérence et une ergonomie qu'on ne trouve pas dans le "libre" et le gratuit...
et inversement ...
il y a des tas d'exemples où pour avoir performance, cohérence et ergonomie, il fait se tourner vers le gratuit ...
Un petit exemple tout frais : Un commercial me raconte comment il a galéré pour arriver à apposer un signature sur un document PDF.
Il a demandé à toutes sortes de personnes calées et une seule lui a suggéré d'imprimer, de scanner et de passer par un logiciel photo.
Quand je lui ai montré comment faire dans Gimp à partir du PDF, il m'a dit : "et dire qu'on y a passé la soirée et la matinée suivante, et là vous le faite en 1 minute montre en main". Bon, j'avais déjà ma signature en png.
Oui, on peut aussi le faire avec des logiciels commerciaux, mais est-ce toujours nécessaire ?
Le 08/03/2014 23:11, Stephane Legras-Decussy a écrit :
Le 06/03/2014 08:13, Jean-Pierre Roche a écrit :
On n'achète pas un logiciel par plaisir de dépenser mais pour avoir des
fonctions, des performances, une cohérence et une ergonomie qu'on ne
trouve pas dans le "libre" et le gratuit...
et inversement ...
il y a des tas d'exemples où pour avoir performance, cohérence et
ergonomie, il fait se tourner vers le gratuit ...
Un petit exemple tout frais : Un commercial me raconte comment il a
galéré pour arriver à apposer un signature sur un document PDF.
Il a demandé à toutes sortes de personnes calées et une seule lui a
suggéré d'imprimer, de scanner et de passer par un logiciel photo.
Quand je lui ai montré comment faire dans Gimp à partir du PDF, il m'a
dit : "et dire qu'on y a passé la soirée et la matinée suivante, et là
vous le faite en 1 minute montre en main". Bon, j'avais déjà ma
signature en png.
Oui, on peut aussi le faire avec des logiciels commerciaux, mais est-ce
toujours nécessaire ?
Le 08/03/2014 23:11, Stephane Legras-Decussy a écrit :
Le 06/03/2014 08:13, Jean-Pierre Roche a écrit :
On n'achète pas un logiciel par plaisir de dépenser mais pour avoir des fonctions, des performances, une cohérence et une ergonomie qu'on ne trouve pas dans le "libre" et le gratuit...
et inversement ...
il y a des tas d'exemples où pour avoir performance, cohérence et ergonomie, il fait se tourner vers le gratuit ...
Un petit exemple tout frais : Un commercial me raconte comment il a galéré pour arriver à apposer un signature sur un document PDF.
Il a demandé à toutes sortes de personnes calées et une seule lui a suggéré d'imprimer, de scanner et de passer par un logiciel photo.
Quand je lui ai montré comment faire dans Gimp à partir du PDF, il m'a dit : "et dire qu'on y a passé la soirée et la matinée suivante, et là vous le faite en 1 minute montre en main". Bon, j'avais déjà ma signature en png.
Oui, on peut aussi le faire avec des logiciels commerciaux, mais est-ce toujours nécessaire ?