Oui, c’est du Duck-Typing. Si vous voulez du typage fort, vous prenez C++ ou Java ou autre
Non ce que tu viens de décrire n'a rien a voir avec le concept de Duck Typing.
Si. Pouvoir utiliser un Hash, une Lambda ou un Array parce que tous les trois répondent à l’opérateur [], c’est du Duck Typing.
Et le fait que [] réponde nil quand la clef/l’indice n’a pas de correspondant pour un Hash ou un Array fait bien que le « coin » de l’Array est le même que celui du Hash. Même « coin », même canard.
Python qui a inventé la notion Duck typing [...]
Pas vraiment. On faisait du Duck Typing avant. C’est juste que le terme a été utilisé pour décrire ce typage dans Python.
L[à] c'est un choix de Ruby de faire comme Perl et PHP de renvoyer nil plutôt que péter. Le programmeur doit donc tester sinon il risque d'appeler une méthode sur nil. C'est juste une question de gout.
C’est exactement ce que je dis : « En Ruby, il a été décidé que c’était pareil pour les Array : un indice hors taille renvoie nil. » C’est un choix.
C’est pour cela que je réponds « Non. » à ceux qui sautent à pieds joints sur la table en répétant « C’est nul, ça doit être dans le langage ! ».
Et je te rappelle que Ruby que tu connais mieux que tout le monde apparemment,
En tout cas mieux que lesdits sauteurs...
est un langage a typage fort tout comme Java.
Oui, mea culpa, lapsus calami, je voulais écrire « typage statique ».
[^] # Re: Code le toi même
Posté par Sylvain Sauvage . En réponse à la dépêche Sortie de Moonlight 1.0. Évalué à 2.
Non ce que tu viens de décrire n'a rien a voir avec le concept de Duck Typing.
Si. Pouvoir utiliser un Hash, une Lambda ou un Array parce que tous les trois répondent à l’opérateur [], c’est du Duck Typing.
Et le fait que [] réponde nil quand la clef/l’indice n’a pas de correspondant pour un Hash ou un Array fait bien que le « coin » de l’Array est le même que celui du Hash. Même « coin », même canard.
Python qui a inventé la notion Duck typing [...]
Pas vraiment. On faisait du Duck Typing avant. C’est juste que le terme a été utilisé pour décrire ce typage dans Python.
L[à] c'est un choix de Ruby de faire comme Perl et PHP de renvoyer nil plutôt que péter. Le programmeur doit donc tester sinon il risque d'appeler une méthode sur nil. C'est juste une question de gout.
C’est exactement ce que je dis : « En Ruby, il a été décidé que c’était pareil pour les Array : un indice hors taille renvoie nil. » C’est un choix.
C’est pour cela que je réponds « Non. » à ceux qui sautent à pieds joints sur la table en répétant « C’est nul, ça doit être dans le langage ! ».
Et je te rappelle que Ruby que tu connais mieux que tout le monde apparemment,
En tout cas mieux que lesdits sauteurs...
est un langage a typage fort tout comme Java.
Oui, mea culpa, lapsus calami, je voulais écrire « typage statique ».