How does this work? Doesn't it define `size` in terms of `size`?