Я хочу сделать это (без определенного языка):
print(foo.objects.bookdb.books[12].title);
или это:
book = foo.objects.bookdb.book.new();
book.title = 'RPC for Dummies';
book.save();
Где foo на самом деле является сервисом, подключенным к моей программе через некоторый IPC, и для доступа к его методам и объектам, некоторый уровень фактически отправляет и получает сообщения по сети.
Теперь я не ищу механизм IPC, так как есть из чего выбирать. Скорее всего, это будет не XML, а скорее s. е. как буферы протокола Google, dbus или CORBA. В чем я не уверен, так это в том, как структурировать приложение, чтобы я мог получить доступ к IPC так же, как к любому объекту.
Другими словами, как я могу получить ООП, который прозрачно отображает границы процесса?
Не то чтобы это вопрос дизайна, и я все еще работаю на довольно высоком уровне общей архитектуры. Так что я до сих пор не знаю, на каком языке это будет. C #, Java и Python, скорее всего, все-таки привыкнут.