It's only always a full-blown object in CPython. Smarter implementations, notably PyPy, will do escape analysis, and never actually end up allocating those objects.
(My point is that not having unboxed types does not imply being a memory hog. You just need a smarter implementation.)
(My point is that not having unboxed types does not imply being a memory hog. You just need a smarter implementation.)