Et toi tu en penses quoi ? :)
Je crois qu'il y a quelques erreures dans les slides par exemple quand
il dit que cont(T).field est de type const(X), c'est vrai avec
invariant mais avec const ?
Je m'explique : vue que X peut-etre une classe, alors on manipule un
pointeur, en C++ const(T).field serait de type X*const et non pas X
const *. Enfin le point n'est pas tres claire dans les slides.
Je n'ai pas compris pourquoi T ne peux pas etre implicitement
convertit en invariant(T) ?
Le constructeur est different pour les invariants et qu'en est-il du
destructeur ou d'autre methodes ?
Apres je ne sais plus trop quoi penser de Walter, il craque un peu.
Dire qu'une fonction ne depends que de ses parametres d'entree ca fait
un peu totologie... Une variable globale ca peut-etre vue comme un
parametre d'entree avec du recul. J'ai plus le sentiment qu'il rentre
dans une problematique ou il va chercher a donner a son langage les
moyens de tout exprimer alors que c'est pas la solution. Ca va devenir
un gros foutoire incomprehensible. Je reviens sur ce que je pense : il
faut accepter qu'un langage soit imparfait, utiliser un marteau pour
enfoncer des clous et un fer a repasser pour repasser le linge mais
pas un couteau suisse.
-- 
Alexandre Bique (bique.a...@gmail.com)
Epita 2009 - GISTR - Yaka
Port. +336 19 42 85 26
Une variable globale ca peut-etre vue comme un
parametre d'entree avec du recul.
En D oui, le const est transitif.
> Je m'explique : vue que X peut-etre une classe, alors on manipule un
> pointeur, en C++ const(T).field serait de type X*const et non pas X
> const *. Enfin le point n'est pas tres claire dans les slides.
Ça c'est le cas en C++ effectivement. En D, il est de type X const *
const, toujours du fait de la transitivité.
> Je n'ai pas compris pourquoi T ne peux pas etre implicitement
> convertit en invariant(T) ?
invariant est une classe de stockage (pas un cv-qualifier) : tu l'es
ou tu ne l'es pas, mais tu ne peux pas passer de l'un à l'autre.
> Le constructeur est different pour les invariants et qu'en est-il du
> destructeur ou d'autre methodes ?
Logiquement, pas de modifications de this ou de ce qui est accessible
par this par les méthodes, et la destruction est gérée par le garbage
collector. Enfin là l'optique est surtout la partie purement
fonctionnelle du langage, j'imagine qu'il y a des destructeurs normaux
autrement.
> Apres je ne sais plus trop quoi penser de Walter, il craque un peu.
Là c'est Andreï, pas Walter ;)
-- 
Arkanosis