Le duck typing déplace l'erreur à l'exécution, loin de sa cause : le NoMethodError au pire endroit. La parade n'est pas de tout vérifier, mais de regagner une garantie à la frontière — au runtime sur la donnée (dry-struct), ou à l'analyse sur le code (Steep, RBS). Une frontière, deux façons de la tenir. Duck typing pushes the error to runtime, far from its cause: the NoMethodError at the worst place. The remedy isn't to check everything, but to regain a guarantee at the boundary — at runtime on the data (dry-struct), or at analysis on the code (Steep, RBS). One boundary, two ways to hold it.
Le premier numéro est libre. Débloque tout The Ruby Loop — tous les volumes, à vie — pour 5 €, paiement unique. The first issue is free. Unlock all of The Ruby Loop — every volume, forever — for €5, one-time.