Recursive directory loop in ./lib

When installing a new library, for example sqlite3, using the shards install command, a circular reference is created in the file tree.
Example with sqlite3 :

lib/sqlite3:
total 28
-rw-r--r-- 1 hubert hubert 1916 30 sept. 21:01 CHANGELOG.md
lrwxrwxrwx 1 hubert hubert    2 24 nov.  16:19 lib -> ..
-rw-r--r-- 1 hubert hubert 1083 30 sept. 21:01 LICENSE
-rw-r--r-- 1 hubert hubert 1368 30 sept. 21:01 README.md
drwxr-xr-x 2 hubert hubert 4096 30 sept. 21:01 samples
-rw-r--r-- 1 hubert hubert  240 30 sept. 21:01 shard.yml
drwxr-xr-x 2 hubert hubert 4096 30 sept. 21:01 spec
drwxr-xr-x 3 hubert hubert 4096 30 sept. 21:01 src

I suppose this is intentional and useful, but I would be happy to have the explanation.
Thank you.

This enables you to run the compiler in a dependency direcory like lib/sqlite3 and have access to its installed dependencies. Since all dependencies and subdependencies are installed in lib, that ..
A common use case for this is post install hooks for development tools that build themselves after being installed as a dependency.