LINUX.ORG.RU

История изменений

Исправление den73, (текущая версия) :

Ну ведь в COM в офтопике это есть, а в DCOM это можно растаскивать как минимум по процессам. Видимо, в CORBA тоже. Мне не казалось это каким-то шиком. Понятно, что перекинуть вообще говоря нельзя ввиду того, что удалённый узел может упасть. Но за вычетом этого падения - можно. Т.е. логика будет другая, но способ вызова - такой же.

Сами по себе кроссязыковые обвязки делаются в SWIG, для тяжёлого языка, такого, как C++. Т.е. там генерируются, скажем, обвязки для заранее выбранных воплощений шаблонов, и код на клиентской стороне, позволяющий эти же функции вызывать, и экземпляры пробрасываются, и эксепшены, и плюсовый объект становится, скажем, питоновским объектом с одноимёнными методами.

Просто в качестве транспорта используется FFI, а не, скажем, сокеты.

Был бы у меня SWIG на стороне сервера, а не клиента - я бы уже подумал прикрутить сокеты к свигу вместо FFI.

Исправление den73, :

Ну ведь в COM в офтопике это есть, а в DCOM это можно растаскивать как минимум по процессам. Видимо, в CORBA тоже. Мне не казалось это каким-то шиком. Понятно, что перекинуть вообще говоря нельзя ввиду того, что удалённый узел может упасть. Но за вычетом этого падения - можно. Т.е. логика будет другая, но способ вызова - такой же.

Сами по себе кроссязыковые обвязки делаются в SWIG, для тяжёлого языка, такого, как C++. Т.е. там генерируются, скажем, обвязки для заранее выбранных воплощений шаблонов, и код на клиентской стороне, позволяющий эти же функции вызывать, и экземпляры пробрасываются, и эксепшены, и плюсовый объект становится, скажем, питоновским объектом с одноимёнными методами.

Просто в качестве транспорта используется FFI, а не, скажем, сокеты.

Исправление den73, :

Ну ведь в COM в офтопике это есть, а в DCOM это можно растаскивать как минимум по процессам. Видимо, в CORBA тоже. Мне не казалось это каким-то шиком. Понятно, что перекинуть вообще говоря нельзя ввиду того, что удалённый узел может упасть. Но за вычетом этого падения - можно. Т.е. логика будет другая, но способ вызова - такой же.

Сами по себе кроссязыковые обвязки делаются в SWIG, для тяжёлого языка, такого, как C++. Т.е. там генерируются, скажем, обвязки для заранее выбранных воплощений шаблонов, и код на клиентской стороне, позволяющий эти же функции вызывать, и экземпляры пробрасываются, и эксепшены.

Просто в качестве транспорта используется FFI, а не, скажем, сокеты.

Исправление den73, :

Ну ведь в COM в офтопике это есть, а в DCOM это можно растаскивать как минимум по процессам. Видимо, в CORBA тоже. Мне не казалось это каким-то шиком. Понятно, что перекинуть вообще говоря нельзя ввиду того, что удалённый узел может упасть. Но за вычетом этого падения - можно. Т.е. логика будет другая, но способ вызова - такой же.

Сами по себе кроссязыковые обвязки делаются в SWIG, для тяжёлого языка, такого, как C++. Т.е. там генерируются, скажем, обвязки для шаблонов, и код на клиентской стороне, позволяющий эти же функции вызывать, и экземпляры пробрасываются, и эксепшены.

Просто в качестве транспорта используется FFI, а не, скажем, сокеты.

Исправление den73, :

Ну ведь в COM в офтопике это есть, а в DCOM это можно растаскивать как минимум по процессам. Видимо, в CORBA тоже. Мне не казалось это каким-то шиком. Понятно, что перекинуть вообще говоря нельзя ввиду того, что удалённый узел может упасть. Но за вычетом этого падения - можно. Т.е. логика будет другая, но способ вызова - такой же.

Сами по себе кроссязыковые обвязки делаются в SWIG, для тяжёлого языка, такого, как C++.

Исходная версия den73, :

Ну ведь в COM в офтопике это есть, а в DCOM это можно растаскивать как минимум по процессам. Видимо, в CORBA тоже. Мне не казалось это каким-то шиком. Понятно, что перекинуть вообще говоря нельзя ввиду того, что удалённый узел может упасть. Но за вычетом этого падения - можно. Т.е. логика будет другая, но способ вызова - такой же.