Is it possible for an Ethereum smart contract to write data to IPFS

Is it possible for an Ethereum smart contract to write and retrieve data to/from IPFS?