Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-5470

Develop C++ code for experimenting with Python binding

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Story Points:
      3
    • Sprint:
      DRP X16-1
    • Team:
      Data Release Production

      Description

      Produce a small C++ codebase that can be used for experimenting with the various technologies we can be used for exposing C++ to Python. It should enable us to experiment with as many of the potential pain points with these technologies as possible

        Attachments

          Issue Links

            Activity

            Hide
            jbosch Jim Bosch added a comment -

            This is complete at the level we need it for Pim Schellart [X]'s experiments.

            I plan to do a bit more work on my own time to clean it up and try to get outside people to contribute to the challenge. And I may submit some solutions too. That may ultimately benefit LSST, but it's not something I'm going to consider LSST work (at least not right now), so it's time to close this issue.

            Show
            jbosch Jim Bosch added a comment - This is complete at the level we need it for Pim Schellart [X] 's experiments. I plan to do a bit more work on my own time to clean it up and try to get outside people to contribute to the challenge. And I may submit some solutions too. That may ultimately benefit LSST, but it's not something I'm going to consider LSST work (at least not right now), so it's time to close this issue.
            Hide
            jbosch Jim Bosch added a comment - - edited

            Pim Schellart [X], I've just pushed a fairly important update to the challenge code, adding a Swig module we'd like to interoperate with. Once you have the basic behavior more-or-less working, testing the connection to Swig is probably the highest priority. We can fake just about everything else with extra layers of indirection or injected Python CAPI code, but if we can't extract from Cython what we need to make a Cythonized object talk to Swig, that's very close to being a dealbreaker for this exercise.

            Show
            jbosch Jim Bosch added a comment - - edited Pim Schellart [X] , I've just pushed a fairly important update to the challenge code, adding a Swig module we'd like to interoperate with. Once you have the basic behavior more-or-less working, testing the connection to Swig is probably the highest priority. We can fake just about everything else with extra layers of indirection or injected Python CAPI code, but if we can't extract from Cython what we need to make a Cythonized object talk to Swig, that's very close to being a dealbreaker for this exercise.
            Hide
            jbosch Jim Bosch added a comment -

            This work is proceeding in an external git repo:

            https://github.com/TallJimbo/python-cpp-challenge

            I think most of the code to wrap is there, but I still need to provide a better specification of the detailed requirements of the Python interface layer (via some test code) and provide a Swig module that should build against the wrappers.

            I also have some thoughts on eventually opening this up to a the public as an exercise in comparing different language binding tools, but that won't be a priority right now.

            Show
            jbosch Jim Bosch added a comment - This work is proceeding in an external git repo: https://github.com/TallJimbo/python-cpp-challenge I think most of the code to wrap is there, but I still need to provide a better specification of the detailed requirements of the Python interface layer (via some test code) and provide a Swig module that should build against the wrappers. I also have some thoughts on eventually opening this up to a the public as an exercise in comparing different language binding tools, but that won't be a priority right now.

              People

              Assignee:
              jbosch Jim Bosch
              Reporter:
              swinbank John Swinbank
              Watchers:
              Jim Bosch, John Swinbank, Pim Schellart [X] (Inactive), Tim Jenness
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.