Сериализация функциональных объектов

Можно ли сериализовать и десериализоватьstd::function, объект функции или замыкание вообще в C ++? Как? C ++ 11 облегчает это? Есть ли какая-либо библиотека поддержки для такой задачи (например, в Boost)?

Например, предположим, что программа на C ++ имеетstd::function который необходимо передать (скажем, через сокет TCP / IP) другой программе C ++, находящейся на другой машине. Что вы предлагаете в таком сценарии?

Edit:

Чтобы уточнить, функции, которые должны быть перемещены, должны быть чистыми и без побочных эффектов. Поэтому у меня нет проблем с безопасностью или несоответствием состояния.

Решение этой проблемы заключается в создании небольшого встроенного домена для конкретного языка и сериализации его абстрактного синтаксического дерева. Я надеялся, что смогу найти поддержку языка / библиотеки для перемещения машинно-независимого представления функций.