Citation:
Envoy� par soleuh
Tout simplement parceque la r�solution de l'exception passe
par le kernel..
Et? Si on est dans le kernel, qu'est-ce qui g�ne?
Citation:
Rien ne me g�ne, et je sais comment fonctionne la surcharge d'op�rateur, merci. Mais, comme, dans linux en tous cas, il existe plusieurs moyens d'allouer de la m�moire (kmalloc, vmalloc, je crois qu'il y en a d'autres...). Je ne vois pas de raison d'utiliser de new du tout (pourquoi en favoriser un plut�t qu'un autre ?)
� quoi sert la syntaxe de placement new et la possibilit� de d�finir des
op�rateurs new par classe si ce n'est � offrir des variantes?
Citation:
Je n'ai pas dis que je comprennais pas le C++, je n'ai pas dit que c'�tait impossible de faire un kernel en C++, d'ailleur il existe des patchs pour le noyau linux permettant d'ajouter des modules en C++, et des impl�mentations du L4 en C++. Mais je ne suis pas persuad� de la pertinence de ce choix (par contre, j'aurai bien aim� essay� de le faire, si j'avais eu les comp�tences et surtout le temps). En effet, que reste-t-il une fois que l'on a enlev� les exceptions,
Je suis toujours loin d'�tre convaincu que les exceptions ne sont pas utilisables.
Je ne vois toujours rien de g�nant
Citation:
une grande partie des m�thodes virtuelles.. ?
Qu'est-ce qui g�ne ici?
Citation:
M�me si c'est pour les r�impl�menter � sa sauce, on utilise peu des possibilit�s du C++. Si c'est pour faire du C sur un compilateur C++, je ne vois pas l'inter�t.
M�me si on n'utilise que les virtuelles (c'est utiles dans le noyeau, tous les r�invente), les templates et le fait qu'en g�n�ral on a une meilleure encapsulation qu'on n'est pas oblig� de sacrifier � l'autel des performances... on a gagn� quelque chose par rapport au C. Il ne faut pas oublier que le C++ s'est d'abord r�pandu en tant que "better C" et ensuite on a commenc� � se servir des possibilit�s suppl�mentaires.
Citation:
Envoy� par Linus Torvalds
The fact is, C++ compilers are not
trustworthy. They were even worse in 1992, but some fundamental facts
haven't changed:
En 1992, je n'aurais pas peut-�tre pas plus utilis� du C++, le langage
�tant alors trop en �volution.
Citation:
- the whole C++ exception handling thing is fundamentally broken. It's
_especially_ broken for kernels.
L� il faudrait argumenter un peu plus. J'aimerais bien savoir ce qui est
cass�.
Citation:
- any compiler or language that likes to hide things like memory
allocations behind your back just isn't a good choice for a kernel.
Quelle construction du C++ fait des allocations m�moires toute seule?
Citation:
- you can write object-oriented code (useful for filesystems
etc)
L� nous sommes d'accord.
On peut tout faire en C, il suffit d'�crire une machine virtuelle qui se comporte comme on veut... on peut m�me g�n�ralement utiliser des m�thodes plus efficaces que �a...
Citation:
_without_ the crap that is C++.
Pr�cision?
Citation:
In general, I'd say that anybody who designs his kernel modules for C++ is
either
(a) looking for problems
Visiblement... mais je ne vois pas trop l'int�r�t du C++ pour un module dans un noyeau �crit pour le reste en C; l'�chelle est trop petite pour que les int�r�ts majeurs du C++ se manifestent, et les inconv�nients d'avoir une partie �crite dans un langage non ma�tris� par le reste des mainteneurs sont certains.