I second Chris. You should start with just one submodule, or really just one function that interests you and read the code and documentation and try to understand how that works. I would also add that you shouldn't try to understand how the core works as a start, that is, the bits that describe how expressions themselves are defined . It's one of the more complicated parts of the code, and isn't really the thing that we recommend people start contributing to.
The best way is to pick one functionality and dig into it. For example, say you want to understand solve(). If you look at the code for it in sympy/solvers/solvers.py, you'll find that it is somewhat complicated because it has a lot of sub-functions that it uses for solving different kinds of equations. So you might then pick one of those sub-functions, say the ones for solving linear equations, and dig into it. Try stepping through a debugger to see how the function works. Try importing the function in IPython and playing with different inputs. Take a look at the tests in the test suite for the function. It also helps to have an understanding of how to use SymPy as a user. Most of the code in SymPy uses SymPy expressions in much the same ways you would use them as a user. Aaron Meurer On Tue, Jan 25, 2022 at 3:10 PM Chris Smith <smi...@gmail.com> wrote: > > What is it that you want to understand? Although I am a frequent contributor, > there are many fundamental design issues that I don't understand. > > I would recommend finding an area that you are interested in and look for > issues in that area and find out how SymPy works with such expressions. I > think you will find people willing to help answer questions...but the scope > of this question is a bit broad. > > Starting through the tutorial is a good way to get acquainted with how > SymPy/Python work. > > /c > On Monday, January 24, 2022 at 8:12:20 AM UTC-6 sushmita...@gmail.com wrote: >> >> Hi, >> I have clone the sympy repository on my desktop but now I am trying to >> understand this large codebase. Could you people guide me on how should I >> understand the codebase? >> >> Regards >> Sushmita > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sympy+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/c6dec098-bdf6-4780-add3-701bbc5bccben%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2B0M-H4VmLivYvSf7O91%2B_wtynAoKcz3JP-5-fiEmnmJw%40mail.gmail.com.