[ 
https://issues.apache.org/jira/browse/MESOS-862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13844860#comment-13844860
 ] 

Niklas Quarfot Nielsen commented on MESOS-862:
----------------------------------------------

I'd like your input on this issue: would it be feasible/a good idea to add 
C-bindings to Mesos?

One motivation would be that other languages that only interfaces C could 
easier to support and could be easy to land (Have tried to have 
https://github.com/mesosphere/mesos-go/tree/master/c-api as a part of libmesos).

One way to go about it would be to create "src/c" (in spirit of src/java, 
src/python).
Along with the usual scheduler and executor headers, we would then install 
c-exports.hpp which is in the same style as 
https://github.com/mesosphere/mesos-go/blob/master/c-api/c-api.hpp.

We are currently in favor of doing this over having an external c-api library.
Feel free to jump in and comment on this approach.

> Go language bindings
> --------------------
>
>                 Key: MESOS-862
>                 URL: https://issues.apache.org/jira/browse/MESOS-862
>             Project: Mesos
>          Issue Type: Improvement
>          Components: framework
>            Reporter: Niklas Quarfot Nielsen
>            Assignee: Niklas Quarfot Nielsen
>
> Go is getting increasing attention in the distributed systems community and 
> it would be great to be able to leverage Mesos as a part of that story.
> We have started mocking up language bindings using cgo (C-bridge in Go): 
> https://github.com/nqn/mesos-go
> Unfortunately, it is not as smooth as Python or JNI which can interact with 
> the C++ API's directly. If anyone knows about a way to let Go use the C++ 
> API, feel free to jump in.
> The C bridge does not need to be a part of the Mesos distribution, as we can 
> compile this into a separate library which links against libmesos.
> An example framework in Go can be seen here: 
> https://github.com/nqn/mesos-go/blob/master/src/mesos.apache.org/example/main.go
> It is still work in progress, but can launch go tasks now.
> Feel free to jump in with any comments and ideas.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to