Common libraries in C could easily be used via FFI in most languages; they generally aren't because different languages have different paradigms (you might even say that's their purpose), and translations from one language's idioms into another are always lossy.
Besides, users of a library in language X don't want to have to read language Y to look under the hood.
Besides, users of a library in language X don't want to have to read language Y to look under the hood.