[
https://issues.apache.org/jira/browse/HDFS-9758?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15259810#comment-15259810
]
Tibor Kiss commented on HDFS-9758:
----------------------------------
We have several options to implement Python bindings for the pure C++ HDFS
Client:
- CFFI (MIT License)
- cppyy (MIT License)
- Ctypes (MIT License)
- Cython (Apache License)
- SWIG (GPL License)
- Boost.Python (Boost Software License)
- pure python extensions
While CFFI is simple & clean it does not support C++.
cppyy would be a great choice but it supports pypy at this time.
Ctypes is integrated to CPython since 2.5, but C++ support is not great.
Cython does support both C & C++, seems a reasonable choice.
SWIG also supports C & C++, plus it could be later used to bring other
scripting language support. It's licensing could be a problem.
Boost.Python seems to have great C++ support at a first glance. It's license
needs to be studied.
Thoughts / feelings / preferences?
> libhdfs++: Implement Python bindings
> ------------------------------------
>
> Key: HDFS-9758
> URL: https://issues.apache.org/jira/browse/HDFS-9758
> Project: Hadoop HDFS
> Issue Type: Sub-task
> Components: hdfs-client
> Reporter: James Clampffer
>
> It'd be really useful to have bindings for various scripting languages.
> Python would be a good start because of it's popularity and how easy it is to
> interact with shared libraries using the ctypes module. I think bindings for
> the V8 engine that nodeJS uses would be a close second in terms of expanding
> the potential user base.
> Probably worth starting with just adding a synchronous API and building from
> there to avoid interactions with python's garbage collector until the
> bindings prove to be solid.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)