Je dis simplement qu'au lieu de faire
void do_something(virtual Base1&, virtual Base2);
faire
template<Base1 T1, Base2 T2>
void do_something(T1&, T2&);
C'est bien entendu tout con, mais l'orienté objet est tellement
répandu que les gens ont parfois du mal à penser autrement.
> Vous devriez essayer d'ecrire un interpreteur
AST. Cas d'école d'un variant.
> un evaluateur de
> feuille Excel
Je ne sais pas trop ce que c'est, mais n'est-ce pas un interpréteur ?
> ou encore un client de database par exemple
On a besoin de dynamisme où ?
Pour choisir le type de backend à charger à l'exécution ? Cela peut
parfaitement être un simple détail privé et/ou se faire avec de la
type erasure par exemple.
Une présentation intéressante sur l'utilisation du polymorphisme
d'inclusion en tant que détail d'implémentation :https://admin.adobe. acrobat.com/_a295153/p53888531/
> et nous
> montrer quels concepts vos algorithmes generiques demanderont a leurs
> arguments dont les types seront inconnus a la compilation.
C'est simple : un algorithme nécessite des primitives pour
fonctionner.
Conceptualiser consiste à reconnaître ces primitives pour les
formaliser.
http://www.generic-programming.org/
Je dis simplement qu'au lieu de faire
void do_something(virtual Base1&, virtual Base2);
faire
template<Base1 T1, Base2 T2>
void do_something(T1&, T2&);
C'est bien entendu tout con, mais l'orienté objet est tellement
répandu que les gens ont parfois du mal à penser autrement.
> Vous devriez essayer d'ecrire un interpreteur
AST. Cas d'école d'un variant.
> un evaluateur de
> feuille Excel
Je ne sais pas trop ce que c'est, mais n'est-ce pas un interpréteur ?
> ou encore un client de database par exemple
On a besoin de dynamisme où ?
Pour choisir le type de backend à charger à l'exécution ? Cela peut
parfaitement être un simple détail privé et/ou se faire avec de la
type erasure par exemple.
Une présentation intéressante sur l'utilisation du polymorphisme
d'inclusion en tant que détail d'implémentation :https://admin.adobe. acrobat.com/_a295153/p53888531/
> et nous
> montrer quels concepts vos algorithmes generiques demanderont a leurs
> arguments dont les types seront inconnus a la compilation.
C'est simple : un algorithme nécessite des primitives pour
fonctionner.
Conceptualiser consiste à reconnaître ces primitives pour les
formaliser.
http://www.generic-programming.org/
Je dis simplement qu'au lieu de faire
void do_something(virtual Base1&, virtual Base2);
faire
template<Base1 T1, Base2 T2>
void do_something(T1&, T2&);
C'est bien entendu tout con, mais l'orienté objet est tellement
répandu que les gens ont parfois du mal à penser autrement.
> Vous devriez essayer d'ecrire un interpreteur
AST. Cas d'école d'un variant.
> un evaluateur de
> feuille Excel
Je ne sais pas trop ce que c'est, mais n'est-ce pas un interpréteur ?
> ou encore un client de database par exemple
On a besoin de dynamisme où ?
Pour choisir le type de backend à charger à l'exécution ? Cela peut
parfaitement être un simple détail privé et/ou se faire avec de la
type erasure par exemple.
Une présentation intéressante sur l'utilisation du polymorphisme
d'inclusion en tant que détail d'implémentation :https://admin.adobe. acrobat.com/_a295153/p53888531/
> et nous
> montrer quels concepts vos algorithmes generiques demanderont a leurs
> arguments dont les types seront inconnus a la compilation.
C'est simple : un algorithme nécessite des primitives pour
fonctionner.
Conceptualiser consiste à reconnaître ces primitives pour les
formaliser.
http://www.generic-programming.org/
| Parce que la sémantique d'entité marche mieux pour la programmation
| orientée objet qu'une approche valeur, particulièrement pour les
| fameux objets "métier".
J'ai une bibliothèque qui utilise ce qu'on appelle la programmation
orientée objet et qui marche très bien, sans que j'ai à virer quoi que
ce soit. C'est un ensemble de classes C++ permettant de représenter des
programmes C++. L'utilisateur se voit présenter une interface, qui n e
contient que des classes abstraites. En quoi virer les constructeur de
copie et opérateurs d'affectation aurait fait « marcher mieux » ?
| "Apparemment" dénote une impression personnelle.
| Ce que j'en connais, ce sont les papiers postés tous les deux mois su r
| open-std.org, le groupe comp.std.c++, et les quelques contacts que
| j'ai qui ont participé à des comités.
^^^^^^^^^^^^^^
« des comités C++ » ?
C'est beaucoup plus nuancé que cela.
| Parce que la sémantique d'entité marche mieux pour la programmation
| orientée objet qu'une approche valeur, particulièrement pour les
| fameux objets "métier".
J'ai une bibliothèque qui utilise ce qu'on appelle la programmation
orientée objet et qui marche très bien, sans que j'ai à virer quoi que
ce soit. C'est un ensemble de classes C++ permettant de représenter des
programmes C++. L'utilisateur se voit présenter une interface, qui n e
contient que des classes abstraites. En quoi virer les constructeur de
copie et opérateurs d'affectation aurait fait « marcher mieux » ?
| "Apparemment" dénote une impression personnelle.
| Ce que j'en connais, ce sont les papiers postés tous les deux mois su r
| open-std.org, le groupe comp.std.c++, et les quelques contacts que
| j'ai qui ont participé à des comités.
^^^^^^^^^^^^^^
« des comités C++ » ?
C'est beaucoup plus nuancé que cela.
| Parce que la sémantique d'entité marche mieux pour la programmation
| orientée objet qu'une approche valeur, particulièrement pour les
| fameux objets "métier".
J'ai une bibliothèque qui utilise ce qu'on appelle la programmation
orientée objet et qui marche très bien, sans que j'ai à virer quoi que
ce soit. C'est un ensemble de classes C++ permettant de représenter des
programmes C++. L'utilisateur se voit présenter une interface, qui n e
contient que des classes abstraites. En quoi virer les constructeur de
copie et opérateurs d'affectation aurait fait « marcher mieux » ?
| "Apparemment" dénote une impression personnelle.
| Ce que j'en connais, ce sont les papiers postés tous les deux mois su r
| open-std.org, le groupe comp.std.c++, et les quelques contacts que
| j'ai qui ont participé à des comités.
^^^^^^^^^^^^^^
« des comités C++ » ?
C'est beaucoup plus nuancé que cela.
Peut-être que les gens ne font pas ce que tu proposes parce que cela ne
marche pas ? Avant de répondre, prends le temps de donner un peut de
crédit aux gens qui ont écrit la proposition.
| > Vous devriez essayer d'ecrire un interpreteur
|
| AST. Cas d'école d'un variant.
Fantastique. Peux-tu montrer comment ta prescription marche
concrètement pour représenter un langage simple comme C++ ?
Peut-être que les gens ne font pas ce que tu proposes parce que cela ne
marche pas ? Avant de répondre, prends le temps de donner un peut de
crédit aux gens qui ont écrit la proposition.
| > Vous devriez essayer d'ecrire un interpreteur
|
| AST. Cas d'école d'un variant.
Fantastique. Peux-tu montrer comment ta prescription marche
concrètement pour représenter un langage simple comme C++ ?
Peut-être que les gens ne font pas ce que tu proposes parce que cela ne
marche pas ? Avant de répondre, prends le temps de donner un peut de
crédit aux gens qui ont écrit la proposition.
| > Vous devriez essayer d'ecrire un interpreteur
|
| AST. Cas d'école d'un variant.
Fantastique. Peux-tu montrer comment ta prescription marche
concrètement pour représenter un langage simple comme C++ ?
Mathias Gaunard writes:
[...]
| Une présentation intéressante sur l'utilisation du polymorphisme
| d'inclusion en tant que détail d'implémentation :
|https://admin.adobe.acrobat.com/_a295153/p53888531/
Peut-être que tu devrais savoir que Sean travaille aussi sur les
concepts dynamiques et que le problème est isomophorme aux
multi-méthodes.
Mathias Gaunard <loufo...@gmail.com> writes:
[...]
| Une présentation intéressante sur l'utilisation du polymorphisme
| d'inclusion en tant que détail d'implémentation :
|https://admin.adobe.acrobat.com/_a295153/p53888531/
Peut-être que tu devrais savoir que Sean travaille aussi sur les
concepts dynamiques et que le problème est isomophorme aux
multi-méthodes.
Mathias Gaunard writes:
[...]
| Une présentation intéressante sur l'utilisation du polymorphisme
| d'inclusion en tant que détail d'implémentation :
|https://admin.adobe.acrobat.com/_a295153/p53888531/
Peut-être que tu devrais savoir que Sean travaille aussi sur les
concepts dynamiques et que le problème est isomophorme aux
multi-méthodes.
| Ah, j'avais oublié que fr.comp.lang.c++ c'était pas très construc tif.
Tu as absolument raison et tes messages (y compris celui auquel je
réponds) en sont des évidences palpables
tu as commencé à pontifier
avec des opinions fortes sur une proposition que tu sembles vaguement
avoir lue.
| Je ne suis pas sur Internet pour donner un avis objectif, ni fournir
| une analyse complète.
Un euphémisme pour « je ne suis pas sur Internet pour être très
constructif » ?
| Ah, j'avais oublié que fr.comp.lang.c++ c'était pas très construc tif.
Tu as absolument raison et tes messages (y compris celui auquel je
réponds) en sont des évidences palpables
tu as commencé à pontifier
avec des opinions fortes sur une proposition que tu sembles vaguement
avoir lue.
| Je ne suis pas sur Internet pour donner un avis objectif, ni fournir
| une analyse complète.
Un euphémisme pour « je ne suis pas sur Internet pour être très
constructif » ?
| Ah, j'avais oublié que fr.comp.lang.c++ c'était pas très construc tif.
Tu as absolument raison et tes messages (y compris celui auquel je
réponds) en sont des évidences palpables
tu as commencé à pontifier
avec des opinions fortes sur une proposition que tu sembles vaguement
avoir lue.
| Je ne suis pas sur Internet pour donner un avis objectif, ni fournir
| une analyse complète.
Un euphémisme pour « je ne suis pas sur Internet pour être très
constructif » ?