Python má stabilní větev 2.x a stabilní větev 3.x. Můžete klidně zůstat na 2.x, která bude udržována i do budoucna, a užívat si backporty těch změn, které nezpůsobí zpětnou nekompatibilitu.
Ruby znakový typ nemá, stejně jako Python. Pouze ve verzi 1.9 přešlo Ruby na tentýž komcept, jaký je v Pythonu, a sice že „znak“ je řetězec délky 1. Autor Ruby není Unicode-hater, ale m17n-lover. Řetězce v Ruby 1.9 podporují m17n.
Možnost rozšířit libovolnou třídu byla převzata ze Smalltalku a (Common) Lispu. Stejně tak si můžete zajít do kuchyně pro nůž a zkusit, co se stane, když si ho probodnete hrudníkem, ale většina lidí to nedělá o nic častěji, než Smalltalkeři předefinovávají ifTrue: a ifFalse: metody (má to samozřejmě pedagogickou hodnotu ;-)). V Common Lispu je tuto fíčuru nutné odemknout, protože balík CL je defaultně zamknutý, ale vývojářům se tím usnadňuje a urychluje vývoj samotné platformy – můžou měnit a ladit kód standardních knihoven a ihned ho zkoušet s „ostrými daty“ bez větších prodlev.
Jak jsem poznamenal výše, vývojáři jazyka Lua k podobným tzv. „nedostatkům“ poznamenali: „If you don't want to do it, just don't do it.“