On Tuesday, March 3, 2026 at 12:20:38 PM UTC-5 [email protected] wrote:
Hi, This is James. I had previously reached out to the Gambit organization and maintainers regarding SageMath interoperability project, and I received their response outlining the suggested next steps. Following that, I started by looking into the existing work on the Sage side. In particular, I reviewed the commits made by mkoeppe in the PR https://github.com/sagemath/sage/pull/37809. I went through the changes (updation of package name, updating builds, sphinx changes for new docs, making optional) and focused on the three major steps that have already been implemented, in order to understand the further required changes and the current state of the integration in more depth. With that , I’m now planning to move on to analyzing what api level and other changes are required, which parts of the existing work can be reused as is, and where new or updated implementation would be needed (as far I explored the sage codebase its *pkgs/sagemath-bliss/sage/game_theory/normal_form_game.py* and *src/sage/game_theory/parser.py*). This should help clarify the overall scope of the remaining work and how best to proceed. Would be a great help if sage devs and maintainers can guide. I'm not currently very active, but I helped some with the gambit integration before, and it would indeed be awesome to get this back fully into Sage. And if they have GSOC as an option, that's even better, as Sage also is a GSOC org this summer (if I'm not mistaken), so it will "look good", I guess to have that cooperation. I think you definitely want your first step to be just getting pygambit to interface with Sage at all. Most likely that will lead to a lot of failing tests. Maybe all the tests will fail because Gambit has been developing so rapidly! That is okay, we can fix them in the second step. It is likely that some Sage conventions for creating a package will have changed slightly, but hopefully not very much at all, so I think this is a pretty realistic goal. It will be a good idea to ask very specific questions on this list if you run into trouble on it; as currently formed you probably haven't heard anything yet because it is tantamount to "how do I do this", which unfortunately is probably too broad for anyone to give you guidance directly. Instead of just reviewing the changes, try to make your own branch that uses as many of them as possible and see what it breaks! With some luck, it won't break anything. Then the work comes of actually changing the *existing* examples to conform with whatever Gambit is doing right now, and coming up with new ones that show off any new or changed functionality. For that you will need to learn some game theory, in order to have good examples. But I would think that even just getting the pygambit package to work properly at all will be a very good contribution, from the Sage perspective. Good luck! - kcrisman -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/sage-devel/fc436a23-18ba-4870-a411-9883e800f2a6n%40googlegroups.com.
