Giter Site home page Giter Site logo

python port about commandcenter HOT 7 CLOSED

davechurchill avatar davechurchill commented on August 17, 2024
python port

from commandcenter.

Comments (7)

davechurchill avatar davechurchill commented on August 17, 2024 1

If someone does something involving pysc2 / commandcenter and wants to pull request what they did, I would be happy to review it, but I have no plans of doing anything but C++ with CommandCenter for the foreseeable future

from commandcenter.

davechurchill avatar davechurchill commented on August 17, 2024 1

Seems like a lot of work to avoid learning a little C++? :D

from commandcenter.

alkurbatov avatar alkurbatov commented on August 17, 2024

The problem is that there is no direct connection between the c++ code and the Python code. From my point of view the only thing that could be done here is creation of the Python bindings over Python API that will allow to use CommandCenter in Python apps. However it is a hard work to support such bindings in actul state.

from commandcenter.

vors avatar vors commented on August 17, 2024

@alkurbatov yes, that's my understanding too. It would be doable if we can keep an API surface, but it's additional restrictions. I was more thinking along the lines of rewriting the whole project in python for the sake of interop.

from commandcenter.

vors avatar vors commented on August 17, 2024

lol sure

My hypothesis is that having 2 projects for the sc2 research that can reuse each other is better than having 2 projects that have no way to interact and can lead to more interesting results. But I don't have any data to prove it.

from commandcenter.

davechurchill avatar davechurchill commented on August 17, 2024

True - I just don't have an immediate use for it so I'm going to bow out of any responsibility for it :)

I suspected that using some sort of python / c++ interop may be the easiest way of going about it

from commandcenter.

alkurbatov avatar alkurbatov commented on August 17, 2024

@vors I did such things for more complicated C-like API. We used handmade codegenerator to analyze C++ code and create Python bindings (each of which converted arguments and executed a C++ function). While the codegenerator allows to reduce support burden (i.e. just recompile everything when needed) on the other hand we have to support the codegenerator and expand it for some complex datatypes, and fix leaks in the generated code.

I am not sure if such approach is applicable here but it could be an option too.

However according to the experience of the large and complex projects (e.g. libvirt): they usually implement separate Python API which use C-function calls, write everything manually and cover the API with tests as much as possible.

from commandcenter.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.