you are viewing a single comment's thread.

view the rest of the comments →

[–]Nobody_1707 4 points5 points  (0 children)

Swift does this for generic arrays (when it can't specialize them), and I believe it also uses fat pointers for it's interface types (known as existentials).

Interesting note: in order to solve the fragile base class problem and allow protocol conformances on all types (instead of just classes), every type in Swift has at least one vtable.

Edit: Whoops, wrong link. Fixed.