SWIG: Вызов Go из Python - PullRequest
       12

SWIG: Вызов Go из Python

2 голосов
/ 31 марта 2012

Можно ли использовать SWIG для вызова функций Go из Python?

Все примеры Go, которые я видел в SWIG, вызывают функции C / C ++ из Go.

1 Ответ

1 голос
/ 31 марта 2012

Один из компиляторов Go производит C (cgo).Я никогда не смотрел на это, но может быть путь к вызову этих функций из Python с использованием SWIG.

Также есть Cython, который преобразует форму Python в C, так что может обеспечить другой более прямой путь, комбинируя два с C в качестве клея и без SWIG.

Пользователь Cython из Python WM сказал мне, что с осторожностью Cython может создавать C, который не требует "магического" времени выполнения для работы.Их техника заключается в использовании механизмов Cython, например, cdef, чтобы сделать их Python ближе к C. Изменяя исходный код Cython, а затем итеративно просматривая выходные данные Cython, они сказали, что могут привести к «исчезновению» времени выполнения Python и достижениюpure 'C. Это не идеально, но может быть лучше, чем ничего.

Таким образом, вы могли бы иметь возможность использовать эти механизмы для обтекания функций Go, которые были скомпилированы в C. НО , этот подход ограничил бы вас использованием Cython, которыйможет быть слишком много ограничений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...