On Mar 9, 7:41 pm, Roopan <[EMAIL PROTECTED]> wrote: > Hello! > > I am looking at developing an enterprise-grade distributed data > sharing application - key requirements are productivity and platform > portability. > > Will it be sensible to use C++ for performance-critical sections and > Python for all the glue logic. > Pls comment from your *experiences* how Python scales to large > projects( > 200KLOC). > I assume the C++/Python binding is fairly painless.
200K with C++ lines of code or Python lines of code? :) I can comment on 50K lines of Python code, and considering how I write Python and how most people write C++ that might be about the same as a 200K C++ program. But it's not an enterprise app, so take it as you will. I've had no real issues. 95% of the program in Python; with only a couple sections written in C, and a few wrappers for C/C++ libraries. My wrappers are as thin as I can reasonably make them; where needed I make the interface prettier with a higher-level Python wrapper. I'm writing regular extensions, not using ctypes, Cython, SWIG, Boost::python or anything like that. I am using ctypes for some related tools and it's pretty nice. The others I can't comment on, except to say I sometimes didn't have enough memory to compile third- party SWIG extensions. I develop it on Linux, but every few months or so I'd copy it to Windows and update it so that it works on both. This was a minor hastle, which is not so bad considering it hadn't seen Windows for months. (In fairness, I am using the same compiler, gcc, on both. Getting mingw gcc to work on Windows was a major hassle, but a one- time thing.) Python's a lot better productivity-wise, and it's worked well as a cross-platform solution for me. The interfacing is the main drawback. It's always a bit of effort to interface things, and to get it working on multiple platforms, but I thought it was worth it. Carl Banks -- http://mail.python.org/mailman/listinfo/python-list