[gull] python2.5 et type(x)

Philippe Strauss philou at philou.ch
Fri Aug 1 05:05:51 CEST 2008


On Fri, Aug 01, 2008 at 03:59:30AM +0200, Marc Mongenet wrote:
> 2008/8/1 Philippe Strauss <philou at philou.ch>:
> > On Thu, Jul 31, 2008 at 10:02:52AM +0200, Daniel Cordey wrote:
> >>
> >> Depuis fort longtemps (< 2001... Python 2.1) il est recommande d'utiliser
> >> 'isinstance()' plutot que 'type()'. On peut ecrire :
> >>
> >>       isinstance(3, int)
> >>       isinstance(3, types.IntType)
> >>       isinstance([], list)
> >>       ...
> >>
> >> "This is the recommended way to perform type-checking with the built-in types,
> >> as the distinction between types and classes may disappear in a future
> >> release" (Python - Essential reference - Second edition - New Riders)
> >
> > ah ok merci.
> > c'est plûtot particulier l'idée de ne pas distinguer une notion
> > de typage avec une notion de classe d'objet, mais bon, ca doit être cela un scripting langage.
> > Doit pas aider les projets tentant de compiler du python vers c/c++.
> >
> > aplus
> 
> Un des buts de C++ n'est-il pas justement de rendre les
> types de classe aussi "privilégiés" (first-class citizens) que les
> types de base ? D'où notamment la surcharge des opérateurs,
> qui fait que les opérateurs ne sont pas réservés aux types de
> base en C++.

je connais très peu c++.
la je me met à ocaml, ben disons que ça choque un peu se mélange des genres,
lorsque tu commences à tirer profit du typage statique fort de caml (ce qui peut être
embarrassant au tout début).

(NB: c'est pas le plus gros choc de ma vie non plus, j'arriverai a surmonter :-))

j'en suis pas encore à la notion de type de classe en objet, je sais pas si elle existe dans ocaml.
jamais été un grand fan du modèle objet en fait. utilisateur d'objets oui, mais c'est
presque tout.

> En fait, typage et classe d'objet sont synonymes en C++, non?
> int i; // objet i de type int
> C c; // objet c de type C

ah ok.
mais le compilo en fait quoi, c'est juste une "features" pour l'overloading d'opérateurs de base ou
cela va plus loin et en fait une vraie utilisation à la compilation pour (entre autre) débusquer
des erreurs humaines?

-- 
Philippe Strauss
http://philou.ch



More information about the gull mailing list