Comme il n'y avait pas de questions de toi depuis quelques jours, je me
demandais si tu avais abandonné le C ou si t'étais déjà passé au C++ ;)
Comme il n'y avait pas de questions de toi depuis quelques jours, je me
demandais si tu avais abandonné le C ou si t'étais déjà passé au C++ ;)
Comme il n'y avait pas de questions de toi depuis quelques jours, je me
demandais si tu avais abandonné le C ou si t'étais déjà passé au C++ ;)
Au passage, ces histoires d'expansions de macros, ça parait toujours
simple au départ. Mais en fait, ça peut devenir assez compliqué. C'est
un peu comme du TeX qui est un langage basé essentiellement sur la
notion de macro. Je n'y connais pas grand chose, mais j'ai souvent
entendu dire que la programmation TeX était quelque chose extrêmement
difficile, notamment par rapport à ces histoires d'expansions ou de non
expansions de macro.
En fait, le problème avec les macros, c'est qu'on a
un source mouvant.
Au passage, ces histoires d'expansions de macros, ça parait toujours
simple au départ. Mais en fait, ça peut devenir assez compliqué. C'est
un peu comme du TeX qui est un langage basé essentiellement sur la
notion de macro. Je n'y connais pas grand chose, mais j'ai souvent
entendu dire que la programmation TeX était quelque chose extrêmement
difficile, notamment par rapport à ces histoires d'expansions ou de non
expansions de macro.
En fait, le problème avec les macros, c'est qu'on a
un source mouvant.
Au passage, ces histoires d'expansions de macros, ça parait toujours
simple au départ. Mais en fait, ça peut devenir assez compliqué. C'est
un peu comme du TeX qui est un langage basé essentiellement sur la
notion de macro. Je n'y connais pas grand chose, mais j'ai souvent
entendu dire que la programmation TeX était quelque chose extrêmement
difficile, notamment par rapport à ces histoires d'expansions ou de non
expansions de macro.
En fait, le problème avec les macros, c'est qu'on a
un source mouvant.
Au passage, ces histoires d'expansions de macros, ça parait toujours
simple au départ. Mais en fait, ça peut devenir assez compliqué. C'est
un peu comme du TeX qui est un langage basé essentiellement sur la
notion de macro.
Au passage, ces histoires d'expansions de macros, ça parait toujours
simple au départ. Mais en fait, ça peut devenir assez compliqué. C'est
un peu comme du TeX qui est un langage basé essentiellement sur la
notion de macro.
Au passage, ces histoires d'expansions de macros, ça parait toujours
simple au départ. Mais en fait, ça peut devenir assez compliqué. C'est
un peu comme du TeX qui est un langage basé essentiellement sur la
notion de macro.
Le "on" n'étant pas n'importe qui, j'ai passé de longues heures à
compulser les archives de fclc++ pour essayer de me faire une idée. Je
me fis aussi à ce que dit Thomas Pornin (en lequel j'ai une très grande
confiance) dans son petit bouquin "Comment choisir un langage de
programmation").
Le "on" n'étant pas n'importe qui, j'ai passé de longues heures à
compulser les archives de fclc++ pour essayer de me faire une idée. Je
me fis aussi à ce que dit Thomas Pornin (en lequel j'ai une très grande
confiance) dans son petit bouquin "Comment choisir un langage de
programmation").
Le "on" n'étant pas n'importe qui, j'ai passé de longues heures à
compulser les archives de fclc++ pour essayer de me faire une idée. Je
me fis aussi à ce que dit Thomas Pornin (en lequel j'ai une très grande
confiance) dans son petit bouquin "Comment choisir un langage de
programmation").
C'est trop demander...
Non, c'est une question d'honnêteté intellectuelle.
Sur ce forum et aussi sur clc, et dans les bouquins, etc, on
conseille K&R,
c'est un package : à prendre ou à laisser.
Et finalement, on se rend compte que le livre laisse à
désirer sur de nombreux aspects ...
nous sommes en 2008 ; la situation a un peu changé.
Tu fais allusion aux fonctions inline et aux macros "variables" ?
Certainement pas, mon but étant, dans un premier temps, moins de
programmer que de _comprendre_.
parce que ce truc est tellement utilisé
Je ne connaissais pas. Mais puisque c'est si répandu, ça devrait dans
les livres
C'est trop demander...
Non, c'est une question d'honnêteté intellectuelle.
Sur ce forum et aussi sur clc, et dans les bouquins, etc, on
conseille K&R,
c'est un package : à prendre ou à laisser.
Et finalement, on se rend compte que le livre laisse à
désirer sur de nombreux aspects ...
nous sommes en 2008 ; la situation a un peu changé.
Tu fais allusion aux fonctions inline et aux macros "variables" ?
Certainement pas, mon but étant, dans un premier temps, moins de
programmer que de _comprendre_.
parce que ce truc est tellement utilisé
Je ne connaissais pas. Mais puisque c'est si répandu, ça devrait dans
les livres
C'est trop demander...
Non, c'est une question d'honnêteté intellectuelle.
Sur ce forum et aussi sur clc, et dans les bouquins, etc, on
conseille K&R,
c'est un package : à prendre ou à laisser.
Et finalement, on se rend compte que le livre laisse à
désirer sur de nombreux aspects ...
nous sommes en 2008 ; la situation a un peu changé.
Tu fais allusion aux fonctions inline et aux macros "variables" ?
Certainement pas, mon but étant, dans un premier temps, moins de
programmer que de _comprendre_.
parce que ce truc est tellement utilisé
Je ne connaissais pas. Mais puisque c'est si répandu, ça devrait dans
les livres
In article ,
Marc Boyer wrote:Quand à Java, c'est difficile (quoique...)
de faire java sans POO, et avant de faire de la POO, il
faut bien faire les bases de la programmation impérative.
Et avec quel langage ?
Avec java, bien sur.
Contrairement a ce que tu dis, il y a des tonnes de neuneus qui
arrivent tres bien a survivre et faire de la prog imperative a coup
de java, sans beneficier de la moindre once d'OO propre...
In article <slrnfukj8g.l7j.Marc.Boyer@ubu.enseeiht.fr>,
Marc Boyer <Marc.Boyer@enseeiht.yahoo.fr> wrote:
Quand à Java, c'est difficile (quoique...)
de faire java sans POO, et avant de faire de la POO, il
faut bien faire les bases de la programmation impérative.
Et avec quel langage ?
Avec java, bien sur.
Contrairement a ce que tu dis, il y a des tonnes de neuneus qui
arrivent tres bien a survivre et faire de la prog imperative a coup
de java, sans beneficier de la moindre once d'OO propre...
In article ,
Marc Boyer wrote:Quand à Java, c'est difficile (quoique...)
de faire java sans POO, et avant de faire de la POO, il
faut bien faire les bases de la programmation impérative.
Et avec quel langage ?
Avec java, bien sur.
Contrairement a ce que tu dis, il y a des tonnes de neuneus qui
arrivent tres bien a survivre et faire de la prog imperative a coup
de java, sans beneficier de la moindre once d'OO propre...
En news:47ea6aa6$0$20966$, candide va escriure:C'est trop demander...
Non, c'est une question d'honnêteté intellectuelle.
Bon, je vais pousser plus loin le bouchon
pour te montrer ce que je voulais
dire : tu achètes un livre qui parle de fromages, le livre est muet ou très
fugace sur le choix des vins pour accompagner les fromages, tu te plains de
cette locacité (ce qui est ton droit le plus strict), et ensuite tu accuses
l'auteur de ne pas être honnête intellectuellement...
Personnellement, pour comprendre le langage C, je m'intéresse plutôt à des
livres comme celui de C. Fraser et D. Hanson, /A Retargetable C Compiler:
Design and Implementation/, ISBN 0805316701,
http://www.cs.princeton.edu/software/lcc/.
En news:47ea6aa6$0$20966$426a74cc@news.free.fr, candide va escriure:
C'est trop demander...
Non, c'est une question d'honnêteté intellectuelle.
Bon, je vais pousser plus loin le bouchon
pour te montrer ce que je voulais
dire : tu achètes un livre qui parle de fromages, le livre est muet ou très
fugace sur le choix des vins pour accompagner les fromages, tu te plains de
cette locacité (ce qui est ton droit le plus strict), et ensuite tu accuses
l'auteur de ne pas être honnête intellectuellement...
Personnellement, pour comprendre le langage C, je m'intéresse plutôt à des
livres comme celui de C. Fraser et D. Hanson, /A Retargetable C Compiler:
Design and Implementation/, ISBN 0805316701,
http://www.cs.princeton.edu/software/lcc/.
En news:47ea6aa6$0$20966$, candide va escriure:C'est trop demander...
Non, c'est une question d'honnêteté intellectuelle.
Bon, je vais pousser plus loin le bouchon
pour te montrer ce que je voulais
dire : tu achètes un livre qui parle de fromages, le livre est muet ou très
fugace sur le choix des vins pour accompagner les fromages, tu te plains de
cette locacité (ce qui est ton droit le plus strict), et ensuite tu accuses
l'auteur de ne pas être honnête intellectuellement...
Personnellement, pour comprendre le langage C, je m'intéresse plutôt à des
livres comme celui de C. Fraser et D. Hanson, /A Retargetable C Compiler:
Design and Implementation/, ISBN 0805316701,
http://www.cs.princeton.edu/software/lcc/.
Mon but est juste de parvenir à
écrire une documentation du C qui permette d'utiliser en un minimum de
temps le langage de manière aapprofondie
sans négliger les aspects de portabilité, de conception logicielle
propre au C, etc ni non plus les aspects périphériques du langage mais
incontournables et qui prennent beaucoup de temps dans l'apprentissage
(debugger, IDE, l'apprentissage d'une bibliothèque, etc).
Donc, ce que je proposerai, c'est un repas complet ;)
Mon but est juste de parvenir à
écrire une documentation du C qui permette d'utiliser en un minimum de
temps le langage de manière aapprofondie
sans négliger les aspects de portabilité, de conception logicielle
propre au C, etc ni non plus les aspects périphériques du langage mais
incontournables et qui prennent beaucoup de temps dans l'apprentissage
(debugger, IDE, l'apprentissage d'une bibliothèque, etc).
Donc, ce que je proposerai, c'est un repas complet ;)
Mon but est juste de parvenir à
écrire une documentation du C qui permette d'utiliser en un minimum de
temps le langage de manière aapprofondie
sans négliger les aspects de portabilité, de conception logicielle
propre au C, etc ni non plus les aspects périphériques du langage mais
incontournables et qui prennent beaucoup de temps dans l'apprentissage
(debugger, IDE, l'apprentissage d'une bibliothèque, etc).
Donc, ce que je proposerai, c'est un repas complet ;)
Je jour où ça arrivera, n'oublie pas de faire une petite annonce, car
moi, ça m'intéresserait beaucoup, j'en suis sûr. ;-)
Je jour où ça arrivera, n'oublie pas de faire une petite annonce, car
moi, ça m'intéresserait beaucoup, j'en suis sûr. ;-)
Je jour où ça arrivera, n'oublie pas de faire une petite annonce, car
moi, ça m'intéresserait beaucoup, j'en suis sûr. ;-)
En news:47e26470$0$20187$, candide va escriure:Je trouve que l'algorithme de preprocess et en particulier d'expansion
de macros n'est pas clairement expliqué en général.
Par qui ? par les ouvrages d'enseignement du C : àmha, c'est parfaitement
voulu, car il est vain de vouloir écrire du code complètement portable
si tu
joues avec cela : ce domaine a mis du temps à mûrir, donc les
compilateurs
ont mis beaucoup de temps à se stabiliser, donc si tu joues trop sur les
bords tu vas trouver des cas où les compilateurs diffèrent, autrement
dit le
code n'est pas portable. Comme le gain réel est faible ou nul (car le
code
est difficile à comprendre pour un humain), ce n'est pas enseigné.Qu'en pensez-vous ?
D'abord et surtout que le résultat est le même !
Ensuite que les principaux préprocesseurs conformes semblent à première
vue
pencher pour l'interprétation de MM. Harbison & Steele, mais je ne suis
pas
assez calé en préprocesseur pour être capable d'expliquer clairement
pourquoi. Ce qui me paraît clair, c'est que l'interprétation précise
demande
l'intervention de spécialistes, donc tout code qui essaye de jouer au
plus
fin est susceptible de rencontrer des bogues dans les implémentations, et
par conséquent un bon programmeur devrait éviter de jouer à cela ; ce qui
rejoint l'analyse ci-dessus.
Antoine
Je précise, avant de donner un avis, que j'ai dirigé le développement d'un
En news:47e26470$0$20187$426a74cc@news.free.fr, candide va escriure:
Je trouve que l'algorithme de preprocess et en particulier d'expansion
de macros n'est pas clairement expliqué en général.
Par qui ? par les ouvrages d'enseignement du C : àmha, c'est parfaitement
voulu, car il est vain de vouloir écrire du code complètement portable
si tu
joues avec cela : ce domaine a mis du temps à mûrir, donc les
compilateurs
ont mis beaucoup de temps à se stabiliser, donc si tu joues trop sur les
bords tu vas trouver des cas où les compilateurs diffèrent, autrement
dit le
code n'est pas portable. Comme le gain réel est faible ou nul (car le
code
est difficile à comprendre pour un humain), ce n'est pas enseigné.
Qu'en pensez-vous ?
D'abord et surtout que le résultat est le même !
Ensuite que les principaux préprocesseurs conformes semblent à première
vue
pencher pour l'interprétation de MM. Harbison & Steele, mais je ne suis
pas
assez calé en préprocesseur pour être capable d'expliquer clairement
pourquoi. Ce qui me paraît clair, c'est que l'interprétation précise
demande
l'intervention de spécialistes, donc tout code qui essaye de jouer au
plus
fin est susceptible de rencontrer des bogues dans les implémentations, et
par conséquent un bon programmeur devrait éviter de jouer à cela ; ce qui
rejoint l'analyse ci-dessus.
Antoine
Je précise, avant de donner un avis, que j'ai dirigé le développement d'un
En news:47e26470$0$20187$, candide va escriure:Je trouve que l'algorithme de preprocess et en particulier d'expansion
de macros n'est pas clairement expliqué en général.
Par qui ? par les ouvrages d'enseignement du C : àmha, c'est parfaitement
voulu, car il est vain de vouloir écrire du code complètement portable
si tu
joues avec cela : ce domaine a mis du temps à mûrir, donc les
compilateurs
ont mis beaucoup de temps à se stabiliser, donc si tu joues trop sur les
bords tu vas trouver des cas où les compilateurs diffèrent, autrement
dit le
code n'est pas portable. Comme le gain réel est faible ou nul (car le
code
est difficile à comprendre pour un humain), ce n'est pas enseigné.Qu'en pensez-vous ?
D'abord et surtout que le résultat est le même !
Ensuite que les principaux préprocesseurs conformes semblent à première
vue
pencher pour l'interprétation de MM. Harbison & Steele, mais je ne suis
pas
assez calé en préprocesseur pour être capable d'expliquer clairement
pourquoi. Ce qui me paraît clair, c'est que l'interprétation précise
demande
l'intervention de spécialistes, donc tout code qui essaye de jouer au
plus
fin est susceptible de rencontrer des bogues dans les implémentations, et
par conséquent un bon programmeur devrait éviter de jouer à cela ; ce qui
rejoint l'analyse ci-dessus.
Antoine
Je précise, avant de donner un avis, que j'ai dirigé le développement d'un