Начинаем разрабатывать на C++ сложный продукт, моделирующий сложный объект :-). Должен быть насквозь скриптован, часто будет запускаться в пакетном режиме. Не менее часто, однако, будет использоваться GUI. В связи с этим напрашивается решение разделить GUI и функциональность по разным процессам.
Какой механизм IPC для этого лучше использовать? Сокеты смотрятся слишком низкоуровневыми (придется разрабатывать и поддерживать сложный протокол). CORBA выглядит слишком громоздкой...