L'instruction goto est l'une des plus infames fonctionnalités de vieux et archaïques langages tels que Fortran. Il permet aux développeurs de rapidement écrire du code sans queue ni tête et impossible à comprendre.
Heureusement, lorsque des langages structurés ont débarqués à la fin des années 60, comme l'Algol, le Pascal ou plus tard le C, goto n'était plus utile.
Tout ça est de l'histoire ancienne. Alors pourquoi je vous parle de ça ? Tout simplement car j'ai découvert la semaine dernière que Ruby, un des langages les plus expressifs et élégants utilisés aujourd'hui, possédait l'instruction goto !
Commentaires
Vous devez
vous inscrire
ou
vous connecter
pour poster un commentaire
Goto peut sembler une infamie dans un context standard.
Mais il reste la clés fondamentale de n'importe quel mécanisme d'exception.
Pour élargir le débat, je vous engage à la lecteur de "man longjmp".
longjmp est une fonction de la librarie standard C qui capture un contexte et fait un goto. Ce qui est la brique de base de l'implémentation des fermetures.
Conclusion, même la plus horrible des constructions impérative est utile à l'implémentation de la plus belle des formes de la programmation fonctionnelle.
Il y a presque 13 ans