Serializacja obiektów funkcji

Czy można serializować i deserializować astd::function, obiekt funkcji lub ogólnie zamknięcie w C ++? W jaki sposób? Czy C ++ 11 to ułatwia? Czy jest dostępne wsparcie biblioteki dla takiego zadania (np. W Boost)?

Załóżmy na przykład, że program C ++ mastd::function które należy przekazać (powiedzmy przez gniazdo TCP / IP) do innego programu C ++ rezydującego na innym komputerze. Co sugerujesz w takim scenariuszu?

Edytować:

Aby wyjaśnić, funkcje, które mają zostać przeniesione, powinny być czyste i wolne od efektów ubocznych. Nie mam więc problemów z bezpieczeństwem ani niezgodnością ze stanem.

Rozwiązaniem tego problemu jest zbudowanie małego wbudowanego języka specyficznego dla domeny i serializowanie abstrakcyjnego drzewa składni. Miałem nadzieję, że uda mi się znaleźć obsługę języka / biblioteki do przenoszenia niezależnej od maszyny reprezentacji funkcji.

questionAnswers(3)

yourAnswerToTheQuestion