On 8 May 2012 at 1:14, Matthew Scouten wrote: > Hello, > I have recently been laid off from a job where a made a lot of good > use of Boost.Python. I would like to give something back (while incidentally > keeping my skills from getting rusty). I have already been following the > boost-python tag on stackoverflow and answering a lot of question there > (http://stackoverflow.com/users/8508/matthew-scouten). I haven't hacked on > the internals of BP much, but now that I have time.
Firstly, my commiserations to you on losing your job. Secondly, my thanks to you for contributing to the SO community. Too few people bother. The fact you have used your misfortune to aid others I think is especially commendable. > While I was there, I had some code (now lost to me) that made BP easier to > use. Almost certainly the original code's copyright would have been a problem anyway. Besides, reimplementation tends to be of higher quality than first attempt, and you'll need that to pass Boost peer review. > Here is some of that I had: > > * A deepcopyable suite, so that any c++ class with an appropriate copy ctor > could be quickly given a __deepcopy__, a __copy__ and a copying __init__, > with a single line. > > * A similar compare suite, so that classes with == and < could be given a > full set of comparison operators, with a single line > > * 2 function templates, SafePointer2Object and SafeObject2Pointer which > dealt with conversions between bp::objects that might be None and pointers > to c++ classes that might be NULL > > * Simple RAII objects that dealt with acquiring and freeing the GIL around > callbacks on different threads. A similar one for freeing the GIL around a > code block. An idea that maybe this could be a call policy. I would need to see the design of this before I could say if it was correct or not. It's very easy to have something suitable for application code, but not suitable to be inside a library, and particularly not in BPL. > * No_compare_indexing_suite is vector_indexing_suite for classes without == > > I would like to recreate some of these up for inclusion in BP, if you are > interested. Or if there is other work that needs doing.... http://mail.python.org/pipermail//cplusplus-sig/2011-September/016160. html (generic runtime type registry, second paragraph onwards) :) No, seriously, if you have the free time and can finance an extended period of unemployment while you implement such a signature project, I would be highly surprised if employment remains a problem. It would be a significant commitment in time though. I'd estimate for myself around nine months from start to finish, especially as Boost.Python and Boost.Spirit would need porting to the new framework, and their authors will be very exacting. It would really stand to you long run though. I recently was made a job offer by a North American company on the basis of signature work I did a decade ago when I was a far less capable programmer :) Niall -- Technology & Consulting Services - ned Productions Limited. http://www.nedproductions.biz/. VAT reg: IE 9708311Q. Work Portfolio: http://careers.stackoverflow.com/nialldouglas/ _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig