Hi Francesco, yeah sure, I will proceed in that way. Thanks. On Monday, May 6, 2024 at 2:23:07 AM UTC+5:30 Francesco Bonazzi wrote:
> Do you mean forking MatchPy? I would suggest by creating a personal fork > of the project. I would not create a fork of MatchPy on SymPy's space > unless we're really sure about continuing the development of MatchPy. > > On Saturday, May 4, 2024 at 4:18:32 a.m. UTC+2 samithkar...@gmail.com > wrote: > >> Hi Aaron, >> Thank you for the reply, I would like to give it try. In-order to >> contribute to this project, I need to have a fork of this repository in >> somewhere (Sympy org or else). So If someone can help me with that I will >> try to contribute. >> >> Best Regards, >> Samith Karunathilake. >> >> On Friday, May 3, 2024 at 2:54:28 AM UTC+5:30 asme...@gmail.com wrote: >> >>> Hi Samith. >>> >>> You are always free to contribute to SymPy independently of GSoC, as >>> it is an open source project and you can always contribute to an open >>> source project. We can't guarantee you the mentorship that a GSoC >>> contributor would receive. It would be up to Francesco and other >>> community members if he is interested in helping out with this >>> project. >>> >>> Aaron Meurer >>> >>> On Wed, May 1, 2024 at 7:58 PM Samith Kavishke >>> <samithkar...@gmail.com> wrote: >>> > >>> > Hi, >>> > Eventhough have not been selected, do we still have a chance to >>> continue the project? Without the stipend. >>> > >>> > On Tuesday, April 2, 2024 at 7:14:15 AM UTC+5:30 Samith Kavishke >>> wrote: >>> >> >>> >> I have attached the changed version of this project. Thank you! >>> >> >>> >> On Monday, April 1, 2024 at 2:43:25 PM UTC+5:30 Samith Kavishke >>> wrote: >>> >>> >>> >>> I will go through it and try to suggest a new method if time >>> permits. Thank you Francesco you helped a lot to achieve this amount. >>> >>> >>> >>> On Monday, April 1, 2024 at 2:27:15 PM UTC+5:30 Francesco Bonazzi >>> wrote: >>> >>>> >>> >>>> The issue I see in the proposal is that the methods should probably >>> be functions, not class methods. If we keep class methods we are probably >>> still forced to use subclassing (I would like to avoid that). Anyways, it >>> looks good, this is just a minor issue >>> >>>> >>> >>>> On Tuesday, March 26, 2024 at 12:07:15 p.m. UTC+1 Francesco Bonazzi >>> wrote: >>> >>>>> >>> >>>>> The base idea is about modifying MatchPy in order to allow easy >>> integration of MatchPy into SymPy and into the python bindings of protosym. >>> Additional extensions to the project idea are welcome, provided there is >>> enough time to complete them. Trying a translation of MatchPy into Rust has >>> the potential of speeding up the library a lot, but it should be >>> benchmarked. >>> >>>>> >>> >>>>> On Tuesday, March 26, 2024 at 2:54:23 a.m. UTC+1 >>> samithkar...@gmail.com wrote: >>> >>>>>> >>> >>>>>> Is it worth for me to mention about the Protosym's architecture, >>> in order to strengthen my proposal ? or do I need more contributions in >>> sympy repositories. >>> >>>>>> >>> >>>>>> On Sunday, March 24, 2024 at 4:29:40 AM UTC+5:30 Samith Kavishke >>> wrote: >>> >>>>>>> >>> >>>>>>> Hi, >>> >>>>>>> Thank you, Francesco for your valuable insights. I have attached >>> my current draft of GSOC 24 proposal. Can you help me with feedbacks for >>> the proposal. >>> >>>>>>> >>> >>>>>>> >>> >>>>>>> On Tuesday, March 19, 2024 at 8:15:07 PM UTC+5:30 Francesco >>> Bonazzi wrote: >>> >>>>>>>> >>> >>>>>>>> No, no parsers are needed. Just a tree traversal for-loop. It's >>> already implemented: >>> >>>>>>>> >>> >>>>>>>> iterator >>> >>>>>>>> iterator size >>> >>>>>>>> >>> >>>>>>>> As you see, in the current implementation we need to use >>> @op_iter.register... because "op_iter" is a MatchPy function that does not >>> exist in SymPy... With @op_iter.register we can extend it to a SymPy >>> object. The problem is: >>> >>>>>>>> >>> >>>>>>>> @op_iter.register is an almost hackish way to do it, it messes >>> up with the class inheritance. We need something easier to use. >>> >>>>>>>> The .register method defines the iterator on a class. We may >>> have cases in which we would like to have different iterators for the same >>> class... so it shouldn't be a class method. >>> >>>>>>>> >>> >>>>>>>> >>> >>>>>>>> On Monday, March 18, 2024 at 11:20:10 p.m. UTC+1 >>> samithkar...@gmail.com wrote: >>> >>>>>>>>> >>> >>>>>>>>> I think, I understood the point you are making. If we are >>> going to redefine the tree structure in matchpy using overridable methods, >>> does that mean we have to use a parser to translate the sympy object type >>> to matchpy or are there any better way to handle the situation. >>> >>>>>>>>> On Saturday, March 16, 2024 at 8:32:03 PM UTC+5:30 Francesco >>> Bonazzi wrote: >>> >>>>>>>>>> >>> >>>>>>>>>> I suggest to start the unit tests of MatchPy in debug mode >>> and follow the tree traversal to get some more insight. Indeed, the code is >>> quite complicated, but the debugger may help. MatchPy also provides a tool >>> to dump the state into a GraphViz dot file. >>> >>>>>>>>>> >>> >>>>>>>>>> The idea is that matchpy_connector should not use all those >>> ".register( )" methods, it should not have objects subclassing MatchPy >>> objects (currently there is Wildcard). >>> >>>>>>>>>> >>> >>>>>>>>>> On Saturday, March 16, 2024 at 1:52:55 p.m. UTC+1 >>> samithkar...@gmail.com wrote: >>> >>>>>>>>>>> >>> >>>>>>>>>>> Hi, >>> >>>>>>>>>>> Still I am in the process of understanding the matchpy code >>> base. >>> >>>>>>>>>>> at the moment I understand that, >>> >>>>>>>>>>> >>> >>>>>>>>>>> Isinstance logic should replace to overridable method or any >>> preferred way ( wrappers around classes new classes also possible without >>> changing the existing code). >>> >>>>>>>>>>> __iter__ logic should change due to the tree traversal must >>> change accordingly, because it is rely on the inheritance. >>> >>>>>>>>>>> replace method in the matchpy connector should change >>> because it is replication of same code twice. >>> >>>>>>>>>>> Enhance the capability of matchpy_connector, because still >>> does not have the capability of solving calculus, matrices and more >>> advanced problems. >>> >>>>>>>>>>> >>> >>>>>>>>>>> what are the other things that might affect if we add >>> overridable method to Expressions? any suggestions for me to refer. >>> >>>>>>>>>>> On Wednesday, March 13, 2024 at 2:04:20 PM UTC+5:30 >>> Francesco Bonazzi wrote: >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> On Wednesday, March 13, 2024 at 8:13:27 a.m. UTC+1 Aaron >>> Meurer wrote: >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> As far as we can tell, SymPy is the only thing that uses >>> MatchPy, >>> >>>>>>>>>>>> outside of the specific research software from that >>> research group >>> >>>>>>>>>>>> that it was developed for. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> Indeed, MatchPy is probably very underappreciated. Its >>> developers haven't really advertised it enough. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> If making MatchPy more SymPy specific eases >>> >>>>>>>>>>>> the development burden, we should do that, especially if we >>> are going >>> >>>>>>>>>>>> to fork it anyway. I think the core of it does need to >>> remain >>> >>>>>>>>>>>> independent of SymPy's types, especially if we want to try >>> to write a >>> >>>>>>>>>>>> Rust backend. >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> >>> >>>>>>>>>>>> I would still make an attempt at keeping it generic. The >>> main issue is removing all "isinstance( ... )" and "__iter__" statements in >>> the expression tree traversal algorithms of MatchPy and replace them with >>> more generalizable statements. I'm confident this can be done and that we >>> can still keep MatchPy generalizable to other libraries. >>> > >>> > -- >>> > 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+un...@googlegroups.com. >>> > To view this discussion on the web visit >>> https://groups.google.com/d/msgid/sympy/72653f6b-d10d-4281-8fcc-c662c47d942bn%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/88345f3e-63bc-4ffb-86b1-4ad9121adac5n%40googlegroups.com.