Como ligações de linguagens (language bindings) funcionam?

Imagino que a pergunta já descreve tudo, mas por exemplo, suponhamos que alguém faça uma linguagem de programação X.
Essa pessoa quer de alguma forma ter acesso à uma biblioteca, escrita em C, diretamente da linguagem X.
Como isso seria feito?