I have just made a proof of concept C API for go-ipfs.
This is not a client library to the go-ipfs rest API. This is a C API for a go-ipfs node shared library (libipfs.so).
Example code (in crystal) sets up an IPFS node, connects to bootstrap nodes, downloads and displays the contents of a cid.
Is this something people would be interested in?