AutoWIG: Automatic Generation of Python Bindings for C++ Libraries

AutoWIG: Automatic Generation of Python Bindings for C++ Libraries
复制标题

AutoWIG:自动生成 C 库的 Python 绑定

DOI:
--
复制
发表时间:
2017
影响因子:
3.8
通讯作者:
C. Pradal
C. Pradal
中科院分区:
计算机科学4区
文献类型:
--
作者:
P. Fernique;C. Pradal

文献摘要

被引文献

相似文献

大多数Python和R科学包都包含编译的科学库,以加速代码并重用遗留库。虽然有几种半自动的解决方案可以包装这些已编译的库,但包装大型库的过程既麻烦又耗时。在本文中,我们介绍了AutoWIG,这是一个Python包,它使用LLVM/Clang技术和Mako模板引擎将自动编译的库包装成高级语言。我们的方法是自动的,可扩展的,并适用于复杂的C++库,由数千个类或纳入现代元编程结构。
Most of Python and R scientific packages incorporate compiled scientific libraries to speed up the code and reuse legacy libraries. While several semi-automatic solutions exist to wrap these compiled libraries, the process of wrapping a large library is cumbersome and time consuming. In this paper, we introduce AutoWIG, a Python package that wraps automatically compiled libraries into high-level languages using LLVM/Clang technologies and the Mako templating engine. Our approach is automatic, extensible, and applies to complex C++ libraries, composed of thousands of classes or incorporating modern meta-programming constructs.