My name is Udit and I?m a 3rd year undergrad at BITS,Pilani, India. I have experience in programming (C/C++, python, Java) and web development(PHP, HTML5, CSS). I went through the project ideas mentioned on your GSOC project ideas page and found "Improving Python's Bindings " quite interesting. Could I have more information about this project? Can this project pan out the entire summer and does it have enough potential to be taken as a GSOC project ? -- --------------------------------------- Udit Saxena Student, BITS Pilani -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.xapian.org/pipermail/xapian-devel/attachments/20130321/eb8e7d41/attachment.htm>
What specifics about the python project are you looking for which our project page didn't cover? Are you currently using the Xapian python bindings or do you have a use case in mind? I do wonder if its enough for a summer as it stands. -- Dan On Mar 21, 2013, at 5:41, Udit Saxena <saxena.udit at gmail.com> wrote:> My name is Udit and I?m a 3rd year undergrad at BITS,Pilani, India. > I have experience in programming (C/C++, python, Java) and web development(PHP, HTML5, CSS). > > I went through the project ideas mentioned on your GSOC project ideas page and found "Improving Python's Bindings " quite interesting. > > Could I have more information about this project? Can this project pan out the entire summer and does it have enough potential to be taken as a GSOC project ? > > -- > --------------------------------------- > Udit Saxena > Student, BITS Pilani > > _______________________________________________ > Xapian-devel mailing list > Xapian-devel at lists.xapian.org > http://lists.xapian.org/mailman/listinfo/xapian-devel-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.xapian.org/pipermail/xapian-devel/attachments/20130321/cceb1253/attachment.htm>
The python project is only working on the python bindings -- however note that our projects list is recommendations only. You should write a final proposal yourself and can include whatever you like. If there is another python project you'd like to integrate python with for instance that could work well -- and if you improved the python bindings as part of that then so much the better. Speed and memory improvements matter of profiling and then working to improve the worst common cases. There may be semi-leaks ie state that is ultimately cleaned up but kept around longer than is needed. Or inefficient wrapping code. Or something else -- a strong application on this would probably involve doing some profiling up front to suggest avenues of attack. I'd consider pairing python and PHP alone if you have no experience of ruby. However it may be that the PHP project on its own is a big enough challenge -- I haven't thought about it in a while but it involves a fair amount of work on SWIG so feels more like a full project already. J On 22 Mar 2013, at 04:34, Udit Saxena <saxena.udit at gmail.com> wrote:> What I wondered was: > 1. Does this only involve improving and maintaining python bindings ? > 2. How do you plan to improve speed and memory usage of bindings ? > 3. I have never coded in Ruby. So no familiarity there. But together with php this can be taken up as these three - python, php, and ruby. > > No I am not using any xapian python bindings as of now. I still need to get over to the SWIG documentation. > > > On Thu, Mar 21, 2013 at 9:59 PM, James Aylett <james-xapian at tartarus.org> wrote: >> The consensus last time we discussed this was that it probably isn't enough for a full summer. It could be combined with other bindings work in another dynamic language but that would have to be spelled out in the project plan. (I'm sure there's work on the ruby bindings worthwhile if you're fluent.) >> >> J >> >> On 21 Mar 2013, at 08:45, Dan Colish <dcolish at gmail.com> wrote: >> >>> What specifics about the python project are you looking for which our project page didn't cover? Are you currently using the Xapian python bindings or do you have a use case in mind? >>> >>> I do wonder if its enough for a summer as it stands. >>> >>> -- >>> Dan >>> >>> On Mar 21, 2013, at 5:41, Udit Saxena <saxena.udit at gmail.com> wrote: >>> >>>> My name is Udit and I?m a 3rd year undergrad at BITS,Pilani, India. >>>> I have experience in programming (C/C++, python, Java) and web development(PHP, HTML5, CSS). >>>> >>>> I went through the project ideas mentioned on your GSOC project ideas page and found "Improving Python's Bindings " quite interesting. >>>> >>>> Could I have more information about this project? Can this project pan out the entire summer and does it have enough potential to be taken as a GSOC project ? >>>> >>>> -- >>>> --------------------------------------- >>>> Udit Saxena >>>> Student, BITS Pilani >>>> >>>> _______________________________________________ >>>> Xapian-devel mailing list >>>> Xapian-devel at lists.xapian.org >>>> http://lists.xapian.org/mailman/listinfo/xapian-devel >>> _______________________________________________ >>> Xapian-devel mailing list >>> Xapian-devel at lists.xapian.org >>> http://lists.xapian.org/mailman/listinfo/xapian-devel > > > > -- > --------------------------------------- > Udit Saxena > Student, BITS Pilani, > +917891400270 >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.xapian.org/pipermail/xapian-devel/attachments/20130322/c00335e2/attachment.htm>
On Fri, Mar 22, 2013 at 08:51:15AM -0700, James Aylett wrote:> Speed and memory improvements matter of profiling and then working to > improve the worst common cases. There may be semi-leaks ie state that > is ultimately cleaned up but kept around longer than is needed. Or > inefficient wrapping code. Or something else -- a strong application > on this would probably involve doing some profiling up front to > suggest avenues of attack.SWIG also have some settings which control exactly how the Python wrappers it generates work, and some of these can make quite a difference to speed and memory usage. Some impose limitations on what you can do, so may not be suitable for us. Investigating these settings would be another useful thing to look at. Currently we use: -shadow -modern -O Options to think about include: -builtin -dirvtable -modernargs -outputtuple> I'd consider pairing python and PHP alone if you have no experience of > ruby. However it may be that the PHP project on its own is a big > enough challenge -- I haven't thought about it in a while but it > involves a fair amount of work on SWIG so feels more like a full > project already.I think so - it doesn't seem feasible to work on the PHP bindings and something else if that includes taking on the overhaul of SWIG's PHP backend to create the objects using the Zend API. This would really need pushing through to the point where it can be made the default PHP backend in SWIG so that we can switch upstream SWIG to using it, but that means it needs to support all the features which the current backend does, not just those which Xapian uses. Someone could potentially work on just improving the wrapped API we provide in PHP (along with work on a different language's bindings), but I'm not sure it's good to try to slice up the PHP project idea like that - it seems a sensible size as-is with a good mixture of things to work on. Cheers, Olly