il faut faire en sorte de "sauvegarder" la pile quelque part
Pas besoin de sauvegarder toute la pile, juste les variables de la fermeture. En général il y en a seulement quelques-unes, et tu les connais à l'avance (lors de la compilation). Tu peux donc déléguer l'accès à ces variables à une structure ad hoc, passée en paramètre caché de ta fonction-fermeture (un peu comme le "this" caché de tes méthodes, d'ailleurs un objet n'est rien d'autre qu'une fermeture un peu retournée).
(oui, je dois avoir l'air d'un fanboy Scala)
Oui, vu que de toute façon Python et Ruby (et probablement Perl) gèrent aussi les fermetures.
[^] # Re: je suis pas convaincue
Posté par Antoine . En réponse à la dépêche Sortie de Vala 0.7.6. Évalué à 4.
Pas besoin de sauvegarder toute la pile, juste les variables de la fermeture. En général il y en a seulement quelques-unes, et tu les connais à l'avance (lors de la compilation). Tu peux donc déléguer l'accès à ces variables à une structure ad hoc, passée en paramètre caché de ta fonction-fermeture (un peu comme le "this" caché de tes méthodes, d'ailleurs un objet n'est rien d'autre qu'une fermeture un peu retournée).
(oui, je dois avoir l'air d'un fanboy Scala)
Oui, vu que de toute façon Python et Ruby (et probablement Perl) gèrent aussi les fermetures.