Serializando objetos de função

É possível serializar e desserializar umstd::function, um objeto de função ou um encerramento em geral em C ++? Como? O C ++ 11 facilita isso? Existe algum suporte de biblioteca disponível para tal tarefa (por exemplo, no Boost)?

Por exemplo, suponha que um programa C ++ tenha umstd::function que é necessário para ser comunicado (digamos via um socket TCP / IP) para outro programa C ++ residente em outra máquina. O que você sugere em tal cenário?

Editar:

Para esclarecer, as funções que devem ser movidas são supostamente puras e livres de efeitos colaterais. Portanto, não tenho problemas de segurança ou incompatibilidade de estado.

Uma solução para o problema é construir uma pequena linguagem específica de domínio incorporado e serializar sua árvore de sintaxe abstrata. Eu estava esperando que eu pudesse encontrar algum suporte de linguagem / biblioteca para mover uma representação de funções independente da máquina.

questionAnswers(3)

yourAnswerToTheQuestion