Fabien LE LEZ writes:
Or pour implémenter ce nouveau langage, il faut savoir programmer en
C, car on ne peut utiliser que C pour implementer un stl::vector.
Fabien LE LEZ <gramster@gramster.com> writes:
Or pour implémenter ce nouveau langage, il faut savoir programmer en
C, car on ne peut utiliser que C pour implementer un stl::vector.
Fabien LE LEZ writes:
Or pour implémenter ce nouveau langage, il faut savoir programmer en
C, car on ne peut utiliser que C pour implementer un stl::vector.
Bon, mais sérieusement, concernant le C++, le problème c'est que
c'est un langage qui n'est pas fini.
Pour pouvoir l'utiliser en tant que C++ comme l'entendent ceux qui
préconisent son apprentissage sans passer par C, il faut avoir
implémenté une sacré bibliothèque de mécanismes de base (comme les
soit-disant "Smart Pointer"), et d'objets, et il faut bien sur
s'interdire d'utiliser tous les opérateurs du C problématiques. En
clair, il faut avoir implémenté au dessus de C++ un nouveau langage et
n'utiliser que celui-ci.
Or pour implémenter ce nouveau langage, il faut savoir programmer en
C, car on ne peut utiliser que C pour implémenter un stl::vector.
Et finalement, la bibliothèque standard actuelle de C++, la stl,
essaye bizarrement de simuler le plus possible le comportement des
opérateurs C. Un seul exemple, les itérateurs qui se comportent comme
des pointeurs. Je trouve qu'on a drôlement intérêt à bien comprendre
les pointeurs C avant d'utiliser un itérateur C++...
Bon, mais sérieusement, concernant le C++, le problème c'est que
c'est un langage qui n'est pas fini.
Pour pouvoir l'utiliser en tant que C++ comme l'entendent ceux qui
préconisent son apprentissage sans passer par C, il faut avoir
implémenté une sacré bibliothèque de mécanismes de base (comme les
soit-disant "Smart Pointer"), et d'objets, et il faut bien sur
s'interdire d'utiliser tous les opérateurs du C problématiques. En
clair, il faut avoir implémenté au dessus de C++ un nouveau langage et
n'utiliser que celui-ci.
Or pour implémenter ce nouveau langage, il faut savoir programmer en
C, car on ne peut utiliser que C pour implémenter un stl::vector.
Et finalement, la bibliothèque standard actuelle de C++, la stl,
essaye bizarrement de simuler le plus possible le comportement des
opérateurs C. Un seul exemple, les itérateurs qui se comportent comme
des pointeurs. Je trouve qu'on a drôlement intérêt à bien comprendre
les pointeurs C avant d'utiliser un itérateur C++...
Bon, mais sérieusement, concernant le C++, le problème c'est que
c'est un langage qui n'est pas fini.
Pour pouvoir l'utiliser en tant que C++ comme l'entendent ceux qui
préconisent son apprentissage sans passer par C, il faut avoir
implémenté une sacré bibliothèque de mécanismes de base (comme les
soit-disant "Smart Pointer"), et d'objets, et il faut bien sur
s'interdire d'utiliser tous les opérateurs du C problématiques. En
clair, il faut avoir implémenté au dessus de C++ un nouveau langage et
n'utiliser que celui-ci.
Or pour implémenter ce nouveau langage, il faut savoir programmer en
C, car on ne peut utiliser que C pour implémenter un stl::vector.
Et finalement, la bibliothèque standard actuelle de C++, la stl,
essaye bizarrement de simuler le plus possible le comportement des
opérateurs C. Un seul exemple, les itérateurs qui se comportent comme
des pointeurs. Je trouve qu'on a drôlement intérêt à bien comprendre
les pointeurs C avant d'utiliser un itérateur C++...
Donc la première chose à apprendre, c'est à ne pas faire de faute
d'orthographe ou de grammaire.
Bon, mais serrieusement, [...] implémenté une sacré bibliothèque [...]
Donc la première chose à apprendre, c'est à ne pas faire de faute
d'orthographe ou de grammaire.
Bon, mais serrieusement, [...] implémenté une sacré bibliothèque [...]
Donc la première chose à apprendre, c'est à ne pas faire de faute
d'orthographe ou de grammaire.
Bon, mais serrieusement, [...] implémenté une sacré bibliothèque [...]
| Bon, mais serrieusement, concernant le C++, le problème c'est que
| c'est un langage qui n'est pas fini.
Il y a plein d'expressions en C++ qui sont
catastrophique pour le programme.
Afin de pouvoir écrire un programme
qui tourne, il faut définir des constructions de plus haut niveau,
comme par exemple std::vector<T> au lieu de T* ou T[].
Mais même
std::vector<T> est insuffisant. N'importe quel développement
nécessite l'écriture de bibliothèques pour gérer des choses
fondamentales (des choses qu'on trouve dans n'importe quel langage de
programmation véritablement de haut niveau). Voir boost,
stlab.adobe.com, etc.
| Bon, mais serrieusement, concernant le C++, le problème c'est que
| c'est un langage qui n'est pas fini.
Il y a plein d'expressions en C++ qui sont
catastrophique pour le programme.
Afin de pouvoir écrire un programme
qui tourne, il faut définir des constructions de plus haut niveau,
comme par exemple std::vector<T> au lieu de T* ou T[].
Mais même
std::vector<T> est insuffisant. N'importe quel développement
nécessite l'écriture de bibliothèques pour gérer des choses
fondamentales (des choses qu'on trouve dans n'importe quel langage de
programmation véritablement de haut niveau). Voir boost,
stlab.adobe.com, etc.
| Bon, mais serrieusement, concernant le C++, le problème c'est que
| c'est un langage qui n'est pas fini.
Il y a plein d'expressions en C++ qui sont
catastrophique pour le programme.
Afin de pouvoir écrire un programme
qui tourne, il faut définir des constructions de plus haut niveau,
comme par exemple std::vector<T> au lieu de T* ou T[].
Mais même
std::vector<T> est insuffisant. N'importe quel développement
nécessite l'écriture de bibliothèques pour gérer des choses
fondamentales (des choses qu'on trouve dans n'importe quel langage de
programmation véritablement de haut niveau). Voir boost,
stlab.adobe.com, etc.
(Pascal J. Bourguignon) writes:
[...]
| Le C est déjà un raccourci, le mieux serait de commencer par
| l'assembleur. ;-)
Le C est tout sauf un raccourci. Surtout, si le but est de progammmer
en C++.
| Bon, mais serrieusement, concernant le C++, le problème c'est que
| c'est un langage qui n'est pas fini.
Pardon ?
| Pour pouvoir l'utiliser en tant que C++ comme l'entendent ceux qui
| préconisent son apprentissage sans passer par C, il faut avoir
| implémenté une sacré bibliothèque de mécanismes de base (comme les
| soit-disant "Smart Pointer"), et d'objets, et il faut bien sur
| s'interdir d'utiliser tous les opérateurs du C problématiques.
C'est curieux, je n'ai jamais eu à faire ça.
Les bibliothèques standard me suffisent largement pour les choses
d'ordre général -- et je soupçonne qu'elle suffisent largement pour
un débutant, comparé au C.
Pour une application dans un domaine spécifique, ben il faut de
toute façon implémenter les abstractions du domaine considére,
pertinentes pour l'application considérée.
pjb@informatimago.com (Pascal J. Bourguignon) writes:
[...]
| Le C est déjà un raccourci, le mieux serait de commencer par
| l'assembleur. ;-)
Le C est tout sauf un raccourci. Surtout, si le but est de progammmer
en C++.
| Bon, mais serrieusement, concernant le C++, le problème c'est que
| c'est un langage qui n'est pas fini.
Pardon ?
| Pour pouvoir l'utiliser en tant que C++ comme l'entendent ceux qui
| préconisent son apprentissage sans passer par C, il faut avoir
| implémenté une sacré bibliothèque de mécanismes de base (comme les
| soit-disant "Smart Pointer"), et d'objets, et il faut bien sur
| s'interdir d'utiliser tous les opérateurs du C problématiques.
C'est curieux, je n'ai jamais eu à faire ça.
Les bibliothèques standard me suffisent largement pour les choses
d'ordre général -- et je soupçonne qu'elle suffisent largement pour
un débutant, comparé au C.
Pour une application dans un domaine spécifique, ben il faut de
toute façon implémenter les abstractions du domaine considére,
pertinentes pour l'application considérée.
(Pascal J. Bourguignon) writes:
[...]
| Le C est déjà un raccourci, le mieux serait de commencer par
| l'assembleur. ;-)
Le C est tout sauf un raccourci. Surtout, si le but est de progammmer
en C++.
| Bon, mais serrieusement, concernant le C++, le problème c'est que
| c'est un langage qui n'est pas fini.
Pardon ?
| Pour pouvoir l'utiliser en tant que C++ comme l'entendent ceux qui
| préconisent son apprentissage sans passer par C, il faut avoir
| implémenté une sacré bibliothèque de mécanismes de base (comme les
| soit-disant "Smart Pointer"), et d'objets, et il faut bien sur
| s'interdir d'utiliser tous les opérateurs du C problématiques.
C'est curieux, je n'ai jamais eu à faire ça.
Les bibliothèques standard me suffisent largement pour les choses
d'ordre général -- et je soupçonne qu'elle suffisent largement pour
un débutant, comparé au C.
Pour une application dans un domaine spécifique, ben il faut de
toute façon implémenter les abstractions du domaine considére,
pertinentes pour l'application considérée.
| Il y a plein d'expressions en C++ qui sont catastrophique pour le
| programme.
Plus concrêtement ?
| Sinon pose toi la question de pourquoi on s'est embêté à faire boost,
| ou adobe ses stlab, etc.
J'aimwerais plutôt apprendre de ton expérience concrête -- et non
juste une récitation d'arguments abstraits appris par coeur. Peux-tu
me montrer quelques un de tes prorammes/bibliothèques C++ où tu as dû
devoir partir de zéro ? J'aimerais comprendre la base concrête de ton
argumentation.
| > Pour une application dans un domaine spécifique, ben il faut de
| > toute façon implémenter les abstractions du domaine considére,
| > pertinentes pour l'application considérée.
|
| Je ne parle pas des abstraction du domaine, mais des abstrations
| techniques, comme des fonctions anonymes
Que tu as en C ?
Nous ne devons pas parler du même langage de programmation. Quelle
version utilises-tu ?
| Il y a plein d'expressions en C++ qui sont catastrophique pour le
| programme.
Plus concrêtement ?
| Sinon pose toi la question de pourquoi on s'est embêté à faire boost,
| ou adobe ses stlab, etc.
J'aimwerais plutôt apprendre de ton expérience concrête -- et non
juste une récitation d'arguments abstraits appris par coeur. Peux-tu
me montrer quelques un de tes prorammes/bibliothèques C++ où tu as dû
devoir partir de zéro ? J'aimerais comprendre la base concrête de ton
argumentation.
| > Pour une application dans un domaine spécifique, ben il faut de
| > toute façon implémenter les abstractions du domaine considére,
| > pertinentes pour l'application considérée.
|
| Je ne parle pas des abstraction du domaine, mais des abstrations
| techniques, comme des fonctions anonymes
Que tu as en C ?
Nous ne devons pas parler du même langage de programmation. Quelle
version utilises-tu ?
| Il y a plein d'expressions en C++ qui sont catastrophique pour le
| programme.
Plus concrêtement ?
| Sinon pose toi la question de pourquoi on s'est embêté à faire boost,
| ou adobe ses stlab, etc.
J'aimwerais plutôt apprendre de ton expérience concrête -- et non
juste une récitation d'arguments abstraits appris par coeur. Peux-tu
me montrer quelques un de tes prorammes/bibliothèques C++ où tu as dû
devoir partir de zéro ? J'aimerais comprendre la base concrête de ton
argumentation.
| > Pour une application dans un domaine spécifique, ben il faut de
| > toute façon implémenter les abstractions du domaine considére,
| > pertinentes pour l'application considérée.
|
| Je ne parle pas des abstraction du domaine, mais des abstrations
| techniques, comme des fonctions anonymes
Que tu as en C ?
Nous ne devons pas parler du même langage de programmation. Quelle
version utilises-tu ?