Bien sur ont peut aussi faire une structure ou un objet qui contienne toutes les variables et tableaux temporaire, mais dans ce cas la soit on a langage ou il faut gérer explicitement la mémoire et il faut faire une allocation qui coute cher et ne pas oublier le free. Si on a un langage ou la memoire est gérée automatiquement on ne sait plus vraiment ce qui ce passe ni quel est l'impact de l'allocation.
T'es pas très juste dans ta comparaison, dans la plupart des langages encapsuler dans un conteneur ça change pas grand chose question allocation.
En C par exemple, tu peux toujours l'allouer (la structure, l'objet) sur la pile et passer pointeur ou référence en paramètre aux procédures, ça ne change pas grand chose question allocation mémoire.
En java, ça change rien non plus, tes tableaux sont alloués comme le reste il me semble, et à peu prêt tout est référence.
Pleins de langages ont la notion de référence, dans les langages à gc t'as pas besoin d'oublier le free, dans les langages fonctionnels t'as pas d'effets de bords et les variables sont copiées au besoin si tu les modifies, elles ne sont pas réallouées si tu les modifies pas (copy on write) ...
Bref, tu n'auras que les mauvais programmeurs qui vont faire des copies inutiles de leurs données ...
[^] # Re: Langage idéal...
Posté par thoasm . En réponse au journal Nimrod, ça se rapproche du langage idéal. Évalué à 4.
T'es pas très juste dans ta comparaison, dans la plupart des langages encapsuler dans un conteneur ça change pas grand chose question allocation.
En C par exemple, tu peux toujours l'allouer (la structure, l'objet) sur la pile et passer pointeur ou référence en paramètre aux procédures, ça ne change pas grand chose question allocation mémoire.
En java, ça change rien non plus, tes tableaux sont alloués comme le reste il me semble, et à peu prêt tout est référence.
Pleins de langages ont la notion de référence, dans les langages à gc t'as pas besoin d'oublier le free, dans les langages fonctionnels t'as pas d'effets de bords et les variables sont copiées au besoin si tu les modifies, elles ne sont pas réallouées si tu les modifies pas (copy on write) ...
Bref, tu n'auras que les mauvais programmeurs qui vont faire des copies inutiles de leurs données ...