Thank you for all the advice. I guess for the concurrent one, I probably would 
go with the pip approach.

For Sage specific functions, we use tree decomposition and nice tree 
decomposition, and all other graph functions.

Jing
2024年5月20日 +0200 16:57 Dima Pasechnik <dimp...@gmail.com>,写道:
> On Mon, May 20, 2024 at 3:43 AM Matthias Koeppe
> <matthiaskoe...@gmail.com> wrote:
> >
> > On Sunday, May 19, 2024 at 12:53:25 PM UTC-7 Jing Guo wrote:
> >
> > In the past few months I have been working on a Sage library for counting 
> > graph homomorphisms: https://github.com/guojing0/count-graph-homs (It's 
> > still updating, hence not 100% complete)
> >
> > In `concurrent_hom_count.py`, I use third-party libraries, such as `numba`, 
> > `dask`, and `numpy`. For numpy, I think it's already in Sage. So I was 
> > wondering what would be the standard/best/recommended practices if I want 
> > to contribute this code to Sage, which I suppose does not support either 
> > `numba` or `dask` (searching in the codebase returns nothing)?
> >
> >
> > It depends on the intended degree of integration into Sage.
> > The loosest integration: Prepare it as a pip-installable package (which 
> > declares its dependencies using the standard Python packaging practices); 
> > then add it as an optional "pip" package to the Sage disitribution.
>
> How exactly is this code using Sage - what are graph Sage-specific
> functions used?
> Tight integration with Sage would need, in the present Sage distro
> model, numbda and dask as its packages, and in particular numba would
> be very tricky, as it needs LLVM.
>
> > See Meta-ticket: Add external user packages as optional/experimental 
> > packages (https://github.com/sagemath/sage/issues/31164) for examples and 
> > pointers to documentation.
> >
> > --
> > 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 sage-devel+unsubscr...@googlegroups.com.
> > To view this discussion on the web visit 
> > https://groups.google.com/d/msgid/sage-devel/d29caf89-d6b5-4896-94b1-b4703218e857n%40googlegroups.com.
>
> --
> You received this message because you are subscribed to a topic in the Google 
> Groups "sage-devel" group.
> To unsubscribe from this topic, visit 
> https://groups.google.com/d/topic/sage-devel/L6lp0CSKMR8/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to 
> sage-devel+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sage-devel/CAAWYfq2ZLpQ-s8eDmwcZUtAccN42UJOYWt_%2B_qJ_v20d8fka4g%40mail.gmail.com.

-- 
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 sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/0306787e-6ca4-40c6-ade9-f0c540625a6f%40Spark.

Reply via email to