Doesn't this introduce performance bottleneck by creating strings needlessly? We would call `pkg.toString` for top level packages only.